Imported Upstream version 1.5.0.1+git20150316
diff --git a/ChangeLog b/ChangeLog
index c17b25c..d1b0644 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,649 @@
-=== release 1.3.3 ===
+=== release 1.4.0 ===
 
-2014-06-22  Sebastian Dröge <slomo@coaxion.net>
+2014-07-19  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.3.3
+	  releasing 1.4.0
+
+2014-07-19 12:16:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/da.po:
+	* po/sv.po:
+	  po: Update translations
+
+2014-07-17 15:53:53 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+	* libs/gst/base/gstbaseparse.c:
+	  baseparse: Return FLOW_FLUSHING when pushing a frame on a pad that has been flushed
+	  When going to READY, it is possible that we are still pusing a frame but that
+	  our srcpad has already been set to flushing. In that case we should not
+	  post any error on the bus but instead cleanly return FLOW_FLUSHING.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=733320
+
+2014-07-17 07:07:36 +0200  Edward Hervey <edward@collabora.com>
+
+	* plugins/elements/gsttypefindelement.c:
+	  typefindelement: Propagate input buffer PTS and DTS
+	  The initial buffers (that were used for timestamping) might have PTS
+	  and DTS set. In order to forward those properly, get the initial
+	  PTS/DTS from the adapter and set them on the reconstructed output
+	  buffer.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=733291
+
+2014-07-12 17:01:23 +0200  Sebastian Rasmussen <sebras@hotmail.com>
+
+	* gst/gstdebugutils.c:
+	  debugutils: Unref pad template after use
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733121
+
+2014-07-14 18:10:45 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* gst/gst.c:
+	  gst: init taglist gtype to use it in gstvalue
+	  Otherwise it will have a 0 value and GstTagList won't be found
+	  for GstValue functions (serialization/deserialization)
+	  https://bugzilla.gnome.org/show_bug.cgi?id=733131
+
+=== release 1.3.91 ===
+
+2014-07-11 10:46:01 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/inspect/plugin-coreelements.xml:
+	* gstreamer.doap:
+	* win32/common/config.h:
+	* win32/common/gstversion.h:
+	  Release 1.3.91
+
+2014-07-11 10:41:20 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/be.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/nb.po:
+	* po/nl.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/rw.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_TW.po:
+	  Update .po files
+
+2014-07-11 08:51:08 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/da.po:
+	* po/vi.po:
+	  po: Update translations
+
+2014-07-05 18:29:29 +0200  Sebastian Rasmussen <sebras@hotmail.com>
+
+	* docs/libs/gstreamer-libs-docs.sgml:
+	* docs/libs/gstreamer-libs-sections.txt:
+	* gst/gstcaps.h:
+	* gst/gstdevice.c:
+	* gst/gstdeviceprovider.c:
+	* gst/gstdeviceproviderfactory.c:
+	* gst/gsttoc.h:
+	* gst/gstvalue.c:
+	* libs/gst/check/gstcheck.c:
+	* libs/gst/net/gstnetaddressmeta.c:
+	* libs/gst/net/gstnetaddressmeta.h:
+	  docs: Fix documentation typos and inconsistencies
+	  * GstGlobalDeviceMonitor was renamed to GstDeviceMonitor
+	  * Expand GST_MESSAGE_DEVICE to the full enum value names
+	  * Correct the incorrect references to the GstDeviceProvider interfaces
+	  * Describe caps arguments for gstcheck interface
+	  * Add missing docs for GstNetAddressMeta and its add function
+	  * Add docs for toc helper macros
+	  * Avoid refering to GstValueList type as done elsewhere
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732786
+
+2014-07-05 17:13:21 +0200  Sebastian Rasmussen <sebras@hotmail.com>
+
+	* docs/gst/gstreamer-sections.txt:
+	* docs/libs/gstreamer-libs-sections.txt:
+	  docs: Cleanup interface references in docs
+	  * Delete references to removed interfaces
+	  * Add missing documentation sections
+	  * Fix duplicate interface references for GstDevice
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732786
+
+2014-07-08 11:17:41 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* plugins/elements/gstfilesrc.c:
+	* plugins/elements/gsttee.c:
+	* tools/gst-launch.1.in:
+	  docs: There is no decodebin2 anymore, don't pretend otherwise
+
+2014-07-07 16:14:32 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* plugins/elements/gstfdsrc.c:
+	  fdsrc: fix error setting when uri is invalid
+	  Elements should always set the GError
+
+2014-07-06 12:13:04 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* libs/gst/check/gstcheck.h:
+	  libs: gstcheck: check that mutex is locked before g_cond_wait*() is called
+	  Sanity check to catch problems in unit test.
+
+2014-07-06 12:12:20 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* libs/gst/check/gstcheck.h:
+	  libs: gstcheck: init and clear global mutex and cond variables
+
+2014-07-06 12:09:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/gst/gstpoll.c:
+	  tests: fix locking in gstpoll unit test
+	  The mutex needs to be locked when g_cond_wait*() is
+	  called.
+
+2014-07-05 16:24:18 +0100  Matthieu Bouron <matthieu.bouron@collabora.com>
+
+	* scripts/gst-uninstalled:
+	  gst-uninstalled: add video and base library paths from -bad
+	  https://bugzilla.gnome.org/show_bug.cgi?id=732770
+
+2014-07-04 19:40:28 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tools/gst-inspect.c:
+	  tools: suppress GLib warnings when gst-inspecting deprecated properties
+	  GLib in git will spew a g_warning() when a property marked as
+	  deprecated via param spec flags is accessed. Suppress this by
+	  setting the appropriate environment variable.
+
+2014-07-03 10:11:02 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/gstmessage.h:
+	  message: Work around g-i/pygobject/gjs bug with ~0 in enums
+	  GST_MESSAGE_ANY was considered a long by pygobject and gjs, and thus
+	  couldn't be used in gst_bus_poll() and similar APIs as they expect an
+	  int-typed enum.
+	  Just use 0xffffffff instead for now.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=732633
+
+2014-07-02 08:41:18 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/gst/gstbufferlist.c:
+	  tests: don't use post-GLib 2.32 API in bufferlist test
+	  g_ptr_array_insert() is GLib >= 2.40
+
+2014-07-01 12:22:56 +0200  Göran Jönsson <goranjn@axis.com>
+
+	* gst/gstpad.c:
+	  pad: Don't unlock while iterating over all sticky events for removal
+	  Otherwise we might end up getting the event removed from elsewhere
+	  at the same time while we're unlocked for g_object_notify().
+	  https://bugzilla.gnome.org/show_bug.cgi?id=732556
+
+2014-07-01 19:17:11 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* plugins/elements/gstidentity.c:
+	  identity: Proxy the accept-caps query
+	  We always work in passthrough mode so there's no point in doing
+	  something more clever in basetransform. Also the basetransform
+	  code leads to problems with incomplete caps and downstream
+	  elements that use GST_PAD_FLAG_ACCEPT_INTERSECT.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=732559
+
+2014-07-01 11:21:53 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* libs/gst/base/gstbasesink.c:
+	  basesink: reset QoS on segment event
+	  This avoids spurious warnings about slow machine when upstream
+	  sends new segments without flushing.
+
+2014-06-30 23:39:18 -0700  Evan Nemerson <evan@nemerson.com>
+
+	* gst/gstbufferpool.c:
+	* gst/gstdevice.c:
+	* gst/gstdevicemonitor.c:
+	* gst/gstdeviceprovider.c:
+	* gst/gstdeviceproviderfactory.c:
+	* gst/gstmessage.c:
+	* gst/gstquery.c:
+	* gst/gststructure.c:
+	* gst/gstsystemclock.c:
+	* libs/gst/base/gstbasesrc.c:
+	* libs/gst/base/gstcollectpads.c:
+	* libs/gst/check/gstcheck.c:
+	* libs/gst/check/gsttestclock.c:
+	  introspection: Assorted minor introspection and documentation fixes
+	  https://bugzilla.gnome.org/show_bug.cgi?id=732534
+
+2014-06-30 08:59:18 +0000  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+	* gst/gstdevicemonitor.c:
+	  devicemonitor: Stop using g_clear_pointer()
+	  We dont't want to depend on GLib 2.34 for now.
+
+2014-06-29 19:16:05 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/libs/sparsefile.c:
+	  sparsefile: Initialize memory in unit test to make valgrind happy
+	  We were writing unitialized stack memory to the file.
+
+=== release 1.3.90 ===
+
+2014-06-28 10:45:18 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/inspect/plugin-coreelements.xml:
+	* gstreamer.doap:
+	* win32/common/config.h:
+	* win32/common/gstversion.h:
+	  Release 1.3.90
+
+2014-06-28 10:41:48 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/be.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/nb.po:
+	* po/nl.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/rw.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_TW.po:
+	  Update .po files
+
+2014-06-27 10:44:32 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/gstdevicemonitor.c:
+	* tests/check/gst/gstdevice.c:
+	  devicemonitor: don't fail when started without any filters
+	  Just show all devices then.
+
+2014-06-27 10:44:01 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/gstdeviceproviderfactory.c:
+	  deviceproviderfactory: handle NULL classes argument and match any
+
+2014-06-26 21:00:40 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* tests/check/Makefile.am:
+	* tests/check/gst/.gitignore:
+	* tests/check/gst/gstdevice.c:
+	  device: Add unit tests
+
+2014-06-26 17:22:25 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst/gstdevicemonitor.c:
+	* gst/gstdeviceprovider.c:
+	* gst/gstdeviceproviderfactory.c:
+	* gst/gstmessage.c:
+	  devicemonitor: Improve documentation
+
+2014-06-26 17:13:12 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* docs/gst/gstreamer-sections.txt:
+	* gst/gstdevicemonitor.c:
+	* gst/gstdevicemonitor.h:
+	* gst/gstdeviceprovider.c:
+	* gst/gstdeviceproviderfactory.c:
+	* gst/gstdeviceproviderfactory.h:
+	* win32/common/libgstreamer.def:
+	  devicemonitor: Make it possible to add multiple filters
+	  Each filter will include a GstCaps and a set of classes to match
+
+2014-06-26 16:31:51 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst/gstdevice.c:
+	  device: Add pre-conditions
+
+2014-06-26 15:08:46 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* docs/gst/gstreamer-docs.sgml:
+	* docs/gst/gstreamer-sections.txt:
+	* gst/Makefile.am:
+	* gst/gst.h:
+	* gst/gstdevicemonitor.c:
+	* gst/gstdevicemonitor.h:
+	* gst/gstglobaldevicemonitor.c:
+	* gst/gstglobaldevicemonitor.h:
+	* win32/common/libgstreamer.def:
+	  GstDeviceMonitor: Rename from GstGlobalDeviceMonitor
+
+2014-06-26 14:28:09 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* docs/gst/gstreamer-docs.sgml:
+	* docs/gst/gstreamer-sections.txt:
+	* docs/plugins/gstreamer-plugins.hierarchy:
+	* gst/Makefile.am:
+	* gst/gst.h:
+	* gst/gst_private.h:
+	* gst/gstdevice.c:
+	* gst/gstdevicemonitor.c:
+	* gst/gstdevicemonitor.h:
+	* gst/gstdevicemonitorfactory.c:
+	* gst/gstdevicemonitorfactory.h:
+	* gst/gstdeviceprovider.c:
+	* gst/gstdeviceprovider.h:
+	* gst/gstdeviceproviderfactory.c:
+	* gst/gstdeviceproviderfactory.h:
+	* gst/gstglobaldevicemonitor.c:
+	* gst/gstglobaldevicemonitor.h:
+	* gst/gstmessage.c:
+	* gst/gstmessage.h:
+	* gst/gstregistry.c:
+	* gst/gstregistrybinary.c:
+	* gst/gstregistrychunks.c:
+	* gst/gstregistrychunks.h:
+	* tools/gst-inspect.c:
+	* win32/common/libgstreamer.def:
+	  DeviceProvider: Rename from DeviceMonitor
+
+2014-06-26 19:31:33 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* libs/gst/base/gstdataqueue.c:
+	* libs/gst/base/gstdataqueue.h:
+	  dataqueue: Hide from bindings
+	  Other languages have their own data structures that are more convenient to
+	  use.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731303
+
+2014-06-26 19:30:52 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* libs/gst/base/gstqueuearray.c:
+	* libs/gst/base/gstqueuearray.h:
+	  queuearray: Hide from bindings
+	  Other languages have their own data structures that are more convenient to use.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731350
+
+2014-05-28 10:14:45 +0100  Philip Withnall <philip.withnall@collabora.co.uk>
+
+	* gst/gstminiobject.c:
+	  miniobject: Add missing (nullable) annotations
+	  gst_mini_object_replace() can take NULL mini-objects.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=730873
+
+2014-06-26 19:02:06 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/gstmessage.c:
+	  message: Application and element messages should not have NULL structures
+	  It does not make sense for them.
+
+2014-06-11 16:19:01 -0700  Evan Nemerson <evan@nemerson.com>
+
+	* gst/gstbufferpool.c:
+	* gst/gstelement.c:
+	* gst/gstinfo.h:
+	* gst/gstmessage.c:
+	* gst/gstobject.c:
+	* gst/gstpad.c:
+	* gst/gstpad.h:
+	* gst/gstplugin.h:
+	* gst/gstpreset.c:
+	* gst/gsttaglist.c:
+	  introspection: add some missing allow-none annotations to in params
+	  https://bugzilla.gnome.org/show_bug.cgi?id=730957
+
+2014-06-11 16:06:19 -0700  Evan Nemerson <evan@nemerson.com>
+
+	* gst/gstbuffer.c:
+	* gst/gstbuffer.h:
+	* gst/gstbufferlist.h:
+	* gst/gstcaps.h:
+	* gst/gstevent.h:
+	* gst/gstmessage.h:
+	* gst/gstobject.c:
+	* gst/gstpreset.c:
+	* gst/gstquery.h:
+	* gst/gsttoc.c:
+	* gst/gstvalue.c:
+	  introspection: add nullability annotations to out and inout params
+	  https://bugzilla.gnome.org/show_bug.cgi?id=730957
+
+2014-06-11 15:21:34 -0700  Evan Nemerson <evan@nemerson.com>
+
+	* gst/gstallocator.c:
+	* gst/gstatomicqueue.c:
+	* gst/gstbin.c:
+	* gst/gstbuffer.c:
+	* gst/gstbufferlist.c:
+	* gst/gstbus.c:
+	* gst/gstcapsfeatures.c:
+	* gst/gstchildproxy.c:
+	* gst/gstclock.c:
+	* gst/gstcontrolbinding.c:
+	* gst/gstdatetime.c:
+	* gst/gstdevicemonitorfactory.c:
+	* gst/gstelement.c:
+	* gst/gstelement.h:
+	* gst/gstelementfactory.c:
+	* gst/gstformat.c:
+	* gst/gstghostpad.c:
+	* gst/gstmemory.c:
+	* gst/gstmeta.c:
+	* gst/gstminiobject.c:
+	* gst/gstobject.c:
+	* gst/gstpad.c:
+	* gst/gstpad.h:
+	* gst/gstplugin.c:
+	* gst/gstpluginfeature.c:
+	* gst/gstpluginfeature.h:
+	* gst/gstpoll.c:
+	* gst/gstpreset.c:
+	* gst/gstregistry.c:
+	* gst/gstsample.c:
+	* gst/gststructure.c:
+	* gst/gsttaglist.c:
+	* gst/gsttagsetter.c:
+	* gst/gsttaskpool.c:
+	* gst/gsttoc.c:
+	* gst/gsttocsetter.c:
+	* gst/gsttypefind.c:
+	* gst/gsttypefindfactory.c:
+	* gst/gsturi.c:
+	* gst/gstutils.c:
+	* gst/gstvalue.c:
+	  introspection: add missing (nullable) annotations to return values
+	  Support for (nullable) was added to G-I at the same time as nullable
+	  return values.  Previous versions of G-I will not mark return values as
+	  nullable, even when an (allow-none) annotation is present, so it is
+	  not necessary to add (allow-none) annotations for compatibility with
+	  older versions of G-I.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=730957
+
+2014-06-11 17:15:39 -0700  Evan Nemerson <evan@nemerson.com>
+
+	* libs/gst/base/gstadapter.c:
+	* libs/gst/base/gstcollectpads.c:
+	* libs/gst/base/gstcollectpads.h:
+	  base: assorted introspection fixes and additions
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731542
+
+2014-06-11 17:12:20 -0700  Evan Nemerson <evan@nemerson.com>
+
+	* libs/gst/base/gstadapter.c:
+	* libs/gst/base/gstbasesink.c:
+	* libs/gst/base/gstcollectpads.c:
+	* libs/gst/base/gstindex.c:
+	* libs/gst/base/gsttypefindhelper.c:
+	  base: add (nullable) annotations to return values
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731542
+
+2014-06-26 14:08:03 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/gst/gstbufferlist.c:
+	  tests: add another buffer list test case
+
+2014-06-26 13:24:08 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/gst/gstbufferlist.c:
+	  tests: port and re-enable buffer list tests
+	  And remove some which don't apply any more.
+
+2014-06-26 11:58:04 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* tests/check/gst/gstcaps.c:
+	  tests: enhance the gstcaps test_features to also test gst_caps_set_features()
+	  Compliments my previous patch for gst_caps_set_features, which would
+	  previously assert and leak the old GstCapsFeatures if the caps already
+	  had a GstCapsFeatures and you were trying to replace it with a new one.
+
+2014-06-26 11:16:34 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* gst/gstcaps.c:
+	  caps: unset the parent refcount of the old features before freeing them in gst_caps_set_features()
+	  Otherwise gst_caps_features_free() asserts and the features structure is leaked
+
+2014-06-16 19:30:06 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* libs/gst/base/gstbaseparse.c:
+	  baseparse: avoid returning _OK for _NOT_LINKED
+	  When the parser receives non-aligned packets it can push a buffer
+	  and get a not-linked return while still leaving some data still to
+	  be parsed. This remaining data will not form a complete frame and
+	  the subclass likely returns _OK and baseparse would take that
+	  as the return, while it the element is actually not-linked.
+	  This patch fixes this by storing the last flow-return from a push
+	  and using that if a parsing operation doesn't result in data being
+	  flushed or skipped.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731474
+
+2014-06-25 11:40:57 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* plugins/elements/gstelements_private.c:
+	  elements: fix copyright and remove gtk-doc chunk
+	  Trivial as it may be, this code was mostly copied from
+	  somewhere else. The gtk-doc chunk is not needed, since
+	  it's not public API.
+
+2014-06-02 22:07:52 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* plugins/elements/gstfilesrc.c:
+	  filesrc: Ignore seek error on non-seekable files
+	  This make it works with FIFOs.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731176
+
+2014-06-22 19:36:14 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	  Back to development
+
+=== release 1.3.3 ===
+
+2014-06-22 18:07:42 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/inspect/plugin-coreelements.xml:
+	* gstreamer.doap:
+	* win32/common/config.h:
+	* win32/common/gstversion.h:
+	  Release 1.3.3
+
+2014-06-22 17:15:40 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/be.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/nb.po:
+	* po/nl.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/rw.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_TW.po:
+	  Update .po files
 
 2014-06-22 14:23:03 +0200  Sebastian Dröge <sebastian@centricular.com>
 
diff --git a/MAINTAINERS b/MAINTAINERS
index 558ddff..72aac8e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -5,7 +5,7 @@
  Wim Taymans <wim.taymans@gmail.com>
  David Schleef <ds@schleef.org>
  Tim-Philipp Müller <tim centricular net>
- Sebastian Dröge <slomo circular-chaos org>
+ Sebastian Dröge <slomo@coaxion.net>
 
 Maintainer-related issues should be addressed to:
 
diff --git a/Makefile.am b/Makefile.am
index 900342b..59251e9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc --enable-docbook
+DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc --enable-docbook --with-bash-completion-dir=no
 
 # note: keep in sync with configure.ac
 ACLOCAL_AMFLAGS = -I m4 -I common/m4
@@ -11,7 +11,8 @@
 	docs \
 	po \
 	m4 \
-	common
+	common \
+	data
 
 if BUILD_TOOLS
 SUBDIRS += tools
@@ -23,7 +24,8 @@
 	docs \
 	po \
 	m4 \
-	common
+	common \
+	data
 
 # include before EXTRA_DIST for win32 assignment
 include $(top_srcdir)/common/win32.mak
@@ -85,16 +87,22 @@
 
 if HAVE_CHECK
 check-valgrind:
-	cd tests/check && make check-valgrind
+	$(MAKE) -C tests/check check-valgrind
 
 check-torture:
-	cd tests/check && make torture
+	$(MAKE) -C tests/check torture
+
+build-checks:
+	$(MAKE) -C tests/check build-checks
 else
 check-valgrind:
 	echo "'check' library not installed, skipping"
 
 check-torture:
 	echo "'check' library not installed, skipping"
+
+build-checks:
+	echo "'check' library not installed, skipping"
 endif
 
 # FIXME: this target should be run every time we do "make release"
diff --git a/Makefile.in b/Makefile.in
index cfdec17..00ff9ca 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -110,6 +110,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -127,7 +128,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -285,6 +286,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -390,6 +395,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -551,10 +557,10 @@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-docbook
+DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-docbook --with-bash-completion-dir=no
 aclocaldir = $(datadir)/aclocal
 aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4
-SUBDIRS = pkgconfig gst libs plugins tests docs po m4 common \
+SUBDIRS = pkgconfig gst libs plugins tests docs po m4 common data \
 	$(am__append_1)
 
 # These are all the possible subdirs
@@ -563,7 +569,8 @@
 	docs \
 	po \
 	m4 \
-	common
+	common \
+	data
 
 
 # the MANIFEST contains all win32 related files that should be disted
@@ -1290,16 +1297,22 @@
 @GST_GCOV_ENABLED_FALSE@	echo "Need to reconfigure with --enable-gcov"
 
 @HAVE_CHECK_TRUE@check-valgrind:
-@HAVE_CHECK_TRUE@	cd tests/check && make check-valgrind
+@HAVE_CHECK_TRUE@	$(MAKE) -C tests/check check-valgrind
 
 @HAVE_CHECK_TRUE@check-torture:
-@HAVE_CHECK_TRUE@	cd tests/check && make torture
+@HAVE_CHECK_TRUE@	$(MAKE) -C tests/check torture
+
+@HAVE_CHECK_TRUE@build-checks:
+@HAVE_CHECK_TRUE@	$(MAKE) -C tests/check build-checks
 @HAVE_CHECK_FALSE@check-valgrind:
 @HAVE_CHECK_FALSE@	echo "'check' library not installed, skipping"
 
 @HAVE_CHECK_FALSE@check-torture:
 @HAVE_CHECK_FALSE@	echo "'check' library not installed, skipping"
 
+@HAVE_CHECK_FALSE@build-checks:
+@HAVE_CHECK_FALSE@	echo "'check' library not installed, skipping"
+
 # FIXME: this target should be run every time we do "make release"
 # find a way of automating that
 win32-update:
diff --git a/NEWS b/NEWS
index 234351d..a4e47ed 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-This is GStreamer 1.3.3
+This is GStreamer 1.4.0
 
 Changes since 1.2:
 
@@ -97,7 +97,7 @@
      are available on OS X and iOS now.
 
  • Other changes:
-   ∘ gst-libav now uses libav 10.1, and gained support for H265/HEVC.
+   ∘ gst-libav now uses libav 10.2, and gained support for H265/HEVC.
    ∘ Support for hardware codecs and special memory types has been
      improved with bugfixes and feature additions in various plugins
      and base classes.
@@ -129,7 +129,7 @@
      with downstream via caps.
    ∘ Lots of fixes for coverity warnings all over the place.
    ∘ Negotiation related performance improvements.
-   ∘ 500+ fixed bug reports, and many other bug fixes and other
+   ∘ 800+ fixed bug reports, and many other bug fixes and other
      improvements everywhere that had no bug report.
 
 Things to look out for:
@@ -137,6 +137,9 @@
    element.
  • The mfcdec element was removed and replaced by v4l2videodec.
  • osxvideosink is only available in OS X 10.6 or newer.
- • The GstDeviceMonitor API will likely change slightly before the
-   1.4.0 release.
-
+ • On Android the namespace of the automatically generated Java class
+   for initialization of GStreamer has changed from com.gstreamer to
+   org.freedesktop.gstreamer to prevent namespace pollution.
+ • On iOS you have to update your gst_ios_init.h and gst_ios_init.m in
+   your projects from the one included in the binaries if you used the
+   GnuTLS GIO module before. The loading mechanism has slightly changed.
diff --git a/README b/README
index da0cab4..f175b1b 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-GStreamer 1.3.x development series
+GStreamer 1.5.x development series
 
 WHAT IT IS
 ----------
diff --git a/RELEASE b/RELEASE
index 0bcf059..4d4929d 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,22 +1,35 @@
 
-Release notes for GStreamer 1.3.3
+Release notes for GStreamer 1.4.0
 
 
-The GStreamer team is pleased to announce the third release of the unstable
-1.3 release series. The 1.3 release series is adding new features on top of
-the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x release
-series of the GStreamer multimedia framework. The unstable 1.3 release series
-will lead to the stable 1.4 release series in the next weeks, and newly added
-API can still change until that point.
+The GStreamer team is pleased to announce the first release of
+the stable 1.4 release series. The 1.4 release series is adding new
+features on top of the 1.0 and 1.2 series and is part of the API and
+ABI-stable 1.x release series of the GStreamer multimedia framework.
 
 
-This is hopefully the last 1.3 development release and will be followed by
-the first 1.4.0 release candidate (1.3.90) in 1-2 weeks. Which then hopefully
-is followed by 1.4.0 soonish in early July.
+
+Binaries for Android, iOS, Mac OS X and Windows are provided together
+with this release.
 
 
-Binaries for Android, iOS, Mac OS X and Windows will be provided separately
-during the unstable 1.3 release series.
+
+The stable 1.4 release series is API and ABI compatible with 1.0.x,
+1.2.x and any other 1.x release series in the future. Compared to 1.2.x
+it contains some new features and more intrusive changes that were
+considered too risky as a bugfix.
+
+
+
+The versioning scheme that is used in general is that 1.x.y is API and
+ABI backwards compatible with previous 1.x.y releases. If x is an even
+number it is a stable release series and all releases in this series
+will only contain important bugfixes, e.g. the 1.0 series with 1.0.7. If
+x is odd it is a development release series that will lead to the next
+stable release series 1.x+1 and contains new features and bigger
+changes. During the development release series, new API can still
+change.
+
 
 
 This module, gstreamer, only contains core functionality.
@@ -42,25 +55,8 @@
 
 Bugs fixed in this release
      
-      * 732007 : Rename GstGlobalDeviceMonitor
-      * 703021 : Missing Gst.VERSION_MAJOR, Gst.VERSION_MINOR
-      * 709224 : audio/videodecoder: Not returning GST_FLOW_EOS when after segment
-      * 710268 : basetransform: cannot answer GST_QUERY_ALLOCATION if its src has ANY caps
-      * 727746 : Factor buffer flags-to-string code
-      * 729440 : docs: DeviceMonitor missing in generated doc
-      * 729701 : baseparse: rate parameter from segment event could not pass to downstream
-      * 730718 : POTFILES.in is out of date
-      * 730982 : Minor annotation fixes
-      * 731302 : gst_data_queue_new documentation is misleading
-      * 731349 : queuearray: doesn't expand with initial size of 1, resulting in invalid memory access
-      * 731355 : GstFlowCombiner not introspection-friendly
-      * 731442 : bytereader: optimize _scan_for_start_code() using pointer access
-      * 731541 : minor introspection fixes
-      * 731704 : gst_caps_is_any() returns FALSE or flag value, not TRUE or FALSE
-      * 731716 : funnel: fix eos handling and unit test case
-      * 731756 : gstvalue: Speed up gst_value_intersect/_subtract
-      * 731892 : gstvalue: Avoid expensive g_type_check_value_holds calls when dealing with fundamental GType
-      * 727611 : bufferpool: Add _set_flushing() and new (active,flushing) state
+      * 733121 : debugutils: Unref pad template after use
+      * 733291 : typefindelement: Propagate input buffer PTS and DTS
 
 ==== Download ====
 
@@ -98,17 +94,8 @@
 Contributors to this release
     
       * Edward Hervey
-      * Evan Nemerson
-      * Nicolas Dufresne
-      * Olivier Crête
-      * Philip Withnall
-      * Piotr Drąg
       * Sebastian Dröge
-      * Srimanta Panda
-      * Sungho Bae
+      * Sebastian Rasmussen
       * Thiago Santos
-      * Tim-Philipp Müller
-      * Vincent Penquerc'h
-      * Wim Taymans
-      * zhouming
+      * Thibault Saunier
  
\ No newline at end of file
diff --git a/aclocal.m4 b/aclocal.m4
index 883bfc1..8936cf2 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -123,10 +123,9 @@
 # configured tree to be moved without reconfiguration.
 
 AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
 ])
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
@@ -1478,6 +1477,7 @@
 m4_include([common/m4/as-libtool.m4])
 m4_include([common/m4/as-version.m4])
 m4_include([common/m4/ax_create_stdint_h.m4])
+m4_include([common/m4/ax_pthread.m4])
 m4_include([common/m4/gst-arch.m4])
 m4_include([common/m4/gst-args.m4])
 m4_include([common/m4/gst-check.m4])
@@ -1496,7 +1496,6 @@
 m4_include([common/m4/gtk-doc.m4])
 m4_include([common/m4/introspection.m4])
 m4_include([common/m4/pkg.m4])
-m4_include([m4/ax_pthread.m4])
 m4_include([m4/check-checks.m4])
 m4_include([m4/gettext.m4])
 m4_include([m4/iconv.m4])
diff --git a/common/Makefile.in b/common/Makefile.in
index 6c35ad6..54dbfa4 100644
--- a/common/Makefile.in
+++ b/common/Makefile.in
@@ -89,6 +89,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -106,7 +107,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -214,6 +215,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -319,6 +324,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/common/check.mak b/common/check.mak
index 611546a..efd5458 100644
--- a/common/check.mak
+++ b/common/check.mak
@@ -46,7 +46,8 @@
 
 # valgrind any given test by running make test.valgrind
 %.valgrind: %
-	@$(TESTS_ENVIRONMENT)					\
+	@valgrind_log=$(subst /,-,$*-valgrind.log);		\
+	$(TESTS_ENVIRONMENT)					\
 	CK_DEFAULT_TIMEOUT=360					\
 	G_SLICE=always-malloc					\
 	$(LIBTOOL) --mode=execute				\
@@ -55,12 +56,12 @@
 	--tool=memcheck --leak-check=full --trace-children=yes	\
 	--show-possibly-lost=no                                 \
 	--leak-resolution=high --num-callers=20			\
-	./$* 2>&1 | tee valgrind.log
-	@if grep "==" valgrind.log > /dev/null 2>&1; then	\
-	    rm valgrind.log;					\
+	./$* 2>&1 | tee $$valgrind_log ;			\
+	if grep "==" $$valgrind_log > /dev/null 2>&1; then	\
+	    rm $$valgrind_log;					\
 	    exit 1;						\
-	fi
-	@rm valgrind.log
+	fi ;							\
+	rm $$valgrind_log
 
 # valgrind any given test and generate suppressions for it
 %.valgrind.gen-suppressions: %
@@ -150,19 +151,13 @@
 # valgrind all tests
 valgrind: $(TESTS)
 	@echo "Valgrinding tests ..."
-	@failed=0;							\
+	@failed=0; valgrind_targets="";					\
 	for t in $(filter-out $(VALGRIND_TESTS_DISABLE),$(TESTS)); do	\
-		$(MAKE) $$t.valgrind;					\
-		if test "$$?" -ne 0; then                               \
-			echo "Valgrind error for test $$t";		\
-			failed=`expr $$failed + 1`;			\
-			whicht="$$whicht $$t";				\
-		fi;							\
+	  valgrind_targets="$$valgrind_targets $$t.valgrind";		\
 	done;								\
-	if test "$$failed" -ne 0; then					\
-		echo "$$failed tests had leaks or errors under valgrind:";	\
-		echo "$$whicht";					\
-		false;							\
+	if ! $(MAKE) $$valgrind_targets ; then				\
+	  echo "Some tests had leaks or errors under valgrind";		\
+	  false;							\
 	fi
 
 # valgrind all tests until failure
@@ -215,6 +210,9 @@
 	  do echo Inspecting $$e;					\
 	     $(GST_INSPECT) $$e > /dev/null 2>&1; done
 
+# build all tests
+build-checks: $(TESTS)
+
 help:
 	@echo
 	@echo "make check                         -- run all checks"
@@ -237,6 +235,7 @@
 	@echo "make (dir)/(test).valgrind.gen-suppressions -- generate suppressions"
 	@echo "                                               and save to suppressions.log"
 	@echo "make inspect                       -- inspect all plugin features"
+	@echo "make build-checks                  -- build all checks (but don't run them)"
 	@echo
 	@echo
 	@echo "Additionally, you can use the GST_CHECKS environment variable to"
diff --git a/common/gst-indent b/common/gst-indent
index 732b2ba..b5e808f 100755
--- a/common/gst-indent
+++ b/common/gst-indent
@@ -9,13 +9,19 @@
 
 version=`gnuindent --version 2>/dev/null`
 if test "x$version" = "x"; then
-  version=`indent --version 2>/dev/null`
+  version=`gindent --version 2>/dev/null`
   if test "x$version" = "x"; then
-    echo "GStreamer git pre-commit hook:"
-    echo "Did not find GNU indent, please install it before continuing."
-    exit 1
+    version=`indent --version 2>/dev/null`
+    if test "x$version" = "x"; then
+      echo "GStreamer git pre-commit hook:"
+      echo "Did not find GNU indent, please install it before continuing."
+      exit 1
+    else
+      INDENT=indent
+    fi
+  else
+    INDENT=gindent
   fi
-  INDENT=indent
 else
   INDENT=gnuindent
 fi
diff --git a/common/gst.supp b/common/gst.supp
index 2c60392..c08f660 100644
--- a/common/gst.supp
+++ b/common/gst.supp
@@ -3965,3 +3965,10 @@
    ...
    fun:g_quark_from*_string
 }
+
+{
+  <timer_create suppressions for earlier valgrind versions that complain>
+  Memcheck:Param
+  timer_create(evp)
+  fun:timer_create@@GLIBC_2.3.3
+}
diff --git a/common/m4/Makefile.am b/common/m4/Makefile.am
index 3d387ee..cdcec8c 100644
--- a/common/m4/Makefile.am
+++ b/common/m4/Makefile.am
@@ -11,6 +11,7 @@
 	as-python.m4 \
 	as-version.m4 \
 	ax_create_stdint_h.m4 \
+	ax_pthread.m4 \
 	glib-gettext.m4 \
 	gst-arch.m4 \
 	gst-args.m4 \
diff --git a/common/m4/Makefile.in b/common/m4/Makefile.in
index 4f6ed35..7c98e62 100644
--- a/common/m4/Makefile.in
+++ b/common/m4/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -153,6 +154,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -258,6 +263,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -432,6 +438,7 @@
 	as-python.m4 \
 	as-version.m4 \
 	ax_create_stdint_h.m4 \
+	ax_pthread.m4 \
 	glib-gettext.m4 \
 	gst-arch.m4 \
 	gst-args.m4 \
diff --git a/m4/ax_pthread.m4 b/common/m4/ax_pthread.m4
similarity index 83%
rename from m4/ax_pthread.m4
rename to common/m4/ax_pthread.m4
index d90de34..d383ad5 100644
--- a/m4/ax_pthread.m4
+++ b/common/m4/ax_pthread.m4
@@ -82,7 +82,7 @@
 #   modified version of the Autoconf Macro, you may extend this special
 #   exception to the GPL to apply to your modified version as well.
 
-#serial 18
+#serial 21
 
 AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
 AC_DEFUN([AX_PTHREAD], [
@@ -103,8 +103,8 @@
         save_LIBS="$LIBS"
         LIBS="$PTHREAD_LIBS $LIBS"
         AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
-        AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes)
-        AC_MSG_RESULT($ax_pthread_ok)
+        AC_TRY_LINK_FUNC([pthread_join], [ax_pthread_ok=yes])
+        AC_MSG_RESULT([$ax_pthread_ok])
         if test x"$ax_pthread_ok" = xno; then
                 PTHREAD_LIBS=""
                 PTHREAD_CFLAGS=""
@@ -164,6 +164,20 @@
         ;;
 esac
 
+# Clang doesn't consider unrecognized options an error unless we specify
+# -Werror. We throw in some extra Clang-specific options to ensure that
+# this doesn't happen for GCC, which also accepts -Werror.
+
+AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
+save_CFLAGS="$CFLAGS"
+ax_pthread_extra_flags="-Werror"
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
+                  [AC_MSG_RESULT([yes])],
+                  [ax_pthread_extra_flags=
+                   AC_MSG_RESULT([no])])
+CFLAGS="$save_CFLAGS"
+
 if test x"$ax_pthread_ok" = xno; then
 for flag in $ax_pthread_flags; do
 
@@ -178,7 +192,7 @@
                 ;;
 
                 pthread-config)
-                AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no)
+                AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no])
                 if test x"$ax_pthread_config" = xno; then continue; fi
                 PTHREAD_CFLAGS="`pthread-config --cflags`"
                 PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
@@ -193,7 +207,7 @@
         save_LIBS="$LIBS"
         save_CFLAGS="$CFLAGS"
         LIBS="$PTHREAD_LIBS $LIBS"
-        CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+        CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
 
         # Check for various functions.  We must include pthread.h,
         # since some functions may be macros.  (On the Sequent, we
@@ -219,7 +233,7 @@
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        AC_MSG_RESULT($ax_pthread_ok)
+        AC_MSG_RESULT([$ax_pthread_ok])
         if test "x$ax_pthread_ok" = xyes; then
                 break;
         fi
@@ -245,9 +259,9 @@
                 [attr_name=$attr; break],
                 [])
         done
-        AC_MSG_RESULT($attr_name)
+        AC_MSG_RESULT([$attr_name])
         if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
-            AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
+            AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], [$attr_name],
                                [Define to necessary symbol if this constant
                                 uses a non-standard name on your system.])
         fi
@@ -261,45 +275,54 @@
             if test "$GCC" = "yes"; then
                 flag="-D_REENTRANT"
             else
+                # TODO: What about Clang on Solaris?
                 flag="-mt -D_REENTRANT"
             fi
             ;;
         esac
-        AC_MSG_RESULT(${flag})
+        AC_MSG_RESULT([$flag])
         if test "x$flag" != xno; then
             PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
         fi
 
         AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
-            ax_cv_PTHREAD_PRIO_INHERIT, [
-                AC_LINK_IFELSE([
-                    AC_LANG_PROGRAM([[#include <pthread.h>]], [[int i = PTHREAD_PRIO_INHERIT;]])],
+            [ax_cv_PTHREAD_PRIO_INHERIT], [
+                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]],
+                                                [[int i = PTHREAD_PRIO_INHERIT;]])],
                     [ax_cv_PTHREAD_PRIO_INHERIT=yes],
                     [ax_cv_PTHREAD_PRIO_INHERIT=no])
             ])
         AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
-            AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.]))
+            [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.])])
 
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        # More AIX lossage: must compile with xlc_r or cc_r
-        if test x"$GCC" != xyes; then
-          AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
-        else
-          PTHREAD_CC=$CC
+        # More AIX lossage: compile with *_r variant
+        if test "x$GCC" != xyes; then
+            case $host_os in
+                aix*)
+                AS_CASE(["x/$CC"],
+                  [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6],
+                  [#handle absolute path differently from PATH based program lookup
+                   AS_CASE(["x$CC"],
+                     [x/*],
+                     [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])],
+                     [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])])
+                ;;
+            esac
         fi
-else
-        PTHREAD_CC="$CC"
 fi
 
-AC_SUBST(PTHREAD_LIBS)
-AC_SUBST(PTHREAD_CFLAGS)
-AC_SUBST(PTHREAD_CC)
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+
+AC_SUBST([PTHREAD_LIBS])
+AC_SUBST([PTHREAD_CFLAGS])
+AC_SUBST([PTHREAD_CC])
 
 # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
 if test x"$ax_pthread_ok" = xyes; then
-        ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1])
+        ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1])
         :
 else
         ax_pthread_ok=no
diff --git a/common/m4/gst-arch.m4 b/common/m4/gst-arch.m4
index 077a20b..4ad7680 100644
--- a/common/m4/gst-arch.m4
+++ b/common/m4/gst-arch.m4
@@ -45,9 +45,15 @@
     xalpha*)
       HAVE_CPU_ALPHA=yes
       AC_DEFINE(HAVE_CPU_ALPHA, 1, [Define if the target CPU is an Alpha]) ;;
+    xarc*)
+      HAVE_CPU_ARC=yes
+      AC_DEFINE(HAVE_CPU_ARC, 1, [Define if the target CPU is an ARC]) ;;
     xarm*)
       HAVE_CPU_ARM=yes
       AC_DEFINE(HAVE_CPU_ARM, 1, [Define if the target CPU is an ARM]) ;;
+    xaarch64*)
+      HAVE_CPU_AARCH64=yes
+      AC_DEFINE(HAVE_CPU_AARCH64, 1, [Define if the target CPU is AARCH64]) ;;
     xsparc*)
       HAVE_CPU_SPARC=yes
       AC_DEFINE(HAVE_CPU_SPARC, 1, [Define if the target CPU is a SPARC]) ;;
@@ -84,6 +90,7 @@
   AM_CONDITIONAL(HAVE_CPU_PPC,        test "x$HAVE_CPU_PPC" = "xyes")
   AM_CONDITIONAL(HAVE_CPU_PPC64,      test "x$HAVE_CPU_PPC64" = "xyes")
   AM_CONDITIONAL(HAVE_CPU_ALPHA,      test "x$HAVE_CPU_ALPHA" = "xyes")
+  AM_CONDITIONAL(HAVE_CPU_ARC,        test "x$HAVE_CPU_ARC" = "xyes")
   AM_CONDITIONAL(HAVE_CPU_ARM,        test "x$HAVE_CPU_ARM" = "xyes")
   AM_CONDITIONAL(HAVE_CPU_SPARC,      test "x$HAVE_CPU_SPARC" = "xyes")
   AM_CONDITIONAL(HAVE_CPU_HPPA,       test "x$HAVE_CPU_HPPA" = "xyes")
@@ -104,7 +111,7 @@
   AC_MSG_CHECKING([if unaligned memory access works correctly])
   if test x"$as_cv_unaligned_access" = x ; then
     case $host in
-      alpha*|arm*|hp*|mips*|sh*|sparc*|ia64*)
+      alpha*|arc*|arm*|aarch64*|hp*|mips*|sh*|sparc*|ia64*)
         _AS_ECHO_N([(blacklisted) ])
         as_cv_unaligned_access=no
 	;;
diff --git a/common/m4/gst-error.m4 b/common/m4/gst-error.m4
index bce80d2..d6487cc 100644
--- a/common/m4/gst-error.m4
+++ b/common/m4/gst-error.m4
@@ -76,14 +76,6 @@
             ])
           done
       ])
-    else
-      dnl Add -fno-strict-aliasing for GLib versions before 2.19.8
-      dnl as before G_LOCK and friends caused strict aliasing compiler
-      dnl warnings.
-      PKG_CHECK_EXISTS([glib-2.0 < 2.19.8], [
-        AS_COMPILER_FLAG(-fno-strict-aliasing,
-            ERROR_CFLAGS="$ERROR_CFLAGS -fno-strict-aliasing")
-	])
     fi
   fi
 
diff --git a/common/m4/gst-parser.m4 b/common/m4/gst-parser.m4
index b002047..382ef72 100644
--- a/common/m4/gst-parser.m4
+++ b/common/m4/gst-parser.m4
@@ -15,7 +15,7 @@
   bison_version=`$BISON_PATH --version | head -n 1 |  sed 's/^[[^0-9]]*//' | sed 's/[[^0-9]]*$//' | cut -d' ' -f1`
   AC_MSG_CHECKING([bison version $bison_version >= $bison_min_version])
 
-  if perl -we "exit ((v$bison_version ge v$bison_min_version) ? 0 : 1)"; then
+  if perl -we "exit (('v$bison_version' ge 'v$bison_min_version') ? 0 : 1)"; then
     AC_MSG_RESULT([yes])
   else
     AC_MSG_ERROR([no])
diff --git a/common/m4/gst-x11.m4 b/common/m4/gst-x11.m4
index d3baf2d..c41ddff 100644
--- a/common/m4/gst-x11.m4
+++ b/common/m4/gst-x11.m4
@@ -9,7 +9,11 @@
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
 
   dnl now try to find the HEADER
-  AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
+  HAVE_X="no"
+  AC_CHECK_HEADER([X11/Xlib.h], [
+    dnl and then the library with the most uniquitous function
+    AC_CHECK_LIB(X11, [XSync], [HAVE_X="yes"], [], [$X_LIBS $X_PRE_LIBS $X_EXTRA_LIBS])
+  ], [], [AC_INCLUDES_DEFAULT])
 
   if test "x$HAVE_X" = "xno"
   then
diff --git a/common/scangobj-merge.py b/common/scangobj-merge.py
index 4a9f1fc..46736b4 100755
--- a/common/scangobj-merge.py
+++ b/common/scangobj-merge.py
@@ -8,8 +8,9 @@
 
 from __future__ import print_function, unicode_literals
 
-import sys
+import codecs
 import os
+import sys
 
 def debug(*args):
     pass
@@ -105,10 +106,12 @@
 class GDoc:
     def load_file(self, filename):
         try:
-            lines = open(filename).readlines()
+            lines = codecs.open(filename, encoding='utf-8').readlines()
             self.load_data("".join(lines))
         except IOError:
             print ("WARNING - could not read from %s" % filename)
+        except UnicodeDecodeError as e:
+            print ("WARNING - could not parse %s: %s" % (filename, e))
 
     def save_file(self, filename, backup=False):
         """
@@ -116,7 +119,7 @@
         """
         olddata = None
         try:
-            lines = open(filename).readlines()
+            lines = codecs.open(filename, encoding='utf-8').readlines()
             olddata = "".join(lines)
         except IOError:
             print ("WARNING - could not read from %s" % filename)
@@ -128,7 +131,7 @@
             if backup:
                 os.rename(filename, filename + '.bak')
 
-        handle = open(filename, "w")
+        handle = codecs.open(filename, "w", encoding='utf-8')
         handle.write(newdata)
         handle.close()
 
diff --git a/config.guess b/config.guess
index b79252d..1f5c50c 100755
--- a/config.guess
+++ b/config.guess
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2013 Free Software Foundation, Inc.
+#   Copyright 1992-2014 Free Software Foundation, Inc.
 
-timestamp='2013-06-10'
+timestamp='2014-03-23'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -50,7 +50,7 @@
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2013 Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -149,7 +149,7 @@
 	LIBC=gnu
 	#endif
 	EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
 	;;
 esac
 
@@ -826,7 +826,7 @@
     *:MINGW*:*)
 	echo ${UNAME_MACHINE}-pc-mingw32
 	exit ;;
-    i*:MSYS*:*)
+    *:MSYS*:*)
 	echo ${UNAME_MACHINE}-pc-msys
 	exit ;;
     i*:windows32*:*)
@@ -969,10 +969,10 @@
 	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
 	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
 	;;
-    or1k:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+    openrisc*:Linux:*:*)
+	echo or1k-unknown-linux-${LIBC}
 	exit ;;
-    or32:Linux:*:*)
+    or32:Linux:*:* | or1k*:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     padre:Linux:*:*)
@@ -1260,16 +1260,26 @@
 	if test "$UNAME_PROCESSOR" = unknown ; then
 	    UNAME_PROCESSOR=powerpc
 	fi
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		case $UNAME_PROCESSOR in
-		    i386) UNAME_PROCESSOR=x86_64 ;;
-		    powerpc) UNAME_PROCESSOR=powerpc64 ;;
-		esac
+	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+	    if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+		    (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+		    grep IS_64BIT_ARCH >/dev/null
+		then
+		    case $UNAME_PROCESSOR in
+			i386) UNAME_PROCESSOR=x86_64 ;;
+			powerpc) UNAME_PROCESSOR=powerpc64 ;;
+		    esac
+		fi
 	    fi
+	elif test "$UNAME_PROCESSOR" = i386 ; then
+	    # Avoid executing cc on OS X 10.9, as it ships with a stub
+	    # that puts up a graphical alert prompting to install
+	    # developer tools.  Any system running Mac OS X 10.7 or
+	    # later (Darwin 11 and later) is required to have a 64-bit
+	    # processor. This is not true of the ARM version of Darwin
+	    # that Apple uses in portable devices.
+	    UNAME_PROCESSOR=x86_64
 	fi
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
 	exit ;;
@@ -1361,154 +1371,6 @@
 	exit ;;
 esac
 
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-	"4"
-#else
-	""
-#endif
-	); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
 cat >&2 <<EOF
 $0: unable to guess system type
 
diff --git a/config.h.in b/config.h.in
index b00caea..93a7bce 100644
--- a/config.h.in
+++ b/config.h.in
@@ -67,6 +67,9 @@
 /* location of the installed gst-plugin-scanner */
 #undef GST_PLUGIN_SCANNER_INSTALLED
 
+/* Define to 1 if you have the `alarm' function. */
+#undef HAVE_ALARM
+
 /* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
    CoreFoundation framework. */
 #undef HAVE_CFLOCALECOPYCURRENT
@@ -78,9 +81,15 @@
 /* Define to 1 if you have the `clock_gettime' function. */
 #undef HAVE_CLOCK_GETTIME
 
+/* Define if the target CPU is AARCH64 */
+#undef HAVE_CPU_AARCH64
+
 /* Define if the target CPU is an Alpha */
 #undef HAVE_CPU_ALPHA
 
+/* Define if the target CPU is an ARC */
+#undef HAVE_CPU_ARC
+
 /* Define if the target CPU is an ARM */
 #undef HAVE_CPU_ARM
 
@@ -124,6 +133,22 @@
    */
 #undef HAVE_DCGETTEXT
 
+/* Define to 1 if you have the declaration of `alarm', and to 0 if you don't.
+   */
+#undef HAVE_DECL_ALARM
+
+/* Define to 1 if you have the declaration of `localtime_r', and to 0 if you
+   don't. */
+#undef HAVE_DECL_LOCALTIME_R
+
+/* Define to 1 if you have the declaration of `strdup', and to 0 if you don't.
+   */
+#undef HAVE_DECL_STRDUP
+
+/* Define to 1 if you have the declaration of `strsignal', and to 0 if you
+   don't. */
+#undef HAVE_DECL_STRSIGNAL
+
 /* Defined if we have dladdr () */
 #undef HAVE_DLADDR
 
@@ -133,6 +158,9 @@
 /* Define to 1 if you have the `fgetpos' function. */
 #undef HAVE_FGETPOS
 
+/* Define to 1 if you have the `fork' function. */
+#undef HAVE_FORK
+
 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
 #undef HAVE_FSEEKO
 
@@ -151,6 +179,9 @@
 /* Define to 1 if you have the `getpagesize' function. */
 #undef HAVE_GETPAGESIZE
 
+/* Define to 1 if you have the `getpid' function. */
+#undef HAVE_GETPID
+
 /* Define if the GNU gettext() function is already present or preinstalled. */
 #undef HAVE_GETTEXT
 
@@ -176,6 +207,9 @@
    declares uintmax_t. */
 #undef HAVE_INTTYPES_H_WITH_UINTMAX
 
+/* Define to 1 if you have the `rt' library (-lrt). */
+#undef HAVE_LIBRT
+
 /* Define to 1 if you have the `localtime_r' function. */
 #undef HAVE_LOCALTIME_R
 
@@ -188,6 +222,9 @@
 /* Define to 1 if you have the <memory.h> header file. */
 #undef HAVE_MEMORY_H
 
+/* Define to 1 if you have the `mkstemp' function. */
+#undef HAVE_MKSTEMP
+
 /* Define to 1 if you have a working `mmap' system call. */
 #undef HAVE_MMAP
 
@@ -227,12 +264,18 @@
 /* Have PTHREAD_PRIO_INHERIT. */
 #undef HAVE_PTHREAD_PRIO_INHERIT
 
+/* Have function pthread_setname_np(const char*) */
+#undef HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID
+
 /* Define to 1 if the system has the type `ptrdiff_t'. */
 #undef HAVE_PTRDIFF_T
 
 /* Define if RDTSC is available */
 #undef HAVE_RDTSC
 
+/* Define to 1 if you have the `setitimer' function. */
+#undef HAVE_SETITIMER
+
 /* Define to 1 if you have the `sigaction' function. */
 #undef HAVE_SIGACTION
 
@@ -249,12 +292,30 @@
 /* Define to 1 if you have the <stdlib.h> header file. */
 #undef HAVE_STDLIB_H
 
+/* Define to 1 if you have the `strcasestr' function. */
+#undef HAVE_STRCASESTR
+
 /* Define to 1 if you have the <strings.h> header file. */
 #undef HAVE_STRINGS_H
 
 /* Define to 1 if you have the <string.h> header file. */
 #undef HAVE_STRING_H
 
+/* Define to 1 if you have the `strsignal' function. */
+#undef HAVE_STRSIGNAL
+
+/* Define to 1 if `it_interval' is a member of `struct itimerspec'. */
+#undef HAVE_STRUCT_ITIMERSPEC_IT_INTERVAL
+
+/* Define to 1 if `it_value' is a member of `struct itimerspec'. */
+#undef HAVE_STRUCT_ITIMERSPEC_IT_VALUE
+
+/* Define to 1 if `tv_nsec' is a member of `struct timespec'. */
+#undef HAVE_STRUCT_TIMESPEC_TV_NSEC
+
+/* Define to 1 if `tv_sec' is a member of `struct timespec'. */
+#undef HAVE_STRUCT_TIMESPEC_TV_SEC
+
 /* Define to 1 if you have the <sys/param.h> header file. */
 #undef HAVE_SYS_PARAM_H
 
@@ -279,12 +340,18 @@
 /* Define to 1 if you have the <sys/types.h> header file. */
 #undef HAVE_SYS_TYPES_H
 
+/* Define to 1 if you have the <sys/uio.h> header file. */
+#undef HAVE_SYS_UIO_H
+
 /* Define to 1 if you have the <sys/utsname.h> header file. */
 #undef HAVE_SYS_UTSNAME_H
 
 /* Define to 1 if you have the <sys/wait.h> header file. */
 #undef HAVE_SYS_WAIT_H
 
+/* Define to 1 if you have the <time.h> header file. */
+#undef HAVE_TIME_H
+
 /* Have tm_gmtoff field in struct tm */
 #undef HAVE_TM_GMTOFF
 
@@ -315,6 +382,12 @@
 /* Define to 1 if you have the <winsock2.h> header file. */
 #undef HAVE_WINSOCK2_H
 
+/* Define to 1 if you have the `_getpid' function. */
+#undef HAVE__GETPID
+
+/* Define to 1 if you have the `_strdup' function. */
+#undef HAVE__STRDUP
+
 /* the host CPU */
 #undef HOST_CPU
 
@@ -383,6 +456,12 @@
 /* Define to 1 if you have the ANSI C header files. */
 #undef STDC_HEADERS
 
+/* Need to define the itimerspec structure */
+#undef STRUCT_ITIMERSPEC_DEFINITION_MISSING
+
+/* Need to define the timespec structure */
+#undef STRUCT_TIMESPEC_DEFINITION_MISSING
+
 /* the target CPU */
 #undef TARGET_CPU
 
@@ -421,9 +500,15 @@
 /* We need at least WinXP SP2 for __stat64 */
 #undef __MSVCRT_VERSION__
 
+/* clockid_t */
+#undef clockid_t
+
 /* Define to the widest signed integer type if <stdint.h> and <inttypes.h> do
    not define. */
 #undef intmax_t
 
 /* Define to `unsigned int' if <sys/types.h> does not define. */
 #undef size_t
+
+/* timer_t */
+#undef timer_t
diff --git a/config.sub b/config.sub
index 9633db7..bba4efb 100755
--- a/config.sub
+++ b/config.sub
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2013 Free Software Foundation, Inc.
+#   Copyright 1992-2014 Free Software Foundation, Inc.
 
-timestamp='2013-08-10'
+timestamp='2014-09-11'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -68,7 +68,7 @@
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2013 Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -265,6 +265,7 @@
 	| hexagon \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
+	| k1om \
 	| le32 | le64 \
 	| lm32 \
 	| m32c | m32r | m32rle | m68000 | m68k | m88k \
@@ -282,8 +283,10 @@
 	| mips64vr5900 | mips64vr5900el \
 	| mipsisa32 | mipsisa32el \
 	| mipsisa32r2 | mipsisa32r2el \
+	| mipsisa32r6 | mipsisa32r6el \
 	| mipsisa64 | mipsisa64el \
 	| mipsisa64r2 | mipsisa64r2el \
+	| mipsisa64r6 | mipsisa64r6el \
 	| mipsisa64sb1 | mipsisa64sb1el \
 	| mipsisa64sr71k | mipsisa64sr71kel \
 	| mipsr5900 | mipsr5900el \
@@ -295,11 +298,11 @@
 	| nds32 | nds32le | nds32be \
 	| nios | nios2 | nios2eb | nios2el \
 	| ns16k | ns32k \
-	| open8 \
-	| or1k | or32 \
+	| open8 | or1k | or1knd | or32 \
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle \
 	| pyramid \
+	| riscv32 | riscv64 \
 	| rl78 | rx \
 	| score \
 	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
@@ -324,7 +327,7 @@
 	c6x)
 		basic_machine=tic6x-unknown
 		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
 		basic_machine=$basic_machine-unknown
 		os=-none
 		;;
@@ -381,6 +384,7 @@
 	| hexagon-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
+	| k1om-* \
 	| le32-* | le64-* \
 	| lm32-* \
 	| m32c-* | m32r-* | m32rle-* \
@@ -400,8 +404,10 @@
 	| mips64vr5900-* | mips64vr5900el-* \
 	| mipsisa32-* | mipsisa32el-* \
 	| mipsisa32r2-* | mipsisa32r2el-* \
+	| mipsisa32r6-* | mipsisa32r6el-* \
 	| mipsisa64-* | mipsisa64el-* \
 	| mipsisa64r2-* | mipsisa64r2el-* \
+	| mipsisa64r6-* | mipsisa64r6el-* \
 	| mipsisa64sb1-* | mipsisa64sb1el-* \
 	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
 	| mipsr5900-* | mipsr5900el-* \
@@ -413,6 +419,7 @@
 	| nios-* | nios2-* | nios2eb-* | nios2el-* \
 	| none-* | np1-* | ns16k-* | ns32k-* \
 	| open8-* \
+	| or1k*-* \
 	| orion-* \
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
@@ -822,6 +829,10 @@
 		basic_machine=powerpc-unknown
 		os=-morphos
 		;;
+	moxiebox)
+		basic_machine=moxie-unknown
+		os=-moxiebox
+		;;
 	msdos)
 		basic_machine=i386-pc
 		os=-msdos
@@ -1367,14 +1378,14 @@
 	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
 	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
-	      | -uxpv* | -beos* | -mpeix* | -udk* \
+	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
 	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
 	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1592,9 +1603,6 @@
 	mips*-*)
 		os=-elf
 		;;
-	or1k-*)
-		os=-elf
-		;;
 	or32-*)
 		os=-coff
 		;;
diff --git a/configure b/configure
index 422ee75..74d7da7 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 1.3.3.
+# Generated by GNU Autoconf 2.69 for GStreamer 1.5.0.1.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
 #
@@ -591,8 +591,8 @@
 # Identity of this package.
 PACKAGE_NAME='GStreamer'
 PACKAGE_TARNAME='gstreamer'
-PACKAGE_VERSION='1.3.3'
-PACKAGE_STRING='GStreamer 1.3.3'
+PACKAGE_VERSION='1.5.0.1'
+PACKAGE_STRING='GStreamer 1.5.0.1'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -642,6 +642,17 @@
 SUBUNIT_FALSE
 SUBUNIT_TRUE
 ENABLE_SUBUNIT
+HAVE_CLOCK_GETTIME_FALSE
+HAVE_CLOCK_GETTIME_TRUE
+HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE
+HAVE_TIMER_CREATE_SETTIME_DELETE_TRUE
+HAVE_STRSIGNAL_FALSE
+HAVE_STRSIGNAL_TRUE
+HAVE_LOCALTIME_R_FALSE
+HAVE_LOCALTIME_R_TRUE
+HAVE_ALARM_FALSE
+HAVE_ALARM_TRUE
+HAVE_FORK
 CHECK_VERSION
 CHECK_MICRO_VERSION
 CHECK_MINOR_VERSION
@@ -805,6 +816,8 @@
 HAVE_CPU_SPARC_TRUE
 HAVE_CPU_ARM_FALSE
 HAVE_CPU_ARM_TRUE
+HAVE_CPU_ARC_FALSE
+HAVE_CPU_ARC_TRUE
 HAVE_CPU_ALPHA_FALSE
 HAVE_CPU_ALPHA_TRUE
 HAVE_CPU_PPC64_FALSE
@@ -824,6 +837,12 @@
 GST_PLUGIN_BUILD_STATIC_FALSE
 GST_PLUGIN_BUILD_STATIC_TRUE
 GST_PLUGIN_LIBTOOLFLAGS
+ENABLE_BASH_COMPLETION_FALSE
+ENABLE_BASH_COMPLETION_TRUE
+BASH_HELPERS_DIR
+BASH_COMPLETION_DIR
+BASH_COMPLETION_LIBS
+BASH_COMPLETION_CFLAGS
 GST_PKG_CONFIG_PATH
 GST_PACKAGE_ORIGIN
 GST_PACKAGE_NAME
@@ -1054,6 +1073,7 @@
 with_pkg_config_path
 with_package_name
 with_package_origin
+with_bash_completion_dir
 enable_static_plugins
 enable_tests
 enable_failing_tests
@@ -1085,6 +1105,8 @@
 PKG_CONFIG
 VALGRIND_CFLAGS
 VALGRIND_LIBS
+BASH_COMPLETION_CFLAGS
+BASH_COMPLETION_LIBS
 CCAS
 CCASFLAGS
 CXX
@@ -1638,7 +1660,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 1.3.3 to adapt to many kinds of systems.
+\`configure' configures GStreamer 1.5.0.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1709,7 +1731,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer 1.3.3:";;
+     short | recursive ) echo "Configuration of GStreamer 1.5.0.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1793,6 +1815,9 @@
   --with-pkg-config-path  colon-separated list of pkg-config(1) dirs
   --with-package-name     specify package name to use in plugins
   --with-package-origin   specify package origin URL to use in plugins
+  --with-bash-completion-dir=PATH
+                          Install the bash auto-completion script in this
+                          directory. [default=yes]
   --with-html-dir=PATH    path to installed docs
   --with-memory-alignment 8,N,malloc,pagesize (default is 32)
 
@@ -1810,6 +1835,10 @@
               C compiler flags for VALGRIND, overriding pkg-config
   VALGRIND_LIBS
               linker flags for VALGRIND, overriding pkg-config
+  BASH_COMPLETION_CFLAGS
+              C compiler flags for BASH_COMPLETION, overriding pkg-config
+  BASH_COMPLETION_LIBS
+              linker flags for BASH_COMPLETION, overriding pkg-config
   CCAS        assembler compiler command (defaults to CC)
   CCASFLAGS   assembler compiler flags (defaults to CFLAGS)
   CXX         C++ compiler command
@@ -1891,7 +1920,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer configure 1.3.3
+GStreamer configure 1.5.0.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2478,6 +2507,63 @@
 
 } # ac_fn_c_check_type
 
+# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
+# ----------------------------------------------------
+# Tries to find if the field MEMBER exists in type AGGR, after including
+# INCLUDES, setting cache variable VAR accordingly.
+ac_fn_c_check_member ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
+$as_echo_n "checking for $2.$3... " >&6; }
+if eval \${$4+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$5
+int
+main ()
+{
+static $2 ac_aggr;
+if (ac_aggr.$3)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$4=yes"
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$5
+int
+main ()
+{
+static $2 ac_aggr;
+if (sizeof ac_aggr.$3)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$4=yes"
+else
+  eval "$4=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$4
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_member
+
 # ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
 # --------------------------------------------
 # Tries to find the compile-time value of EXPR in a program that includes
@@ -2664,7 +2750,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 $as_me 1.3.3, which was
+It was created by GStreamer $as_me 1.5.0.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3331,8 +3417,8 @@
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
 program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 if test x"${MISSING+set}" != xset; then
   case $am_aux_dir in
@@ -3645,7 +3731,7 @@
 
 # Define the identity of the package.
  PACKAGE='gstreamer'
- VERSION='1.3.3'
+ VERSION='1.5.0.1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -3856,9 +3942,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.3.3 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.3.3 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.3.3 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.5.0.1 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.5.0.1 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.5.0.1 | cut -d'.' -f3)
 
 
 
@@ -3869,7 +3955,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.3.3 | cut -d'.' -f4)
+  NANO=$(echo 1.5.0.1 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -8527,10 +8613,10 @@
 done
 
 
-  GST_CURRENT=303
+  GST_CURRENT=501
   GST_REVISION=0
-  GST_AGE=303
-  GST_LIBVERSION=303:0:303
+  GST_AGE=501
+  GST_LIBVERSION=501:0:501
 
 
 
@@ -15718,6 +15804,174 @@
   fi
 
 
+
+# Check whether --with-bash-completion-dir was given.
+if test "${with_bash_completion_dir+set}" = set; then :
+  withval=$with_bash_completion_dir;
+else
+  with_bash_completion_dir=yes
+fi
+
+
+if test "x$with_bash_completion_dir" = "xyes"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BASH_COMPLETION" >&5
+$as_echo_n "checking for BASH_COMPLETION... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$BASH_COMPLETION_CFLAGS"; then
+        pkg_cv_BASH_COMPLETION_CFLAGS="$BASH_COMPLETION_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"bash-completion >= 2.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "bash-completion >= 2.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_BASH_COMPLETION_CFLAGS=`$PKG_CONFIG --cflags "bash-completion >= 2.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$BASH_COMPLETION_LIBS"; then
+        pkg_cv_BASH_COMPLETION_LIBS="$BASH_COMPLETION_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"bash-completion >= 2.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "bash-completion >= 2.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_BASH_COMPLETION_LIBS=`$PKG_CONFIG --libs "bash-completion >= 2.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        BASH_COMPLETION_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "bash-completion >= 2.0"`
+        else
+	        BASH_COMPLETION_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "bash-completion >= 2.0"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$BASH_COMPLETION_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                BASH_COMPLETION_DIR="$datadir/bash-completion/completions"
+elif test $pkg_failed = untried; then
+	BASH_COMPLETION_DIR="$datadir/bash-completion/completions"
+else
+	BASH_COMPLETION_CFLAGS=$pkg_cv_BASH_COMPLETION_CFLAGS
+	BASH_COMPLETION_LIBS=$pkg_cv_BASH_COMPLETION_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	BASH_COMPLETION_DIR="`pkg-config --variable=completionsdir bash-completion`"
+fi
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BASH_COMPLETION" >&5
+$as_echo_n "checking for BASH_COMPLETION... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$BASH_COMPLETION_CFLAGS"; then
+        pkg_cv_BASH_COMPLETION_CFLAGS="$BASH_COMPLETION_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"bash-completion >= 2.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "bash-completion >= 2.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_BASH_COMPLETION_CFLAGS=`$PKG_CONFIG --cflags "bash-completion >= 2.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$BASH_COMPLETION_LIBS"; then
+        pkg_cv_BASH_COMPLETION_LIBS="$BASH_COMPLETION_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"bash-completion >= 2.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "bash-completion >= 2.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_BASH_COMPLETION_LIBS=`$PKG_CONFIG --libs "bash-completion >= 2.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        BASH_COMPLETION_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "bash-completion >= 2.0"`
+        else
+	        BASH_COMPLETION_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "bash-completion >= 2.0"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$BASH_COMPLETION_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                BASH_HELPERS_DIR="$datadir/bash-completion/helpers"
+elif test $pkg_failed = untried; then
+	BASH_HELPERS_DIR="$datadir/bash-completion/helpers"
+else
+	BASH_COMPLETION_CFLAGS=$pkg_cv_BASH_COMPLETION_CFLAGS
+	BASH_COMPLETION_LIBS=$pkg_cv_BASH_COMPLETION_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	BASH_HELPERS_DIR="`pkg-config --variable=helpersdir bash-completion`"
+fi
+else
+    BASH_COMPLETION_DIR="$with_bash_completion_dir/completions"
+    BASH_HELPERS_DIR="$with_bash_completion_dir/helpers"
+fi
+
+
+
+ if test "x$with_bash_completion_dir" != "xno"; then
+  ENABLE_BASH_COMPLETION_TRUE=
+  ENABLE_BASH_COMPLETION_FALSE='#'
+else
+  ENABLE_BASH_COMPLETION_TRUE='#'
+  ENABLE_BASH_COMPLETION_FALSE=
+fi
+
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static plugins or not" >&5
 $as_echo_n "checking whether to build static plugins or not... " >&6; }
 # Check whether --enable-static-plugins was given.
@@ -15929,11 +16183,21 @@
 
 $as_echo "#define HAVE_CPU_ALPHA 1" >>confdefs.h
  ;;
+    xarc*)
+      HAVE_CPU_ARC=yes
+
+$as_echo "#define HAVE_CPU_ARC 1" >>confdefs.h
+ ;;
     xarm*)
       HAVE_CPU_ARM=yes
 
 $as_echo "#define HAVE_CPU_ARM 1" >>confdefs.h
  ;;
+    xaarch64*)
+      HAVE_CPU_AARCH64=yes
+
+$as_echo "#define HAVE_CPU_AARCH64 1" >>confdefs.h
+ ;;
     xsparc*)
       HAVE_CPU_SPARC=yes
 
@@ -16238,6 +16502,14 @@
   HAVE_CPU_ALPHA_FALSE=
 fi
 
+   if test "x$HAVE_CPU_ARC" = "xyes"; then
+  HAVE_CPU_ARC_TRUE=
+  HAVE_CPU_ARC_FALSE='#'
+else
+  HAVE_CPU_ARC_TRUE='#'
+  HAVE_CPU_ARC_FALSE=
+fi
+
    if test "x$HAVE_CPU_ARM" = "xyes"; then
   HAVE_CPU_ARM_TRUE=
   HAVE_CPU_ARM_FALSE='#'
@@ -16338,7 +16610,7 @@
 $as_echo_n "checking if unaligned memory access works correctly... " >&6; }
   if test x"$as_cv_unaligned_access" = x ; then
     case $host in
-      alpha*|arm*|hp*|mips*|sh*|sparc*|ia64*)
+      alpha*|arc*|arm*|aarch64*|hp*|mips*|sh*|sparc*|ia64*)
         $as_echo_n "(blacklisted) " >&6
         as_cv_unaligned_access=no
 	;;
@@ -21576,7 +21848,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking bison version $bison_version >= $bison_min_version" >&5
 $as_echo_n "checking bison version $bison_version >= $bison_min_version... " >&6; }
 
-  if perl -we "exit ((v$bison_version ge v$bison_min_version) ? 0 : 1)"; then
+  if perl -we "exit (('v$bison_version' ge 'v$bison_min_version') ? 0 : 1)"; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
   else
@@ -23446,6 +23718,37 @@
         ;;
 esac
 
+# Clang doesn't consider unrecognized options an error unless we specify
+# -Werror. We throw in some extra Clang-specific options to ensure that
+# this doesn't happen for GCC, which also accepts -Werror.
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler needs -Werror to reject unknown flags" >&5
+$as_echo_n "checking if compiler needs -Werror to reject unknown flags... " >&6; }
+save_CFLAGS="$CFLAGS"
+ax_pthread_extra_flags="-Werror"
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int foo(void);
+int
+main ()
+{
+foo()
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  ax_pthread_extra_flags=
+                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+CFLAGS="$save_CFLAGS"
+
 if test x"$ax_pthread_ok" = xno; then
 for flag in $ax_pthread_flags; do
 
@@ -23515,7 +23818,7 @@
         save_LIBS="$LIBS"
         save_CFLAGS="$CFLAGS"
         LIBS="$PTHREAD_LIBS $LIBS"
-        CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+        CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
 
         # Check for various functions.  We must include pthread.h,
         # since some functions may be macros.  (On the Sequent, we
@@ -23613,12 +23916,13 @@
             if test "$GCC" = "yes"; then
                 flag="-D_REENTRANT"
             else
+                # TODO: What about Clang on Solaris?
                 flag="-mt -D_REENTRANT"
             fi
             ;;
         esac
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${flag}" >&5
-$as_echo "${flag}" >&6; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag" >&5
+$as_echo "$flag" >&6; }
         if test "x$flag" != xno; then
             PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
         fi
@@ -23631,8 +23935,7 @@
 
                 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-                    #include <pthread.h>
+#include <pthread.h>
 int
 main ()
 {
@@ -23661,9 +23964,20 @@
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        # More AIX lossage: must compile with xlc_r or cc_r
-        if test x"$GCC" != xyes; then
-          for ac_prog in xlc_r cc_r
+        # More AIX lossage: compile with *_r variant
+        if test "x$GCC" != xyes; then
+            case $host_os in
+                aix*)
+                case "x/$CC" in #(
+  x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) :
+    #handle absolute path differently from PATH based program lookup
+                   case "x$CC" in #(
+  x/*) :
+    if as_fn_executable_p ${CC}_r; then :
+  PTHREAD_CC="${CC}_r"
+fi ;; #(
+  *) :
+    for ac_prog in ${CC}_r
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
@@ -23704,26 +24018,32 @@
 
   test -n "$PTHREAD_CC" && break
 done
-test -n "$PTHREAD_CC" || PTHREAD_CC="${CC}"
-
-        else
-          PTHREAD_CC=$CC
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+ ;;
+esac ;; #(
+  *) :
+     ;;
+esac
+                ;;
+            esac
         fi
-else
-        PTHREAD_CC="$CC"
 fi
 
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+
 
 
 
 
 # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
 if test x"$ax_pthread_ok" = xyes; then
-        HAVE_PTHREAD=yes
+
+$as_echo "#define HAVE_PTHREAD 1" >>confdefs.h
+
         :
 else
         ax_pthread_ok=no
-        HAVE_PTHREAD=no
+
 fi
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -23732,7 +24052,7 @@
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
- if test "x$HAVE_PTHREAD" = "xyes"; then
+ if test "x$ax_pthread_ok" = "xyes"; then
   HAVE_PTHREAD_TRUE=
   HAVE_PTHREAD_FALSE='#'
 else
@@ -23755,6 +24075,46 @@
 done
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_setname_np(const char*)" >&5
+$as_echo_n "checking for pthread_setname_np(const char*)... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <pthread.h>
+int
+main ()
+{
+pthread_setname_np("example")
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+$as_echo "#define HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID 1" >>confdefs.h
+
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+
+for ac_header in sys/uio.h
+do :
+  ac_fn_c_check_header_compile "$LINENO" "sys/uio.h" "ac_cv_header_sys_uio_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_sys_uio_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_SYS_UIO_H 1
+_ACEOF
+
+fi
+
+done
+
+
 for ac_header in valgrind/valgrind.h
 do :
   ac_fn_c_check_header_compile "$LINENO" "valgrind/valgrind.h" "ac_cv_header_valgrind_valgrind_h" "$ac_includes_default
@@ -24011,6 +24371,18 @@
 
 
 
+for ac_func in strcasestr
+do :
+  ac_fn_c_check_func "$LINENO" "strcasestr" "ac_cv_func_strcasestr"
+if test "x$ac_cv_func_strcasestr" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_STRCASESTR 1
+_ACEOF
+
+fi
+done
+
+
 for ac_func in gmtime_r
 do :
   ac_fn_c_check_func "$LINENO" "gmtime_r" "ac_cv_func_gmtime_r"
@@ -26007,52 +26379,6 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
 $as_echo "$flag_ok" >&6; }
 
-    else
-                        if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 < 2.19.8\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "glib-2.0 < 2.19.8") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if compiler understands -fno-strict-aliasing" >&5
-$as_echo_n "checking to see if compiler understands -fno-strict-aliasing... " >&6; }
-
-  save_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -fno-strict-aliasing"
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  flag_ok=yes
-else
-  flag_ok=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CFLAGS="$save_CFLAGS"
-
-  if test "X$flag_ok" = Xyes ; then
-    ERROR_CFLAGS="$ERROR_CFLAGS -fno-strict-aliasing"
-    true
-  else
-
-    true
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-
-fi
     fi
   fi
 
@@ -26259,7 +26585,7 @@
 
 CHECK_MAJOR_VERSION=0
 CHECK_MINOR_VERSION=9
-CHECK_MICRO_VERSION=8
+CHECK_MICRO_VERSION=14
 CHECK_VERSION=$CHECK_MAJOR_VERSION.$CHECK_MINOR_VERSION.$CHECK_MICRO_VERSION
 
 
@@ -26294,6 +26620,351 @@
 done
 
 
+for ac_func in getpid _getpid
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+ac_fn_c_check_decl "$LINENO" "strdup" "ac_cv_have_decl_strdup" "$ac_includes_default"
+if test "x$ac_cv_have_decl_strdup" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_STRDUP $ac_have_decl
+_ACEOF
+
+for ac_func in _strdup
+do :
+  ac_fn_c_check_func "$LINENO" "_strdup" "ac_cv_func__strdup"
+if test "x$ac_cv_func__strdup" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE__STRDUP 1
+_ACEOF
+
+fi
+done
+
+
+for ac_func in mkstemp
+do :
+  ac_fn_c_check_func "$LINENO" "mkstemp" "ac_cv_func_mkstemp"
+if test "x$ac_cv_func_mkstemp" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_MKSTEMP 1
+_ACEOF
+
+fi
+done
+
+
+for ac_func in fork
+do :
+  ac_fn_c_check_func "$LINENO" "fork" "ac_cv_func_fork"
+if test "x$ac_cv_func_fork" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_FORK 1
+_ACEOF
+ HAVE_FORK=1
+else
+  HAVE_FORK=0
+fi
+done
+
+
+
+for ac_header in time.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "time.h" "ac_cv_header_time_h" "$ac_includes_default"
+if test "x$ac_cv_header_time_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_TIME_H 1
+_ACEOF
+
+fi
+
+done
+
+ac_fn_c_check_decl "$LINENO" "alarm" "ac_cv_have_decl_alarm" "
+    $ac_includes_default
+#if HAVE_TIME_H
+#include <time.h>
+#endif /* HAVE_TIME_H */
+
+"
+if test "x$ac_cv_have_decl_alarm" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_ALARM $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "localtime_r" "ac_cv_have_decl_localtime_r" "
+    $ac_includes_default
+#if HAVE_TIME_H
+#include <time.h>
+#endif /* HAVE_TIME_H */
+
+"
+if test "x$ac_cv_have_decl_localtime_r" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_LOCALTIME_R $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "strsignal" "ac_cv_have_decl_strsignal" "
+    $ac_includes_default
+#if HAVE_TIME_H
+#include <time.h>
+#endif /* HAVE_TIME_H */
+
+"
+if test "x$ac_cv_have_decl_strsignal" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_STRSIGNAL $ac_have_decl
+_ACEOF
+
+for ac_func in alarm setitimer strsignal
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+ if test "x$ac_cv_func_alarm" = "xyes"; then
+  HAVE_ALARM_TRUE=
+  HAVE_ALARM_FALSE='#'
+else
+  HAVE_ALARM_TRUE='#'
+  HAVE_ALARM_FALSE=
+fi
+
+ if test "x$ac_cv_func_localtime_r" = "xyes"; then
+  HAVE_LOCALTIME_R_TRUE=
+  HAVE_LOCALTIME_R_FALSE='#'
+else
+  HAVE_LOCALTIME_R_TRUE='#'
+  HAVE_LOCALTIME_R_FALSE=
+fi
+
+ if test "x$ac_cv_func_strsignal" = "xyes"; then
+  HAVE_STRSIGNAL_TRUE=
+  HAVE_STRSIGNAL_FALSE='#'
+else
+  HAVE_STRSIGNAL_TRUE='#'
+  HAVE_STRSIGNAL_FALSE=
+fi
+
+
+ac_fn_c_check_member "$LINENO" "struct timespec" "tv_sec" "ac_cv_member_struct_timespec_tv_sec" "
+#include <time.h>
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+"
+if test "x$ac_cv_member_struct_timespec_tv_sec" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_TIMESPEC_TV_SEC 1
+_ACEOF
+
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define STRUCT_TIMESPEC_DEFINITION_MISSING 1
+_ACEOF
+
+fi
+ac_fn_c_check_member "$LINENO" "struct timespec" "tv_nsec" "ac_cv_member_struct_timespec_tv_nsec" "
+#include <time.h>
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+"
+if test "x$ac_cv_member_struct_timespec_tv_nsec" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_TIMESPEC_TV_NSEC 1
+_ACEOF
+
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define STRUCT_TIMESPEC_DEFINITION_MISSING 1
+_ACEOF
+
+fi
+
+ac_fn_c_check_member "$LINENO" "struct itimerspec" "it_interval" "ac_cv_member_struct_itimerspec_it_interval" "
+#include <time.h>
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+"
+if test "x$ac_cv_member_struct_itimerspec_it_interval" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_ITIMERSPEC_IT_INTERVAL 1
+_ACEOF
+
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define STRUCT_ITIMERSPEC_DEFINITION_MISSING 1
+_ACEOF
+
+fi
+ac_fn_c_check_member "$LINENO" "struct itimerspec" "it_value" "ac_cv_member_struct_itimerspec_it_value" "
+#include <time.h>
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+"
+if test "x$ac_cv_member_struct_itimerspec_it_value" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_ITIMERSPEC_IT_VALUE 1
+_ACEOF
+
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define STRUCT_ITIMERSPEC_DEFINITION_MISSING 1
+_ACEOF
+
+fi
+
+
+ac_fn_c_check_type "$LINENO" "timer_t" "ac_cv_type_timer_t" "
+    $ac_includes_default
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+"
+if test "x$ac_cv_type_timer_t" = xyes; then :
+
+else
+
+
+$as_echo "#define timer_t int" >>confdefs.h
+
+
+fi
+
+ac_fn_c_check_type "$LINENO" "clockid_t" "ac_cv_type_clockid_t" "
+    $ac_includes_default
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+"
+if test "x$ac_cv_type_clockid_t" = xyes; then :
+
+else
+
+
+$as_echo "#define clockid_t int" >>confdefs.h
+
+
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for timer_create, timer_settime, timer_delete in -lrt" >&5
+$as_echo_n "checking for timer_create, timer_settime, timer_delete in -lrt... " >&6; }
+if ${ac_cv_lib_rt_timer_create__timer_settime__timer_delete+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lrt  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char timer_create, timer_settime, timer_delete ();
+int
+main ()
+{
+return timer_create, timer_settime, timer_delete ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_rt_timer_create__timer_settime__timer_delete=yes
+else
+  ac_cv_lib_rt_timer_create__timer_settime__timer_delete=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_timer_create__timer_settime__timer_delete" >&5
+$as_echo "$ac_cv_lib_rt_timer_create__timer_settime__timer_delete" >&6; }
+if test "x$ac_cv_lib_rt_timer_create__timer_settime__timer_delete" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBRT 1
+_ACEOF
+
+  LIBS="-lrt $LIBS"
+
+fi
+
+ if test "x$ac_cv_lib_rt_timer_create__timer_settime__timer_delete" = "xyes"; then
+  HAVE_TIMER_CREATE_SETTIME_DELETE_TRUE=
+  HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE='#'
+else
+  HAVE_TIMER_CREATE_SETTIME_DELETE_TRUE='#'
+  HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE=
+fi
+
+
+ if test "x$ac_cv_func_clock_gettime" = "xyes"; then
+  HAVE_CLOCK_GETTIME_TRUE=
+  HAVE_CLOCK_GETTIME_FALSE='#'
+else
+  HAVE_CLOCK_GETTIME_TRUE='#'
+  HAVE_CLOCK_GETTIME_FALSE=
+fi
+
 
 # ------ AX CREATE STDINT H -------------------------------------
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint types" >&5
@@ -26783,7 +27454,7 @@
 
 
 
-ac_config_files="$ac_config_files Makefile gst/Makefile gst/gstconfig.h gst/gstversion.h gst/parse/Makefile gst/printf/Makefile libs/Makefile libs/gst/Makefile libs/gst/base/Makefile libs/gst/check/Makefile libs/gst/check/libcheck/Makefile libs/gst/check/libcheck/check.h libs/gst/controller/Makefile libs/gst/helpers/Makefile libs/gst/net/Makefile plugins/Makefile plugins/elements/Makefile po/Makefile.in tests/Makefile tests/benchmarks/Makefile tests/check/Makefile tests/misc/Makefile tests/examples/Makefile tests/examples/adapter/Makefile tests/examples/controller/Makefile tests/examples/stepping/Makefile tests/examples/helloworld/Makefile tests/examples/launch/Makefile tests/examples/manual/Makefile tests/examples/memory/Makefile tests/examples/metadata/Makefile tests/examples/queue/Makefile tests/examples/streams/Makefile tests/examples/typefind/Makefile tools/Makefile common/Makefile common/m4/Makefile docs/Makefile docs/design/Makefile docs/faq/Makefile docs/gst/Makefile docs/gst/gstreamer.types docs/libs/Makefile docs/plugins/Makefile docs/manual/Makefile docs/pwg/Makefile docs/slides/Makefile docs/xsl/Makefile docs/version.entities m4/Makefile pkgconfig/Makefile stamp.h pkgconfig/gstreamer.pc pkgconfig/gstreamer-uninstalled.pc pkgconfig/gstreamer-base.pc pkgconfig/gstreamer-base-uninstalled.pc pkgconfig/gstreamer-check.pc pkgconfig/gstreamer-check-uninstalled.pc pkgconfig/gstreamer-controller.pc pkgconfig/gstreamer-controller-uninstalled.pc pkgconfig/gstreamer-net.pc pkgconfig/gstreamer-net-uninstalled.pc gstreamer.spec"
+ac_config_files="$ac_config_files Makefile data/Makefile gst/Makefile gst/gstconfig.h gst/gstversion.h gst/parse/Makefile gst/printf/Makefile libs/Makefile libs/gst/Makefile libs/gst/base/Makefile libs/gst/check/Makefile libs/gst/check/libcheck/Makefile libs/gst/check/internal-check.h:libs/gst/check/libcheck/check.h.in libs/gst/controller/Makefile libs/gst/helpers/Makefile libs/gst/net/Makefile plugins/Makefile plugins/elements/Makefile po/Makefile.in tests/Makefile tests/benchmarks/Makefile tests/check/Makefile tests/misc/Makefile tests/examples/Makefile tests/examples/adapter/Makefile tests/examples/controller/Makefile tests/examples/stepping/Makefile tests/examples/helloworld/Makefile tests/examples/launch/Makefile tests/examples/manual/Makefile tests/examples/memory/Makefile tests/examples/metadata/Makefile tests/examples/netclock/Makefile tests/examples/queue/Makefile tests/examples/streamiddemux/Makefile tests/examples/streams/Makefile tests/examples/typefind/Makefile tools/Makefile common/Makefile common/m4/Makefile docs/Makefile docs/design/Makefile docs/faq/Makefile docs/gst/Makefile docs/gst/gstreamer.types docs/libs/Makefile docs/plugins/Makefile docs/manual/Makefile docs/pwg/Makefile docs/slides/Makefile docs/xsl/Makefile docs/version.entities m4/Makefile pkgconfig/Makefile stamp.h pkgconfig/gstreamer.pc pkgconfig/gstreamer-uninstalled.pc pkgconfig/gstreamer-base.pc pkgconfig/gstreamer-base-uninstalled.pc pkgconfig/gstreamer-check.pc pkgconfig/gstreamer-check-uninstalled.pc pkgconfig/gstreamer-controller.pc pkgconfig/gstreamer-controller-uninstalled.pc pkgconfig/gstreamer-net.pc pkgconfig/gstreamer-net-uninstalled.pc gstreamer.spec"
 
 
 sed \
@@ -26994,6 +27665,10 @@
   as_fn_error $? "conditional \"BUILD_EXAMPLES\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${ENABLE_BASH_COMPLETION_TRUE}" && test -z "${ENABLE_BASH_COMPLETION_FALSE}"; then
+  as_fn_error $? "conditional \"ENABLE_BASH_COMPLETION\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${GST_PLUGIN_BUILD_STATIC_TRUE}" && test -z "${GST_PLUGIN_BUILD_STATIC_FALSE}"; then
   as_fn_error $? "conditional \"GST_PLUGIN_BUILD_STATIC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -27031,6 +27706,10 @@
   as_fn_error $? "conditional \"HAVE_CPU_ALPHA\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${HAVE_CPU_ARC_TRUE}" && test -z "${HAVE_CPU_ARC_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_CPU_ARC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${HAVE_CPU_ARM_TRUE}" && test -z "${HAVE_CPU_ARM_FALSE}"; then
   as_fn_error $? "conditional \"HAVE_CPU_ARM\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -27163,6 +27842,26 @@
   as_fn_error $? "conditional \"HAVE_CHECK\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${HAVE_ALARM_TRUE}" && test -z "${HAVE_ALARM_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_ALARM\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${HAVE_LOCALTIME_R_TRUE}" && test -z "${HAVE_LOCALTIME_R_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_LOCALTIME_R\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${HAVE_STRSIGNAL_TRUE}" && test -z "${HAVE_STRSIGNAL_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_STRSIGNAL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${HAVE_TIMER_CREATE_SETTIME_DELETE_TRUE}" && test -z "${HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_TIMER_CREATE_SETTIME_DELETE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${HAVE_CLOCK_GETTIME_TRUE}" && test -z "${HAVE_CLOCK_GETTIME_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_CLOCK_GETTIME\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${SUBUNIT_TRUE}" && test -z "${SUBUNIT_FALSE}"; then
   as_fn_error $? "conditional \"SUBUNIT\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -27564,7 +28263,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GStreamer $as_me 1.3.3, which was
+This file was extended by GStreamer $as_me 1.5.0.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -27630,7 +28329,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 config.status 1.3.3
+GStreamer config.status 1.5.0.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -28167,6 +28866,7 @@
     "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;;
     "$ac_stdint_h") CONFIG_COMMANDS="$CONFIG_COMMANDS $ac_stdint_h" ;;
     "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+    "data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;;
     "gst/Makefile") CONFIG_FILES="$CONFIG_FILES gst/Makefile" ;;
     "gst/gstconfig.h") CONFIG_FILES="$CONFIG_FILES gst/gstconfig.h" ;;
     "gst/gstversion.h") CONFIG_FILES="$CONFIG_FILES gst/gstversion.h" ;;
@@ -28177,7 +28877,7 @@
     "libs/gst/base/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/base/Makefile" ;;
     "libs/gst/check/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/check/Makefile" ;;
     "libs/gst/check/libcheck/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/check/libcheck/Makefile" ;;
-    "libs/gst/check/libcheck/check.h") CONFIG_FILES="$CONFIG_FILES libs/gst/check/libcheck/check.h" ;;
+    "libs/gst/check/internal-check.h") CONFIG_FILES="$CONFIG_FILES libs/gst/check/internal-check.h:libs/gst/check/libcheck/check.h.in" ;;
     "libs/gst/controller/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/controller/Makefile" ;;
     "libs/gst/helpers/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/helpers/Makefile" ;;
     "libs/gst/net/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/net/Makefile" ;;
@@ -28197,7 +28897,9 @@
     "tests/examples/manual/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/manual/Makefile" ;;
     "tests/examples/memory/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/memory/Makefile" ;;
     "tests/examples/metadata/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/metadata/Makefile" ;;
+    "tests/examples/netclock/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/netclock/Makefile" ;;
     "tests/examples/queue/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/queue/Makefile" ;;
+    "tests/examples/streamiddemux/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/streamiddemux/Makefile" ;;
     "tests/examples/streams/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/streams/Makefile" ;;
     "tests/examples/typefind/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/typefind/Makefile" ;;
     "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;;
diff --git a/configure.ac b/configure.ac
index 3c457aa..9e45826 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,7 +4,7 @@
 dnl when going to/from release please set the nano (fourth number) right !
 dnl releases only do Wall, git and prerelease does Werror too
 dnl
-AC_INIT([GStreamer],[1.3.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gstreamer])
+AC_INIT([GStreamer],[1.5.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gstreamer])
 AG_GST_INIT
 
 dnl initialize automake (we require GNU make)
@@ -64,7 +64,7 @@
 dnl      1.10.9 (who knows) => 1009
 dnl
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 303, 0, 303)
+AS_LIBTOOL(GST, 501, 0, 501)
 
 dnl *** autotools stuff ****
 
@@ -134,6 +134,29 @@
   ["${srcdir}/gstreamer.doap"],
   [$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_MICRO])
 
+dnl check for bash completion
+AC_ARG_WITH([bash-completion-dir],
+    AS_HELP_STRING([--with-bash-completion-dir[=PATH]],
+        [Install the bash auto-completion script in this directory. @<:@default=yes@:>@]),
+    [],
+    [with_bash_completion_dir=yes])
+
+if test "x$with_bash_completion_dir" = "xyes"; then
+    PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0],
+        [BASH_COMPLETION_DIR="`pkg-config --variable=completionsdir bash-completion`"],
+        [BASH_COMPLETION_DIR="$datadir/bash-completion/completions"])
+    PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0],
+        [BASH_HELPERS_DIR="`pkg-config --variable=helpersdir bash-completion`"],
+        [BASH_HELPERS_DIR="$datadir/bash-completion/helpers"])
+else
+    BASH_COMPLETION_DIR="$with_bash_completion_dir/completions"
+    BASH_HELPERS_DIR="$with_bash_completion_dir/helpers"
+fi
+
+AC_SUBST([BASH_COMPLETION_DIR])
+AC_SUBST([BASH_HELPERS_DIR])
+AM_CONDITIONAL([ENABLE_BASH_COMPLETION],[test "x$with_bash_completion_dir" != "xno"])
+
 dnl build static plugins or not
 AC_MSG_CHECKING([whether to build static plugins or not])
 AC_ARG_ENABLE(
@@ -338,12 +361,29 @@
 AC_CHECK_HEADERS([stdio_ext.h], [], [], [AC_INCLUDES_DEFAULT])
 
 dnl check for pthreads
-AX_PTHREAD([HAVE_PTHREAD=yes], [HAVE_PTHREAD=no])
-AM_CONDITIONAL(HAVE_PTHREAD, test "x$HAVE_PTHREAD" = "xyes")
+dnl without arguments AX_PTHREAD() will do AC_DEFINE(HAVE_PTHREAD)
+dnl which later checks use in their test code
+AX_PTHREAD()
+AM_CONDITIONAL(HAVE_PTHREAD, test "x$ax_pthread_ok" = "xyes")
 
 dnl check for sys/prctl for setting thread name on Linux
 AC_CHECK_HEADERS([sys/prctl.h], [], [], [AC_INCLUDES_DEFAULT])
 
+dnl check for pthread_setname_np(const char*)
+dnl which is present on OS X 10.6, iOS 3.2 and above
+AC_MSG_CHECKING(for pthread_setname_np(const char*))
+AC_LINK_IFELSE(
+    [AC_LANG_PROGRAM(
+        [#include <pthread.h>],
+        [pthread_setname_np("example")])],
+    [AC_MSG_RESULT(yes)
+     AC_DEFINE(HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID,1,
+        [Have function pthread_setname_np(const char*)])],
+    [AC_MSG_RESULT(no)])
+
+dnl check for sys/uio.h for writev()
+AC_CHECK_HEADERS([sys/uio.h], [], [], [AC_INCLUDES_DEFAULT])
+
 dnl Check for valgrind.h
 dnl separate from HAVE_VALGRIND because you can have the program, but not
 dnl the dev package
@@ -416,6 +456,8 @@
 
 dnl *** checks for library functions ***
 
+AC_CHECK_FUNCS([strcasestr])
+
 AC_CHECK_FUNCS([gmtime_r])
 AC_CHECK_FUNCS([localtime_r])
 AC_CHECK_FUNCS([sigaction])
@@ -764,6 +806,7 @@
 
 AC_CONFIG_FILES(
 Makefile
+data/Makefile
 gst/Makefile
 gst/gstconfig.h
 gst/gstversion.h
@@ -774,7 +817,7 @@
 libs/gst/base/Makefile
 libs/gst/check/Makefile
 libs/gst/check/libcheck/Makefile
-libs/gst/check/libcheck/check.h
+libs/gst/check/internal-check.h:libs/gst/check/libcheck/check.h.in
 libs/gst/controller/Makefile
 libs/gst/helpers/Makefile
 libs/gst/net/Makefile
@@ -794,7 +837,9 @@
 tests/examples/manual/Makefile
 tests/examples/memory/Makefile
 tests/examples/metadata/Makefile
+tests/examples/netclock/Makefile
 tests/examples/queue/Makefile
+tests/examples/streamiddemux/Makefile
 tests/examples/streams/Makefile
 tests/examples/typefind/Makefile
 tools/Makefile
diff --git a/data/Makefile.am b/data/Makefile.am
new file mode 100644
index 0000000..7098492
--- /dev/null
+++ b/data/Makefile.am
@@ -0,0 +1,4 @@
+if ENABLE_BASH_COMPLETION
+bashcompletiondir = $(BASH_COMPLETION_DIR)
+dist_bashcompletion_DATA = completions/gst-inspect-1.0 completions/gst-launch-1.0
+endif
diff --git a/data/Makefile.in b/data/Makefile.in
new file mode 100644
index 0000000..d5204ef
--- /dev/null
+++ b/data/Makefile.in
@@ -0,0 +1,681 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+subdir = data
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+	$(am__dist_bashcompletion_DATA_DIST)
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
+	$(top_srcdir)/common/m4/as-auto-alt.m4 \
+	$(top_srcdir)/common/m4/as-compiler-flag.m4 \
+	$(top_srcdir)/common/m4/as-docbook.m4 \
+	$(top_srcdir)/common/m4/as-libtool.m4 \
+	$(top_srcdir)/common/m4/as-version.m4 \
+	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/gst-arch.m4 \
+	$(top_srcdir)/common/m4/gst-args.m4 \
+	$(top_srcdir)/common/m4/gst-check.m4 \
+	$(top_srcdir)/common/m4/gst-doc.m4 \
+	$(top_srcdir)/common/m4/gst-error.m4 \
+	$(top_srcdir)/common/m4/gst-feature.m4 \
+	$(top_srcdir)/common/m4/gst-function.m4 \
+	$(top_srcdir)/common/m4/gst-gettext.m4 \
+	$(top_srcdir)/common/m4/gst-glib2.m4 \
+	$(top_srcdir)/common/m4/gst-package-release-datetime.m4 \
+	$(top_srcdir)/common/m4/gst-parser.m4 \
+	$(top_srcdir)/common/m4/gst-platform.m4 \
+	$(top_srcdir)/common/m4/gst-plugin-docs.m4 \
+	$(top_srcdir)/common/m4/gst-plugindir.m4 \
+	$(top_srcdir)/common/m4/gst.m4 \
+	$(top_srcdir)/common/m4/gtk-doc.m4 \
+	$(top_srcdir)/common/m4/introspection.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
+	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
+	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
+	$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+	$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+	$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stdint_h.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__dist_bashcompletion_DATA_DIST = completions/gst-inspect-1.0 \
+	completions/gst-launch-1.0
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
+am__installdirs = "$(DESTDIR)$(bashcompletiondir)"
+DATA = $(dist_bashcompletion_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
+BISON_PATH = @BISON_PATH@
+CAT_ENTRY_END = @CAT_ENTRY_END@
+CAT_ENTRY_START = @CAT_ENTRY_START@
+CC = @CC@
+CCAS = @CCAS@
+CCASDEPMODE = @CCASDEPMODE@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CHECK_MAJOR_VERSION = @CHECK_MAJOR_VERSION@
+CHECK_MICRO_VERSION = @CHECK_MICRO_VERSION@
+CHECK_MINOR_VERSION = @CHECK_MINOR_VERSION@
+CHECK_VERSION = @CHECK_VERSION@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIR = @DATADIR@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DEPRECATED_CFLAGS = @DEPRECATED_CFLAGS@
+DLLTOOL = @DLLTOOL@
+DOCBOOK_ROOT = @DOCBOOK_ROOT@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SUBUNIT = @ENABLE_SUBUNIT@
+ERROR_CFLAGS = @ERROR_CFLAGS@
+EXEEXT = @EXEEXT@
+FFLAGS = @FFLAGS@
+FGREP = @FGREP@
+FLEX_PATH = @FLEX_PATH@
+GCOV = @GCOV@
+GCOV_CFLAGS = @GCOV_CFLAGS@
+GCOV_LIBS = @GCOV_LIBS@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GIO_CFLAGS = @GIO_CFLAGS@
+GIO_LDFLAGS = @GIO_LDFLAGS@
+GIO_LIBS = @GIO_LIBS@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GLIB_LIBS = @GLIB_LIBS@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GLIB_PREFIX = @GLIB_PREFIX@
+GLIB_REQ = @GLIB_REQ@
+GMP_LIBS = @GMP_LIBS@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GREP = @GREP@
+GSL_LIBS = @GSL_LIBS@
+GST_AGE = @GST_AGE@
+GST_ALL_CFLAGS = @GST_ALL_CFLAGS@
+GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@
+GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
+GST_ALL_LIBS = @GST_ALL_LIBS@
+GST_API_VERSION = @GST_API_VERSION@
+GST_CURRENT = @GST_CURRENT@
+GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@
+GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@
+GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@
+GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@
+GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@
+GST_DISABLE_REGISTRY_DEFINE = @GST_DISABLE_REGISTRY_DEFINE@
+GST_DISABLE_TRACE_DEFINE = @GST_DISABLE_TRACE_DEFINE@
+GST_HAVE_MONOTONIC_CLOCK_DEFINE = @GST_HAVE_MONOTONIC_CLOCK_DEFINE@
+GST_HAVE_POSIX_TIMERS_DEFINE = @GST_HAVE_POSIX_TIMERS_DEFINE@
+GST_HAVE_UNALIGNED_ACCESS_DEFINE = @GST_HAVE_UNALIGNED_ACCESS_DEFINE@
+GST_LEVEL_DEFAULT = @GST_LEVEL_DEFAULT@
+GST_LIBVERSION = @GST_LIBVERSION@
+GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@
+GST_LICENSE = @GST_LICENSE@
+GST_LT_LDFLAGS = @GST_LT_LDFLAGS@
+GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@
+GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@
+GST_OBJ_LIBS = @GST_OBJ_LIBS@
+GST_OPTION_CFLAGS = @GST_OPTION_CFLAGS@
+GST_OPTION_CXXFLAGS = @GST_OPTION_CXXFLAGS@
+GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
+GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
+GST_PLUGIN_LDFLAGS = @GST_PLUGIN_LDFLAGS@
+GST_PLUGIN_LIBTOOLFLAGS = @GST_PLUGIN_LIBTOOLFLAGS@
+GST_PLUGIN_SCANNER_INSTALLED = @GST_PLUGIN_SCANNER_INSTALLED@
+GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@
+GST_REVISION = @GST_REVISION@
+GST_VERSION_MAJOR = @GST_VERSION_MAJOR@
+GST_VERSION_MICRO = @GST_VERSION_MICRO@
+GST_VERSION_MINOR = @GST_VERSION_MINOR@
+GST_VERSION_NANO = @GST_VERSION_NANO@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
+GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
+GTKDOC_MKPDF = @GTKDOC_MKPDF@
+GTKDOC_REBASE = @GTKDOC_REBASE@
+HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
+HAVE_DVIPS = @HAVE_DVIPS@
+HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
+HAVE_GMP = @HAVE_GMP@
+HAVE_GSL = @HAVE_GSL@
+HAVE_JADETEX = @HAVE_JADETEX@
+HAVE_PNGTOPNM = @HAVE_PNGTOPNM@
+HAVE_PNMTOPS = @HAVE_PNMTOPS@
+HAVE_PS2PDF = @HAVE_PS2PDF@
+HAVE_XMLLINT = @HAVE_XMLLINT@
+HAVE_XSLTPROC = @HAVE_XSLTPROC@
+HOST_CPU = @HOST_CPU@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INTLLIBS = @INTLLIBS@
+INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBDIR = @LIBDIR@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBM = @LIBM@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LOCALEDIR = @LOCALEDIR@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
+PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
+PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
+PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
+PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL_PATH = @PERL_PATH@
+PKG_CONFIG = @PKG_CONFIG@
+PLUGINDIR = @PLUGINDIR@
+POSUB = @POSUB@
+PRINTF_CFLAGS = @PRINTF_CFLAGS@
+PROFILE_CFLAGS = @PROFILE_CFLAGS@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VALGRIND_CFLAGS = @VALGRIND_CFLAGS@
+VALGRIND_LIBS = @VALGRIND_LIBS@
+VALGRIND_PATH = @VALGRIND_PATH@
+VERSION = @VERSION@
+WARNING_CFLAGS = @WARNING_CFLAGS@
+WIN32_LIBS = @WIN32_LIBS@
+XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
+XML_CATALOG = @XML_CATALOG@
+XSLTPROC = @XSLTPROC@
+XSLTPROC_FLAGS = @XSLTPROC_FLAGS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+ax_pthread_config = @ax_pthread_config@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+plugindir = @plugindir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+@ENABLE_BASH_COMPLETION_TRUE@bashcompletiondir = $(BASH_COMPLETION_DIR)
+@ENABLE_BASH_COMPLETION_TRUE@dist_bashcompletion_DATA = completions/gst-inspect-1.0 completions/gst-launch-1.0
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu data/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu data/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+install-dist_bashcompletionDATA: $(dist_bashcompletion_DATA)
+	@$(NORMAL_INSTALL)
+	@list='$(dist_bashcompletion_DATA)'; test -n "$(bashcompletiondir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(bashcompletiondir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(bashcompletiondir)" || exit 1; \
+	fi; \
+	for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(bashcompletiondir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(bashcompletiondir)" || exit $$?; \
+	done
+
+uninstall-dist_bashcompletionDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(dist_bashcompletion_DATA)'; test -n "$(bashcompletiondir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	dir='$(DESTDIR)$(bashcompletiondir)'; $(am__uninstall_files_from_dir)
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+	for dir in "$(DESTDIR)$(bashcompletiondir)"; do \
+	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+	done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-dist_bashcompletionDATA
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-dist_bashcompletionDATA
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+	cscopelist-am ctags-am distclean distclean-generic \
+	distclean-libtool distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am \
+	install-dist_bashcompletionDATA install-dvi install-dvi-am \
+	install-exec install-exec-am install-html install-html-am \
+	install-info install-info-am install-man install-pdf \
+	install-pdf-am install-ps install-ps-am install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
+	uninstall-am uninstall-dist_bashcompletionDATA
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/data/completions/gst-inspect-1.0 b/data/completions/gst-inspect-1.0
new file mode 100644
index 0000000..130b963
--- /dev/null
+++ b/data/completions/gst-inspect-1.0
@@ -0,0 +1,105 @@
+# GStreamer
+# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+#
+# bash/zsh completion support for gst-inspect
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
+
+if [[ ! -d "$HELPERDIR"  ]]; then
+	HELPERDIR="$(pkg-config --variable=helpersdir gstreamer-1.0)"
+else
+	HELPERDIR=`cd "$HELPERDIR"; pwd`
+fi
+
+# Common definitions
+. "$HELPERDIR"/gst
+
+HELPER="$HELPERDIR/gst-completion-helper-1.0"
+
+_inspect_all_arguments ()
+{
+	COMPREPLY=( $(compgen -W "$(gst-inspect-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
+}
+
+_inspect_all_elements ()
+{
+	COMPREPLY=( $(compgen -W "$($HELPER -l)" -- $cur) )
+}
+
+_gstinspect___atleast_version () { _mandatory__argument; }
+
+_gstinspect___exists ()
+{
+	_inspect_all_elements
+}
+
+__inspect_main ()
+{
+	local i=1 command function_exists completion_func
+
+	while [[ $i -ne $COMP_CWORD ]];
+		do
+			local var
+			var="${COMP_WORDS[i]}"
+			if [[ "$var" == "--"* ]]
+			then
+				command="$var"
+			fi
+		i=$[$i+1]
+		done
+
+	if [[ "$command" == "--gst"* ]]; then
+		completion_func="_${command//-/_}"
+	else
+		completion_func="_gstinspect_${command//-/_}"
+	fi
+
+	declare -f $completion_func >/dev/null 2>&1
+
+	function_exists=$?
+
+	if [[ "$cur" == "--"* ]]; then
+		_inspect_all_arguments
+	elif [ $function_exists -eq 0 ]
+	then
+		$completion_func
+	else
+		_inspect_all_elements
+	fi
+}
+
+__inspect_func_wrap ()
+{
+	local cur prev
+	cur="${COMP_WORDS[COMP_CWORD]}"
+	prev="${COMP_WORDS[COMP_CWORD-1]}"
+	$1
+}
+
+# Setup completion for certain functions defined above by setting common
+# variables and workarounds.
+# This is NOT a public function; use at your own risk.
+__inspect_complete ()
+{
+	local wrapper="__inspect_wrap${2}"
+	eval "$wrapper () { __inspect_func_wrap $2 ; }"
+	complete -o bashdefault -o default -o nospace -F $wrapper $1 2>/dev/null \
+		|| complete -o default -o nospace -F $wrapper $1
+}
+
+__inspect_complete gst-inspect-1.0 __inspect_main
diff --git a/data/completions/gst-launch-1.0 b/data/completions/gst-launch-1.0
new file mode 100644
index 0000000..a12e06e
--- /dev/null
+++ b/data/completions/gst-launch-1.0
@@ -0,0 +1,143 @@
+# GStreamer
+# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+#
+# bash/zsh completion support for gst-launch
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
+
+if [[ ! -d "$HELPERDIR" ]]; then
+	HELPERDIR="$(pkg-config --variable=helpersdir gstreamer-1.0)"
+else
+	HELPERDIR=`cd "$HELPERDIR"; pwd`
+fi
+
+# Common definitions
+. "$HELPERDIR"/gst
+
+HELPER="$HELPERDIR/gst-completion-helper-1.0"
+
+_launch_all_arguments ()
+{
+	COMPREPLY=( $(compgen -W "$(gst-launch-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
+}
+
+_complete_compatible_elements ()
+{
+	COMPREPLY=( $(compgen -W "$($HELPER --compatible-with $previous_element)" -- $cur) )
+}
+
+_complete_all_elements ()
+{
+	COMPREPLY=( $(compgen -W "$($HELPER -l)" -- $cur) )
+}
+
+_complete_element_properties ()
+{
+	COMPREPLY=( $(compgen -W "$($HELPER --element-properties $previous_element)" -- $cur) )
+}
+
+_gstlaunch___exclude_ () { _mandatory__argument; }
+
+__launch_main ()
+{
+	local i=1 command function_exists previous_element have_previous_element=0 completion_func
+
+	while [[ $i -ne $COMP_CWORD ]];
+		do
+			local var
+			var="${COMP_WORDS[i]}"
+			if [[ "$var" == "--"* ]]
+			then
+				command="$var"
+			fi
+		i=$[$i+1]
+		done
+
+	i=1
+	while [[ $i -ne $COMP_CWORD ]];
+		do
+			local var
+			var="${COMP_WORDS[i]}"
+
+			if [[ "$var" == "--"* ]]
+			then
+				i=$[$i+1]
+				continue
+			fi
+
+			$(gst-inspect-1.0 --exists $var)
+			if [ $? -eq 0 ]
+			then
+				previous_element="$var"
+				have_previous_element=1
+			fi
+		i=$[$i+1]
+		done
+
+	if [[ "$command" == "--gst"* ]]; then
+		completion_func="_${command//-/_}"
+	else
+		completion_func="_gstlaunch_${command//-/_}"
+	fi
+
+	# Seems like bash doesn't like "exclude" in function names
+	if [[ "$completion_func" == "_gstlaunch___exclude" ]]
+	then
+		completion_func="_gstlaunch___exclude_"
+	fi
+
+	declare -f $completion_func >/dev/null 2>&1
+
+	function_exists=$?
+
+	if [[ "$cur" == "--"* ]]; then
+		_launch_all_arguments
+	elif [ $function_exists -eq 0 ]
+	then
+		$completion_func
+	elif [ $have_previous_element -ne 0 ] && [[ "$prev" == "!" ]]
+	then
+		_complete_compatible_elements
+	elif [ $have_previous_element -ne 0 ]
+	then
+		_complete_element_properties
+	else
+		_complete_all_elements
+	fi
+}
+
+__launch_func_wrap ()
+{
+	local cur prev
+	cur="${COMP_WORDS[COMP_CWORD]}"
+	prev="${COMP_WORDS[COMP_CWORD-1]}"
+	$1
+}
+
+# Setup completion for certain functions defined above by setting common
+# variables and workarounds.
+# This is NOT a public function; use at your own risk.
+__launch_complete ()
+{
+	local wrapper="__launch_wrap${2}"
+	eval "$wrapper () { __launch_func_wrap $2 ; }"
+	complete -o bashdefault -o default -o nospace -F $wrapper $1 2>/dev/null \
+		|| complete -o default -o nospace -F $wrapper $1
+}
+
+__launch_complete gst-launch-1.0 __launch_main
diff --git a/docs/Makefile.in b/docs/Makefile.in
index 89d44a4..67eadc4 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -95,6 +95,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -112,7 +113,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -219,6 +220,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -324,6 +329,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/design/Makefile.in b/docs/design/Makefile.in
index fa61b4a..743cfea 100644
--- a/docs/design/Makefile.in
+++ b/docs/design/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -153,6 +154,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -258,6 +263,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/design/part-latency.txt b/docs/design/part-latency.txt
index 315c756..1d109e8 100644
--- a/docs/design/part-latency.txt
+++ b/docs/design/part-latency.txt
@@ -228,12 +228,72 @@
  (out) "live", G_TYPE_BOOLEAN (default FALSE)
         - if a live element is found upstream
 
- (out) "min-latency", G_TYPE_UINT64 (default 0)
-        - the minimum latency in the pipeline
+ (out) "min-latency", G_TYPE_UINT64 (default 0, must not be NONE)
+        - the minimum latency in the pipeline, meaning the minimum time
+          downstream elements synchronizing to the clock have to wait until
+          they can be sure that all data for the current running time has
+          been received.
 
- (out) "max-latency", G_TYPE_UINT64 (default 0)
-        - the maximum latency in the pipeline
+          Elements answering the latency query and introducing latency must
+          set this to the maximum time for which they will delay data, while
+          considering upstream's minimum latency. As such, from an element's
+          perspective this is *not* its own minimum latency but its own
+          maximum latency.
+          Considering upstream's minimum latency in general means that the
+          element's own value is added to upstream's value, as this will give
+          the overall minimum latency of all elements from the source to the
+          current element:
 
+          min_latency = upstream_min_latency + own_min_latency
+
+ (out) "max-latency", G_TYPE_UINT64 (default 0, NONE meaning infinity)
+        - the maximum latency in the pipeline, meaning the maximum time an
+          element synchronizing to the clock is allowed to wait for receiving
+          all data for the current running time. Waiting for a longer time
+          will result in data loss, overruns and underruns of buffers and in
+          general breaks synchronized data flow in the pipeline.
+
+          Elements answering the latency query should set this to the maximum
+          time for which they can buffer upstream data without blocking or
+          dropping further data. For an element this value will generally be
+          its own minimum latency, but might be bigger than that if it can
+          buffer more data. As such, queue elements can be used to increase
+          the maximum latency.
+
+          The value set in the query should again consider upstream's maximum
+          latency:
+          - If the current element has blocking buffering, i.e. it does
+            not drop data by itself when its internal buffer is full, it should
+            just add its own maximum latency (i.e. the size of its internal
+            buffer) to upstream's value. If upstream's maximum latency, or the
+            elements internal maximum latency was NONE (i.e. infinity), it will
+            be set to infinity.
+
+            if (upstream_max_latency == NONE || own_max_latency == NONE)
+              max_latency = NONE;
+            else
+              max_latency = upstream_max_latency + own_max_latency
+
+            If the element has multiple sinkpads, the minimum upstream latency is
+            the maximum of all live upstream minimum latencies.
+
+          - If the current element has leaky buffering, i.e. it drops data by
+            itself when its internal buffer is full, it should take the minimum
+            of its own maximum latency and upstream's. Examples for such
+            elements are audio sinks and sources with an internal ringbuffer,
+            leaky queues and in general live sources with a limited amount of
+            internal buffers that can be used.
+
+            max_latency = MIN (upstream_max_latency, own_max_latency)
+
+            Note: many GStreamer base classes allow subclasses to set a
+            minimum and maximum latency and handle the query themselves. These
+            base classes assume non-leaky (i.e. blocking) buffering for the
+            maximum latency. The base class' default query handler needs to be
+            overridden to correctly handle leaky buffering.
+
+            If the element has multiple sinkpads, the maximum upstream latency is
+            the minimum of all live upstream maximum latencies.
 
 Event
 ~~~~~
@@ -254,8 +314,10 @@
 When the pipeline collected all ASYNC_DONE messages it can calculate the global
 latency as follows:
 
-  - perform a latency query on all sinks.
-  - latency = MAX (all min latencies) 
+  - perform a latency query on all sinks
+    - sources set their minimum and maximum latency
+    - other elements add their own values as described above
+  - latency = MAX (all min latencies)
   - if MIN (all max latencies) < latency we have an impossible situation and we
     must generate an error indicating that this pipeline cannot be played. This
     usually means that there is not enough buffering in some chain of the
diff --git a/docs/faq/Makefile.in b/docs/faq/Makefile.in
index fba0a6f..e9c6ae4 100644
--- a/docs/faq/Makefile.in
+++ b/docs/faq/Makefile.in
@@ -114,6 +114,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -131,7 +132,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/faq/developing.xml b/docs/faq/developing.xml
index 271236e..0f9a388 100644
--- a/docs/faq/developing.xml
+++ b/docs/faq/developing.xml
@@ -204,9 +204,7 @@
 in 'unified context' format (use diff -u -p). They should be attached to
 a bug report (or feature request) in
 <ulink url="http://bugzilla.gnome.org">bugzilla</ulink> rather than
-sent to the mailing list. Also see
-<ulink url="http://gstreamer.freedesktop.org/wiki/SubmittingPatches">SubmittingPatches</ulink>
-in the GStreamer wiki.
+sent to the mailing list.
         </para>
       </answer>
     </qandaentry>
diff --git a/docs/gst/Makefile.in b/docs/gst/Makefile.in
index 29d8e69..71433c1 100644
--- a/docs/gst/Makefile.in
+++ b/docs/gst/Makefile.in
@@ -109,6 +109,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -126,7 +127,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -174,6 +175,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -281,6 +286,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/gst/gst-universe.svg b/docs/gst/gst-universe.svg
index 9096ba4..e69de29 100644
--- a/docs/gst/gst-universe.svg
+++ b/docs/gst/gst-universe.svg
@@ -1,293 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by graphviz version 2.26.3 (20100126.1600)
- -->
-<!-- Title: pipeline Pages: 1 -->
-<svg width="710pt" height="632pt"
- viewBox="0.00 0.00 710.00 632.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-<g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 628)">
-<title>pipeline</title>
-<polygon fill="white" stroke="white" points="-4,5 -4,-628 707,-628 707,5 -4,5"/>
-<!-- application -->
-<g id="node1" class="node"><title>application</title>
-<polygon fill="#ffdddd" stroke="black" points="549,-624 481,-624 481,-588 549,-588 549,-624"/>
-<text text-anchor="middle" x="515" y="-603.4" font-family="Bitstream Vera Sans" font-size="9.00">application</text>
-</g>
-<!-- bus -->
-<g id="node3" class="node"><title>bus</title>
-<a xlink:href="GstBus.html" xlink:title="bus" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="123,-464 69,-464 69,-428 123,-428 123,-464"/>
-<text text-anchor="middle" x="96" y="-443.4" font-family="Bitstream Vera Sans" font-size="9.00">bus</text>
-</a>
-</g>
-<!-- application&#45;&gt;bus -->
-<g id="edge48" class="edge"><title>application&#45;&gt;bus</title>
-<path fill="none" stroke="black" d="M480.889,-603.237C387.135,-595.315 130.777,-571.331 105,-544 87.773,-525.735 87.3582,-496.146 90.1306,-474.254"/>
-<polygon fill="black" stroke="black" points="93.6146,-474.626 91.6879,-464.208 86.6972,-473.554 93.6146,-474.626"/>
-<text text-anchor="middle" x="121" y="-523.7" font-family="Bitstream Vera Sans" font-size="7.00">listen on</text>
-</g>
-<!-- event -->
-<g id="node9" class="node"><title>event</title>
-<a xlink:href="gstreamer-GstEvent.html" xlink:title="event" target="_top">
-<polygon fill="#ddffdd" stroke="black" points="593,-304 539,-304 539,-268 593,-268 593,-304"/>
-<text text-anchor="middle" x="566" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">event</text>
-</a>
-</g>
-<!-- application&#45;&gt;event -->
-<g id="edge52" class="edge"><title>application&#45;&gt;event</title>
-<path fill="none" stroke="black" d="M549.192,-597.789C583.091,-587.369 630,-565.765 630,-526 630,-526 630,-526 630,-366 630,-345.478 628.047,-338.613 616,-322 611.95,-316.415 606.766,-311.359 601.278,-306.92"/>
-<polygon fill="black" stroke="black" points="603.233,-304.012 593.115,-300.868 599.064,-309.635 603.233,-304.012"/>
-<text text-anchor="middle" x="639" y="-443.7" font-family="Bitstream Vera Sans" font-size="7.00">send</text>
-</g>
-<!-- pipeline -->
-<g id="node13" class="node"><title>pipeline</title>
-<a xlink:href="GstPipeline.html" xlink:title="pipeline" target="_top">
-<polygon fill="#ccccff" stroke="black" points="200,-544 146,-544 146,-508 200,-508 200,-544"/>
-<text text-anchor="middle" x="173" y="-523.4" font-family="Bitstream Vera Sans" font-size="9.00">pipeline</text>
-</a>
-</g>
-<!-- application&#45;&gt;pipeline -->
-<g id="edge46" class="edge"><title>application&#45;&gt;pipeline</title>
-<path fill="none" stroke="black" d="M480.957,-598.037C416.487,-582.956 277.059,-550.341 210.214,-534.705"/>
-<polygon fill="black" stroke="black" points="210.665,-531.216 200.131,-532.346 209.071,-538.032 210.665,-531.216"/>
-<text text-anchor="middle" x="361.5" y="-563.7" font-family="Bitstream Vera Sans" font-size="7.00">has</text>
-</g>
-<!-- query -->
-<g id="node16" class="node"><title>query</title>
-<a xlink:href="gstreamer-GstQuery.html" xlink:title="query" target="_top">
-<polygon fill="#ddffdd" stroke="black" points="688,-304 634,-304 634,-268 688,-268 688,-304"/>
-<text text-anchor="middle" x="661" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">query</text>
-</a>
-</g>
-<!-- application&#45;&gt;query -->
-<g id="edge50" class="edge"><title>application&#45;&gt;query</title>
-<path fill="none" stroke="black" d="M549.2,-597.216C598.582,-583.512 684,-555.54 684,-526 684,-526 684,-526 684,-366 684,-347.981 678.544,-328.536 672.946,-313.329"/>
-<polygon fill="black" stroke="black" points="676.203,-312.047 669.304,-304.006 669.683,-314.594 676.203,-312.047"/>
-<text text-anchor="middle" x="693" y="-443.7" font-family="Bitstream Vera Sans" font-size="7.00">send</text>
-</g>
-<!-- bin -->
-<g id="node2" class="node"><title>bin</title>
-<a xlink:href="GstBin.html" xlink:title="bin" target="_top">
-<polygon fill="#ccccff" stroke="black" points="344,-464 290,-464 290,-428 344,-428 344,-464"/>
-<text text-anchor="middle" x="317" y="-443.4" font-family="Bitstream Vera Sans" font-size="9.00">bin</text>
-</a>
-</g>
-<!-- element -->
-<g id="node7" class="node"><title>element</title>
-<a xlink:href="GstElement.html" xlink:title="element" target="_top">
-<polygon fill="#ccccff" stroke="black" points="380,-384 326,-384 326,-348 380,-348 380,-384"/>
-<text text-anchor="middle" x="353" y="-363.4" font-family="Bitstream Vera Sans" font-size="9.00">element</text>
-</a>
-</g>
-<!-- bin&#45;&gt;element -->
-<g id="edge2" class="edge"><title>bin&#45;&gt;element</title>
-<path fill="none" stroke="black" d="M314.473,-427.82C314.065,-419.637 314.632,-410.033 318,-402 319.468,-398.498 321.45,-395.145 323.729,-391.993"/>
-<polygon fill="black" stroke="black" points="326.562,-394.062 330.303,-384.15 321.197,-389.565 326.562,-394.062"/>
-<text text-anchor="middle" x="324.5" y="-403.7" font-family="Bitstream Vera Sans" font-size="7.00">is&#45;a</text>
-</g>
-<!-- bin&#45;&gt;element -->
-<g id="edge24" class="edge"><title>bin&#45;&gt;element</title>
-<path fill="none" stroke="black" d="M325.169,-427.847C329.772,-417.618 335.612,-404.64 340.752,-393.217"/>
-<polygon fill="black" stroke="black" points="343.951,-394.637 344.863,-384.081 337.568,-391.764 343.951,-394.637"/>
-<text text-anchor="middle" x="347" y="-403.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- message -->
-<g id="node10" class="node"><title>message</title>
-<a xlink:href="gstreamer-GstMessage.html" xlink:title="message" target="_top">
-<polygon fill="#ddffdd" stroke="black" points="130,-304 72,-304 72,-268 130,-268 130,-304"/>
-<text text-anchor="middle" x="101" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">message</text>
-</a>
-</g>
-<!-- bus&#45;&gt;message -->
-<g id="edge38" class="edge"><title>bus&#45;&gt;message</title>
-<path fill="none" stroke="black" d="M96.5638,-427.957C97.4266,-400.349 99.082,-347.375 100.109,-314.525"/>
-<polygon fill="black" stroke="black" points="103.616,-314.327 100.431,-304.223 96.6198,-314.108 103.616,-314.327"/>
-<text text-anchor="middle" x="113" y="-363.7" font-family="Bitstream Vera Sans" font-size="7.00">receive</text>
-</g>
-<!-- buffer -->
-<g id="node4" class="node"><title>buffer</title>
-<a xlink:href="gstreamer-GstBuffer.html" xlink:title="buffer" target="_top">
-<polygon fill="#ddffdd" stroke="black" points="526,-250 472,-250 472,-214 526,-214 526,-250"/>
-<text text-anchor="middle" x="499" y="-229.4" font-family="Bitstream Vera Sans" font-size="9.00">buffer</text>
-</a>
-</g>
-<!-- caps -->
-<g id="node5" class="node"><title>caps</title>
-<a xlink:href="gstreamer-GstCaps.html" xlink:title="caps" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="477,-116 423,-116 423,-80 477,-80 477,-116"/>
-<text text-anchor="middle" x="450" y="-95.4" font-family="Bitstream Vera Sans" font-size="9.00">caps</text>
-</a>
-</g>
-<!-- buffer&#45;&gt;caps -->
-<g id="edge20" class="edge"><title>buffer&#45;&gt;caps</title>
-<path fill="none" stroke="black" d="M492.897,-213.892C487.934,-199.296 480.682,-178.267 474,-160 469.747,-148.373 468.466,-145.547 464,-134 462.957,-131.303 461.868,-128.493 460.778,-125.684"/>
-<polygon fill="black" stroke="black" points="464.019,-124.363 457.135,-116.309 457.495,-126.898 464.019,-124.363"/>
-<text text-anchor="middle" x="497" y="-175.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- structure -->
-<g id="node18" class="node"><title>structure</title>
-<a xlink:href="gstreamer-GstStructure.html" xlink:title="structure" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="480,-36 420,-36 420,-1.77636e-14 480,-3.55271e-15 480,-36"/>
-<text text-anchor="middle" x="450" y="-15.4" font-family="Bitstream Vera Sans" font-size="9.00">structure</text>
-</a>
-</g>
-<!-- caps&#45;&gt;structure -->
-<g id="edge22" class="edge"><title>caps&#45;&gt;structure</title>
-<path fill="none" stroke="black" d="M450,-79.8468C450,-69.9251 450,-57.4167 450,-46.2492"/>
-<polygon fill="black" stroke="black" points="453.5,-46.0814 450,-36.0814 446.5,-46.0814 453.5,-46.0814"/>
-<text text-anchor="middle" x="460" y="-55.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- clock -->
-<g id="node6" class="node"><title>clock</title>
-<a xlink:href="GstClock.html" xlink:title="clock" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="202,-304 148,-304 148,-268 202,-268 202,-304"/>
-<text text-anchor="middle" x="175" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">clock</text>
-</a>
-</g>
-<!-- element&#45;&gt;buffer -->
-<g id="edge34" class="edge"><title>element&#45;&gt;buffer</title>
-<path fill="none" stroke="black" d="M380.397,-351.493C400.229,-340.184 426.959,-323.209 447,-304 460.92,-290.658 473.648,-273.171 483.028,-258.772"/>
-<polygon fill="black" stroke="black" points="486.019,-260.591 488.416,-250.27 480.106,-256.844 486.019,-260.591"/>
-<text text-anchor="middle" x="453.5" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">send &amp; receive</text>
-</g>
-<!-- element&#45;&gt;clock -->
-<g id="edge14" class="edge"><title>element&#45;&gt;clock</title>
-<path fill="none" stroke="black" d="M325.693,-361.348C299.743,-356.186 260.166,-346.35 229,-330 219.262,-324.891 209.628,-317.86 201.253,-310.916"/>
-<polygon fill="black" stroke="black" points="203.505,-308.236 193.647,-304.352 198.931,-313.535 203.505,-308.236"/>
-<text text-anchor="middle" x="251.5" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">may provide</text>
-</g>
-<!-- element_factory -->
-<g id="node8" class="node"><title>element_factory</title>
-<a xlink:href="GstElementFactory.html" xlink:title="element factory" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="310,-304 220,-304 220,-268 310,-268 310,-304"/>
-<text text-anchor="middle" x="265" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">element factory</text>
-</a>
-</g>
-<!-- element&#45;&gt;element_factory -->
-<g id="edge28" class="edge"><title>element&#45;&gt;element_factory</title>
-<path fill="none" stroke="black" d="M325.838,-357.258C311.504,-351.469 294.544,-342.591 283,-330 278.784,-325.401 275.488,-319.682 272.937,-313.905"/>
-<polygon fill="black" stroke="black" points="276.122,-312.433 269.315,-304.315 269.574,-314.907 276.122,-312.433"/>
-<text text-anchor="middle" x="311" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">is created from</text>
-</g>
-<!-- element&#45;&gt;event -->
-<g id="edge32" class="edge"><title>element&#45;&gt;event</title>
-<path fill="none" stroke="black" d="M380.142,-360.53C407.254,-354.621 449.843,-344.121 485,-330 500.082,-323.942 515.946,-315.766 529.598,-308.105"/>
-<polygon fill="black" stroke="black" points="531.72,-310.923 538.659,-302.916 528.242,-304.848 531.72,-310.923"/>
-<text text-anchor="middle" x="529.5" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">send &amp; receive</text>
-</g>
-<!-- element&#45;&gt;message -->
-<g id="edge36" class="edge"><title>element&#45;&gt;message</title>
-<path fill="none" stroke="black" d="M325.964,-361.631C294.115,-356.077 239.857,-345.332 195,-330 171.57,-321.992 165.056,-316.753 139.167,-304.146"/>
-<polygon fill="black" stroke="black" points="140.567,-300.936 130.035,-299.782 137.548,-307.252 140.567,-300.936"/>
-<text text-anchor="middle" x="204" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">send</text>
-</g>
-<!-- pad -->
-<g id="node11" class="node"><title>pad</title>
-<a xlink:href="GstPad.html" xlink:title="pad" target="_top">
-<polygon fill="#ccccff" stroke="black" points="438,-304 384,-304 384,-268 438,-268 438,-304"/>
-<text text-anchor="middle" x="411" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">pad</text>
-</a>
-</g>
-<!-- element&#45;&gt;pad -->
-<g id="edge12" class="edge"><title>element&#45;&gt;pad</title>
-<path fill="none" stroke="black" d="M366.161,-347.847C373.799,-337.311 383.552,-323.859 392.01,-312.193"/>
-<polygon fill="black" stroke="black" points="394.855,-314.232 397.891,-304.081 389.188,-310.123 394.855,-314.232"/>
-<text text-anchor="middle" x="394" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- pad_template -->
-<g id="node12" class="node"><title>pad_template</title>
-<a xlink:href="GstPadTemplate.html" xlink:title="pad template" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="414,-196 334,-196 334,-160 414,-160 414,-196"/>
-<text text-anchor="middle" x="374" y="-175.4" font-family="Bitstream Vera Sans" font-size="9.00">pad template</text>
-</a>
-</g>
-<!-- element&#45;&gt;pad_template -->
-<g id="edge10" class="edge"><title>element&#45;&gt;pad_template</title>
-<path fill="none" stroke="black" d="M352.357,-347.87C351.893,-328.148 351.819,-295.727 355,-268 357.397,-247.11 362.354,-223.9 366.605,-206.283"/>
-<polygon fill="black" stroke="black" points="370.118,-206.656 369.13,-196.107 363.324,-204.969 370.118,-206.656"/>
-<text text-anchor="middle" x="365" y="-283.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- element&#45;&gt;query -->
-<g id="edge30" class="edge"><title>element&#45;&gt;query</title>
-<path fill="none" stroke="black" d="M380.078,-363.438C420.24,-359.164 497.668,-349.102 561,-330 582.749,-323.44 606.035,-313.388 624.659,-304.547"/>
-<polygon fill="black" stroke="black" points="626.19,-307.695 633.67,-300.192 623.144,-301.392 626.19,-307.695"/>
-<text text-anchor="middle" x="599" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">answers</text>
-</g>
-<!-- plugin_feature -->
-<g id="node15" class="node"><title>plugin_feature</title>
-<a xlink:href="GstPluginFeature.html" xlink:title="plugin feature" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="163,-196 81,-196 81,-160 163,-160 163,-196"/>
-<text text-anchor="middle" x="122" y="-175.4" font-family="Bitstream Vera Sans" font-size="9.00">plugin feature</text>
-</a>
-</g>
-<!-- element_factory&#45;&gt;plugin_feature -->
-<g id="edge44" class="edge"><title>element_factory&#45;&gt;plugin_feature</title>
-<path fill="none" stroke="black" d="M241.065,-267.923C217.246,-249.934 180.538,-222.21 154.178,-202.302"/>
-<polygon fill="black" stroke="black" points="156.102,-199.37 146.013,-196.136 151.884,-204.955 156.102,-199.37"/>
-<text text-anchor="middle" x="221.5" y="-229.7" font-family="Bitstream Vera Sans" font-size="7.00">is&#45;a</text>
-</g>
-<!-- pad&#45;&gt;caps -->
-<g id="edge16" class="edge"><title>pad&#45;&gt;caps</title>
-<path fill="none" stroke="black" d="M426.207,-267.966C430.037,-262.511 433.708,-256.291 436,-250 444.01,-228.018 447.63,-164.049 449.106,-126.47"/>
-<polygon fill="black" stroke="black" points="452.615,-126.299 449.483,-116.178 445.619,-126.044 452.615,-126.299"/>
-<text text-anchor="middle" x="458" y="-175.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- pad&#45;&gt;pad_template -->
-<g id="edge26" class="edge"><title>pad&#45;&gt;pad_template</title>
-<path fill="none" stroke="black" d="M391.451,-267.737C386.938,-262.462 382.679,-256.389 380,-250 374.298,-236.4 372.567,-220.106 372.364,-206.46"/>
-<polygon fill="black" stroke="black" points="375.866,-206.226 372.481,-196.187 368.867,-206.146 375.866,-206.226"/>
-<text text-anchor="middle" x="408" y="-229.7" font-family="Bitstream Vera Sans" font-size="7.00">is created from</text>
-</g>
-<!-- pad_template&#45;&gt;caps -->
-<g id="edge18" class="edge"><title>pad_template&#45;&gt;caps</title>
-<path fill="none" stroke="black" d="M391.246,-159.847C401.449,-149.107 414.531,-135.336 425.76,-123.516"/>
-<polygon fill="black" stroke="black" points="428.473,-125.742 432.823,-116.081 423.398,-120.921 428.473,-125.742"/>
-<text text-anchor="middle" x="425" y="-135.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- pipeline&#45;&gt;bin -->
-<g id="edge4" class="edge"><title>pipeline&#45;&gt;bin</title>
-<path fill="none" stroke="black" d="M200.085,-510.953C222.869,-498.295 255.644,-480.087 280.698,-466.168"/>
-<polygon fill="black" stroke="black" points="282.505,-469.168 289.547,-461.252 279.105,-463.049 282.505,-469.168"/>
-<text text-anchor="middle" x="256.5" y="-483.7" font-family="Bitstream Vera Sans" font-size="7.00">is&#45;a</text>
-</g>
-<!-- pipeline&#45;&gt;bus -->
-<g id="edge6" class="edge"><title>pipeline&#45;&gt;bus</title>
-<path fill="none" stroke="black" d="M145.922,-512.201C136.246,-506.322 125.816,-498.779 118,-490 113.602,-485.06 109.852,-479.083 106.76,-473.148"/>
-<polygon fill="black" stroke="black" points="109.88,-471.559 102.444,-464.011 103.551,-474.548 109.88,-471.559"/>
-<text text-anchor="middle" x="128" y="-483.7" font-family="Bitstream Vera Sans" font-size="7.00">has 1</text>
-</g>
-<!-- pipeline&#45;&gt;clock -->
-<g id="edge8" class="edge"><title>pipeline&#45;&gt;clock</title>
-<path fill="none" stroke="black" d="M172.877,-507.895C172.648,-473.321 172.167,-395.504 172,-330 171.991,-326.444 171.852,-325.552 172,-322 172.101,-319.568 172.241,-317.046 172.404,-314.517"/>
-<polygon fill="black" stroke="black" points="175.913,-314.532 173.179,-304.296 168.933,-314.003 175.913,-314.532"/>
-<text text-anchor="middle" x="183" y="-403.7" font-family="Bitstream Vera Sans" font-size="7.00">has 1</text>
-</g>
-<!-- plugin -->
-<g id="node14" class="node"><title>plugin</title>
-<a xlink:href="GstPlugin.html" xlink:title="plugin" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="54,-304 2.13163e-14,-304 0,-268 54,-268 54,-304"/>
-<text text-anchor="middle" x="27" y="-283.4" font-family="Bitstream Vera Sans" font-size="9.00">plugin</text>
-</a>
-</g>
-<!-- plugin&#45;&gt;plugin_feature -->
-<g id="edge42" class="edge"><title>plugin&#45;&gt;plugin_feature</title>
-<path fill="none" stroke="black" d="M43.1155,-267.679C58.5624,-250.119 82.0245,-223.446 99.3485,-203.751"/>
-<polygon fill="black" stroke="black" points="102.146,-205.87 106.123,-196.05 96.8898,-201.247 102.146,-205.87"/>
-<text text-anchor="middle" x="99" y="-229.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-<!-- registry -->
-<g id="node17" class="node"><title>registry</title>
-<a xlink:href="GstRegistry.html" xlink:title="registry" target="_top">
-<polygon fill="#eeeeee" stroke="black" points="54,-384 2.13163e-14,-384 0,-348 54,-348 54,-384"/>
-<text text-anchor="middle" x="27" y="-363.4" font-family="Bitstream Vera Sans" font-size="9.00">registry</text>
-</a>
-</g>
-<!-- registry&#45;&gt;plugin -->
-<g id="edge40" class="edge"><title>registry&#45;&gt;plugin</title>
-<path fill="none" stroke="black" d="M27,-347.847C27,-337.925 27,-325.417 27,-314.249"/>
-<polygon fill="black" stroke="black" points="30.5001,-314.081 27,-304.081 23.5001,-314.081 30.5001,-314.081"/>
-<text text-anchor="middle" x="37" y="-323.7" font-family="Bitstream Vera Sans" font-size="7.00">has n</text>
-</g>
-</g>
-</svg>
diff --git a/docs/gst/gstreamer-docs.sgml b/docs/gst/gstreamer-docs.sgml
index c3b38fb..7e66574 100644
--- a/docs/gst/gstreamer-docs.sgml
+++ b/docs/gst/gstreamer-docs.sgml
@@ -108,6 +108,7 @@
     <xi:include href="xml/gsttocsetter.xml" />
     <xi:include href="xml/gsttypefind.xml" />
     <xi:include href="xml/gsttypefindfactory.xml" />
+    <xi:include href="xml/gsturi.xml" />
     <xi:include href="xml/gsturihandler.xml" />
     <xi:include href="xml/gstutils.xml" />
     <xi:include href="xml/gstvalue.xml" />
@@ -117,10 +118,10 @@
 
   <chapter id="gstreamer-device-probing">
     <title>GStreamer Device Discovery and Device Probing</title>
-    <xi:include href="xml/gstdevice.xml" />
     <xi:include href="xml/gstdevicemonitor.xml" />
-    <xi:include href="xml/gstdevicemonitorfactory.xml" />
-    <xi:include href="xml/gstglobaldevicemonitor.xml" />
+    <xi:include href="xml/gstdevice.xml" />
+    <xi:include href="xml/gstdeviceprovider.xml" />
+    <xi:include href="xml/gstdeviceproviderfactory.xml" />
   </chapter>
 
   <chapter id="gstreamer-support">
diff --git a/docs/gst/gstreamer-sections.txt b/docs/gst/gstreamer-sections.txt
index 60f84fe..9ebcb8c 100644
--- a/docs/gst/gstreamer-sections.txt
+++ b/docs/gst/gstreamer-sections.txt
@@ -87,6 +87,7 @@
 gst_bin_add_many
 gst_bin_remove_many
 gst_bin_find_unlinked_pad
+gst_bin_sync_children_states
 
 <SUBSECTION>
 GstBinFlags
@@ -135,6 +136,7 @@
 gst_bus_create_watch
 gst_bus_add_watch_full
 gst_bus_add_watch
+gst_bus_remove_watch
 gst_bus_disable_sync_message_emission
 gst_bus_enable_sync_message_emission
 gst_bus_async_signal_func
@@ -398,6 +400,10 @@
 GST_CAPS_FLAG_SET
 GST_CAPS_FLAG_UNSET
 
+GstCapsForeachFunc
+GstCapsMapFunc
+GstCapsFilterMapFunc
+
 gst_caps_new_empty
 gst_caps_new_empty_simple
 gst_caps_new_any
@@ -424,6 +430,9 @@
 gst_caps_set_value
 gst_caps_set_simple
 gst_caps_set_simple_valist
+gst_caps_foreach
+gst_caps_map_in_place
+gst_caps_filter_and_map_in_place
 gst_caps_is_any
 gst_caps_is_empty
 gst_caps_is_fixed
@@ -1227,6 +1236,7 @@
 <TITLE>GstInfo</TITLE>
 GstDebugLevel
 GST_LEVEL_DEFAULT
+GST_LEVEL_MAX
 GstDebugColorFlags
 GstDebugColorMode
 GstDebugCategory
@@ -1279,6 +1289,7 @@
 GST_CAT_FIXME_OBJECT
 GST_CAT_TRACE_OBJECT
 GST_CAT_MEMDUMP_OBJECT
+GST_CAT_DEFAULT
 GST_CAT_ERROR
 GST_CAT_WARNING
 GST_CAT_INFO
@@ -1492,6 +1503,7 @@
 GST_MESSAGE_TIMESTAMP
 GST_MESSAGE_SEQNUM
 GST_MESSAGE_TYPE
+GST_MESSAGE_TYPE_IS_EXTENDED
 GST_MESSAGE_TYPE_NAME
 gst_message_type_to_quark
 gst_message_type_get_name
@@ -1695,6 +1707,7 @@
 gst_object_get_name
 gst_object_set_parent
 gst_object_get_parent
+gst_object_has_parent
 gst_object_unparent
 gst_object_default_deep_notify
 gst_object_default_error
@@ -1781,6 +1794,7 @@
 gst_pad_sticky_events_foreach
 
 gst_pad_is_active
+gst_pad_get_last_flow_return
 
 <SUBSECTION probes>
 GstPadProbeReturn
@@ -1924,6 +1938,7 @@
 GST_PAD_ELEMENT_PRIVATE
 GST_PAD_PAD_TEMPLATE
 GST_PAD_DIRECTION
+GST_PAD_LAST_FLOW_RETURN
 
 GST_PAD_TASK
 GST_PAD_MODE
@@ -2280,6 +2295,7 @@
 gst_preset_get_meta
 gst_preset_set_app_dir
 gst_preset_get_app_dir
+gst_preset_is_editable
 <SUBSECTION Standard>
 GST_PRESET
 GST_IS_PRESET
@@ -2514,6 +2530,7 @@
 GstStructure
 GstStructureForeachFunc
 GstStructureMapFunc
+GstStructureFilterMapFunc
 gst_structure_new_empty
 gst_structure_new_id_empty
 gst_structure_new
@@ -2545,7 +2562,6 @@
 gst_structure_remove_fields_valist
 gst_structure_remove_all_fields
 gst_structure_get_field_type
-gst_structure_foreach
 gst_structure_n_fields
 gst_structure_has_field
 gst_structure_has_field_typed
@@ -2567,7 +2583,9 @@
 gst_structure_get_clock_time
 gst_structure_get_enum
 gst_structure_get_fraction
+gst_structure_foreach
 gst_structure_map_in_place
+gst_structure_filter_and_map_in_place
 gst_structure_nth_field_name
 gst_structure_set_parent_refcount
 gst_structure_to_string
@@ -2891,6 +2909,7 @@
 GstTocScope
 GstTocEntry
 GstTocEntryType
+GstTocLoopType
 gst_toc_new
 gst_toc_ref
 gst_toc_unref
@@ -2914,6 +2933,8 @@
 gst_toc_entry_get_parent
 gst_toc_entry_get_sub_entries
 gst_toc_entry_append_sub_entry
+gst_toc_entry_get_loop
+gst_toc_entry_set_loop
 gst_toc_entry_get_start_stop_times
 gst_toc_entry_set_start_stop_times
 gst_toc_entry_get_tags
@@ -2925,15 +2946,18 @@
 gst_toc_entry_is_sequence
 GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE
 GST_TOC_ENTRY_TYPE_IS_SEQUENCE
+GST_TOC_REPEAT_COUNT_INFINITE
 <SUBSECTION Standard>
 GST_TYPE_TOC
 GST_TYPE_TOC_ENTRY
 GST_TYPE_TOC_ENTRY_TYPE
+GST_TYPE_TOC_LOOP_TYPE
 GST_TYPE_TOC_SCOPE
 <SUBSECTION Private>
 gst_toc_get_type
 gst_toc_entry_get_type
 gst_toc_entry_type_get_type
+gst_toc_loop_type_get_type
 gst_toc_scope_get_type
 </SECTION>
 
@@ -3007,6 +3031,7 @@
 GstURIError
 gst_uri_error_quark
 GST_URI_TYPE_IS_VALID
+GST_URI_NO_PORT
 gst_uri_protocol_is_valid
 gst_uri_protocol_is_supported
 gst_uri_is_valid
@@ -3034,6 +3059,60 @@
 gst_uri_type_get_type
 </SECTION>
 
+<SECTION>
+<FILE>gsturi</FILE>
+<TITLE>GstUri</TITLE>
+GST_URI_CAST
+GST_URI_CONST_CAST
+GstUri
+gst_uri_new
+gst_uri_new_with_base
+gst_uri_from_string
+gst_uri_from_string_with_base
+gst_uri_copy
+gst_uri_equal
+gst_uri_join
+gst_uri_join_strings
+gst_uri_is_writable
+gst_uri_make_writable
+gst_uri_to_string
+gst_uri_ref
+gst_uri_unref
+gst_uri_is_normalized
+gst_uri_normalize
+gst_uri_get_scheme
+gst_uri_set_scheme
+gst_uri_get_userinfo
+gst_uri_set_userinfo
+gst_uri_get_host
+gst_uri_set_host
+gst_uri_get_port
+gst_uri_set_port
+gst_uri_get_path
+gst_uri_set_path
+gst_uri_get_path_string
+gst_uri_set_path_string
+gst_uri_get_path_segments
+gst_uri_set_path_segments
+gst_uri_append_path
+gst_uri_append_path_segment
+gst_uri_get_query_string
+gst_uri_set_query_string
+gst_uri_get_query_table
+gst_uri_set_query_table
+gst_uri_get_query_value
+gst_uri_set_query_value
+gst_uri_remove_query_key
+gst_uri_query_has_key
+gst_uri_get_query_keys
+gst_uri_get_fragment
+gst_uri_set_fragment
+<SUBSECTION Standard>
+GST_IS_URI
+GST_TYPE_URI
+GST_URI
+gst_uri_get_type
+</SECTION>
 
 <SECTION>
 <FILE>gstutils</FILE>
@@ -3298,12 +3377,15 @@
 gst_value_fixate
 
 
+<SUBSECTION Standard>
+GST_TYPE_G_THREAD
 <SUBSECTION Private>
 gst_date_get_type
 gst_date_time_get_type
 gst_double_range_get_type
 gst_fraction_get_type
 gst_fraction_range_get_type
+gst_g_thread_get_type
 gst_int_range_get_type
 gst_int64_range_get_type
 gst_value_array_get_type
@@ -3330,8 +3412,8 @@
 
 gst_device_create_element
 gst_device_get_caps
+gst_device_get_device_class
 gst_device_get_display_name
-gst_device_get_klass
 gst_device_has_classes
 gst_device_has_classesv
 gst_device_reconfigure_element
@@ -3344,36 +3426,82 @@
 GST_IS_DEVICE
 GST_IS_DEVICE_CLASS
 GST_TYPE_DEVICE
-
-gst_device_create_element
-gst_device_get_caps
-gst_device_get_display_name
-gst_device_get_device_class
 gst_device_get_type
 </SECTION>
 
 <SECTION>
+<FILE>gstdeviceprovider</FILE>
+<TITLE>GstDeviceProvider</TITLE>
+GstDeviceProvider
+GstDeviceProviderClass
+gst_device_provider_can_monitor
+gst_device_provider_class_add_metadata
+gst_device_provider_class_add_static_metadata
+gst_device_provider_class_get_metadata
+gst_device_provider_class_set_metadata
+gst_device_provider_class_set_static_metadata
+gst_device_provider_device_add
+gst_device_provider_device_remove
+gst_device_provider_get_bus
+gst_device_provider_get_devices
+gst_device_provider_get_factory
+gst_device_provider_register
+gst_device_provider_start
+gst_device_provider_stop
+
+<SUBSECTION Standard>
+GstDevicePrivate
+GST_DEVICE_PROVIDER
+GST_DEVICE_PROVIDER_CAST
+GST_DEVICE_PROVIDER_CLASS
+GST_DEVICE_PROVIDER_GET_CLASS
+GST_IS_DEVICE_PROVIDER
+GST_IS_DEVICE_PROVIDER_CLASS
+GST_TYPE_DEVICE_PROVIDER
+gst_device_provider_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gstdeviceproviderfactory</FILE>
+<TITLE>GstDeviceProviderFactory</TITLE>
+GstDeviceProviderFactory
+GstDeviceProviderFactoryClass
+gst_device_provider_factory_find
+gst_device_provider_factory_get
+gst_device_provider_factory_get_by_name
+gst_device_provider_factory_get_device_provider_type
+gst_device_provider_factory_get_metadata
+gst_device_provider_factory_get_metadata_keys
+gst_device_provider_factory_has_classes
+gst_device_provider_factory_has_classesv
+gst_device_provider_factory_list_get_device_providers
+
+<SUBSECTION Standard>
+GstDeviceProviderPrivate
+GST_DEVICE_PROVIDER_FACTORY
+GST_DEVICE_PROVIDER_FACTORY_CAST
+GST_DEVICE_PROVIDER_FACTORY_CLASS
+GST_TYPE_DEVICE_PROVIDER_FACTORY
+GST_IS_DEVICE_PROVIDER_FACTORY
+GST_IS_DEVICE_PROVIDER_FACTORY_CLASS
+gst_device_provider_factory_get_type
+</SECTION>
+
+<SECTION>
 <FILE>gstdevicemonitor</FILE>
 <TITLE>GstDeviceMonitor</TITLE>
 GstDeviceMonitor
 GstDeviceMonitorClass
-gst_device_monitor_can_monitor
-gst_device_monitor_class_add_metadata
-gst_device_monitor_class_add_static_metadata
-gst_device_monitor_class_get_metadata
-gst_device_monitor_class_set_metadata
-gst_device_monitor_class_set_static_metadata
-gst_device_monitor_device_add
-gst_device_monitor_device_remove
+gst_device_monitor_new
 gst_device_monitor_get_bus
-gst_device_monitor_get_devices
-gst_device_monitor_get_factory
-gst_device_monitor_register
+gst_device_monitor_add_filter
+gst_device_monitor_remove_filter
 gst_device_monitor_start
 gst_device_monitor_stop
+gst_device_monitor_get_devices
 
 <SUBSECTION Standard>
-GstDevicePrivate
+GstDeviceMonitorPrivate
 GST_DEVICE_MONITOR
 GST_DEVICE_MONITOR_CAST
 GST_DEVICE_MONITOR_CLASS
@@ -3384,56 +3512,3 @@
 gst_device_monitor_get_type
 </SECTION>
 
-<SECTION>
-<FILE>gstdevicemonitorfactory</FILE>
-<TITLE>GstDeviceMonitorFactory</TITLE>
-GstDeviceMonitorFactory
-GstDeviceMonitorFactoryClass
-gst_device_monitor_factory_find
-gst_device_monitor_factory_get
-gst_device_monitor_factory_get_by_name
-gst_device_monitor_factory_get_device_monitor_type
-gst_device_monitor_factory_get_metadata
-gst_device_monitor_factory_get_metadata_keys
-gst_device_monitor_factory_has_classes
-gst_device_monitor_factory_has_classesv
-gst_device_monitor_factory_list_get_device_monitors
-
-<SUBSECTION Standard>
-GstDeviceMonitorPrivate
-GST_DEVICE_MONITOR_FACTORY
-GST_DEVICE_MONITOR_FACTORY_CAST
-GST_DEVICE_MONITOR_FACTORY_CLASS
-GST_TYPE_DEVICE_MONITOR_FACTORY
-GST_IS_DEVICE_MONITOR_FACTORY
-GST_IS_DEVICE_MONITOR_FACTORY_CLASS
-gst_device_monitor_factory_get_type
-</SECTION>
-
-<SECTION>
-<FILE>gstglobaldevicemonitor</FILE>
-<TITLE>GstGlobalDeviceMonitor</TITLE>
-GstGlobalDeviceMonitor
-GstGlobalDeviceMonitorClass
-gst_global_device_monitor_get_bus
-gst_global_device_monitor_get_caps_filter
-gst_global_device_monitor_get_classes_filter
-gst_global_device_monitor_get_devices
-gst_global_device_monitor_new
-gst_global_device_monitor_set_caps_filter
-gst_global_device_monitor_set_classes_filter
-gst_global_device_monitor_start
-gst_global_device_monitor_stop
-
-<SUBSECTION Standard>
-GstGlobalDeviceMonitorPrivate
-GST_GLOBAL_DEVICE_MONITOR
-GST_GLOBAL_DEVICE_MONITOR_CAST
-GST_GLOBAL_DEVICE_MONITOR_CLASS
-GST_GLOBAL_DEVICE_MONITOR_GET_CLASS
-GST_IS_GLOBAL_DEVICE_MONITOR
-GST_IS_GLOBAL_DEVICE_MONITOR_CLASS
-GST_TYPE_GLOBAL_DEVICE_MONITOR
-gst_global_device_monitor_get_type
-</SECTION>
-
diff --git a/docs/gst/html/GstAllocator.html b/docs/gst/html/GstAllocator.html
index 83fb747..2a0d8e0 100644
--- a/docs/gst/html/GstAllocator.html
+++ b/docs/gst/html/GstAllocator.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-Gst.html" title="Gst">
 <link rel="next" href="gstreamer-GstAtomicQueue.html" title="GstAtomicQueue">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstAllocator.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstAllocator.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstAllocator.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -152,10 +152,10 @@
 </div>
 <div class="refsect1">
 <a name="GstAllocator.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstAllocationParams
-    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstAllocator
 </pre>
@@ -168,7 +168,7 @@
 <div class="refsect1">
 <a name="GstAllocator.description"></a><h2>Description</h2>
 <p>Memory is usually created by allocators with a <a class="link" href="GstAllocator.html#gst-allocator-alloc" title="gst_allocator_alloc ()"><code class="function">gst_allocator_alloc()</code></a>
-method call. When <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is used as the allocator, the default allocator will
+method call. When <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is used as the allocator, the default allocator will
 be used.</p>
 <p>New allocators can be registered with <a class="link" href="GstAllocator.html#gst-allocator-register" title="gst_allocator_register ()"><code class="function">gst_allocator_register()</code></a>.
 Allocators are identified by name and can be retrieved with
@@ -182,10 +182,10 @@
 <div class="refsect2">
 <a name="gst-allocator-find"></a><h3>gst_allocator_find ()</h3>
 <pre class="programlisting"><a class="link" href="GstAllocator.html" title="GstAllocator"><span class="returnvalue">GstAllocator</span></a> *
-gst_allocator_find (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_allocator_find (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Find a previously registered allocator with <em class="parameter"><code>name</code></em>
 . When <em class="parameter"><code>name</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the
 default allocator will be returned.</p>
 <div class="refsect3">
 <a name="id-1.3.4.9.2.5"></a><h4>Parameters</h4>
@@ -198,23 +198,24 @@
 <tbody><tr>
 <td class="parameter_name"><p>name</p></td>
 <td class="parameter_description"><p> the name of the allocator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.4.9.2.6"></a><h4>Returns</h4>
-<p> a <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the allocator with <em class="parameter"><code>name</code></em>
-was not
-registered. Use <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> to release the allocator after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when
+the allocator with <em class="parameter"><code>name</code></em>
+was not registered. Use <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a>
+to release the allocator after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-allocator-register"></a><h3>gst_allocator_register ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_allocator_register (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_allocator_register (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                         <em class="parameter"><code><a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> *allocator</code></em>);</pre>
 <p>Registers the memory <em class="parameter"><code>allocator</code></em>
  with <em class="parameter"><code>name</code></em>
@@ -356,12 +357,12 @@
  big.</p>
 <p>The optional <em class="parameter"><code>params</code></em>
  can specify the prefix and padding for the memory. If
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is passed, no flags, no extra prefix/padding and a default alignment is
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is passed, no flags, no extra prefix/padding and a default alignment is
 used.</p>
 <p>The prefix/padding will be filled with 0 if flags contains
 <a class="link" href="GstMemory.html#GST-MEMORY-FLAG-ZERO-PREFIXED:CAPS"><span class="type">GST_MEMORY_FLAG_ZERO_PREFIXED</span></a> and <a class="link" href="GstMemory.html#GST-MEMORY-FLAG-ZERO-PADDED:CAPS"><span class="type">GST_MEMORY_FLAG_ZERO_PADDED</span></a> respectively.</p>
 <p>When <em class="parameter"><code>allocator</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the default allocator will be used.</p>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the default allocator will be used.</p>
 <p>The alignment in <em class="parameter"><code>params</code></em>
  is given as a bitmask so that <em class="parameter"><code>align</code></em>
  + 1 equals
@@ -379,7 +380,7 @@
 <tr>
 <td class="parameter_name"><p>allocator</p></td>
 <td class="parameter_description"><p> a <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> to use. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
@@ -389,7 +390,7 @@
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> optional parameters. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -436,12 +437,12 @@
 <a name="gst-memory-new-wrapped"></a><h3>gst_memory_new_wrapped ()</h3>
 <pre class="programlisting"><a class="link" href="GstMemory.html" title="GstMemory"><span class="returnvalue">GstMemory</span></a> *
 gst_memory_new_wrapped (<em class="parameter"><code><a class="link" href="GstMemory.html#GstMemoryFlags" title="enum GstMemoryFlags"><span class="type">GstMemoryFlags</span></a> flags</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> maxsize</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> size</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Allocate a new memory block that wraps the given <em class="parameter"><code>data</code></em>
 .</p>
 <p>The prefix/padding must be filled with 0 if <em class="parameter"><code>flags</code></em>
@@ -487,13 +488,13 @@
 <tr>
 <td class="parameter_name"><p>user_data</p></td>
 <td class="parameter_description"><p> user_data. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>notify</p></td>
 <td class="parameter_description"><p> called with <em class="parameter"><code>user_data</code></em>
 when the memory is freed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>][<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>][<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -695,6 +696,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstBin.html b/docs/gst/html/GstBin.html
index 95a7660..e3f05ea 100644
--- a/docs/gst/html/GstBin.html
+++ b/docs/gst/html/GstBin.html
@@ -8,17 +8,17 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstAtomicQueue.html" title="GstAtomicQueue">
 <link rel="next" href="GstBuffer.html" title="GstBuffer">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBin.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstBin.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
-                  <a href="#GstBin.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#GstBin.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBin.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstBin.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
+                  <a href="#GstBin.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#GstBin.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstBin.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -53,7 +53,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()">gst_bin_add</a> <span class="c_punctuation">()</span>
@@ -61,7 +61,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBin.html#gst-bin-remove" title="gst_bin_remove ()">gst_bin_remove</a> <span class="c_punctuation">()</span>
@@ -141,7 +141,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBin.html#gst-bin-recalculate-latency" title="gst_bin_recalculate_latency ()">gst_bin_recalculate_latency</a> <span class="c_punctuation">()</span>
@@ -172,6 +172,14 @@
 </td>
 </tr>
 <tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstBin.html#gst-bin-sync-children-states" title="gst_bin_sync_children_states ()">gst_bin_sync_children_states</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
 <td class="define_keyword">#define</td>
 <td class="function_name">
 <a class="link" href="GstBin.html#GST-BIN-IS-NO-RESYNC:CAPS" title="GST_BIN_IS_NO_RESYNC()">GST_BIN_IS_NO_RESYNC</a><span class="c_punctuation">()</span>
@@ -208,12 +216,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBin.html#GstBin--async-handling" title="The “async-handling” property">async-handling</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBin.html#GstBin--message-forward" title="The “message-forward” property">message-forward</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -230,7 +238,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="signal_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a></td>
+<td class="signal_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a></td>
 <td class="signal_name"><a class="link" href="GstBin.html#GstBin-do-latency" title="The “do-latency” signal">do-latency</a></td>
 <td class="signal_flags">Run Last</td>
 </tr>
@@ -272,8 +280,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBin.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
                 <span class="lineart">╰──</span> GstBin
@@ -424,8 +432,8 @@
 <p>
 
 A <a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> will by default forward any event sent to it to all sink elements.
-If all the sinks return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the bin will also return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is
-returned. If no sinks are in the bin, the event handler will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
+If all the sinks return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the bin will also return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, else <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is
+returned. If no sinks are in the bin, the event handler will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
 
 </p>
 </div>
@@ -435,7 +443,7 @@
 <div class="refsect2">
 <a name="gst-bin-new"></a><h3>gst_bin_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_bin_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_bin_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Creates a new bin with the given name.</p>
 <div class="refsect3">
 <a name="id-1.3.6.11.2.5"></a><h4>Parameters</h4>
@@ -447,8 +455,8 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>the name of the new bin</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the name of the new bin. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -461,7 +469,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bin-add"></a><h3>gst_bin_add ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bin_add (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
              <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre>
 <p>Adds the given element to the bin.  Sets the element's parent, and thus
@@ -500,7 +508,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.3.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element could be added, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element could be added, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
 the bin does not want to accept the element.</p>
 <p></p>
 </div>
@@ -508,7 +516,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bin-remove"></a><h3>gst_bin_remove ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bin_remove (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
                 <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre>
 <p>Removes the element from the bin, unparenting it as well.
@@ -544,7 +552,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.4.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element could be removed, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element could be removed, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
 the bin does not want to remove the element.</p>
 <p></p>
 </div>
@@ -554,10 +562,10 @@
 <a name="gst-bin-get-by-name"></a><h3>gst_bin_get_by_name ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
 gst_bin_get_by_name (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Gets the element with the given name from a bin. This
 function recurses into child bins.</p>
-<p>Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no element with the given name is found in the bin.</p>
+<p>Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no element with the given name is found in the bin.</p>
 <p>MT safe.  Caller owns returned reference.</p>
 <div class="refsect3">
 <a name="id-1.3.6.11.5.7"></a><h4>Parameters</h4>
@@ -583,8 +591,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.5.8"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> with the given name, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> with the given
+name, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -592,10 +601,10 @@
 <a name="gst-bin-get-by-name-recurse-up"></a><h3>gst_bin_get_by_name_recurse_up ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
 gst_bin_get_by_name_recurse_up (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Gets the element with the given name from this bin. If the
 element is not found, a recursion is performed on the parent bin.</p>
-<p>Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if:</p>
+<p>Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>no element with the given name is found in the bin</p></li></ul></div>
 <p>MT safe.  Caller owns returned reference.</p>
 <div class="refsect3">
@@ -622,8 +631,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.6.9"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> with the given name, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> with the given
+name, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -631,7 +641,7 @@
 <a name="gst-bin-get-by-interface"></a><h3>gst_bin_get_by_interface ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
 gst_bin_get_by_interface (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> iface</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> iface</code></em>);</pre>
 <p>Looks for an element inside the bin that implements the given
 interface. If such an element is found, it returns the element.
 You can cast this element to the given interface afterwards.  If you want
@@ -654,7 +664,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>iface</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of an interface</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of an interface</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -690,8 +700,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.8.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -719,8 +730,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.9.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -748,8 +760,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.10.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -780,8 +793,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.11.8"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -809,8 +823,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.12.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -818,7 +833,7 @@
 <a name="gst-bin-iterate-all-by-interface"></a><h3>gst_bin_iterate_all_by_interface ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> *
 gst_bin_iterate_all_by_interface (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> iface</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> iface</code></em>);</pre>
 <p>Looks for all elements inside the bin that implements the given
 interface. You can safely cast all returned elements to the given interface.
 The function recurses inside child bins. The iterator will yield a series
@@ -840,7 +855,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>iface</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of an interface</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of an interface</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -848,15 +863,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.13.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> for all elements
-in the bin implementing the given interface, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>
+for all elements in the bin implementing the given interface,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bin-recalculate-latency"></a><h3>gst_bin_recalculate_latency ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bin_recalculate_latency (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>);</pre>
 <p>Query <em class="parameter"><code>bin</code></em>
  for the current latency using and reconfigures this latency to all the
@@ -882,7 +898,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.14.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the latency could be queried and reconfigured.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the latency could be queried and reconfigured.</p>
 <p></p>
 </div>
 </div>
@@ -893,7 +909,7 @@
 gst_bin_add_many (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
                   <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_1</code></em>,
                   <em class="parameter"><code>...</code></em>);</pre>
-<p>Adds a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to a bin.  This function is
+<p>Adds a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to a bin.  This function is
 equivalent to calling <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()"><code class="function">gst_bin_add()</code></a> for each member of the list. The return
 value of each <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()"><code class="function">gst_bin_add()</code></a> is ignored.</p>
 <div class="refsect3">
@@ -954,7 +970,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to remove from the bin. </p></td>
+<td class="parameter_description"><p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to remove from the bin. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -969,7 +985,7 @@
                            <em class="parameter"><code><a class="link" href="GstPad.html#GstPadDirection" title="enum GstPadDirection"><span class="type">GstPadDirection</span></a> direction</code></em>);</pre>
 <p>Recursively looks for elements with an unlinked pad of the given
 direction within the specified bin and returns an unlinked pad
-if one is found, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise. If a pad is found, the caller
+if one is found, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise. If a pad is found, the caller
 owns a reference to it and should use <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> on the
 pad when it is not needed any longer.</p>
 <div class="refsect3">
@@ -996,12 +1012,45 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.6.11.17.6"></a><h4>Returns</h4>
-<p> unlinked pad of the given direction, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> unlinked pad of the given
+direction, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-bin-sync-children-states"></a><h3>gst_bin_sync_children_states ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_bin_sync_children_states (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>);</pre>
+<p>Synchronizes the state of every child of <em class="parameter"><code>bin</code></em>
+ with the state
+of <em class="parameter"><code>bin</code></em>
+. See also <a class="link" href="GstElement.html#gst-element-sync-state-with-parent" title="gst_element_sync_state_with_parent ()"><code class="function">gst_element_sync_state_with_parent()</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.6.11.18.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>bin</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.6.11.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if syncing the state was successful for all children,
+otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GST-BIN-IS-NO-RESYNC:CAPS"></a><h3>GST_BIN_IS_NO_RESYNC()</h3>
 <pre class="programlisting">#define GST_BIN_IS_NO_RESYNC(bin)        (GST_OBJECT_FLAG_IS_SET(bin,GST_BIN_FLAG_NO_RESYNC))
 </pre>
@@ -1009,7 +1058,7 @@
  will resync its state change when elements are added and
 removed.</p>
 <div class="refsect3">
-<a name="id-1.3.6.11.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.6.11.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1032,7 +1081,7 @@
 </pre>
 <p>Gets the list with children in a bin.</p>
 <div class="refsect3">
-<a name="id-1.3.6.11.19.5"></a><h4>Parameters</h4>
+<a name="id-1.3.6.11.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1054,7 +1103,7 @@
 </pre>
 <p>Gets the children cookie that watches the children list.</p>
 <div class="refsect3">
-<a name="id-1.3.6.11.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.6.11.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1076,7 +1125,7 @@
 </pre>
 <p>Gets the number of children in a bin.</p>
 <div class="refsect3">
-<a name="id-1.3.6.11.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.6.11.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1126,12 +1175,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstBin-struct.numchildren"></a>numchildren</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstBin-struct.numchildren"></a>numchildren</code></em>;</p></td>
 <td class="struct_member_description"><p>the number of children in this bin</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstBin-struct.children"></a>children</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstBin-struct.children"></a>children</code></em>;</p></td>
 <td class="struct_member_description"><p> the list of children in this bin. </p></td>
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Element]</span></td>
 </tr>
@@ -1147,22 +1196,22 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstBin-struct.messages"></a>messages</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstBin-struct.messages"></a>messages</code></em>;</p></td>
 <td class="struct_member_description"><p> queued and cached messages. </p></td>
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Message]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBin-struct.polling"></a>polling</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBin-struct.polling"></a>polling</code></em>;</p></td>
 <td class="struct_member_description"><p>the bin is currently calculating its state</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBin-struct.state-dirty"></a>state_dirty</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBin-struct.state-dirty"></a>state_dirty</code></em>;</p></td>
 <td class="struct_member_description"><p>the bin needs to recalculate its state (deprecated)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBin-struct.clock-dirty"></a>clock_dirty</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBin-struct.clock-dirty"></a>clock_dirty</code></em>;</p></td>
 <td class="struct_member_description"><p>the bin needs to select a new clock</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1276,8 +1325,8 @@
 <a name="GstBin.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstBin--async-handling"></a><h3>The <code class="literal">“async-handling”</code> property</h3>
-<pre class="programlisting">  “async-handling”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the bin will handle asynchronous state changes.
+<pre class="programlisting">  “async-handling”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the bin will handle asynchronous state changes.
 This should be used only if the bin subclass is modifying the state
 of its children on its own.</p>
 <p>Flags: Read / Write</p>
@@ -1286,7 +1335,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBin--message-forward"></a><h3>The <code class="literal">“message-forward”</code> property</h3>
-<pre class="programlisting">  “message-forward”          <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “message-forward”          <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Forward all children messages, even those that would normally be filtered by
 the bin. This can be interesting when one wants to be notified of the EOS
 state of individual elements, for example.</p>
@@ -1302,9 +1351,9 @@
 <a name="GstBin.signal-details"></a><h2>Signal Details</h2>
 <div class="refsect2">
 <a name="GstBin-do-latency"></a><h3>The <code class="literal">“do-latency”</code> signal</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 user_function (<a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a>  *bin,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
 <p>Will be emitted when the bin needs to perform latency calculations. This
 signal is only emitted for toplevel bins or when async-handling is
 enabled.</p>
@@ -1344,7 +1393,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a>     *bin,
                <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>Will be emitted after the element was added to the bin.</p>
 <div class="refsect3">
 <a name="id-1.3.6.14.3.5"></a><h4>Parameters</h4>
@@ -1381,7 +1430,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a>     *bin,
                <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>Will be emitted after the element was removed from the bin.</p>
 <div class="refsect3">
 <a name="id-1.3.6.14.4.5"></a><h4>Parameters</h4>
@@ -1416,6 +1465,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstBuffer.html b/docs/gst/html/GstBuffer.html
index d26800c..7b4a8e5 100644
--- a/docs/gst/html/GstBuffer.html
+++ b/docs/gst/html/GstBuffer.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstBin.html" title="GstBin">
 <link rel="next" href="GstBufferList.html" title="GstBufferList">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBuffer.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBuffer.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstBuffer.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -208,7 +208,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-resize-range" title="gst_buffer_resize_range ()">gst_buffer_resize_range</a> <span class="c_punctuation">()</span>
@@ -232,7 +232,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-get-max-memory" title="gst_buffer_get_max_memory ()">gst_buffer_get_max_memory</a> <span class="c_punctuation">()</span>
@@ -248,7 +248,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-n-memory" title="gst_buffer_n_memory ()">gst_buffer_n_memory</a> <span class="c_punctuation">()</span>
@@ -288,7 +288,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-find-memory" title="gst_buffer_find_memory ()">gst_buffer_find_memory</a> <span class="c_punctuation">()</span>
@@ -360,7 +360,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-is-all-memory-writable" title="gst_buffer_is_all_memory_writable ()">gst_buffer_is_all_memory_writable</a> <span class="c_punctuation">()</span>
@@ -368,7 +368,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-is-memory-range-writable" title="gst_buffer_is_memory_range_writable ()">gst_buffer_is_memory_range_writable</a> <span class="c_punctuation">()</span>
@@ -376,7 +376,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-map" title="gst_buffer_map ()">gst_buffer_map</a> <span class="c_punctuation">()</span>
@@ -384,7 +384,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-map-range" title="gst_buffer_map_range ()">gst_buffer_map_range</a> <span class="c_punctuation">()</span>
@@ -400,7 +400,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-memcmp" title="gst_buffer_memcmp ()">gst_buffer_memcmp</a> <span class="c_punctuation">()</span>
@@ -456,7 +456,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-copy-into" title="gst_buffer_copy_into ()">gst_buffer_copy_into</a> <span class="c_punctuation">()</span>
@@ -484,7 +484,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-replace" title="gst_buffer_replace ()">gst_buffer_replace</a> <span class="c_punctuation">()</span>
@@ -524,7 +524,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-remove-meta" title="gst_buffer_remove_meta ()">gst_buffer_remove_meta</a> <span class="c_punctuation">()</span>
@@ -540,7 +540,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstBuffer.html#GstBufferForeachMetaFunc" title="GstBufferForeachMetaFunc ()">*GstBufferForeachMetaFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -548,7 +548,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()">gst_buffer_foreach_meta</a> <span class="c_punctuation">()</span>
@@ -582,7 +582,7 @@
 </div>
 <div class="refsect1">
 <a name="GstBuffer.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstBuffer
 </pre>
 </div>
@@ -1065,9 +1065,9 @@
 <p>Tries to create a newly allocated buffer with data of the given size and
 extra parameters from <em class="parameter"><code>allocator</code></em>
 . If the requested amount of memory can't be
-allocated, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> will be returned. The allocated buffer memory is not cleared.</p>
+allocated, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> will be returned. The allocated buffer memory is not cleared.</p>
 <p>When <em class="parameter"><code>allocator</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the default memory allocator will be used.</p>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the default memory allocator will be used.</p>
 <p>Note that when <em class="parameter"><code>size</code></em>
  == 0, the buffer will not have memory associated with it.</p>
 <p>MT safe.</p>
@@ -1082,9 +1082,9 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>allocator</p></td>
-<td class="parameter_description"><p> the <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> to use, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to use the
+<td class="parameter_description"><p> the <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> to use, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to use the
 default allocator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
@@ -1094,23 +1094,23 @@
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> optional parameters. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.19.9"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the memory couldn't
-be allocated. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
+the memory couldn't be allocated. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-new-wrapped"></a><h3>gst_buffer_new_wrapped ()</h3>
 <pre class="programlisting"><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="returnvalue">GstBuffer</span></a> *
-gst_buffer_new_wrapped (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
+gst_buffer_new_wrapped (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Creates a new buffer that wraps the given <em class="parameter"><code>data</code></em>
 . The memory will be freed
@@ -1150,12 +1150,12 @@
 <a name="gst-buffer-new-wrapped-full"></a><h3>gst_buffer_new_wrapped_full ()</h3>
 <pre class="programlisting"><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="returnvalue">GstBuffer</span></a> *
 gst_buffer_new_wrapped_full (<em class="parameter"><code><a class="link" href="GstMemory.html#GstMemoryFlags" title="enum GstMemoryFlags"><span class="type">GstMemoryFlags</span></a> flags</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
                              <em class="parameter"><code><span class="type">gsize</span> maxsize</code></em>,
                              <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
                              <em class="parameter"><code><span class="type">gsize</span> size</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Allocate a new buffer that wraps the given memory. <em class="parameter"><code>data</code></em>
  must point to
 <em class="parameter"><code>maxsize</code></em>
@@ -1208,13 +1208,13 @@
 <tr>
 <td class="parameter_name"><p>user_data</p></td>
 <td class="parameter_description"><p> user_data. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>notify</p></td>
 <td class="parameter_description"><p> called with <em class="parameter"><code>user_data</code></em>
 when the memory is freed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>][<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>][<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1291,7 +1291,7 @@
                       <em class="parameter"><code><span class="type">gsize</span> *maxsize</code></em>);</pre>
 <p>Get the total size of the memory blocks in <em class="parameter"><code>b</code></em>
 .</p>
-<p>When not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, <em class="parameter"><code>offset</code></em>
+<p>When not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, <em class="parameter"><code>offset</code></em>
  will contain the offset of the data in the
 first memory block in <em class="parameter"><code>buffer</code></em>
  and <em class="parameter"><code>maxsize</code></em>
@@ -1319,12 +1319,12 @@
 <tr>
 <td class="parameter_name"><p>offset</p></td>
 <td class="parameter_description"><p> a pointer to the offset. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>maxsize</p></td>
 <td class="parameter_description"><p> a pointer to the maxsize. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1370,15 +1370,15 @@
 <a name="gst-buffer-get-sizes-range"></a><h3>gst_buffer_get_sizes_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">gsize</span>
 gst_buffer_get_sizes_range (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
                             <em class="parameter"><code><span class="type">gsize</span> *offset</code></em>,
                             <em class="parameter"><code><span class="type">gsize</span> *maxsize</code></em>);</pre>
 <p>Get the total size of <em class="parameter"><code>length</code></em>
  memory blocks stating from <em class="parameter"><code>idx</code></em>
  in <em class="parameter"><code>buffer</code></em>
 .</p>
-<p>When not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, <em class="parameter"><code>offset</code></em>
+<p>When not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, <em class="parameter"><code>offset</code></em>
  will contain the offset of the data in the
 memory block in <em class="parameter"><code>buffer</code></em>
  at <em class="parameter"><code>idx</code></em>
@@ -1420,12 +1420,12 @@
 <tr>
 <td class="parameter_name"><p>offset</p></td>
 <td class="parameter_description"><p> a pointer to the offset. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>maxsize</p></td>
 <td class="parameter_description"><p> a pointer to the maxsize. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1442,10 +1442,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-resize-range"></a><h3>gst_buffer_resize_range ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_resize_range (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
                          <em class="parameter"><code><span class="type">gssize</span> offset</code></em>,
                          <em class="parameter"><code><span class="type">gssize</span> size</code></em>);</pre>
 <p>Set the total size of the <em class="parameter"><code>length</code></em>
@@ -1492,7 +1492,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.27.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if resizing succeeded, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if resizing succeeded, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -1567,7 +1567,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-get-max-memory"></a><h3>gst_buffer_get_max_memory ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_buffer_get_max_memory (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Get the maximum amount of memory blocks that a buffer can hold. This is a
 compile time constant that can be queried with the function.</p>
@@ -1585,7 +1585,7 @@
 <a name="gst-buffer-peek-memory"></a><h3>gst_buffer_peek_memory ()</h3>
 <pre class="programlisting"><a class="link" href="GstMemory.html" title="GstMemory"><span class="returnvalue">GstMemory</span></a> *
 gst_buffer_peek_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>Get the memory block at <em class="parameter"><code>idx</code></em>
  in <em class="parameter"><code>buffer</code></em>
 . The memory block stays valid until
@@ -1625,7 +1625,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-n-memory"></a><h3>gst_buffer_n_memory ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_buffer_n_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre>
 <p>Get the amount of memory blocks that this buffer has. This amount is never
 larger than what <a class="link" href="GstBuffer.html#gst-buffer-get-max-memory" title="gst_buffer_get_max_memory ()"><code class="function">gst_buffer_get_max_memory()</code></a> returns.</p>
@@ -1655,7 +1655,7 @@
 <a name="gst-buffer-insert-memory"></a><h3>gst_buffer_insert_memory ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_insert_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> idx</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> idx</code></em>,
                           <em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem</code></em>);</pre>
 <p>Insert the memory block <em class="parameter"><code>mem</code></em>
  to <em class="parameter"><code>buffer</code></em>
@@ -1699,8 +1699,8 @@
 <a name="gst-buffer-replace-memory-range"></a><h3>gst_buffer_replace_memory_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_replace_memory_range (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem</code></em>);</pre>
 <p>Replaces <em class="parameter"><code>length</code></em>
  memory blocks in <em class="parameter"><code>buffer</code></em>
@@ -1752,8 +1752,8 @@
 <a name="gst-buffer-get-memory-range"></a><h3>gst_buffer_get_memory_range ()</h3>
 <pre class="programlisting"><a class="link" href="GstMemory.html" title="GstMemory"><span class="returnvalue">GstMemory</span></a> *
 gst_buffer_get_memory_range (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>);</pre>
 <p>Get <em class="parameter"><code>length</code></em>
  memory blocks in <em class="parameter"><code>buffer</code></em>
  starting at <em class="parameter"><code>idx</code></em>
@@ -1802,8 +1802,8 @@
 <a name="gst-buffer-remove-memory-range"></a><h3>gst_buffer_remove_memory_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_remove_memory_range (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>);</pre>
 <p>Remove <em class="parameter"><code>length</code></em>
  memory blocks in <em class="parameter"><code>buffer</code></em>
  starting from <em class="parameter"><code>idx</code></em>
@@ -1842,27 +1842,27 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-find-memory"></a><h3>gst_buffer_find_memory ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_find_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> size</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *idx</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *length</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *idx</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *length</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> *skip</code></em>);</pre>
 <p>Find the memory blocks that span <em class="parameter"><code>size</code></em>
  bytes starting from <em class="parameter"><code>offset</code></em>
 
 in <em class="parameter"><code>buffer</code></em>
 .</p>
-<p>When this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>idx</code></em>
+<p>When this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>idx</code></em>
  will contain the index of the first
-memory bock where the byte for <em class="parameter"><code>offset</code></em>
+memory block where the byte for <em class="parameter"><code>offset</code></em>
  can be found and <em class="parameter"><code>length</code></em>
  contains the
 number of memory blocks containing the <em class="parameter"><code>size</code></em>
  remaining bytes. <em class="parameter"><code>skip</code></em>
  contains
-the number of bytes to skip in the memory bock at <em class="parameter"><code>idx</code></em>
+the number of bytes to skip in the memory block at <em class="parameter"><code>idx</code></em>
  to get to the byte
 for <em class="parameter"><code>offset</code></em>
 .</p>
@@ -1913,7 +1913,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.37.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>size</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>size</code></em>
 bytes starting from <em class="parameter"><code>offset</code></em>
 could be found in
 <em class="parameter"><code>buffer</code></em>
@@ -2001,7 +2001,7 @@
 <a name="gst-buffer-replace-memory"></a><h3>gst_buffer_replace_memory ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_replace_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
                            <em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem</code></em>);</pre>
 <p>Replaces the memory block at index <em class="parameter"><code>idx</code></em>
  in <em class="parameter"><code>buffer</code></em>
@@ -2072,7 +2072,7 @@
 <a name="gst-buffer-get-memory"></a><h3>gst_buffer_get_memory ()</h3>
 <pre class="programlisting"><a class="link" href="GstMemory.html" title="GstMemory"><span class="returnvalue">GstMemory</span></a> *
 gst_buffer_get_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>Get the memory block at index <em class="parameter"><code>idx</code></em>
  in <em class="parameter"><code>buffer</code></em>
 .</p>
@@ -2141,7 +2141,7 @@
 <a name="gst-buffer-remove-memory"></a><h3>gst_buffer_remove_memory ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_remove_memory (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>Remove the memory block in <em class="parameter"><code>b</code></em>
  at index <em class="parameter"><code>i</code></em>
 .</p>
@@ -2194,7 +2194,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-is-all-memory-writable"></a><h3>gst_buffer_is_all_memory_writable ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_is_all_memory_writable (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre>
 <p>Check if all memory blocks in <em class="parameter"><code>buffer</code></em>
  are writable.</p>
@@ -2218,7 +2218,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.46.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all memory blocks in <em class="parameter"><code>buffer</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all memory blocks in <em class="parameter"><code>buffer</code></em>
 are writable</p>
 <p></p>
 </div>
@@ -2227,10 +2227,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-is-memory-range-writable"></a><h3>gst_buffer_is_memory_range_writable ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_is_memory_range_writable (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>);</pre>
 <p>Check if <em class="parameter"><code>length</code></em>
  memory blocks in <em class="parameter"><code>buffer</code></em>
  starting from <em class="parameter"><code>idx</code></em>
@@ -2270,7 +2270,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.47.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the memory range is writable</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the memory range is writable</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -2278,7 +2278,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-map"></a><h3>gst_buffer_map ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_map (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                 <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapInfo" title="GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>,
                 <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapFlags" title="enum GstMapFlags"><span class="type">GstMapFlags</span></a> flags</code></em>);</pre>
@@ -2328,7 +2328,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.48.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map succeeded and <em class="parameter"><code>info</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map succeeded and <em class="parameter"><code>info</code></em>
 contains valid data.</p>
 <p></p>
 </div>
@@ -2336,10 +2336,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-map-range"></a><h3>gst_buffer_map_range ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_map_range (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> length</code></em>,
                       <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapInfo" title="GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>,
                       <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapFlags" title="enum GstMapFlags"><span class="type">GstMapFlags</span></a> flags</code></em>);</pre>
 <p>This function fills <em class="parameter"><code>info</code></em>
@@ -2402,7 +2402,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.49.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map succeeded and <em class="parameter"><code>info</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map succeeded and <em class="parameter"><code>info</code></em>
 contains valid
 data.</p>
 <p></p>
@@ -2441,10 +2441,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-memcmp"></a><h3>gst_buffer_memcmp ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_buffer_memcmp (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                    <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> mem</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> mem</code></em>,
                    <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Compare <em class="parameter"><code>size</code></em>
  bytes starting from <em class="parameter"><code>offset</code></em>
@@ -2496,7 +2496,7 @@
 <pre class="programlisting"><span class="returnvalue">gsize</span>
 gst_buffer_extract (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                     <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> dest</code></em>,
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> dest</code></em>,
                     <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Copy <em class="parameter"><code>size</code></em>
  bytes starting from <em class="parameter"><code>offset</code></em>
@@ -2550,13 +2550,13 @@
 gst_buffer_extract_dup (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> size</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *dest</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *dest</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> *dest_size</code></em>);</pre>
 <p>Extracts a copy of at most <em class="parameter"><code>size</code></em>
  bytes the data at <em class="parameter"><code>offset</code></em>
- into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a>.
+ into a <a href="https://developer.gnome.org/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a>.
 <em class="parameter"><code>dest</code></em>
- must be freed using <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when done.</p>
+ must be freed using <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when done.</p>
 <div class="refsect3">
 <a name="id-1.3.7.8.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2604,7 +2604,7 @@
 <pre class="programlisting"><span class="returnvalue">gsize</span>
 gst_buffer_fill (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                  <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
-                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> src</code></em>,
+                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> src</code></em>,
                  <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Copy <em class="parameter"><code>size</code></em>
  bytes from <em class="parameter"><code>src</code></em>
@@ -2725,8 +2725,11 @@
 <a name="gst-buffer-copy"></a><h3>gst_buffer_copy ()</h3>
 <pre class="programlisting"><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="returnvalue">GstBuffer</span></a> *
 gst_buffer_copy (<em class="parameter"><code>const <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buf</code></em>);</pre>
-<p>Create a copy of the given buffer. This will also make a newly allocated
-copy of the data the source buffer contains.</p>
+<p>Create a copy of the given buffer. This will only copy the buffer's
+data to a newly allocated memory if needed (if the type of memory
+requires it), otherwise the underlying data is just referenced.
+Check <code class="function">gst_buffer_copy_deep()</code> if you want to force the data
+to be copied to newly allocated memory.</p>
 <div class="refsect3">
 <a name="id-1.3.7.8.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2752,7 +2755,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-copy-into"></a><h3>gst_buffer_copy_into ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_copy_into (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *dest</code></em>,
                       <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *src</code></em>,
                       <em class="parameter"><code><a class="link" href="GstBuffer.html#GstBufferCopyFlags" title="enum GstBufferCopyFlags"><span class="type">GstBufferCopyFlags</span></a> flags</code></em>,
@@ -2808,7 +2811,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.59.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the copying succeeded, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the copying succeeded, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -2862,7 +2865,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
-<td class="parameter_description"><p>the size of the new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> sub-buffer, in bytes.</p></td>
+<td class="parameter_description"><p>the size of the new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> sub-buffer, in bytes. If -1, all
+data is copied.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -2870,7 +2874,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.60.7"></a><h4>Returns</h4>
-<p> the new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the arguments were
+<p> the new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the arguments were
 invalid. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -2933,7 +2937,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-replace"></a><h3>gst_buffer_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_replace (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> **obuf</code></em>,
                     <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *nbuf</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> to point to a different <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>. The
@@ -2942,7 +2946,7 @@
 buffer is unreffed, the new is reffed).</p>
 <p>Either <em class="parameter"><code>nbuf</code></em>
  or the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> pointed to by <em class="parameter"><code>obuf</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.7.8.63.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2954,23 +2958,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obuf</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> to be
-replaced. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a pointer to
+a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> to be replaced. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>nbuf</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> that will
 replace the buffer pointed to by <em class="parameter"><code>obuf</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.63.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>obuf</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>obuf</code></em>
 was different from <em class="parameter"><code>nbuf</code></em>
 .</p>
 <p></p>
@@ -3080,10 +3084,14 @@
 <a name="gst-buffer-get-meta"></a><h3>gst_buffer_get_meta ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="returnvalue">GstMeta</span></a> *
 gst_buffer_get_meta (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);</pre>
 <p>Get the metadata for <em class="parameter"><code>api</code></em>
- on buffer. When there is no such
-metadata, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned.</p>
+ on buffer. When there is no such metadata, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is
+returned. If multiple metadata with the given <em class="parameter"><code>api</code></em>
+ are attached to this
+buffer only the first one is returned.  To handle multiple metadata with a
+given API use <a class="link" href="GstBuffer.html#gst-buffer-iterate-meta" title="gst_buffer_iterate_meta ()"><code class="function">gst_buffer_iterate_meta()</code></a> or <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()"><code class="function">gst_buffer_foreach_meta()</code></a> instead
+and check the meta-&gt;info.api member for the API type.</p>
 <div class="refsect3">
 <a name="id-1.3.7.8.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3100,7 +3108,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>api</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of an API</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of an API</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -3109,9 +3117,10 @@
 <div class="refsect3">
 <a name="id-1.3.7.8.66.6"></a><h4>Returns</h4>
 <p> the metadata for <em class="parameter"><code>api</code></em>
-on <em class="parameter"><code>buffer</code></em>
+on
+<em class="parameter"><code>buffer</code></em>
 . </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -3120,7 +3129,7 @@
 <pre class="programlisting"><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="returnvalue">GstMeta</span></a> *
 gst_buffer_add_meta (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                      <em class="parameter"><code>const <a class="link" href="gstreamer-GstMeta.html#GstMetaInfo" title="struct GstMetaInfo"><span class="type">GstMetaInfo</span></a> *info</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> params</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> params</code></em>);</pre>
 <p>Add metadata for <em class="parameter"><code>info</code></em>
  to <em class="parameter"><code>buffer</code></em>
  using the parameters in <em class="parameter"><code>params</code></em>
@@ -3164,7 +3173,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-remove-meta"></a><h3>gst_buffer_remove_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_remove_meta (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> *meta</code></em>);</pre>
 <p>Remove the metadata for <em class="parameter"><code>meta</code></em>
@@ -3194,7 +3203,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.68.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the metadata existed and was removed, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if no such
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the metadata existed and was removed, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if no such
 metadata was on <em class="parameter"><code>buffer</code></em>
 .</p>
 <p></p>
@@ -3205,11 +3214,11 @@
 <a name="gst-buffer-iterate-meta"></a><h3>gst_buffer_iterate_meta ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="returnvalue">GstMeta</span></a> *
 gst_buffer_iterate_meta (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *state</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *state</code></em>);</pre>
 <p>Retrieve the next <a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> after <em class="parameter"><code>current</code></em>
 . If <em class="parameter"><code>state</code></em>
  points
-to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the first metadata is returned.</p>
+to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the first metadata is returned.</p>
 <p><em class="parameter"><code>state</code></em>
  will be updated with an opaque state pointer</p>
 <div class="refsect3">
@@ -3236,27 +3245,27 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.69.7"></a><h4>Returns</h4>
-<p> The next <a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there are
-no more items. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p> The next <a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when there are no more items. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstBufferForeachMetaFunc"></a><h3>GstBufferForeachMetaFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstBufferForeachMetaFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                              <em class="parameter"><code><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> **meta</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called from <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()"><code class="function">gst_buffer_foreach_meta()</code></a>. The <em class="parameter"><code>meta</code></em>
 
 field will point to a the reference of the meta.</p>
 <p><em class="parameter"><code>buffer</code></em>
  should not be modified from this callback.</p>
-<p>When this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the next meta will be
-returned. When <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned, <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()"><code class="function">gst_buffer_foreach_meta()</code></a> will return.</p>
+<p>When this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the next meta will be
+returned. When <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned, <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()"><code class="function">gst_buffer_foreach_meta()</code></a> will return.</p>
 <p>When <em class="parameter"><code>meta</code></em>
- is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the item will be removed from the buffer.</p>
+ is set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the item will be removed from the buffer.</p>
 <div class="refsect3">
 <a name="id-1.3.7.8.70.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3273,8 +3282,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>meta</p></td>
-<td class="parameter_description"><p>a pointer to a <a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> a pointer to a <a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>user_data</p></td>
@@ -3286,17 +3295,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.70.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()"><code class="function">gst_buffer_foreach_meta()</code></a> should stop</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <a class="link" href="GstBuffer.html#gst-buffer-foreach-meta" title="gst_buffer_foreach_meta ()"><code class="function">gst_buffer_foreach_meta()</code></a> should stop</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-foreach-meta"></a><h3>gst_buffer_foreach_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_foreach_meta (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                          <em class="parameter"><code><a class="link" href="GstBuffer.html#GstBufferForeachMetaFunc" title="GstBufferForeachMetaFunc ()"><span class="type">GstBufferForeachMetaFunc</span></a> func</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Call <em class="parameter"><code>func</code></em>
  with <em class="parameter"><code>user_data</code></em>
  for each meta in <em class="parameter"><code>buffer</code></em>
@@ -3336,8 +3345,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.7.8.71.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>func</code></em>
-returned <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> for one of the metadata.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>func</code></em>
+returned <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> for one of the metadata.</p>
 <p></p>
 </div>
 </div>
@@ -3622,6 +3631,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstBufferList.html b/docs/gst/html/GstBufferList.html
index 771f012..f72ed7f 100644
--- a/docs/gst/html/GstBufferList.html
+++ b/docs/gst/html/GstBufferList.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstBuffer.html" title="GstBuffer">
 <link rel="next" href="GstBufferPool.html" title="GstBufferPool">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBufferList.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBufferList.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstBufferList.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -58,7 +58,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferList.html#gst-buffer-list-length" title="gst_buffer_list_length ()">gst_buffer_list_length</a> <span class="c_punctuation">()</span>
@@ -124,7 +124,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstBufferList.html#GstBufferListFunc" title="GstBufferListFunc ()">*GstBufferListFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -132,7 +132,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferList.html#gst-buffer-list-foreach" title="gst_buffer_list_foreach ()">gst_buffer_list_foreach</a> <span class="c_punctuation">()</span>
@@ -164,7 +164,7 @@
 </div>
 <div class="refsect1">
 <a name="GstBufferList.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstBufferList
 </pre>
 </div>
@@ -202,7 +202,7 @@
 <div class="refsect2">
 <a name="gst-buffer-list-new-sized"></a><h3>gst_buffer_list_new_sized ()</h3>
 <pre class="programlisting"><a class="link" href="GstBufferList.html" title="GstBufferList"><span class="returnvalue">GstBufferList</span></a> *
-gst_buffer_list_new_sized (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+gst_buffer_list_new_sized (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Creates a new, empty <a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a>. The caller is responsible for unreffing
 the returned <a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a>. The list will have <em class="parameter"><code>size</code></em>
  space preallocated so
@@ -233,7 +233,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-list-length"></a><h3>gst_buffer_list_length ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_buffer_list_length (<em class="parameter"><code><a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> *list</code></em>);</pre>
 <p>Returns the number of buffers in <em class="parameter"><code>list</code></em>
 .</p>
@@ -294,7 +294,7 @@
 <a name="gst-buffer-list-insert"></a><h3>gst_buffer_list_insert ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_list_insert (<em class="parameter"><code><a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> *list</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> idx</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> idx</code></em>,
                         <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre>
 <p>Insert <em class="parameter"><code>buffer</code></em>
  at <em class="parameter"><code>idx</code></em>
@@ -336,8 +336,8 @@
 <a name="gst-buffer-list-remove"></a><h3>gst_buffer_list_remove ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_list_remove (<em class="parameter"><code><a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> *list</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>);</pre>
 <p>Remove <em class="parameter"><code>length</code></em>
  buffers starting from <em class="parameter"><code>idx</code></em>
  in <em class="parameter"><code>list</code></em>
@@ -513,18 +513,18 @@
 <hr>
 <div class="refsect2">
 <a name="GstBufferListFunc"></a><h3>GstBufferListFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstBufferListFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called from <a class="link" href="GstBufferList.html#gst-buffer-list-foreach" title="gst_buffer_list_foreach ()"><code class="function">gst_buffer_list_foreach()</code></a>. The <em class="parameter"><code>buffer</code></em>
 
 field will point to a the reference of the buffer at <em class="parameter"><code>idx</code></em>
 .</p>
-<p>When this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the next buffer will be
-returned. When <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned, <a class="link" href="GstBufferList.html#gst-buffer-list-foreach" title="gst_buffer_list_foreach ()"><code class="function">gst_buffer_list_foreach()</code></a> will return.</p>
+<p>When this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the next buffer will be
+returned. When <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned, <a class="link" href="GstBufferList.html#gst-buffer-list-foreach" title="gst_buffer_list_foreach ()"><code class="function">gst_buffer_list_foreach()</code></a> will return.</p>
 <p>When <em class="parameter"><code>buffer</code></em>
- is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the item will be removed from the bufferlist.
+ is set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the item will be removed from the bufferlist.
 When <em class="parameter"><code>buffer</code></em>
  has been made writable, the new buffer reference can be assigned
 to <em class="parameter"><code>buffer</code></em>
@@ -541,8 +541,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>pointer the buffer</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> pointer the buffer. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>idx</p></td>
@@ -560,17 +560,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.8.8.13.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <a class="link" href="GstBufferList.html#gst-buffer-list-foreach" title="gst_buffer_list_foreach ()"><code class="function">gst_buffer_list_foreach()</code></a> should stop</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <a class="link" href="GstBufferList.html#gst-buffer-list-foreach" title="gst_buffer_list_foreach ()"><code class="function">gst_buffer_list_foreach()</code></a> should stop</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-list-foreach"></a><h3>gst_buffer_list_foreach ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_list_foreach (<em class="parameter"><code><a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> *list</code></em>,
                          <em class="parameter"><code><a class="link" href="GstBufferList.html#GstBufferListFunc" title="GstBufferListFunc ()"><span class="type">GstBufferListFunc</span></a> func</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Call <em class="parameter"><code>func</code></em>
  with <em class="parameter"><code>data</code></em>
  for each buffer in <em class="parameter"><code>list</code></em>
@@ -610,8 +610,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.8.8.14.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>func</code></em>
-returned <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for each buffer in <em class="parameter"><code>list</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>func</code></em>
+returned <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for each buffer in <em class="parameter"><code>list</code></em>
 or when
 <em class="parameter"><code>list</code></em>
 is empty.</p>
@@ -623,7 +623,7 @@
 <a name="gst-buffer-list-get"></a><h3>gst_buffer_list_get ()</h3>
 <pre class="programlisting"><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="returnvalue">GstBuffer</span></a> *
 gst_buffer_list_get (<em class="parameter"><code><a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> *list</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>Get the buffer at <em class="parameter"><code>idx</code></em>
 .</p>
 <div class="refsect3">
@@ -652,10 +652,10 @@
 <a name="id-1.3.8.8.15.6"></a><h4>Returns</h4>
 <p> the buffer at <em class="parameter"><code>idx</code></em>
 in <em class="parameter"><code>group</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there
-is no buffer. The buffer remains valid as long as <em class="parameter"><code>list</code></em>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no buffer. The buffer remains valid as
+long as <em class="parameter"><code>list</code></em>
 is valid. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 </div>
@@ -674,6 +674,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstBufferPool.html b/docs/gst/html/GstBufferPool.html
index fd3b588..373d188 100644
--- a/docs/gst/html/GstBufferPool.html
+++ b/docs/gst/html/GstBufferPool.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstBufferList.html" title="GstBufferList">
 <link rel="next" href="GstBus.html" title="GstBus">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBufferPool.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBufferPool.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstBufferPool.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -56,7 +56,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-get-params" title="gst_buffer_pool_config_get_params ()">gst_buffer_pool_config_get_params</a> <span class="c_punctuation">()</span>
@@ -72,7 +72,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-validate-params" title="gst_buffer_pool_config_validate_params ()">gst_buffer_pool_config_validate_params</a> <span class="c_punctuation">()</span>
@@ -80,7 +80,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-get-allocator" title="gst_buffer_pool_config_get_allocator ()">gst_buffer_pool_config_get_allocator</a> <span class="c_punctuation">()</span>
@@ -96,7 +96,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-n-options" title="gst_buffer_pool_config_n_options ()">gst_buffer_pool_config_n_options</a> <span class="c_punctuation">()</span>
@@ -111,7 +111,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-get-option" title="gst_buffer_pool_config_get_option ()">gst_buffer_pool_config_get_option</a> <span class="c_punctuation">()</span>
@@ -119,14 +119,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-has-option" title="gst_buffer_pool_config_has_option ()">gst_buffer_pool_config_has_option</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-get-options" title="gst_buffer_pool_get_options ()">gst_buffer_pool_get_options</a> <span class="c_punctuation">()</span>
@@ -134,7 +134,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-has-option" title="gst_buffer_pool_has_option ()">gst_buffer_pool_has_option</a> <span class="c_punctuation">()</span>
@@ -150,7 +150,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-set-config" title="gst_buffer_pool_set_config ()">gst_buffer_pool_set_config</a> <span class="c_punctuation">()</span>
@@ -158,7 +158,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-set-active" title="gst_buffer_pool_set_active ()">gst_buffer_pool_set_active</a> <span class="c_punctuation">()</span>
@@ -166,7 +166,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-is-active" title="gst_buffer_pool_is_active ()">gst_buffer_pool_is_active</a> <span class="c_punctuation">()</span>
@@ -228,8 +228,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBufferPool.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstBufferPool
 </pre>
@@ -309,12 +309,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-config-get-params"></a><h3>gst_buffer_pool_config_get_params ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_config_get_params (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
                                    <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *size</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *min_buffers</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *max_buffers</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *size</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *min_buffers</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *max_buffers</code></em>);</pre>
 <p>Get the configuration values from <em class="parameter"><code>config</code></em>
 .</p>
 <div class="refsect3">
@@ -334,29 +334,29 @@
 <tr>
 <td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p> the caps of buffers. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
 <td class="parameter_description"><p> the size of each buffer, not including prefix and padding. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>min_buffers</p></td>
 <td class="parameter_description"><p> the minimum amount of buffers to allocate. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>max_buffers</p></td>
 <td class="parameter_description"><p> the maximum amount of buffers to allocate or 0 for unlimited. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all parameters could be fetched.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all parameters could be fetched.</p>
 <p></p>
 </div>
 </div>
@@ -366,9 +366,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_pool_config_set_params (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
                                    <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
 <p>Configure <em class="parameter"><code>config</code></em>
  with the given parameters.</p>
 <div class="refsect3">
@@ -412,23 +412,24 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-config-validate-params"></a><h3>gst_buffer_pool_config_validate_params ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_config_validate_params
                                (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
 <p>Validate that changes made to <em class="parameter"><code>config</code></em>
  are still valid in the context of the
 expected parameters. This function is a helper that can be used to validate
 changes made by a pool to a config when <a class="link" href="GstBufferPool.html#gst-buffer-pool-set-config" title="gst_buffer_pool_set_config ()"><code class="function">gst_buffer_pool_set_config()</code></a>
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. This expects that <em class="parameter"><code>caps</code></em>
- and <em class="parameter"><code>size</code></em>
- haven't changed, and that
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. This expects that <em class="parameter"><code>caps</code></em>
+ haven't changed and that
 <em class="parameter"><code>min_buffers</code></em>
- aren't lower then what we initially expected. This does not check
-if options or allocator parameters.</p>
+ aren't lower then what we initially expected.
+This does not check if options or allocator parameters are still valid,
+won't check if size have changed, since changing the size is valid to adapt
+padding.</p>
 <div class="refsect3">
 <a name="id-1.3.9.8.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -468,7 +469,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the parameters are valid in this context.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the parameters are valid in this context.</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -476,7 +477,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-config-get-allocator"></a><h3>gst_buffer_pool_config_get_allocator ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_config_get_allocator (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> **allocator</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);</pre>
@@ -513,7 +514,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the values are set. </p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the values are set. </p>
 <p></p>
 </div>
 </div>
@@ -530,12 +531,12 @@
 .</p>
 <p>One of <em class="parameter"><code>allocator</code></em>
  and <em class="parameter"><code>params</code></em>
- can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, but not both. When <em class="parameter"><code>allocator</code></em>
+ can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, but not both. When <em class="parameter"><code>allocator</code></em>
 
-is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the default allocator of the pool will use the values in <em class="parameter"><code>param</code></em>
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the default allocator of the pool will use the values in <em class="parameter"><code>param</code></em>
 
 to perform its allocation. When <em class="parameter"><code>param</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the pool will use the
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the pool will use the
 provided <em class="parameter"><code>allocator</code></em>
  with its default <a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a>.</p>
 <p>A call to <a class="link" href="GstBufferPool.html#gst-buffer-pool-set-config" title="gst_buffer_pool_set_config ()"><code class="function">gst_buffer_pool_set_config()</code></a> can update the allocator and params
@@ -560,13 +561,13 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>allocator</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> a <a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>params</p></td>
-<td class="parameter_description"><p><a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> <a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -575,7 +576,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-config-n-options"></a><h3>gst_buffer_pool_config_n_options ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_buffer_pool_config_n_options (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>);</pre>
 <p>Retrieve the number of values currently stored in the options array of the
 <em class="parameter"><code>config</code></em>
@@ -597,7 +598,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.9.6"></a><h4>Returns</h4>
-<p> the options array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
+<p> the options array size as a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
 <p></p>
 </div>
 </div>
@@ -606,7 +607,7 @@
 <a name="gst-buffer-pool-config-add-option"></a><h3>gst_buffer_pool_config_add_option ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_pool_config_add_option (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
-                                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *option</code></em>);</pre>
+                                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *option</code></em>);</pre>
 <p>Enabled the option in <em class="parameter"><code>config</code></em>
 . This will instruct the <em class="parameter"><code>bufferpool</code></em>
  to enable
@@ -639,9 +640,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-config-get-option"></a><h3>gst_buffer_pool_config_get_option ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_buffer_pool_config_get_option (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Parse an available <em class="parameter"><code>config</code></em>
  and get the option at <em class="parameter"><code>index</code></em>
  of the options API
@@ -670,7 +671,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.11.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> of the option at <em class="parameter"><code>index</code></em>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> of the option at <em class="parameter"><code>index</code></em>
 .</p>
 <p></p>
 </div>
@@ -678,9 +679,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-config-has-option"></a><h3>gst_buffer_pool_config_has_option ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_config_has_option (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>,
-                                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *option</code></em>);</pre>
+                                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *option</code></em>);</pre>
 <p>Check if <em class="parameter"><code>config</code></em>
  contains <em class="parameter"><code>option</code></em>
 .</p>
@@ -708,7 +709,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.12.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the options array contains <em class="parameter"><code>option</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the options array contains <em class="parameter"><code>option</code></em>
 .</p>
 <p></p>
 </div>
@@ -716,9 +717,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-get-options"></a><h3>gst_buffer_pool_get_options ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 gst_buffer_pool_get_options (<em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>);</pre>
-<p>Get a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of string with supported bufferpool options for
+<p>Get a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of string with supported bufferpool options for
 <em class="parameter"><code>pool</code></em>
 . An option would typically be enabled with
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-add-option" title="gst_buffer_pool_config_add_option ()"><code class="function">gst_buffer_pool_config_add_option()</code></a>.</p>
@@ -739,7 +740,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.13.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array
 of strings. </p>
 <p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -747,9 +748,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-has-option"></a><h3>gst_buffer_pool_has_option ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_has_option (<em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *option</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *option</code></em>);</pre>
 <p>Check if the bufferpool supports <em class="parameter"><code>option</code></em>
 .</p>
 <div class="refsect3">
@@ -776,7 +777,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the buffer pool contains <em class="parameter"><code>option</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the buffer pool contains <em class="parameter"><code>option</code></em>
 .</p>
 <p></p>
 </div>
@@ -815,14 +816,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-set-config"></a><h3>gst_buffer_pool_set_config ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_set_config (<em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>,
                             <em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *config</code></em>);</pre>
 <p>Set the configuration of the pool. If the pool is already configured, and
-the configuration haven't change, this function will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. If the
-pool is active, this function will try deactivating it. Buffers allocated
-form this pool must be returned or else this function will do nothing and
-return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+the configuration haven't change, this function will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. If the
+pool is active, this method will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and active configuration
+will remain. Buffers allocated form this pool must be returned or else this
+function will do nothing and return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p><em class="parameter"><code>config</code></em>
  is a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> that contains the configuration parameters for
 the pool. A default and mandatory set of parameters can be configured with
@@ -830,7 +831,7 @@
 and <a class="link" href="GstBufferPool.html#gst-buffer-pool-config-add-option" title="gst_buffer_pool_config_add_option ()"><code class="function">gst_buffer_pool_config_add_option()</code></a>.</p>
 <p>If the parameters in <em class="parameter"><code>config</code></em>
  can not be set exactly, this function returns
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and will try to update as much state as possible. The new state can
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and will try to update as much state as possible. The new state can
 then be retrieved and refined with <a class="link" href="GstBufferPool.html#gst-buffer-pool-get-config" title="gst_buffer_pool_get_config ()"><code class="function">gst_buffer_pool_get_config()</code></a>.</p>
 <p>This function takes ownership of <em class="parameter"><code>config</code></em>
 .</p>
@@ -858,16 +859,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.16.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the configuration could be set.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the configuration could be set.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-set-active"></a><h3>gst_buffer_pool_set_active ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_set_active (<em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Control the active state of <em class="parameter"><code>pool</code></em>
 . When the pool is inactive, new calls to
 <a class="link" href="GstBufferPool.html#gst-buffer-pool-acquire-buffer" title="gst_buffer_pool_acquire_buffer ()"><code class="function">gst_buffer_pool_acquire_buffer()</code></a> will return with <a class="link" href="GstPad.html#GST-FLOW-FLUSHING:CAPS"><code class="literal">GST_FLOW_FLUSHING</code></a>.</p>
@@ -900,7 +901,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.17.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the pool was not configured or when preallocation of the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the pool was not configured or when preallocation of the
 buffers failed.</p>
 <p></p>
 </div>
@@ -908,7 +909,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-buffer-pool-is-active"></a><h3>gst_buffer_pool_is_active ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_buffer_pool_is_active (<em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>);</pre>
 <p>Check if <em class="parameter"><code>pool</code></em>
  is active. A pool can be activated with the
@@ -930,7 +931,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.9.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the pool is active.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the pool is active.</p>
 <p></p>
 </div>
 </div>
@@ -939,8 +940,8 @@
 <a name="gst-buffer-pool-set-flushing"></a><h3>gst_buffer_pool_set_flushing ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_buffer_pool_set_flushing (<em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
-<p>Enabled or disable the flushing state of a <em class="parameter"><code>pool</code></em>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
+<p>Enable or disable the flushing state of a <em class="parameter"><code>pool</code></em>
  without freeing or
 allocating buffers.</p>
 <div class="refsect3">
@@ -979,7 +980,7 @@
  should point to a memory location that
 can hold a pointer to the new buffer.</p>
 <p><em class="parameter"><code>params</code></em>
- can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> or contain optional parameters to influence the
+ can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> or contain optional parameters to influence the
 allocation.</p>
 <div class="refsect3">
 <a name="id-1.3.9.8.20.6"></a><h4>Parameters</h4>
@@ -1003,7 +1004,7 @@
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> parameters. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1296,6 +1297,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstBus.html b/docs/gst/html/GstBus.html
index 0a011a7..376bb03 100644
--- a/docs/gst/html/GstBus.html
+++ b/docs/gst/html/GstBus.html
@@ -8,16 +8,16 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstBufferPool.html" title="GstBufferPool">
 <link rel="next" href="GstCaps.html" title="GstCaps">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBus.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstBus.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#GstBus.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBus.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstBus.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#GstBus.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstBus.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,7 +44,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstBus.html#GstBusFunc" title="GstBusFunc ()">*GstBusFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -68,7 +68,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBus.html#gst-bus-post" title="gst_bus_post ()">gst_bus_post</a> <span class="c_punctuation">()</span>
@@ -76,7 +76,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBus.html#gst-bus-have-pending" title="gst_bus_have_pending ()">gst_bus_have_pending</a> <span class="c_punctuation">()</span>
@@ -148,7 +148,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="returnvalue">GSource</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="returnvalue">GSource</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstBus.html#gst-bus-create-watch" title="gst_bus_create_watch ()">gst_bus_create_watch</a> <span class="c_punctuation">()</span>
@@ -156,7 +156,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBus.html#gst-bus-add-watch-full" title="gst_bus_add_watch_full ()">gst_bus_add_watch_full</a> <span class="c_punctuation">()</span>
@@ -164,7 +164,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBus.html#gst-bus-add-watch" title="gst_bus_add_watch ()">gst_bus_add_watch</a> <span class="c_punctuation">()</span>
@@ -172,6 +172,14 @@
 </tr>
 <tr>
 <td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstBus.html#gst-bus-remove-watch" title="gst_bus_remove_watch ()">gst_bus_remove_watch</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
 <span class="returnvalue">void</span>
 </td>
 <td class="function_name">
@@ -188,7 +196,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBus.html#gst-bus-async-signal-func" title="gst_bus_async_signal_func ()">gst_bus_async_signal_func</a> <span class="c_punctuation">()</span>
@@ -238,7 +246,7 @@
 <col width="200px" class="properties_flags">
 </colgroup>
 <tbody><tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBus.html#GstBus--enable-async" title="The “enable-async” property">enable-async</a></td>
 <td class="property_flags">Write / Construct Only</td>
 </tr></tbody>
@@ -291,8 +299,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBus.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstBus
 </pre>
@@ -311,9 +319,9 @@
 messages from one thread, the GstBus will marshall the messages between
 different threads. This is important since the actual streaming of media
 is done in another thread than the application.</p>
-<p>The GstBus provides support for <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> based notifications. This makes it
+<p>The GstBus provides support for <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> based notifications. This makes it
 possible to handle the delivery in the glib mainloop.</p>
-<p>The <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> callback function <a class="link" href="GstBus.html#gst-bus-async-signal-func" title="gst_bus_async_signal_func ()"><code class="function">gst_bus_async_signal_func()</code></a> can be used to
+<p>The <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> callback function <a class="link" href="GstBus.html#gst-bus-async-signal-func" title="gst_bus_async_signal_func ()"><code class="function">gst_bus_async_signal_func()</code></a> can be used to
 convert all bus messages into signal emissions.</p>
 <p>A message is posted on the bus with the <a class="link" href="GstBus.html#gst-bus-post" title="gst_bus_post ()"><code class="function">gst_bus_post()</code></a> method. With the
 <a class="link" href="GstBus.html#gst-bus-peek" title="gst_bus_peek ()"><code class="function">gst_bus_peek()</code></a> and <a class="link" href="GstBus.html#gst-bus-pop" title="gst_bus_pop ()"><code class="function">gst_bus_pop()</code></a> methods one can look at or retrieve a
@@ -324,7 +332,7 @@
 from the bus to handle them.
 Alternatively the application can register an asynchronous bus function
 using <a class="link" href="GstBus.html#gst-bus-add-watch-full" title="gst_bus_add_watch_full ()"><code class="function">gst_bus_add_watch_full()</code></a> or <a class="link" href="GstBus.html#gst-bus-add-watch" title="gst_bus_add_watch ()"><code class="function">gst_bus_add_watch()</code></a>. This function will
-install a <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> in the default glib main loop and will deliver messages
+install a <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> in the default glib main loop and will deliver messages
 a short while after they have been posted. Note that the main loop should
 be running for the asynchronous callbacks.</p>
 <p>It is also possible to get messages from the bus without any thread
@@ -340,17 +348,17 @@
 <a name="GstBus.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="GstBusFunc"></a><h3>GstBusFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstBusFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
                <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Specifies the type of function passed to <a class="link" href="GstBus.html#gst-bus-add-watch" title="gst_bus_add_watch ()"><code class="function">gst_bus_add_watch()</code></a> or
 <a class="link" href="GstBus.html#gst-bus-add-watch-full" title="gst_bus_add_watch_full ()"><code class="function">gst_bus_add_watch_full()</code></a>, which is called from the mainloop when a message
 is available on the bus.</p>
 <p>The message passed to the function will be unreffed after execution of this
 function so it should not be freed in the function.</p>
 <p>Note that this function is used as a GSourceFunc which means that returning
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> will remove the GSource from the mainloop.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> will remove the GSource from the mainloop.</p>
 <div class="refsect3">
 <a name="id-1.3.10.10.2.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -380,7 +388,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.2.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the event source should be removed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the event source should be removed.</p>
 <p></p>
 </div>
 </div>
@@ -390,7 +398,7 @@
 <pre class="programlisting"><a class="link" href="GstBus.html#GstBusSyncReply" title="enum GstBusSyncReply"><span class="returnvalue">GstBusSyncReply</span></a>
 <span class="c_punctuation">(</span>*GstBusSyncHandler<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
                       <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Handler will be invoked synchronously, when a new message has been injected
 into the bus. This function is mostly used internally. Only one sync handler
 can be attached to a given bus.</p>
@@ -444,7 +452,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bus-post"></a><h3>gst_bus_post ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bus_post (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
               <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre>
 <p>Post a message on the given bus. Ownership of the message
@@ -473,7 +481,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message could be posted, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the bus is flushing.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message could be posted, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the bus is flushing.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -481,7 +489,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bus-have-pending"></a><h3>gst_bus_have_pending ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bus_have_pending (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>);</pre>
 <p>Check if there are pending messages on the bus that
 should be handled.</p>
@@ -502,7 +510,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there are messages on the bus to be handled, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there are messages on the bus to be handled, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 otherwise.</p>
 <p>MT safe.</p>
 <p></p>
@@ -533,10 +541,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.7.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that is on the bus, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-bus is empty.</p>
+<p> the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that is on the
+bus, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the bus is empty.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -562,11 +570,12 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that is on the bus, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-bus is empty. The message is taken from the bus and needs to be unreffed
-with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage.</p>
+<p> the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that is on the
+bus, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the bus is empty. The message is taken from
+the bus and needs to be unreffed with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after
+usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -609,14 +618,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.9.6"></a><h4>Returns</h4>
-<p> the next <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> matching <em class="parameter"><code>type</code></em>
-that is on
-the bus, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the bus is empty or there is no message matching
+<p> the next <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> matching
 <em class="parameter"><code>type</code></em>
-. The message is taken from the bus and needs to be unreffed with
-<a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage.</p>
+that is on the bus, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the bus is empty or there
+is no message matching <em class="parameter"><code>type</code></em>
+. The message is taken from the bus
+and needs to be unreffed with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -655,12 +664,12 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.10.7"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that is on the bus after the
-specified timeout or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the bus is empty after the timeout expired.
-The message is taken from the bus and needs to be unreffed with
-<a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage.</p>
+<p> the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that is on the
+bus after the specified timeout or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the bus is empty
+after the timeout expired.  The message is taken from the bus
+and needs to be unreffed with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -708,13 +717,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.11.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> matching the filter in <em class="parameter"><code>types</code></em>
-,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no matching message was found on the bus until the timeout
-expired. The message is taken from the bus and needs to be unreffed
-with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage.</p>
+<p> a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> matching the
+filter in <em class="parameter"><code>types</code></em>
+, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no matching message was found on
+the bus until the timeout expired. The message is taken from
+the bus and needs to be unreffed with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after
+usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -722,12 +732,12 @@
 <a name="gst-bus-set-flushing"></a><h3>gst_bus_set_flushing ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bus_set_flushing (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
 <p>If <em class="parameter"><code>flushing</code></em>
 , flush out and unref any messages queued in the bus. Releases
 references to the message origin objects. Will flush future messages until
 <a class="link" href="GstBus.html#gst-bus-set-flushing" title="gst_bus_set_flushing ()"><code class="function">gst_bus_set_flushing()</code></a> sets <em class="parameter"><code>flushing</code></em>
- to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+ to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p>MT safe.</p>
 <div class="refsect3">
 <a name="id-1.3.10.10.12.6"></a><h4>Parameters</h4>
@@ -758,15 +768,15 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bus_set_sync_handler (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
                           <em class="parameter"><code><a class="link" href="GstBus.html#GstBusSyncHandler" title="GstBusSyncHandler ()"><span class="type">GstBusSyncHandler</span></a> func</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the synchronous handler on the bus. The function will be called
 every time a new message is posted on the bus. Note that the function
 will be called in the same thread context as the posting object. This
 function is usually only called by the creator of the bus. Applications
 should handle messages asynchronously using the gst_bus watch and poll
 functions.</p>
-<p>You cannot replace an existing sync_handler. You can pass <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to this
+<p>You cannot replace an existing sync_handler. You can pass <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to this
 function, which will clear the existing handler.</p>
 <div class="refsect3">
 <a name="id-1.3.10.10.13.6"></a><h4>Parameters</h4>
@@ -785,7 +795,7 @@
 <tr>
 <td class="parameter_name"><p>func</p></td>
 <td class="parameter_description"><p> The handler function to install. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>user_data</p></td>
@@ -808,7 +818,7 @@
 <pre class="programlisting"><a class="link" href="GstBus.html#GstBusSyncReply" title="enum GstBusSyncReply"><span class="returnvalue">GstBusSyncReply</span></a>
 gst_bus_sync_signal_handler (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
                              <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>A helper GstBusSyncHandler that can be used to convert all synchronous
 messages into signals.</p>
 <div class="refsect3">
@@ -847,7 +857,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bus-create-watch"></a><h3>gst_bus_create_watch ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="returnvalue">GSource</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="returnvalue">GSource</span></a> *
 gst_bus_create_watch (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>);</pre>
 <p>Create watch for this bus. The GSource will be dispatched whenever
 a message is on the bus. After the GSource is dispatched, the
@@ -869,23 +879,23 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.15.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> that can be added to a mainloop. </p>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a> that can be added to a mainloop. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bus-add-watch-full"></a><h3>gst_bus_add_watch_full ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_bus_add_watch_full (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> priority</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> priority</code></em>,
                         <em class="parameter"><code><a class="link" href="GstBus.html#GstBusFunc" title="GstBusFunc ()"><span class="type">GstBusFunc</span></a> func</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Adds a bus watch to the default main context with the given <em class="parameter"><code>priority</code></em>
  (e.g.
-<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default  main
-context set up using <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a> (before
+<a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default  main
+context set up using <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a> (before
 one had to create a bus watch source and attach it to the desired main
 context 'manually').</p>
 <p>This function is used to receive asynchronous messages in the main loop.
@@ -895,9 +905,10 @@
  is called, the message belongs to the caller; if you want to
 keep a copy of it, call <a class="link" href="GstMessage.html#gst-message-ref" title="gst_message_ref ()"><code class="function">gst_message_ref()</code></a> before leaving <em class="parameter"><code>func</code></em>
 .</p>
-<p>The watch can be removed using <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-source-remove"><code class="function">g_source_remove()</code></a> or by returning <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<p>The watch can be removed using <a class="link" href="GstBus.html#gst-bus-remove-watch" title="gst_bus_remove_watch ()"><code class="function">gst_bus_remove_watch()</code></a> or by returning <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 from <em class="parameter"><code>func</code></em>
-.</p>
+. If the watch was added to the default main context it is also
+possible to remove the watch using <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#g-source-remove"><code class="function">g_source_remove()</code></a>.</p>
 <p>MT safe.</p>
 <div class="refsect3">
 <a name="id-1.3.10.10.16.9"></a><h4>Parameters</h4>
@@ -939,29 +950,30 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.16.10"></a><h4>Returns</h4>
-<p> The event source id.
-Rename to: gst_bus_add_watch</p>
+<p> The event source id or 0 if <em class="parameter"><code>bus</code></em>
+already got an event source.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bus-add-watch"></a><h3>gst_bus_add_watch ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_bus_add_watch (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
                    <em class="parameter"><code><a class="link" href="GstBus.html#GstBusFunc" title="GstBusFunc ()"><span class="type">GstBusFunc</span></a> func</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Adds a bus watch to the default main context with the default priority
-(<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default main
-context set up using <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a> (before
+(<a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default main
+context set up using <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a> (before
 one had to create a bus watch source and attach it to the desired main
 context 'manually').</p>
 <p>This function is used to receive asynchronous messages in the main loop.
 There can only be a single bus watch per bus, you must remove it before you
 can set a new one.</p>
-<p>The watch can be removed using <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-source-remove"><code class="function">g_source_remove()</code></a> or by returning <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<p>The watch can be removed using <a class="link" href="GstBus.html#gst-bus-remove-watch" title="gst_bus_remove_watch ()"><code class="function">gst_bus_remove_watch()</code></a> or by returning <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 from <em class="parameter"><code>func</code></em>
-.</p>
+. If the watch was added to the default main context it is also
+possible to remove the watch using <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#g-source-remove"><code class="function">g_source_remove()</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.10.10.17.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -992,13 +1004,44 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.10.10.17.8"></a><h4>Returns</h4>
-<p> The event source id.</p>
+<p> The event source id or 0 if <em class="parameter"><code>bus</code></em>
+already got an event source.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-bus-remove-watch"></a><h3>gst_bus_remove_watch ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_bus_remove_watch (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>);</pre>
+<p>Removes an installed bus watch from <em class="parameter"><code>bus</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.10.10.18.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>bus</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> to remove the watch from.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.10.10.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if <em class="parameter"><code>bus</code></em>
+has no event source.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-bus-disable-sync-message-emission"></a><h3>gst_bus_disable_sync_message_emission ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bus_disable_sync_message_emission (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>);</pre>
@@ -1012,7 +1055,7 @@
 disable.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.18.7"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.19.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1048,7 +1091,7 @@
 signal is marshalled to the main thread via the main loop.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.19.8"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.20.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1066,14 +1109,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bus-async-signal-func"></a><h3>gst_bus_async_signal_func ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bus_async_signal_func (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
                            <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>A helper <a class="link" href="GstBus.html#GstBusFunc" title="GstBusFunc ()"><span class="type">GstBusFunc</span></a> that can be used to convert all asynchronous messages
 into signals.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1100,8 +1143,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.10.10.20.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a></p>
+<a name="id-1.3.10.10.21.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a></p>
 <p></p>
 </div>
 </div>
@@ -1111,8 +1154,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bus_add_signal_watch (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>);</pre>
 <p>Adds a bus signal watch to the default main context with the default priority
-(<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default
-main context set up using <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a> (before
+(<a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default
+main context set up using <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a> (before
 one had to create a bus watch source and attach it to the desired main
 context 'manually').</p>
 <p>After calling this statement, the bus will emit the "message" signal for each
@@ -1122,7 +1165,7 @@
 function is called.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.21.8"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.22.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1142,11 +1185,11 @@
 <a name="gst-bus-add-signal-watch-full"></a><h3>gst_bus_add_signal_watch_full ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bus_add_signal_watch_full (<em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> priority</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> priority</code></em>);</pre>
 <p>Adds a bus signal watch to the default main context with the given <em class="parameter"><code>priority</code></em>
 
-(e.g. <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default main
-context set up using <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a>
+(e.g. <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a>). It is also possible to use a non-default main
+context set up using <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default"><code class="function">g_main_context_push_thread_default()</code></a>
 (before one had to create a bus watch source and attach it to the desired
 main context 'manually').</p>
 <p>After calling this statement, the bus will emit the "message" signal for each
@@ -1158,7 +1201,7 @@
 watch before you can set another type of watch.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.22.9"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.23.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1188,7 +1231,7 @@
 <p>Removes a signal watch previously added with <a class="link" href="GstBus.html#gst-bus-add-signal-watch" title="gst_bus_add_signal_watch ()"><code class="function">gst_bus_add_signal_watch()</code></a>.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.23.6"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.24.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1243,7 +1286,7 @@
 better handled by setting up an asynchronous bus watch and doing things
 from there.</p>
 <div class="refsect3">
-<a name="id-1.3.10.10.24.10"></a><h4>Parameters</h4>
+<a name="id-1.3.10.10.25.10"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1272,11 +1315,12 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.10.10.24.11"></a><h4>Returns</h4>
-<p> the message that was received, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-poll timed out. The message is taken from the bus and needs to be
-unreffed with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.10.10.25.11"></a><h4>Returns</h4>
+<p> the message that was received,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the poll timed out. The message is taken from the
+bus and needs to be unreffed with <a class="link" href="GstMessage.html#gst-message-unref" title="gst_message_unref ()"><code class="function">gst_message_unref()</code></a> after
+usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 </div>
@@ -1361,7 +1405,7 @@
 <a name="GstBus.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstBus--enable-async"></a><h3>The <code class="literal">“enable-async”</code> property</h3>
-<pre class="programlisting">  “enable-async”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “enable-async”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Enable async message delivery for bus watches and gst_bus_pop().</p>
 <p>Flags: Write / Construct Only</p>
 <p>Default value: TRUE</p>
@@ -1374,7 +1418,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>     *bus,
                <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>A message has been posted on the bus. This signal is emitted from a
 GSource added to the mainloop. this signal will only be emitted when
 there is a mainloop running.</p>
@@ -1413,7 +1457,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>     *bus,
                <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>A message has been posted on the bus. This signal is emitted from the
 thread that posted the message so one has to be careful with locking.</p>
 <p>This signal will not be emitted by default, you have to call
@@ -1455,6 +1499,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstCaps.html b/docs/gst/html/GstCaps.html
index f349c68..6abc193 100644
--- a/docs/gst/html/GstCaps.html
+++ b/docs/gst/html/GstCaps.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstBus.html" title="GstBus">
 <link rel="next" href="GstCapsFeatures.html" title="GstCapsFeatures">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstCaps.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstCaps.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstCaps.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -90,6 +90,30 @@
 </tr>
 <tr>
 <td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="GstCaps.html#GstCapsForeachFunc" title="GstCapsForeachFunc ()">*GstCapsForeachFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="GstCaps.html#GstCapsMapFunc" title="GstCapsMapFunc ()">*GstCapsMapFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="GstCaps.html#GstCapsFilterMapFunc" title="GstCapsFilterMapFunc ()">*GstCapsFilterMapFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
 <a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
 </td>
 <td class="function_name">
@@ -240,7 +264,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-get-size" title="gst_caps_get_size ()">gst_caps_get_size</a> <span class="c_punctuation">()</span>
@@ -296,7 +320,31 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstCaps.html#gst-caps-foreach" title="gst_caps_foreach ()">gst_caps_foreach</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstCaps.html#gst-caps-map-in-place" title="gst_caps_map_in_place ()">gst_caps_map_in_place</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="GstCaps.html#gst-caps-filter-and-map-in-place" title="gst_caps_filter_and_map_in_place ()">gst_caps_filter_and_map_in_place</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-any" title="gst_caps_is_any ()">gst_caps_is_any</a> <span class="c_punctuation">()</span>
@@ -304,7 +352,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-empty" title="gst_caps_is_empty ()">gst_caps_is_empty</a> <span class="c_punctuation">()</span>
@@ -312,7 +360,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-fixed" title="gst_caps_is_fixed ()">gst_caps_is_fixed</a> <span class="c_punctuation">()</span>
@@ -320,7 +368,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-equal" title="gst_caps_is_equal ()">gst_caps_is_equal</a> <span class="c_punctuation">()</span>
@@ -328,7 +376,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-equal-fixed" title="gst_caps_is_equal_fixed ()">gst_caps_is_equal_fixed</a> <span class="c_punctuation">()</span>
@@ -336,7 +384,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-strictly-equal" title="gst_caps_is_strictly_equal ()">gst_caps_is_strictly_equal</a> <span class="c_punctuation">()</span>
@@ -344,7 +392,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-always-compatible" title="gst_caps_is_always_compatible ()">gst_caps_is_always_compatible</a> <span class="c_punctuation">()</span>
@@ -352,7 +400,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-subset" title="gst_caps_is_subset ()">gst_caps_is_subset</a> <span class="c_punctuation">()</span>
@@ -360,7 +408,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-subset-structure" title="gst_caps_is_subset_structure ()">gst_caps_is_subset_structure</a> <span class="c_punctuation">()</span>
@@ -368,7 +416,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-is-subset-structure-full" title="gst_caps_is_subset_structure_full ()">gst_caps_is_subset_structure_full</a> <span class="c_punctuation">()</span>
@@ -376,7 +424,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-can-intersect" title="gst_caps_can_intersect ()">gst_caps_can_intersect</a> <span class="c_punctuation">()</span>
@@ -416,7 +464,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-replace" title="gst_caps_replace ()">gst_caps_replace</a> <span class="c_punctuation">()</span>
@@ -424,7 +472,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-take" title="gst_caps_take ()">gst_caps_take</a> <span class="c_punctuation">()</span>
@@ -432,7 +480,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstCaps.html#gst-caps-to-string" title="gst_caps_to_string ()">gst_caps_to_string</a> <span class="c_punctuation">()</span>
@@ -540,7 +588,7 @@
 </div>
 <div class="refsect1">
 <a name="GstCaps.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstCaps
 </pre>
 </div>
@@ -796,6 +844,143 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="GstCapsForeachFunc"></a><h3>GstCapsForeachFunc ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstCapsForeachFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
+                       <em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>A function that will be called in <a class="link" href="GstCaps.html#gst-caps-foreach" title="gst_caps_foreach ()"><code class="function">gst_caps_foreach()</code></a>. The function may
+not modify <em class="parameter"><code>features</code></em>
+ or <em class="parameter"><code>structure</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>features</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.10.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the foreach operation should continue, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+the foreach operation should stop with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstCapsMapFunc"></a><h3>GstCapsMapFunc ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstCapsMapFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
+                   <em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>A function that will be called in <a class="link" href="GstCaps.html#gst-caps-map-in-place" title="gst_caps_map_in_place ()"><code class="function">gst_caps_map_in_place()</code></a>. The function
+may modify <em class="parameter"><code>features</code></em>
+ and <em class="parameter"><code>structure</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.11.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>features</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.11.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map operation should continue, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+the map operation should stop with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstCapsFilterMapFunc"></a><h3>GstCapsFilterMapFunc ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstCapsFilterMapFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
+                         <em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>A function that will be called in <a class="link" href="GstCaps.html#gst-caps-filter-and-map-in-place" title="gst_caps_filter_and_map_in_place ()"><code class="function">gst_caps_filter_and_map_in_place()</code></a>.
+The function may modify <em class="parameter"><code>features</code></em>
+ and <em class="parameter"><code>structure</code></em>
+, and both will be
+removed from the caps if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.12.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>features</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.12.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the features and structure should be preserved,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it should be removed.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-caps-new-empty"></a><h3>gst_caps_new_empty ()</h3>
 <pre class="programlisting"><a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
 gst_caps_new_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
@@ -804,7 +989,7 @@
 The <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> is guaranteed to be writable.
 Caller is responsible for unreffing the returned caps.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.10.5"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.13.5"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -819,7 +1004,7 @@
 .
 Caller is responsible for unreffing the returned caps.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -834,7 +1019,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.11.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.14.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -847,7 +1032,7 @@
 <p>Creates a new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> that indicates that it is compatible with
 any media format.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.12.5"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.15.5"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -864,7 +1049,7 @@
 as <a class="link" href="GstStructure.html#gst-structure-new" title="gst_structure_new ()"><code class="function">gst_structure_new()</code></a>.
 Caller is responsible for unreffing the returned caps.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -891,7 +1076,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.13.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.16.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -903,10 +1088,10 @@
 gst_caps_new_full (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *struct1</code></em>,
                    <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> and adds all the structures listed as
-arguments.  The list must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.  The structures
+arguments.  The list must be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.  The structures
 are not copied; the returned <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> owns the structures.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -928,7 +1113,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.14.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.17.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -940,10 +1125,10 @@
 gst_caps_new_full_valist (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                           <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> and adds all the structures listed as
-arguments.  The list must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.  The structures
+arguments.  The list must be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.  The structures
 are not copied; the returned <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> owns the structures.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -965,7 +1150,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.15.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.18.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -979,7 +1164,7 @@
 . It is only safe to modify caps when
 there is only one owner of the caps - ie, the object is writable.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1007,7 +1192,7 @@
 reference to the data, you should use <a class="link" href="GstCaps.html#gst-caps-ref" title="gst_caps_ref ()"><code class="function">gst_caps_ref()</code></a>.</p>
 <p>When you are finished with the caps, call <a class="link" href="GstCaps.html#gst-caps-unref" title="gst_caps_unref ()"><code class="function">gst_caps_unref()</code></a> on it.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.17.7"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.20.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1022,7 +1207,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.17.8"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.20.8"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p>
 <p></p>
 </div>
@@ -1032,12 +1217,12 @@
 <a name="gst-caps-copy-nth"></a><h3>gst_caps_copy_nth ()</h3>
 <pre class="programlisting"><a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
 gst_caps_copy_nth (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nth</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nth</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> and appends a copy of the nth structure
 contained in <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1059,7 +1244,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.18.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.21.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1071,7 +1256,7 @@
 gst_static_caps_get (<em class="parameter"><code><a class="link" href="GstCaps.html#GstStaticCaps" title="struct GstStaticCaps"><span class="type">GstStaticCaps</span></a> *static_caps</code></em>);</pre>
 <p>Converts a <a class="link" href="GstCaps.html#GstStaticCaps" title="struct GstStaticCaps"><span class="type">GstStaticCaps</span></a> to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1086,7 +1271,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.19.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.22.6"></a><h4>Returns</h4>
 <p> a pointer to the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. Unref after usage.
 Since the core holds an additional ref to the returned caps,
 use <a class="link" href="GstCaps.html#gst-caps-make-writable" title="gst_caps_make_writable()"><code class="function">gst_caps_make_writable()</code></a> on the returned caps to modify it. </p>
@@ -1101,7 +1286,7 @@
 <p>Clean up the cached caps contained in <em class="parameter"><code>static_caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1131,7 +1316,7 @@
  is
 freed. If either caps is ANY, the resulting caps will be ANY.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1170,7 +1355,7 @@
  is freed.
 If either caps is ANY, the resulting caps will be ANY.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1192,7 +1377,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.22.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.25.6"></a><h4>Returns</h4>
 <p> the merged caps. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1210,7 +1395,7 @@
 becomes the owner of <em class="parameter"><code>structure</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1247,7 +1432,7 @@
 becomes the owner of <em class="parameter"><code>structure</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1268,7 +1453,7 @@
 <tr>
 <td class="parameter_name"><p>features</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> to append. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1280,12 +1465,12 @@
 <a name="gst-caps-remove-structure"></a><h3>gst_caps_remove_structure ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_remove_structure (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>removes the structure with the given index from the list of structures
 contained in <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1312,12 +1497,12 @@
 <a name="gst-caps-steal-structure"></a><h3>gst_caps_steal_structure ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
 gst_caps_steal_structure (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Retrieves the structure with the given index from the list of structures
 contained in <em class="parameter"><code>caps</code></em>
 . The caller becomes the owner of the returned structure.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1339,7 +1524,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.26.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.29.6"></a><h4>Returns</h4>
 <p> a pointer to the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> corresponding
 to <em class="parameter"><code>index</code></em>
 . </p>
@@ -1357,7 +1542,7 @@
  if its not already expressed by <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1379,7 +1564,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.27.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.30.6"></a><h4>Returns</h4>
 <p> the merged caps. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1397,7 +1582,7 @@
  if its not already expressed by <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1418,13 +1603,13 @@
 <tr>
 <td class="parameter_name"><p>features</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> to merge. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.28.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.31.6"></a><h4>Returns</h4>
 <p> the merged caps. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1433,12 +1618,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-get-size"></a><h3>gst_caps_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_caps_get_size (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Gets the number of structures contained in <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1453,7 +1638,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.29.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.32.6"></a><h4>Returns</h4>
 <p> the number of structures that <em class="parameter"><code>caps</code></em>
 contains</p>
 <p></p>
@@ -1464,7 +1649,7 @@
 <a name="gst-caps-get-structure"></a><h3>gst_caps_get_structure ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
 gst_caps_get_structure (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Finds the structure in <em class="parameter"><code>caps</code></em>
  that has the index <em class="parameter"><code>index</code></em>
 , and
@@ -1480,7 +1665,7 @@
 <p>You do not need to free or unref the structure returned, it
 belongs to the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.30.7"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.33.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1502,7 +1687,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.30.8"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.33.8"></a><h4>Returns</h4>
 <p> a pointer to the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> corresponding
 to <em class="parameter"><code>index</code></em>
 . </p>
@@ -1514,7 +1699,7 @@
 <a name="gst-caps-get-features"></a><h3>gst_caps_get_features ()</h3>
 <pre class="programlisting"><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
 gst_caps_get_features (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Finds the features in <em class="parameter"><code>caps</code></em>
  that has the index <em class="parameter"><code>index</code></em>
 , and
@@ -1530,7 +1715,7 @@
 <p>You do not need to free or unref the structure returned, it
 belongs to the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.31.7"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.34.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1552,7 +1737,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.31.8"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.34.8"></a><h4>Returns</h4>
 <p> a pointer to the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> corresponding
 to <em class="parameter"><code>index</code></em>
 . </p>
@@ -1565,13 +1750,13 @@
 <a name="gst-caps-set-features"></a><h3>gst_caps_set_features ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_set_features (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                        <em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>);</pre>
 <p>Sets the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> <em class="parameter"><code>features</code></em>
  for the structure at <em class="parameter"><code>index</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.32.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1592,7 +1777,7 @@
 <tr>
 <td class="parameter_name"><p>features</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> to set. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1605,7 +1790,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_set_value (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
                     <em class="parameter"><code>const <span class="type">char</span> *field</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Sets the given <em class="parameter"><code>field</code></em>
  on all structures of <em class="parameter"><code>caps</code></em>
  to the given <em class="parameter"><code>value</code></em>
@@ -1614,7 +1799,7 @@
 all structures of <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1649,9 +1834,9 @@
                      <em class="parameter"><code>const <span class="type">char</span> *field</code></em>,
                      <em class="parameter"><code>...</code></em>);</pre>
 <p>Sets fields in a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.  The arguments must be passed in the same
-manner as <a class="link" href="GstStructure.html#gst-structure-set" title="gst_structure_set ()"><code class="function">gst_structure_set()</code></a>, and be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.</p>
+manner as <a class="link" href="GstStructure.html#gst-structure-set" title="gst_structure_set ()"><code class="function">gst_structure_set()</code></a>, and be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1686,9 +1871,9 @@
                             <em class="parameter"><code>const <span class="type">char</span> *field</code></em>,
                             <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
 <p>Sets fields in a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.  The arguments must be passed in the same
-manner as <a class="link" href="GstStructure.html#gst-structure-set" title="gst_structure_set ()"><code class="function">gst_structure_set()</code></a>, and be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.</p>
+manner as <a class="link" href="GstStructure.html#gst-structure-set" title="gst_structure_set ()"><code class="function">gst_structure_set()</code></a>, and be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.38.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1717,99 +1902,14 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-caps-is-any"></a><h3>gst_caps_is_any ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_any (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
-<p>Determines if <em class="parameter"><code>caps</code></em>
- represents any media format.</p>
-<div class="refsect3">
-<a name="id-1.3.11.8.36.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>caps</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.11.8.36.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps</code></em>
-represents any format.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-caps-is-empty"></a><h3>gst_caps_is_empty ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_empty (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
-<p>Determines if <em class="parameter"><code>caps</code></em>
- represents no media formats.</p>
-<div class="refsect3">
-<a name="id-1.3.11.8.37.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>caps</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.11.8.37.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps</code></em>
-represents no formats.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-caps-is-fixed"></a><h3>gst_caps_is_fixed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_fixed (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
-<p>Fixed <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> describe exactly one format, that is, they have exactly
-one structure, and each field in the structure describes a fixed type.
-Examples of non-fixed types are GST_TYPE_INT_RANGE and GST_TYPE_LIST.</p>
-<div class="refsect3">
-<a name="id-1.3.11.8.38.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>caps</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.11.8.38.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps</code></em>
-is fixed</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-caps-is-equal"></a><h3>gst_caps_is_equal ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_equal (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
-                   <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
-<p>Checks if the given caps represent the same set of caps.</p>
+<a name="gst-caps-foreach"></a><h3>gst_caps_foreach ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_foreach (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
+                  <em class="parameter"><code><a class="link" href="GstCaps.html#GstCapsForeachFunc" title="GstCapsForeachFunc ()"><span class="type">GstCapsForeachFunc</span></a> func</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Calls the provided function once for each structure and caps feature in the
+<a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. The function must not modify the fields.
+Also see <a class="link" href="GstCaps.html#gst-caps-map-in-place" title="gst_caps_map_in_place ()"><code class="function">gst_caps_map_in_place()</code></a> and <a class="link" href="GstCaps.html#gst-caps-filter-and-map-in-place" title="gst_caps_filter_and_map_in_place ()"><code class="function">gst_caps_filter_and_map_in_place()</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.11.8.39.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1820,32 +1920,41 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>caps1</p></td>
+<td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p>a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>caps2</p></td>
-<td class="parameter_description"><p>another <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p> a function to call for each field. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p> private data. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.11.8.39.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if both caps are equal.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the supplied function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for each call,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
+<p class="since">Since 1.6</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-caps-is-equal-fixed"></a><h3>gst_caps_is_equal_fixed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_equal_fixed (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
-                         <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
-<p>Tests if two <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> are equal.  This function only works on fixed
-<a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.</p>
+<a name="gst-caps-map-in-place"></a><h3>gst_caps_map_in_place ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_map_in_place (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
+                       <em class="parameter"><code><a class="link" href="GstCaps.html#GstCapsMapFunc" title="GstCapsMapFunc ()"><span class="type">GstCapsMapFunc</span></a> func</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Calls the provided function once for each structure and caps feature in the
+<a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. In contrast to <a class="link" href="GstCaps.html#gst-caps-foreach" title="gst_caps_foreach ()"><code class="function">gst_caps_foreach()</code></a>, the function may modify but not
+delete the structures and features. The caps must be mutable.</p>
 <div class="refsect3">
 <a name="id-1.3.11.8.40.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1856,33 +1965,170 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>caps1</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>caps2</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p> a function to call for each field. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p> private data. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.11.8.40.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the arguments represent the same format</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the supplied function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for each call,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-caps-filter-and-map-in-place"></a><h3>gst_caps_filter_and_map_in_place ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_caps_filter_and_map_in_place (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
+                                  <em class="parameter"><code><a class="link" href="GstCaps.html#GstCapsFilterMapFunc" title="GstCapsFilterMapFunc ()"><span class="type">GstCapsFilterMapFunc</span></a> func</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Calls the provided function once for each structure and caps feature in the
+<a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. In contrast to <a class="link" href="GstCaps.html#gst-caps-foreach" title="gst_caps_foreach ()"><code class="function">gst_caps_foreach()</code></a>, the function may modify the
+structure and features. In contrast to <a class="link" href="GstCaps.html#gst-caps-filter-and-map-in-place" title="gst_caps_filter_and_map_in_place ()"><code class="function">gst_caps_filter_and_map_in_place()</code></a>,
+the structure and features are removed from the caps if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned
+from the function.
+The caps must be mutable.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.41.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p> a function to call for each field. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p> private data. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-caps-is-any"></a><h3>gst_caps_is_any ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_any (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
+<p>Determines if <em class="parameter"><code>caps</code></em>
+ represents any media format.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.42.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.42.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps</code></em>
+represents any format.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-caps-is-strictly-equal"></a><h3>gst_caps_is_strictly_equal ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_strictly_equal (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
-                            <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
-<p>Checks if the given caps are exactly the same set of caps.</p>
+<a name="gst-caps-is-empty"></a><h3>gst_caps_is_empty ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_empty (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
+<p>Determines if <em class="parameter"><code>caps</code></em>
+ represents no media formats.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.41.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.43.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.43.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps</code></em>
+represents no formats.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-caps-is-fixed"></a><h3>gst_caps_is_fixed ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_fixed (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
+<p>Fixed <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> describe exactly one format, that is, they have exactly
+one structure, and each field in the structure describes a fixed type.
+Examples of non-fixed types are GST_TYPE_INT_RANGE and GST_TYPE_LIST.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.44.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.44.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps</code></em>
+is fixed</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-caps-is-equal"></a><h3>gst_caps_is_equal ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_equal (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
+                   <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
+<p>Checks if the given caps represent the same set of caps.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1904,24 +2150,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.41.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if both caps are strictly equal.</p>
+<a name="id-1.3.11.8.45.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if both caps are equal.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-caps-is-always-compatible"></a><h3>gst_caps_is_always_compatible ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_caps_is_always_compatible (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
-                               <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
-<p>A given <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> structure is always compatible with another if
-every media format that is in the first is also contained in the
-second.  That is, <em class="parameter"><code>caps1</code></em>
- is a subset of <em class="parameter"><code>caps2</code></em>
-.</p>
+<a name="gst-caps-is-equal-fixed"></a><h3>gst_caps_is_equal_fixed ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_equal_fixed (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
+                         <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
+<p>Tests if two <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> are equal.  This function only works on fixed
+<a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1943,8 +2186,82 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.42.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps1</code></em>
+<a name="id-1.3.11.8.46.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the arguments represent the same format</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-caps-is-strictly-equal"></a><h3>gst_caps_is_strictly_equal ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_strictly_equal (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
+                            <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
+<p>Checks if the given caps are exactly the same set of caps.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.47.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>caps1</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>caps2</p></td>
+<td class="parameter_description"><p>another <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.47.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if both caps are strictly equal.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-caps-is-always-compatible"></a><h3>gst_caps_is_always_compatible ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_caps_is_always_compatible (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
+                               <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
+<p>A given <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> structure is always compatible with another if
+every media format that is in the first is also contained in the
+second.  That is, <em class="parameter"><code>caps1</code></em>
+ is a subset of <em class="parameter"><code>caps2</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.11.8.48.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>caps1</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>caps2</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to test</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.11.8.48.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>caps1</code></em>
 is a subset of <em class="parameter"><code>caps2</code></em>
 .</p>
 <p></p>
@@ -1953,14 +2270,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-is-subset"></a><h3>gst_caps_is_subset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_is_subset (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *subset</code></em>,
                     <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *superset</code></em>);</pre>
 <p>Checks if all caps represented by <em class="parameter"><code>subset</code></em>
  are also represented by <em class="parameter"><code>superset</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1982,8 +2299,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.43.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>subset</code></em>
+<a name="id-1.3.11.8.49.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>subset</code></em>
 is a subset of <em class="parameter"><code>superset</code></em>
 </p>
 <p></p>
@@ -1992,7 +2309,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-is-subset-structure"></a><h3>gst_caps_is_subset_structure ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_is_subset_structure (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
                               <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>structure</code></em>
@@ -2000,7 +2317,7 @@
 . See <a class="link" href="GstCaps.html#gst-caps-is-subset" title="gst_caps_is_subset ()"><code class="function">gst_caps_is_subset()</code></a>
 for more information.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2023,8 +2340,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.44.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>structure</code></em>
+<a name="id-1.3.11.8.50.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>structure</code></em>
 is a subset of <em class="parameter"><code>caps</code></em>
 </p>
 <p></p>
@@ -2033,7 +2350,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-is-subset-structure-full"></a><h3>gst_caps_is_subset_structure_full ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_is_subset_structure_full (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
                                    <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                                    <em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>);</pre>
@@ -2042,7 +2359,7 @@
 . See <a class="link" href="GstCaps.html#gst-caps-is-subset" title="gst_caps_is_subset ()"><code class="function">gst_caps_is_subset()</code></a>
 for more information.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2065,14 +2382,14 @@
 <td class="parameter_name"><p>features</p></td>
 <td class="parameter_description"><p> a <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> for <em class="parameter"><code>structure</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>structure</code></em>
+<a name="id-1.3.11.8.51.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>structure</code></em>
 is a subset of <em class="parameter"><code>caps</code></em>
 </p>
 <p></p>
@@ -2082,7 +2399,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-can-intersect"></a><h3>gst_caps_can_intersect ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_can_intersect (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps1</code></em>,
                         <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps2</code></em>);</pre>
 <p>Tries intersecting <em class="parameter"><code>caps1</code></em>
@@ -2090,7 +2407,7 @@
  and reports whether the result would not
 be empty</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2112,8 +2429,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.46.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if intersection would be not empty</p>
+<a name="id-1.3.11.8.52.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if intersection would be not empty</p>
 <p></p>
 </div>
 </div>
@@ -2128,7 +2445,7 @@
  and <em class="parameter"><code>caps2</code></em>
 . Defaults to <a class="link" href="GstCaps.html#GST-CAPS-INTERSECT-ZIG-ZAG:CAPS"><code class="literal">GST_CAPS_INTERSECT_ZIG_ZAG</code></a> mode.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.47.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2150,7 +2467,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.47.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.53.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p>
 <p></p>
 </div>
@@ -2168,7 +2485,7 @@
 , the order is defined by the <a class="link" href="GstCaps.html#GstCapsIntersectMode" title="enum GstCapsIntersectMode"><span class="type">GstCapsIntersectMode</span></a>
 used.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.48.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2195,7 +2512,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.48.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.54.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a></p>
 <p></p>
 </div>
@@ -2213,7 +2530,7 @@
 <p>This function takes ownership of <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.49.6"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.55.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2228,7 +2545,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.49.7"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.55.7"></a><h4>Returns</h4>
 <p> the normalized <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -2246,7 +2563,7 @@
 <p>This method does not preserve the original order of <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.50.6"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.56.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2261,7 +2578,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.50.7"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.56.7"></a><h4>Returns</h4>
 <p> The simplified caps.</p>
 <p></p>
 </div>
@@ -2269,18 +2586,18 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-replace"></a><h3>gst_caps_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_replace (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> **old_caps</code></em>,
                   <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *new_caps</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to point to a different <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. The
 modification is done atomically (so this is useful for ensuring thread safety
 in some cases), and the reference counts are updated appropriately (the old
 caps is unreffed, the new is reffed).</p>
-<p>Either <em class="parameter"><code>ncaps</code></em>
- or the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> pointed to by <em class="parameter"><code>ocaps</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p>Either <em class="parameter"><code>new_caps</code></em>
+ or the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> pointed to by <em class="parameter"><code>old_caps</code></em>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.51.6"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.57.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2290,23 +2607,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>old_caps</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to be
-replaced. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a pointer
+to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to be replaced. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>new_caps</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> that will
-replace the caps pointed to by <em class="parameter"><code>ocaps</code></em>
+replace the caps pointed to by <em class="parameter"><code>old_caps</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.51.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_caps</code></em>
+<a name="id-1.3.11.8.57.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_caps</code></em>
 was different from <em class="parameter"><code>old_caps</code></em>
 </p>
 <p></p>
@@ -2315,7 +2632,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-take"></a><h3>gst_caps_take ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_take (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> **old_caps</code></em>,
                <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *new_caps</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to point to a different <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. This
@@ -2323,7 +2640,7 @@
 of <em class="parameter"><code>new_caps</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.52.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2340,16 +2657,16 @@
 <tr>
 <td class="parameter_name"><p>new_caps</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> that will
-replace the caps pointed to by <em class="parameter"><code>ocaps</code></em>
+replace the caps pointed to by <em class="parameter"><code>old_caps</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.52.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_caps</code></em>
+<a name="id-1.3.11.8.58.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_caps</code></em>
 was different from <em class="parameter"><code>old_caps</code></em>
 </p>
 <p></p>
@@ -2358,7 +2675,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-to-string"></a><h3>gst_caps_to_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_caps_to_string (<em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Converts <em class="parameter"><code>caps</code></em>
  to a string representation.  This string representation
@@ -2380,7 +2697,7 @@
 <p>The current implementation of serialization will lead to unexpected results
 when there are nested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> / <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> deeper than one level.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.53.9"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.59.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2395,7 +2712,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.53.10"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.59.10"></a><h4>Returns</h4>
 <p> a newly allocated string representing <em class="parameter"><code>caps</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2405,13 +2722,13 @@
 <div class="refsect2">
 <a name="gst-caps-from-string"></a><h3>gst_caps_from_string ()</h3>
 <pre class="programlisting"><a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
-gst_caps_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
+gst_caps_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
 <p>Converts <em class="parameter"><code>caps</code></em>
  from a string representation.</p>
 <p>The current implementation of serialization will lead to unexpected results
 when there are nested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> / <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> deeper than one level.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.54.6"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.60.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2426,7 +2743,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.54.7"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.60.7"></a><h4>Returns</h4>
 <p> a newly allocated <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -2443,7 +2760,7 @@
 <div class="note">This function does not work reliably if optional properties for caps
 are included on one caps and omitted on the other.</div>
 <div class="refsect3">
-<a name="id-1.3.11.8.55.6"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.61.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2465,7 +2782,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.55.7"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.61.7"></a><h4>Returns</h4>
 <p> the resulting caps</p>
 <p></p>
 </div>
@@ -2488,7 +2805,7 @@
 that it returns. Don't access the argument after calling this function. See
 also: <a class="link" href="GstCaps.html#gst-caps-ref" title="gst_caps_ref ()"><code class="function">gst_caps_ref()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.56.7"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.62.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2503,7 +2820,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.56.8"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.62.8"></a><h4>Returns</h4>
 <p> a writable caps which may or may not be the
 same as <em class="parameter"><code>caps</code></em>
 . </p>
@@ -2519,7 +2836,7 @@
 . Useful when
 fixating.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.57.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.63.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2534,7 +2851,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.57.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.63.6"></a><h4>Returns</h4>
 <p> truncated caps. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -2549,7 +2866,7 @@
 values. First the caps will be truncated and then the first structure will be
 fixated with <a class="link" href="GstStructure.html#gst-structure-fixate" title="gst_structure_fixate ()"><code class="function">gst_structure_fixate()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.58.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2564,7 +2881,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.58.6"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.64.6"></a><h4>Returns</h4>
 <p> the fixated caps. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -2582,7 +2899,7 @@
 implicitly by e.g. <a class="link" href="GstCaps.html#gst-caps-new-simple" title="gst_caps_new_simple ()"><code class="function">gst_caps_new_simple()</code></a>, or via taking one explicitly with
 this function.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.59.6"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.65.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2597,7 +2914,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.11.8.59.7"></a><h4>Returns</h4>
+<a name="id-1.3.11.8.65.7"></a><h4>Returns</h4>
 <p> the same <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> object.</p>
 <p></p>
 </div>
@@ -2610,7 +2927,7 @@
 <p>Unref a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> and and free all its structures and the
 structures' values when the refcount reaches 0.</p>
 <div class="refsect3">
-<a name="id-1.3.11.8.60.5"></a><h4>Parameters</h4>
+<a name="id-1.3.11.8.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2812,6 +3129,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstCapsFeatures.html b/docs/gst/html/GstCapsFeatures.html
index a4d59eb..28e2602 100644
--- a/docs/gst/html/GstCapsFeatures.html
+++ b/docs/gst/html/GstCapsFeatures.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstCaps.html" title="GstCaps">
 <link rel="next" href="GstSample.html" title="GstSample">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstCapsFeatures.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstCapsFeatures.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstCapsFeatures.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -122,7 +122,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-to-string" title="gst_caps_features_to_string ()">gst_caps_features_to_string</a> <span class="c_punctuation">()</span>
@@ -130,7 +130,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-set-parent-refcount" title="gst_caps_features_set_parent_refcount ()">gst_caps_features_set_parent_refcount</a> <span class="c_punctuation">()</span>
@@ -138,7 +138,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-is-equal" title="gst_caps_features_is_equal ()">gst_caps_features_is_equal</a> <span class="c_punctuation">()</span>
@@ -146,7 +146,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-is-any" title="gst_caps_features_is_any ()">gst_caps_features_is_any</a> <span class="c_punctuation">()</span>
@@ -154,7 +154,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-contains" title="gst_caps_features_contains ()">gst_caps_features_contains</a> <span class="c_punctuation">()</span>
@@ -162,7 +162,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-contains-id" title="gst_caps_features_contains_id ()">gst_caps_features_contains_id</a> <span class="c_punctuation">()</span>
@@ -170,14 +170,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-get-size" title="gst_caps_features_get_size ()">gst_caps_features_get_size</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-get-nth" title="gst_caps_features_get_nth ()">gst_caps_features_get_nth</a> <span class="c_punctuation">()</span>
@@ -185,7 +185,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCapsFeatures.html#gst-caps-features-get-nth-id" title="gst_caps_features_get_nth_id ()">gst_caps_features_get_nth_id</a> <span class="c_punctuation">()</span>
@@ -247,7 +247,7 @@
 </div>
 <div class="refsect1">
 <a name="GstCapsFeatures.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstCapsFeatures
 </pre>
 </div>
@@ -292,10 +292,10 @@
 <div class="refsect2">
 <a name="gst-caps-features-new"></a><h3>gst_caps_features_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
-gst_caps_features_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature1</code></em>,
+gst_caps_features_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature1</code></em>,
                        <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> with the given features.
-The last argument must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The last argument must be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>Free-function: gst_caps_features_free</p>
 <div class="refsect3">
 <a name="id-1.3.12.8.4.6"></a><h4>Parameters</h4>
@@ -360,7 +360,7 @@
 <div class="refsect2">
 <a name="gst-caps-features-new-id"></a><h3>gst_caps_features_new_id ()</h3>
 <pre class="programlisting"><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
-gst_caps_features_new_id (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature1</code></em>,
+gst_caps_features_new_id (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature1</code></em>,
                           <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> with the given features.
 The last argument must be 0.</p>
@@ -398,7 +398,7 @@
 <div class="refsect2">
 <a name="gst-caps-features-new-id-valist"></a><h3>gst_caps_features_new_id_valist ()</h3>
 <pre class="programlisting"><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
-gst_caps_features_new_id_valist (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature1</code></em>,
+gst_caps_features_new_id_valist (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature1</code></em>,
                                  <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> with the given features.</p>
 <p>Free-function: gst_caps_features_free</p>
@@ -435,7 +435,7 @@
 <div class="refsect2">
 <a name="gst-caps-features-new-valist"></a><h3>gst_caps_features_new_valist ()</h3>
 <pre class="programlisting"><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
-gst_caps_features_new_valist (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature1</code></em>,
+gst_caps_features_new_valist (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature1</code></em>,
                               <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> with the given features.</p>
 <p>Free-function: gst_caps_features_free</p>
@@ -525,7 +525,7 @@
 <div class="refsect2">
 <a name="gst-caps-features-from-string"></a><h3>gst_caps_features_from_string ()</h3>
 <pre class="programlisting"><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
-gst_caps_features_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *features</code></em>);</pre>
+gst_caps_features_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *features</code></em>);</pre>
 <p>Creates a <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> from a string representation.</p>
 <p>Free-function: gst_caps_features_free</p>
 <div class="refsect3">
@@ -545,16 +545,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.12.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the string could
-not be parsed. Free with <a class="link" href="GstCapsFeatures.html#gst-caps-features-free" title="gst_caps_features_free ()"><code class="function">gst_caps_features_free()</code></a> after use. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a new <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the string could not be parsed. Free with
+<a class="link" href="GstCapsFeatures.html#gst-caps-features-free" title="gst_caps_features_free ()"><code class="function">gst_caps_features_free()</code></a> after use. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.2</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-to-string"></a><h3>gst_caps_features_to_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_caps_features_to_string (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>);</pre>
 <p>Converts <em class="parameter"><code>features</code></em>
  to a human-readable string representation.</p>
@@ -590,8 +591,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.13.10"></a><h4>Returns</h4>
-<p> a pointer to string allocated by <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-malloc"><code class="function">g_malloc()</code></a>.
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. </p>
+<p> a pointer to string allocated by <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-malloc"><code class="function">g_malloc()</code></a>.
+<a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -599,9 +600,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-set-parent-refcount"></a><h3>gst_caps_features_set_parent_refcount ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_features_set_parent_refcount (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *refcount</code></em>);</pre>
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *refcount</code></em>);</pre>
 <p>Sets the parent_refcount field of <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a>. This field is used to
 determine whether a caps features is mutable or not. This function should only be
 called by code implementing parent objects of <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a>, as described in
@@ -630,7 +631,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parent refcount could be set.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parent refcount could be set.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -638,7 +639,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-is-equal"></a><h3>gst_caps_features_is_equal ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_features_is_equal (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features1</code></em>,
                             <em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features2</code></em>);</pre>
 <p>Check if <em class="parameter"><code>features1</code></em>
@@ -668,7 +669,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features1</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features1</code></em>
 and <em class="parameter"><code>features2</code></em>
 are equal.</p>
 <p></p>
@@ -678,7 +679,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-is-any"></a><h3>gst_caps_features_is_any ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_features_is_any (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>);</pre>
 <p>Check if <em class="parameter"><code>features</code></em>
  is <a class="link" href="GstCapsFeatures.html#GST-CAPS-FEATURES-ANY:CAPS" title="GST_CAPS_FEATURES_ANY"><code class="literal">GST_CAPS_FEATURES_ANY</code></a>.</p>
@@ -699,7 +700,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features</code></em>
 is <a class="link" href="GstCapsFeatures.html#GST-CAPS-FEATURES-ANY:CAPS" title="GST_CAPS_FEATURES_ANY"><code class="literal">GST_CAPS_FEATURES_ANY</code></a>.</p>
 <p></p>
 </div>
@@ -708,9 +709,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-contains"></a><h3>gst_caps_features_contains ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_features_contains (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature</code></em>);</pre>
 <p>Check if <em class="parameter"><code>features</code></em>
  contains <em class="parameter"><code>feature</code></em>
 .</p>
@@ -738,7 +739,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features</code></em>
 contains <em class="parameter"><code>feature</code></em>
 .</p>
 <p></p>
@@ -748,9 +749,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-contains-id"></a><h3>gst_caps_features_contains_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_caps_features_contains_id (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature</code></em>);</pre>
 <p>Check if <em class="parameter"><code>features</code></em>
  contains <em class="parameter"><code>feature</code></em>
 .</p>
@@ -778,7 +779,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.12.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>features</code></em>
 contains <em class="parameter"><code>feature</code></em>
 .</p>
 <p></p>
@@ -788,7 +789,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-get-size"></a><h3>gst_caps_features_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_caps_features_get_size (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>);</pre>
 <p>Returns the number of features in <em class="parameter"><code>features</code></em>
 .</p>
@@ -818,9 +819,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-get-nth"></a><h3>gst_caps_features_get_nth ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_caps_features_get_nth (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> i</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> i</code></em>);</pre>
 <p>Returns the <em class="parameter"><code>i</code></em>
 -th feature of <em class="parameter"><code>features</code></em>
 .</p>
@@ -858,9 +859,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-caps-features-get-nth-id"></a><h3>gst_caps_features_get_nth_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_caps_features_get_nth_id (<em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> i</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> i</code></em>);</pre>
 <p>Returns the <em class="parameter"><code>i</code></em>
 -th feature of <em class="parameter"><code>features</code></em>
 .</p>
@@ -900,7 +901,7 @@
 <a name="gst-caps-features-add"></a><h3>gst_caps_features_add ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_features_add (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature</code></em>);</pre>
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature</code></em>);</pre>
 <p>Adds <em class="parameter"><code>feature</code></em>
  to <em class="parameter"><code>features</code></em>
 .</p>
@@ -933,7 +934,7 @@
 <a name="gst-caps-features-add-id"></a><h3>gst_caps_features_add_id ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_features_add_id (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature</code></em>);</pre>
 <p>Adds <em class="parameter"><code>feature</code></em>
  to <em class="parameter"><code>features</code></em>
 .</p>
@@ -966,7 +967,7 @@
 <a name="gst-caps-features-remove"></a><h3>gst_caps_features_remove ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_features_remove (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature</code></em>);</pre>
 <p>Removes <em class="parameter"><code>feature</code></em>
  from <em class="parameter"><code>features</code></em>
 .</p>
@@ -999,7 +1000,7 @@
 <a name="gst-caps-features-remove-id"></a><h3>gst_caps_features_remove_id ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_caps_features_remove_id (<em class="parameter"><code><a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> feature</code></em>);</pre>
 <p>Removes <em class="parameter"><code>feature</code></em>
  from <em class="parameter"><code>features</code></em>
 .</p>
@@ -1048,6 +1049,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstChildProxy.html b/docs/gst/html/GstChildProxy.html
index 9401406..39f37ad 100644
--- a/docs/gst/html/GstChildProxy.html
+++ b/docs/gst/html/GstChildProxy.html
@@ -8,17 +8,17 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstSample.html" title="GstSample">
 <link rel="next" href="GstClock.html" title="GstClock">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstChildProxy.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstChildProxy.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_prerequisites"> <span class="dim">|</span> 
-                  <a href="#GstChildProxy.prerequisites" class="shortcut">Prerequisites</a></span><span id="nav_implementations"> <span class="dim">|</span> 
-                  <a href="#GstChildProxy.implementations" class="shortcut">Known Implementations</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstChildProxy.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstChildProxy.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_prerequisites">  <span class="dim">|</span> 
+                  <a href="#GstChildProxy.prerequisites" class="shortcut">Prerequisites</a></span><span id="nav_implementations">  <span class="dim">|</span> 
+                  <a href="#GstChildProxy.implementations" class="shortcut">Known Implementations</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstChildProxy.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -45,7 +45,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstChildProxy.html#gst-child-proxy-get-children-count" title="gst_child_proxy_get_children_count ()">gst_child_proxy_get_children_count</a> <span class="c_punctuation">()</span>
@@ -53,7 +53,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstChildProxy.html#gst-child-proxy-get-child-by-name" title="gst_child_proxy_get_child_by_name ()">gst_child_proxy_get_child_by_name</a> <span class="c_punctuation">()</span>
@@ -61,7 +61,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstChildProxy.html#gst-child-proxy-get-child-by-index" title="gst_child_proxy_get_child_by_index ()">gst_child_proxy_get_child_by_index</a> <span class="c_punctuation">()</span>
@@ -69,7 +69,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstChildProxy.html#gst-child-proxy-lookup" title="gst_child_proxy_lookup ()">gst_child_proxy_lookup</a> <span class="c_punctuation">()</span>
@@ -185,7 +185,7 @@
 </div>
 <div class="refsect1">
 <a name="GstChildProxy.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GInterface
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/GTypeModule.html">GInterface</a>
     <span class="lineart">╰──</span> GstChildProxy
 </pre>
 </div>
@@ -193,7 +193,7 @@
 <a name="GstChildProxy.prerequisites"></a><h2>Prerequisites</h2>
 <p>
 GstChildProxy requires
- <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>.</p>
+ <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>.</p>
 </div>
 <div class="refsect1">
 <a name="GstChildProxy.implementations"></a><h2>Known Implementations</h2>
@@ -224,7 +224,7 @@
 <a name="GstChildProxy.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-child-proxy-get-children-count"></a><h3>gst_child_proxy_get_children_count ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_child_proxy_get_children_count (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *parent</code></em>);</pre>
 <p>Gets the number of child objects this parent contains.</p>
 <div class="refsect3">
@@ -252,13 +252,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-child-proxy-get-child-by-name"></a><h3>gst_child_proxy_get_child_by_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
 gst_child_proxy_get_child_by_name (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *parent</code></em>,
-                                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Looks up a child element by the given name.</p>
 <p>This virtual method has a default implementation that uses <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a>
 together with <a class="link" href="GstObject.html#gst-object-get-name" title="gst_object_get_name ()"><code class="function">gst_object_get_name()</code></a>. If the interface is to be used with
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObjects</span></a>, this methods needs to be overridden.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObjects</span></a>, this methods needs to be overridden.</p>
 <div class="refsect3">
 <a name="id-1.3.14.11.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -283,18 +283,18 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.14.11.3.7"></a><h4>Returns</h4>
-<p> the child object or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found. Unref
-after usage.</p>
+<p> the child object or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
+not found. Unref after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-child-proxy-get-child-by-index"></a><h3>gst_child_proxy_get_child_by_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *
 gst_child_proxy_get_child_by_index (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *parent</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Fetches a child by its number.</p>
 <div class="refsect3">
 <a name="id-1.3.14.11.4.5"></a><h4>Parameters</h4>
@@ -320,21 +320,21 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.14.11.4.6"></a><h4>Returns</h4>
-<p> the child object or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found (index
-too high). Unref after usage.</p>
+<p> the child object or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
+not found (index too high). Unref after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-child-proxy-lookup"></a><h3>gst_child_proxy_lookup ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_child_proxy_lookup (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> **target</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> **pspec</code></em>);</pre>
-<p>Looks up which object and <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> would be effected by the given <em class="parameter"><code>name</code></em>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> **target</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> **pspec</code></em>);</pre>
+<p>Looks up which object and <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> would be effected by the given <em class="parameter"><code>name</code></em>
 .</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -358,24 +358,24 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>target</p></td>
-<td class="parameter_description"><p> pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that
+<td class="parameter_description"><p> pointer to a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that
 takes the real object to set property on. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>pspec</p></td>
-<td class="parameter_description"><p> pointer to take the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a>
+<td class="parameter_description"><p> pointer to take the <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a>
 describing the property. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.14.11.5.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>target</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>target</code></em>
 and <em class="parameter"><code>pspec</code></em>
-could be found. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. In that
+could be found. <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. In that
 case the values for <em class="parameter"><code>pspec</code></em>
 and <em class="parameter"><code>target</code></em>
 are not modified. Unref <em class="parameter"><code>target</code></em>
@@ -391,10 +391,10 @@
 <a name="gst-child-proxy-get-property"></a><h3>gst_child_proxy_get_property ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_get_property (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets a single property using the GstChildProxy mechanism.
-You are responsible for freeing it by calling <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a></p>
+You are responsible for freeing it by calling <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a></p>
 <div class="refsect3">
 <a name="id-1.3.14.11.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -416,7 +416,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> that should take the result. </p></td>
+<td class="parameter_description"><p> a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> that should take the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -428,7 +428,7 @@
 <a name="gst-child-proxy-get-valist"></a><h3>gst_child_proxy_get_valist ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_get_valist (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
                             <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Gets properties of the parent object and its children.</p>
 <div class="refsect3">
@@ -452,7 +452,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>var_args</p></td>
-<td class="parameter_description"><p>return location for the first property, followed optionally by more name/return location pairs, followed by <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>return location for the first property, followed optionally by more name/return location pairs, followed by <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -464,7 +464,7 @@
 <a name="gst-child-proxy-get"></a><h3>gst_child_proxy_get ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_get (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
                      <em class="parameter"><code>...</code></em>);</pre>
 <p>Gets properties of the parent object and its children.</p>
 <div class="refsect3">
@@ -488,7 +488,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p>return location for the first property, followed optionally by more name/return location pairs, followed by <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>return location for the first property, followed optionally by more name/return location pairs, followed by <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -500,8 +500,8 @@
 <a name="gst-child-proxy-set-property"></a><h3>gst_child_proxy_set_property ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_set_property (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Sets a single property using the GstChildProxy mechanism.</p>
 <div class="refsect3">
 <a name="id-1.3.14.11.9.5"></a><h4>Parameters</h4>
@@ -524,7 +524,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>new <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> for the property</p></td>
+<td class="parameter_description"><p>new <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> for the property</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -536,7 +536,7 @@
 <a name="gst-child-proxy-set-valist"></a><h3>gst_child_proxy_set_valist ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_set_valist (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
                             <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Sets properties of the parent object and its children.</p>
 <div class="refsect3">
@@ -560,7 +560,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>var_args</p></td>
-<td class="parameter_description"><p>value for the first property, followed optionally by more name/value pairs, followed by <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>value for the first property, followed optionally by more name/value pairs, followed by <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -572,7 +572,7 @@
 <a name="gst-child-proxy-set"></a><h3>gst_child_proxy_set ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_set (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *object</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
                      <em class="parameter"><code>...</code></em>);</pre>
 <p>Sets properties of the parent object and its children.</p>
 <div class="refsect3">
@@ -596,7 +596,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p>value for the first property, followed optionally by more name/value pairs, followed by <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>value for the first property, followed optionally by more name/value pairs, followed by <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -608,8 +608,8 @@
 <a name="gst-child-proxy-child-added"></a><h3>gst_child_proxy_child_added ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_child_added (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *parent</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *child</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *child</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Emits the "child-added" signal.</p>
 <div class="refsect3">
 <a name="id-1.3.14.11.12.5"></a><h4>Parameters</h4>
@@ -644,8 +644,8 @@
 <a name="gst-child-proxy-child-removed"></a><h3>gst_child_proxy_child_removed ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_child_proxy_child_removed (<em class="parameter"><code><a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *parent</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *child</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *child</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Emits the "child-removed" signal.</p>
 <div class="refsect3">
 <a name="id-1.3.14.11.13.5"></a><h4>Parameters</h4>
@@ -706,7 +706,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstChildProxyInterface.parent"></a>parent</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstChildProxyInterface.parent"></a>parent</code></em>;</p></td>
 <td class="struct_member_description"><p>parent interface type.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -736,9 +736,9 @@
 <a name="GstChildProxy-child-added"></a><h3>The <code class="literal">“child-added”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *child_proxy,
-               <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>       *object,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>         *name,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
+               <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>       *object,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>         *name,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
 <p>Will be emitted after the <em class="parameter"><code>object</code></em>
  was added to the <em class="parameter"><code>child_proxy</code></em>
 .</p>
@@ -758,7 +758,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that was added</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that was added</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -781,9 +781,9 @@
 <a name="GstChildProxy-child-removed"></a><h3>The <code class="literal">“child-removed”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstChildProxy.html" title="GstChildProxy"><span class="type">GstChildProxy</span></a> *child_proxy,
-               <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>       *object,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>         *name,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
+               <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>       *object,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>         *name,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
 <p>Will be emitted after the <em class="parameter"><code>object</code></em>
  was removed from the <em class="parameter"><code>child_proxy</code></em>
 .</p>
@@ -803,7 +803,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that was removed</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that was removed</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -829,6 +829,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstClock.html b/docs/gst/html/GstClock.html
index 7d32742..b538af1 100644
--- a/docs/gst/html/GstClock.html
+++ b/docs/gst/html/GstClock.html
@@ -8,15 +8,15 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstChildProxy.html" title="GstChildProxy">
 <link rel="next" href="gstreamer-gstconfig.html" title="gstconfig">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstClock.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -123,7 +123,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstClock.html#GstClockCallback" title="GstClockCallback ()">*GstClockCallback</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -173,7 +173,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstClock.html#gst-clock-add-observation" title="gst_clock_add_observation ()">gst_clock_add_observation</a> <span class="c_punctuation">()</span>
@@ -181,7 +181,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstClock.html#gst-clock-set-master" title="gst_clock_set_master ()">gst_clock_set_master</a> <span class="c_punctuation">()</span>
@@ -237,7 +237,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstClock.html#gst-clock-single-shot-id-reinit" title="gst_clock_single_shot_id_reinit ()">gst_clock_single_shot_id_reinit</a> <span class="c_punctuation">()</span>
@@ -245,7 +245,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstClock.html#gst-clock-periodic-id-reinit" title="gst_clock_periodic_id_reinit ()">gst_clock_periodic_id_reinit</a> <span class="c_punctuation">()</span>
@@ -341,7 +341,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstClock.html#gst-clock-id-compare-func" title="gst_clock_id_compare_func ()">gst_clock_id_compare_func</a> <span class="c_punctuation">()</span>
@@ -381,12 +381,12 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="GstClock.html#GstClock--window-size" title="The “window-size” property">window-size</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="GstClock.html#GstClock--window-threshold" title="The “window-threshold” property">window-threshold</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -442,8 +442,8 @@
 </div>
 <div class="refsect1">
 <a name="GstClock.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstClock
                 <span class="lineart">╰──</span> <a class="link" href="GstSystemClock.html" title="GstSystemClock">GstSystemClock</a>
@@ -709,7 +709,7 @@
 <a name="GST-TIMEVAL-TO-TIME:CAPS"></a><h3>GST_TIMEVAL_TO_TIME()</h3>
 <pre class="programlisting">#define GST_TIMEVAL_TO_TIME(tv)         (GstClockTime)((tv).tv_sec * GST_SECOND + (tv).tv_usec * GST_USECOND)
 </pre>
-<p>Convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a> to a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a>.</p>
+<p>Convert a <a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a> to a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.15.9.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -730,7 +730,7 @@
 <div class="refsect2">
 <a name="GST-TIME-TO-TIMEVAL:CAPS"></a><h3>GST_TIME_TO_TIMEVAL()</h3>
 <pre class="programlisting">#define             GST_TIME_TO_TIMEVAL(t,tv)</pre>
-<p>Convert a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a></p>
+<p>Convert a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> to a <a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a></p>
 <div class="note">on 32-bit systems, a timeval has a range of only 2^32 - 1 seconds,
 which is about 68 years.  Expect trouble if you want to schedule stuff
 in your pipeline for 2038.</div>
@@ -810,11 +810,11 @@
 <hr>
 <div class="refsect2">
 <a name="GstClockCallback"></a><h3>GstClockCallback ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstClockCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>,
                      <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>,
                      <em class="parameter"><code><a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> id</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>The function prototype of the callback.</p>
 <div class="refsect3">
 <a name="id-1.3.15.9.17.5"></a><h4>Parameters</h4>
@@ -850,7 +850,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.15.9.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> (currently unused)</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> (currently unused)</p>
 <p></p>
 </div>
 </div>
@@ -1011,11 +1011,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-clock-add-observation"></a><h3>gst_clock_add_observation ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_clock_add_observation (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>,
                            <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> slave</code></em>,
                            <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> master</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *r_squared</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *r_squared</code></em>);</pre>
 <p>The time <em class="parameter"><code>master</code></em>
  of the master clock and the time <em class="parameter"><code>slave</code></em>
  of the slave
@@ -1023,7 +1023,7 @@
 are available, a linear regression algorithm is run on the
 observations and <em class="parameter"><code>clock</code></em>
  is recalibrated.</p>
-<p>If this functions returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>r_squared</code></em>
+<p>If this functions returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>r_squared</code></em>
  will contain the 
 correlation coefficient of the interpolation. A value of 1.0
 means a perfect regression was performed. This value can
@@ -1063,7 +1063,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.15.9.25.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if enough observations were added to run the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if enough observations were added to run the
 regression algorithm.</p>
 <p>MT safe.</p>
 <p></p>
@@ -1072,7 +1072,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-clock-set-master"></a><h3>gst_clock_set_master ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_clock_set_master (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>,
                       <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *master</code></em>);</pre>
 <p>Set <em class="parameter"><code>master</code></em>
@@ -1084,7 +1084,7 @@
 <p>A clock provider that slaves its clock to a master can get the current
 calibration values with <a class="link" href="GstClock.html#gst-clock-get-calibration" title="gst_clock_get_calibration ()"><code class="function">gst_clock_get_calibration()</code></a>.</p>
 <p><em class="parameter"><code>master</code></em>
- can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in which case <em class="parameter"><code>clock</code></em>
+ can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in which case <em class="parameter"><code>clock</code></em>
  will not be slaved anymore. It will
 however keep reporting its time adjusted with the last configured rate 
 and time offsets.</p>
@@ -1105,16 +1105,16 @@
 <tr>
 <td class="parameter_name"><p>master</p></td>
 <td class="parameter_description"><p> a master <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.15.9.26.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the clock is capable of being slaved to a master clock.
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the clock is capable of being slaved to a master clock.
 Trying to set a master on a clock without the
-<a class="link" href="GstClock.html#GST-CLOCK-FLAG-CAN-SET-MASTER:CAPS"><span class="type">GST_CLOCK_FLAG_CAN_SET_MASTER</span></a> flag will make this function return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a class="link" href="GstClock.html#GST-CLOCK-FLAG-CAN-SET-MASTER:CAPS"><span class="type">GST_CLOCK_FLAG_CAN_SET_MASTER</span></a> flag will make this function return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -1125,7 +1125,7 @@
 <pre class="programlisting"><a class="link" href="GstClock.html" title="GstClock"><span class="returnvalue">GstClock</span></a> *
 gst_clock_get_master (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>);</pre>
 <p>Get the master clock that <em class="parameter"><code>clock</code></em>
- is slaved to or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the clock is
+ is slaved to or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the clock is
 not slaved to any master clock.</p>
 <div class="refsect3">
 <a name="id-1.3.15.9.27.5"></a><h4>Parameters</h4>
@@ -1144,10 +1144,11 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.15.9.27.6"></a><h4>Returns</h4>
-<p> a master <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when this clock is
-not slaved to a master clock. Unref after usage.</p>
+<p> a master <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when this clock is not slaved to a master clock. Unref after
+usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1344,7 +1345,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-clock-single-shot-id-reinit"></a><h3>gst_clock_single_shot_id_reinit ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_clock_single_shot_id_reinit (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> id</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>);</pre>
@@ -1380,16 +1381,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.15.9.33.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the GstClockID could be reinitialized to the provided
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the GstClockID could be reinitialized to the provided
 <em class="parameter"><code>time</code></em>
-, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+, else <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-clock-periodic-id-reinit"></a><h3>gst_clock_periodic_id_reinit ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_clock_periodic_id_reinit (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>,
                               <em class="parameter"><code><a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> id</code></em>,
                               <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> start_time</code></em>,
@@ -1431,9 +1432,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.15.9.34.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the GstClockID could be reinitialized to the provided
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the GstClockID could be reinitialized to the provided
 <em class="parameter"><code>time</code></em>
-, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+, else <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
@@ -1565,7 +1566,7 @@
 , <em class="parameter"><code>external</code></em>
 , <em class="parameter"><code>rate_num</code></em>
 , and <em class="parameter"><code>rate_denom</code></em>
- can be left <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
+ can be left <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
 caller is not interested in the values.</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -1585,22 +1586,22 @@
 <tr>
 <td class="parameter_name"><p>internal</p></td>
 <td class="parameter_description"><p> a location to store the internal time. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>external</p></td>
 <td class="parameter_description"><p> a location to store the external time. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>rate_num</p></td>
 <td class="parameter_description"><p> a location to store the rate numerator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>rate_denom</p></td>
 <td class="parameter_description"><p> a location to store the rate denominator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1775,7 +1776,7 @@
 or <a class="link" href="GstClock.html#gst-clock-new-periodic-id" title="gst_clock_new_periodic_id ()"><code class="function">gst_clock_new_periodic_id()</code></a> and should not have been unscheduled
 with a call to <a class="link" href="GstClock.html#gst-clock-id-unschedule" title="gst_clock_id_unschedule ()"><code class="function">gst_clock_id_unschedule()</code></a>. </p>
 <p>If the <em class="parameter"><code>jitter</code></em>
- argument is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and this function returns <a class="link" href="GstClock.html#GST-CLOCK-OK:CAPS"><span class="type">GST_CLOCK_OK</span></a>
+ argument is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and this function returns <a class="link" href="GstClock.html#GST-CLOCK-OK:CAPS"><span class="type">GST_CLOCK_OK</span></a>
 or <a class="link" href="GstClock.html#GST-CLOCK-EARLY:CAPS"><span class="type">GST_CLOCK_EARLY</span></a>, it will contain the difference
 against the clock and the time of <em class="parameter"><code>id</code></em>
  when this method was
@@ -1802,8 +1803,8 @@
 <tr>
 <td class="parameter_name"><p>jitter</p></td>
 <td class="parameter_description"><p> a pointer that will contain the jitter,
-can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1827,8 +1828,8 @@
 <pre class="programlisting"><a class="link" href="GstClock.html#GstClockReturn" title="enum GstClockReturn"><span class="returnvalue">GstClockReturn</span></a>
 gst_clock_id_wait_async (<em class="parameter"><code><a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> id</code></em>,
                          <em class="parameter"><code><a class="link" href="GstClock.html#GstClockCallback" title="GstClockCallback ()"><span class="type">GstClockCallback</span></a> func</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_data</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_data</code></em>);</pre>
 <p>Register a callback on the given <a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> <em class="parameter"><code>id</code></em>
  with the given
 function and user_data. When passing a <a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> with an invalid
@@ -1865,7 +1866,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>destroy_data</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> for user_data</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> for user_data</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1909,9 +1910,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-clock-id-compare-func"></a><h3>gst_clock_id_compare_func ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_clock_id_compare_func (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> id1</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> id2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_clock_id_compare_func (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> id1</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> id2</code></em>);</pre>
 <p>Compares the two <a class="link" href="GstClock.html#GstClockID" title="GstClockID"><span class="type">GstClockID</span></a> instances. This function can be used
 as a GCompareFunc when sorting ids.</p>
 <div class="refsect3">
@@ -2122,7 +2123,7 @@
 <col width="200px" class="struct_members_annotations">
 </colgroup>
 <tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstClockEntry.refcount"></a>refcount</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstClockEntry.refcount"></a>refcount</code></em>;</p></td>
 <td class="struct_member_description"><p>reference counter (read-only)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr></tbody>
@@ -2312,7 +2313,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstClock--window-size"></a><h3>The <code class="literal">“window-size”</code> property</h3>
-<pre class="programlisting">  “window-size”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “window-size”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>The size of the window used to calculate rate and offset.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [2,1024]</p>
@@ -2321,7 +2322,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstClock--window-threshold"></a><h3>The <code class="literal">“window-threshold”</code> property</h3>
-<pre class="programlisting">  “window-threshold”         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “window-threshold”         <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>The threshold to start calculating rate and offset.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [2,1024]</p>
@@ -2335,6 +2336,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstContext.html b/docs/gst/html/GstContext.html
index 76b564f..2aedc26 100644
--- a/docs/gst/html/GstContext.html
+++ b/docs/gst/html/GstContext.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-gstconfig.html" title="gstconfig">
 <link rel="next" href="GstControlBinding.html" title="GstControlBinding">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstContext.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstContext.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstContext.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -73,7 +73,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstContext.html#gst-context-get-context-type" title="gst_context_get_context_type ()">gst_context_get_context_type</a> <span class="c_punctuation">()</span>
@@ -81,7 +81,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstContext.html#gst-context-has-context-type" title="gst_context_has_context_type ()">gst_context_has_context_type</a> <span class="c_punctuation">()</span>
@@ -89,7 +89,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstContext.html#gst-context-is-persistent" title="gst_context_is_persistent ()">gst_context_is_persistent</a> <span class="c_punctuation">()</span>
@@ -124,7 +124,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstContext.html#gst-context-replace" title="gst_context_replace ()">gst_context_replace</a> <span class="c_punctuation">()</span>
@@ -148,7 +148,7 @@
 </div>
 <div class="refsect1">
 <a name="GstContext.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstContext
 </pre>
 </div>
@@ -186,8 +186,8 @@
 <div class="refsect2">
 <a name="gst-context-new"></a><h3>gst_context_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstContext.html" title="GstContext"><span class="returnvalue">GstContext</span></a> *
-gst_context_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>,
-                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> persistent</code></em>);</pre>
+gst_context_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>,
+                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> persistent</code></em>);</pre>
 <p>Create a new context.</p>
 <div class="refsect3">
 <a name="id-1.3.17.8.2.5"></a><h4>Parameters</h4>
@@ -301,7 +301,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-context-get-context-type"></a><h3>gst_context_get_context_type ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_context_get_context_type (<em class="parameter"><code>const <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> *context</code></em>);</pre>
 <p>Get the type of <em class="parameter"><code>context</code></em>
 .</p>
@@ -330,9 +330,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-context-has-context-type"></a><h3>gst_context_has_context_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_context_has_context_type (<em class="parameter"><code>const <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> *context</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>context</code></em>
  has <em class="parameter"><code>context_type</code></em>
 .</p>
@@ -360,7 +360,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.17.8.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>context</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>context</code></em>
 has <em class="parameter"><code>context_type</code></em>
 .</p>
 <p></p>
@@ -370,7 +370,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-context-is-persistent"></a><h3>gst_context_is_persistent ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_context_is_persistent (<em class="parameter"><code>const <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> *context</code></em>);</pre>
 <p>Check if <em class="parameter"><code>context</code></em>
  is persistent.</p>
@@ -391,7 +391,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.17.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the context is persistent.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the context is persistent.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -513,7 +513,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-context-replace"></a><h3>gst_context_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_context_replace (<em class="parameter"><code><a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> **old_context</code></em>,
                      <em class="parameter"><code><a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> *new_context</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> to point to a different <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a>. The
@@ -522,7 +522,7 @@
 context is unreffed, the new one is reffed).</p>
 <p>Either <em class="parameter"><code>new_context</code></em>
  or the <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> pointed to by <em class="parameter"><code>old_context</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.17.8.13.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -543,14 +543,14 @@
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> that will
 replace the context pointed to by <em class="parameter"><code>old_context</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.17.8.13.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_context</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_context</code></em>
 was different from <em class="parameter"><code>old_context</code></em>
 </p>
 <p></p>
@@ -571,6 +571,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstControlBinding.html b/docs/gst/html/GstControlBinding.html
index 785c237..e1c7d87 100644
--- a/docs/gst/html/GstControlBinding.html
+++ b/docs/gst/html/GstControlBinding.html
@@ -8,15 +8,15 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstContext.html" title="GstContext">
 <link rel="next" href="GstControlSource.html" title="GstControlSource">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstControlBinding.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstControlBinding.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstControlBinding.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstControlBinding.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstControlBinding.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,7 +43,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstControlBinding.html#gst-control-binding-sync-values" title="gst_control_binding_sync_values ()">gst_control_binding_sync_values</a> <span class="c_punctuation">()</span>
@@ -51,7 +51,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstControlBinding.html#gst-control-binding-get-value" title="gst_control_binding_get_value ()">gst_control_binding_get_value</a> <span class="c_punctuation">()</span>
@@ -59,7 +59,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstControlBinding.html#gst-control-binding-get-value-array" title="gst_control_binding_get_value_array ()">gst_control_binding_get_value_array</a> <span class="c_punctuation">()</span>
@@ -67,7 +67,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstControlBinding.html#gst-control-binding-get-g-value-array" title="gst_control_binding_get_g_value_array ()">gst_control_binding_get_g_value_array</a> <span class="c_punctuation">()</span>
@@ -83,7 +83,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstControlBinding.html#gst-control-binding-is-disabled" title="gst_control_binding_is_disabled ()">gst_control_binding_is_disabled</a> <span class="c_punctuation">()</span>
@@ -103,7 +103,7 @@
 <tbody>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="GstControlBinding.html#GstControlBinding--name" title="The “name” property">name</a></td>
 <td class="property_flags">Read / Write / Construct Only</td>
 </tr>
@@ -137,8 +137,8 @@
 </div>
 <div class="refsect1">
 <a name="GstControlBinding.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstControlBinding
 </pre>
@@ -159,7 +159,7 @@
 <a name="GstControlBinding.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-control-binding-sync-values"></a><h3>gst_control_binding_sync_values ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_control_binding_sync_values (<em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
@@ -203,15 +203,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.18.9.2.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the controller value could be applied to the object
-property, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the controller value could be applied to the object
+property, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-control-binding-get-value"></a><h3>gst_control_binding_get_value ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 gst_control_binding_get_value (<em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>,
                                <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Gets the value for the given controlled property at the requested time.</p>
@@ -239,20 +239,20 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.18.9.3.6"></a><h4>Returns</h4>
-<p> the GValue of the property at the given time, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-property isn't controlled.</p>
-<p></p>
+<p> the GValue of the property at the given time,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the property isn't controlled. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-control-binding-get-value-array"></a><h3>gst_control_binding_get_value_array ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_control_binding_get_value_array (<em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> interval</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> values</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> values</code></em>);</pre>
 <p>Gets a number of values for the given controlled property starting at the
 requested time. The array <em class="parameter"><code>values</code></em>
  need to hold enough space for <em class="parameter"><code>n_values</code></em>
@@ -261,7 +261,7 @@
 <p>This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</p>
 <p>The values are unboxed and ready to be used. The similar function 
-<a class="link" href="GstControlBinding.html#gst-control-binding-get-g-value-array" title="gst_control_binding_get_g_value_array ()"><code class="function">gst_control_binding_get_g_value_array()</code></a> returns the array as <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> and is
+<a class="link" href="GstControlBinding.html#gst-control-binding-get-g-value-array" title="gst_control_binding_get_g_value_array ()"><code class="function">gst_control_binding_get_g_value_array()</code></a> returns the array as <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> and is
 more suitable for bindings.</p>
 <div class="refsect3">
 <a name="id-1.3.18.9.4.7"></a><h4>Parameters</h4>
@@ -302,24 +302,24 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.18.9.4.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-control-binding-get-g-value-array"></a><h3>gst_control_binding_get_g_value_array ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_control_binding_get_g_value_array (<em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>,
                                        <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
                                        <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> interval</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *values</code></em>);</pre>
-<p>Gets a number of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> for the given controlled property starting at the
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *values</code></em>);</pre>
+<p>Gets a number of <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> for the given controlled property starting at the
 requested time. The array <em class="parameter"><code>values</code></em>
  need to hold enough space for <em class="parameter"><code>n_values</code></em>
  of
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
 <p>This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</p>
 <div class="refsect3">
@@ -361,7 +361,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.18.9.5.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
@@ -370,7 +370,7 @@
 <a name="gst-control-binding-set-disabled"></a><h3>gst_control_binding_set_disabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_control_binding_set_disabled (<em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> disabled</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> disabled</code></em>);</pre>
 <p>This function is used to disable a control binding for some time, i.e.
 <a class="link" href="GstObject.html#gst-object-sync-values" title="gst_object_sync_values ()"><code class="function">gst_object_sync_values()</code></a> will do nothing.</p>
 <div class="refsect3">
@@ -400,7 +400,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-control-binding-is-disabled"></a><h3>gst_control_binding_is_disabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_control_binding_is_disabled (<em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>);</pre>
 <p>Check if the control binding is disabled.</p>
 <div class="refsect3">
@@ -420,7 +420,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.18.9.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the binding is inactive</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the binding is inactive</p>
 <p></p>
 </div>
 </div>
@@ -445,13 +445,13 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstControlBinding-struct.name"></a>name</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstControlBinding-struct.name"></a>name</code></em>;</p></td>
 <td class="struct_member_description"><p>name of the property of this binding</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> *<em class="structfield"><code><a name="GstControlBinding-struct.pspec"></a>pspec</code></em>;</p></td>
-<td class="struct_member_description"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for this property</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> *<em class="structfield"><code><a name="GstControlBinding-struct.pspec"></a>pspec</code></em>;</p></td>
+<td class="struct_member_description"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for this property</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
@@ -515,7 +515,7 @@
 <a name="GstControlBinding.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstControlBinding--name"></a><h3>The <code class="literal">“name”</code> property</h3>
-<pre class="programlisting">  “name”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “name”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The name of the property.</p>
 <p>Flags: Read / Write / Construct Only</p>
 <p>Default value: NULL</p>
@@ -531,6 +531,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstControlSource.html b/docs/gst/html/GstControlSource.html
index 4c50da3..75fefed 100644
--- a/docs/gst/html/GstControlSource.html
+++ b/docs/gst/html/GstControlSource.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstControlBinding.html" title="GstControlBinding">
 <link rel="next" href="GstDateTime.html" title="GstDateTime">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstControlSource.html#GstControlSourceGetValue" title="GstControlSourceGetValue ()">*GstControlSourceGetValue</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -50,7 +50,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstControlSource.html#GstControlSourceGetValueArray" title="GstControlSourceGetValueArray ()">*GstControlSourceGetValueArray</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -58,7 +58,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstControlSource.html#gst-control-source-get-value" title="gst_control_source_get_value ()">gst_control_source_get_value</a> <span class="c_punctuation">()</span>
@@ -66,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstControlSource.html#gst-control-source-get-value-array" title="gst_control_source_get_value_array ()">gst_control_source_get_value_array</a> <span class="c_punctuation">()</span>
@@ -104,8 +104,8 @@
 </div>
 <div class="refsect1">
 <a name="GstControlSource.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstControlSource
 </pre>
@@ -133,10 +133,10 @@
 <a name="GstControlSource.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="GstControlSourceGetValue"></a><h3>GstControlSourceGetValue ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstControlSourceGetValue<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstControlSource.html" title="GstControlSource"><span class="type">GstControlSource</span></a> *self</code></em>,
                              <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
 <p>Function for returning a value for a given timestamp.</p>
 <div class="refsect3">
 <a name="id-1.3.19.8.2.5"></a><h4>Parameters</h4>
@@ -159,7 +159,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> which will be set to the result. It must be initialized to the correct type.</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> which will be set to the result. It must be initialized to the correct type.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -167,19 +167,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.19.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value was successfully calculated.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value was successfully calculated.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstControlSourceGetValueArray"></a><h3>GstControlSourceGetValueArray ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstControlSourceGetValueArray<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstControlSource.html" title="GstControlSource"><span class="type">GstControlSource</span></a> *self</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> interval</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *values</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *values</code></em>);</pre>
 <p>Function for returning an array of values for starting at a given timestamp.</p>
 <div class="refsect3">
 <a name="id-1.3.19.8.3.5"></a><h4>Parameters</h4>
@@ -220,17 +220,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.19.8.3.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values were successfully calculated.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values were successfully calculated.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-control-source-get-value"></a><h3>gst_control_source_get_value ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_control_source_get_value (<em class="parameter"><code><a class="link" href="GstControlSource.html" title="GstControlSource"><span class="type">GstControlSource</span></a> *self</code></em>,
                               <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
 <p>Gets the value for this <a class="link" href="GstControlSource.html" title="GstControlSource"><span class="type">GstControlSource</span></a> at a given timestamp.</p>
 <div class="refsect3">
 <a name="id-1.3.19.8.4.5"></a><h4>Parameters</h4>
@@ -261,19 +261,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.19.8.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the value couldn't be returned, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the value couldn't be returned, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-control-source-get-value-array"></a><h3>gst_control_source_get_value_array ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_control_source_get_value_array (<em class="parameter"><code><a class="link" href="GstControlSource.html" title="GstControlSource"><span class="type">GstControlSource</span></a> *self</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> interval</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *values</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *values</code></em>);</pre>
 <p>Gets an array of values for for this <a class="link" href="GstControlSource.html" title="GstControlSource"><span class="type">GstControlSource</span></a>. Values that are
 undefined contain NANs.</p>
 <div class="refsect3">
@@ -315,7 +315,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.19.8.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
@@ -406,7 +406,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> <em class="structfield"><code><a name="GstTimedValue.value"></a>value</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> <em class="structfield"><code><a name="GstTimedValue.value"></a>value</code></em>;</p></td>
 <td class="struct_member_description"><p>the corresponding value</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -418,6 +418,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstDateTime.html b/docs/gst/html/GstDateTime.html
index 587cddf..b7ce357 100644
--- a/docs/gst/html/GstDateTime.html
+++ b/docs/gst/html/GstDateTime.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstControlSource.html" title="GstControlSource">
 <link rel="next" href="GstElement.html" title="GstElement">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstDateTime.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstDateTime.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstDateTime.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -46,7 +46,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-day" title="gst_date_time_get_day ()">gst_date_time_get_day</a> <span class="c_punctuation">()</span>
@@ -54,7 +54,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-month" title="gst_date_time_get_month ()">gst_date_time_get_month</a> <span class="c_punctuation">()</span>
@@ -62,7 +62,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-hour" title="gst_date_time_get_hour ()">gst_date_time_get_hour</a> <span class="c_punctuation">()</span>
@@ -70,7 +70,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-microsecond" title="gst_date_time_get_microsecond ()">gst_date_time_get_microsecond</a> <span class="c_punctuation">()</span>
@@ -78,7 +78,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-minute" title="gst_date_time_get_minute ()">gst_date_time_get_minute</a> <span class="c_punctuation">()</span>
@@ -86,7 +86,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-time-zone-offset" title="gst_date_time_get_time_zone_offset ()">gst_date_time_get_time_zone_offset</a> <span class="c_punctuation">()</span>
@@ -94,7 +94,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-second" title="gst_date_time_get_second ()">gst_date_time_get_second</a> <span class="c_punctuation">()</span>
@@ -102,7 +102,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-get-year" title="gst_date_time_get_year ()">gst_date_time_get_year</a> <span class="c_punctuation">()</span>
@@ -198,7 +198,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-has-day" title="gst_date_time_has_day ()">gst_date_time_has_day</a> <span class="c_punctuation">()</span>
@@ -206,7 +206,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-has-month" title="gst_date_time_has_month ()">gst_date_time_has_month</a> <span class="c_punctuation">()</span>
@@ -214,7 +214,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-has-second" title="gst_date_time_has_second ()">gst_date_time_has_second</a> <span class="c_punctuation">()</span>
@@ -222,7 +222,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-has-time" title="gst_date_time_has_time ()">gst_date_time_has_time</a> <span class="c_punctuation">()</span>
@@ -230,7 +230,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-has-year" title="gst_date_time_has_year ()">gst_date_time_has_year</a> <span class="c_punctuation">()</span>
@@ -246,7 +246,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-to-iso8601-string" title="gst_date_time_to_iso8601_string ()">gst_date_time_to_iso8601_string</a> <span class="c_punctuation">()</span>
@@ -262,7 +262,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="returnvalue">GDateTime</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="returnvalue">GDateTime</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstDateTime.html#gst-date-time-to-g-date-time" title="gst_date_time_to_g_date_time ()">gst_date_time_to_g_date_time</a> <span class="c_punctuation">()</span>
@@ -286,7 +286,7 @@
 </div>
 <div class="refsect1">
 <a name="GstDateTime.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstDateTime
 </pre>
 </div>
@@ -308,17 +308,17 @@
 <a name="GST-TYPE-DATE-TIME:CAPS"></a><h3>GST_TYPE_DATE_TIME</h3>
 <pre class="programlisting">#define GST_TYPE_DATE_TIME (_gst_date_time_type)
 </pre>
-<p>a boxed <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type for <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> that represents a date and time.</p>
+<p>a boxed <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type for <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> that represents a date and time.</p>
 <div class="refsect3">
 <a name="id-1.3.20.8.2.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstDateTime</p>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstDateTime</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-day"></a><h3>gst_date_time_get_day ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_day (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Returns the day of the month of this <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>.
 Call gst_date_time_has_day before, to avoid warnings.</p>
@@ -346,7 +346,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-month"></a><h3>gst_date_time_get_month ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_month (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Returns the month of this <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>. January is 1, February is 2, etc..
 Call gst_date_time_has_month before, to avoid warnings.</p>
@@ -374,7 +374,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-hour"></a><h3>gst_date_time_get_hour ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_hour (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Retrieves the hour of the day represented by <em class="parameter"><code>datetime</code></em>
  in the gregorian
@@ -404,7 +404,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-microsecond"></a><h3>gst_date_time_get_microsecond ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_microsecond (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Retrieves the fractional part of the seconds in microseconds represented by
 <em class="parameter"><code>datetime</code></em>
@@ -433,7 +433,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-minute"></a><h3>gst_date_time_get_minute ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_minute (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Retrieves the minute of the hour represented by <em class="parameter"><code>datetime</code></em>
  in the gregorian
@@ -463,7 +463,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-time-zone-offset"></a><h3>gst_date_time_get_time_zone_offset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 gst_date_time_get_time_zone_offset (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Retrieves the offset from UTC in hours that the timezone specified
 by <em class="parameter"><code>datetime</code></em>
@@ -495,7 +495,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-second"></a><h3>gst_date_time_get_second ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_second (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Retrieves the second of the minute represented by <em class="parameter"><code>datetime</code></em>
  in the gregorian
@@ -526,7 +526,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-get-year"></a><h3>gst_date_time_get_year ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_date_time_get_year (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Returns the year of this <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>
 Call gst_date_time_has_year before, to avoid warnings.</p>
@@ -555,13 +555,13 @@
 <div class="refsect2">
 <a name="gst-date-time-new"></a><h3>gst_date_time_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> tzoffset</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> day</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> hour</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minute</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> seconds</code></em>);</pre>
+gst_date_time_new (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> tzoffset</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> day</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> hour</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minute</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> seconds</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> using the date and times in the gregorian calendar
 in the supplied timezone.</p>
 <p><em class="parameter"><code>year</code></em>
@@ -643,9 +643,9 @@
 <div class="refsect2">
 <a name="gst-date-time-new-ymd"></a><h3>gst_date_time_new_ymd ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new_ymd (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> day</code></em>);</pre>
+gst_date_time_new_ymd (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> day</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> using the date and times in the gregorian calendar
 in the local timezone.</p>
 <p><em class="parameter"><code>year</code></em>
@@ -700,8 +700,8 @@
 <div class="refsect2">
 <a name="gst-date-time-new-ym"></a><h3>gst_date_time_new_ym ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new_ym (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>);</pre>
+gst_date_time_new_ym (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> using the date and times in the gregorian calendar
 in the local timezone.</p>
 <p><em class="parameter"><code>year</code></em>
@@ -744,7 +744,7 @@
 <div class="refsect2">
 <a name="gst-date-time-new-y"></a><h3>gst_date_time_new_y ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new_y (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>);</pre>
+gst_date_time_new_y (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> using the date and times in the gregorian calendar
 in the local timezone.</p>
 <p><em class="parameter"><code>year</code></em>
@@ -836,12 +836,12 @@
 <div class="refsect2">
 <a name="gst-date-time-new-local-time"></a><h3>gst_date_time_new_local_time ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new_local_time (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> day</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> hour</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minute</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> seconds</code></em>);</pre>
+gst_date_time_new_local_time (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> year</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> month</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> day</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> hour</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minute</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> seconds</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> using the date and times in the gregorian calendar
 in the local timezone.</p>
 <p><em class="parameter"><code>year</code></em>
@@ -1004,7 +1004,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-has-day"></a><h3>gst_date_time_has_day ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_date_time_has_day (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <div class="refsect3">
 <a name="id-1.3.20.8.22.4"></a><h4>Parameters</h4>
@@ -1023,15 +1023,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.22.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
-'s day field is set, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
+'s day field is set, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-has-month"></a><h3>gst_date_time_has_month ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_date_time_has_month (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <div class="refsect3">
 <a name="id-1.3.20.8.23.4"></a><h4>Parameters</h4>
@@ -1050,15 +1050,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.23.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
-'s month field is set, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
+'s month field is set, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-has-second"></a><h3>gst_date_time_has_second ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_date_time_has_second (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <div class="refsect3">
 <a name="id-1.3.20.8.24.4"></a><h4>Parameters</h4>
@@ -1077,15 +1077,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.24.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
-'s second field is set, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
+'s second field is set, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-has-time"></a><h3>gst_date_time_has_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_date_time_has_time (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <div class="refsect3">
 <a name="id-1.3.20.8.25.4"></a><h4>Parameters</h4>
@@ -1104,16 +1104,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.25.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
 's hour and minute fields are set,
-otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-has-year"></a><h3>gst_date_time_has_year ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_date_time_has_year (<em class="parameter"><code>const <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <div class="refsect3">
 <a name="id-1.3.20.8.26.4"></a><h4>Parameters</h4>
@@ -1132,9 +1132,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.26.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>datetime</code></em>
 's year field is set (which should always
-be the case), otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+be the case), otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
@@ -1142,7 +1142,7 @@
 <div class="refsect2">
 <a name="gst-date-time-new-from-iso8601-string"></a><h3>gst_date_time_new_from_iso8601_string ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new_from_iso8601_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
+gst_date_time_new_from_iso8601_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
 <p>Tries to parse common variants of ISO-8601 datetime strings into a
 <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>.</p>
 <p>Free-function: gst_date_time_unref</p>
@@ -1163,14 +1163,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.27.7"></a><h4>Returns</h4>
-<p> a newly created <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a newly created <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-to-iso8601-string"></a><h3>gst_date_time_to_iso8601_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_date_time_to_iso8601_string (<em class="parameter"><code><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
 <p>Create a minimal string compatible with ISO-8601. Possible output formats
 are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z,
@@ -1192,18 +1193,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.28.6"></a><h4>Returns</h4>
-<p> a newly allocated string formatted according to ISO 8601 and
-only including the datetime fields that are valid, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case
-there was an error. The string should be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.</p>
-<p></p>
+<p> a newly allocated string formatted according
+to ISO 8601 and only including the datetime fields that are
+valid, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case there was an error. The string should
+be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-new-from-g-date-time"></a><h3>gst_date_time_new_from_g_date_time ()</h3>
 <pre class="programlisting"><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_date_time_new_from_g_date_time (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> *dt</code></em>);</pre>
-<p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> from a <a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> object.</p>
+gst_date_time_new_from_g_date_time (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> *dt</code></em>);</pre>
+<p>Creates a new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> from a <a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> object.</p>
 <p>Free-function: gst_date_time_unref</p>
 <div class="refsect3">
 <a name="id-1.3.20.8.29.6"></a><h4>Parameters</h4>
@@ -1215,23 +1217,24 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>dt</p></td>
-<td class="parameter_description"><p> the <a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a>. The new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> takes ownership. </p></td>
+<td class="parameter_description"><p> the <a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a>. The new <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> takes ownership. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.29.7"></a><h4>Returns</h4>
-<p> a newly created <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a newly created <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-date-time-to-g-date-time"></a><h3>gst_date_time_to_g_date_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="returnvalue">GDateTime</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="returnvalue">GDateTime</span></a> *
 gst_date_time_to_g_date_time (<em class="parameter"><code><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> *datetime</code></em>);</pre>
-<p>Creates a new <a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> from a fully defined <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> object.</p>
+<p>Creates a new <a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> from a fully defined <a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> object.</p>
 <p>Free-function: g_date_time_unref</p>
 <div class="refsect3">
 <a name="id-1.3.20.8.30.6"></a><h4>Parameters</h4>
@@ -1250,8 +1253,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.20.8.30.7"></a><h4>Returns</h4>
-<p> a newly created <a href="http://library.gnome.org/devel/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a newly created <a href="https://developer.gnome.org/glib/unstable/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a>, or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 </div>
@@ -1269,6 +1273,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstDeviceMonitorFactory.html b/docs/gst/html/GstDeviceMonitorFactory.html
deleted file mode 100644
index 98745b4..0000000
--- a/docs/gst/html/GstDeviceMonitorFactory.html
+++ /dev/null
@@ -1,507 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GStreamer 1.0 Core Reference Manual: GstDeviceMonitorFactory</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
-<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
-<link rel="up" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
-<link rel="prev" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">
-<link rel="next" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstDeviceMonitorFactory.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstDeviceMonitorFactory.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gstreamer-device-probing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gstreamer-GstDeviceMonitor.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gstreamer-GstGlobalDeviceMonitor.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="GstDeviceMonitorFactory"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="GstDeviceMonitorFactory.top_of_page"></a>GstDeviceMonitorFactory</span></h2>
-<p>GstDeviceMonitorFactory — Create GstDeviceMonitors from a factory</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="returnvalue">GstDeviceMonitorFactory</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-find" title="gst_device_monitor_factory_find ()">gst_device_monitor_factory_find</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="returnvalue">GstDeviceMonitor</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get" title="gst_device_monitor_factory_get ()">gst_device_monitor_factory_get</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="returnvalue">GstDeviceMonitor</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-by-name" title="gst_device_monitor_factory_get_by_name ()">gst_device_monitor_factory_get_by_name</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-device-monitor-type" title="gst_device_monitor_factory_get_device_monitor_type ()">gst_device_monitor_factory_get_device_monitor_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata" title="gst_device_monitor_factory_get_metadata ()">gst_device_monitor_factory_get_metadata</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata-keys" title="gst_device_monitor_factory_get_metadata_keys ()">gst_device_monitor_factory_get_metadata_keys</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classes" title="gst_device_monitor_factory_has_classes ()">gst_device_monitor_factory_has_classes</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classesv" title="gst_device_monitor_factory_has_classesv ()">gst_device_monitor_factory_has_classesv</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-list-get-device-monitors" title="gst_device_monitor_factory_list_get_device_monitors ()">gst_device_monitor_factory_list_get_device_monitors</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="GstDeviceMonitorFactory.html#GstDeviceMonitorFactory-struct" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="GstDeviceMonitorFactory.html#GstDeviceMonitorFactoryClass" title="GstDeviceMonitorFactoryClass">GstDeviceMonitorFactoryClass</a></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
-        <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
-            <span class="lineart">╰──</span> <a class="link" href="GstPluginFeature.html" title="GstPluginFeature">GstPluginFeature</a>
-                <span class="lineart">╰──</span> GstDeviceMonitorFactory
-</pre>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.includes"></a><h2>Includes</h2>
-<pre class="synopsis">#include &lt;gst/gst.h&gt;
-</pre>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.description"></a><h2>Description</h2>
-<p><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> is used to create instances of device monitors. A
-GstDeviceMonitorfactory can be added to a <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> as it is also a
-<a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a>.</p>
-<p>Use the <a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-find" title="gst_device_monitor_factory_find ()"><code class="function">gst_device_monitor_factory_find()</code></a> and <code class="function">gst_device_monitor_factory_create()</code>
-functions to create device monitor instances or use <code class="function">gst_device_monitor_factory_make()</code> as a
-convenient shortcut.</p>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-find"></a><h3>gst_device_monitor_factory_find ()</h3>
-<pre class="programlisting"><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="returnvalue">GstDeviceMonitorFactory</span></a> *
-gst_device_monitor_factory_find (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
-<p>Search for an device monitor factory of the given name. Refs the returned
-device monitor factory; caller is responsible for unreffing.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name of factory to find</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.2.6"></a><h4>Returns</h4>
-<p> <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> if found, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-get"></a><h3>gst_device_monitor_factory_get ()</h3>
-<pre class="programlisting"><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="returnvalue">GstDeviceMonitor</span></a> *
-gst_device_monitor_factory_get (<em class="parameter"><code><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *factory</code></em>);</pre>
-<p>Returns the device monitor of the type defined by the given device
-monitorfactory.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>factory to instantiate</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.3.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-device monitor couldn't be created. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-get-by-name"></a><h3>gst_device_monitor_factory_get_by_name ()</h3>
-<pre class="programlisting"><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="returnvalue">GstDeviceMonitor</span></a> *
-gst_device_monitor_factory_get_by_name
-                               (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *factoryname</code></em>);</pre>
-<p>Returns the device monitor of the type defined by the given device
-monitor factory.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>factoryname</p></td>
-<td class="parameter_description"><p>a named factory to instantiate</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.4.6"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if unable to
-create device monitor. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-get-device-monitor-type"></a><h3>gst_device_monitor_factory_get_device_monitor_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
-gst_device_monitor_factory_get_device_monitor_type
-                               (<em class="parameter"><code><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *factory</code></em>);</pre>
-<p>Get the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for device monitors managed by this factory. The type can
-only be retrieved if the device monitor factory is loaded, which can be
-assured with <a class="link" href="GstPluginFeature.html#gst-plugin-feature-load" title="gst_plugin_feature_load ()"><code class="function">gst_plugin_feature_load()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>factory to get managed <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> from</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.5.6"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for device monitors managed by this factory or 0 if
-the factory is not loaded.</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-get-metadata"></a><h3>gst_device_monitor_factory_get_metadata ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_device_monitor_factory_get_metadata
-                               (<em class="parameter"><code><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *factory</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
-<p>Get the metadata on <em class="parameter"><code>factory</code></em>
- with <em class="parameter"><code>key</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>key</p></td>
-<td class="parameter_description"><p>a key</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.6.6"></a><h4>Returns</h4>
-<p> the metadata with <em class="parameter"><code>key</code></em>
-on <em class="parameter"><code>factory</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there was no
-metadata with the given <em class="parameter"><code>key</code></em>
-.</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-get-metadata-keys"></a><h3>gst_device_monitor_factory_get_metadata_keys ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
-gst_device_monitor_factory_get_metadata_keys
-                               (<em class="parameter"><code><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *factory</code></em>);</pre>
-<p>Get the available keys for the metadata on <em class="parameter"><code>factory</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.7.6"></a><h4>Returns</h4>
-<p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of key strings, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no
-metadata. Free with <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-has-classes"></a><h3>gst_device_monitor_factory_has_classes ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_device_monitor_factory_has_classes
-                               (<em class="parameter"><code><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *factory</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>);</pre>
-<p>Check if <em class="parameter"><code>factory</code></em>
- matches all of the given <em class="parameter"><code>classes</code></em>
-</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>classes</p></td>
-<td class="parameter_description"><p>a "/" separate list of klasses to match, only match if all classes
-are matched</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>factory</code></em>
-matches.</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-has-classesv"></a><h3>gst_device_monitor_factory_has_classesv ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_device_monitor_factory_has_classesv
-                               (<em class="parameter"><code><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *factory</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **classes</code></em>);</pre>
-<p>Check if <em class="parameter"><code>factory</code></em>
- matches all of the given classes</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>classes</p></td>
-<td class="parameter_description"><p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of
-klasses to match, only match if all classes are matched. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>factory</code></em>
-matches.</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-factory-list-get-device-monitors"></a><h3>gst_device_monitor_factory_list_get_device_monitors ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-gst_device_monitor_factory_list_get_device_monitors
-                               (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>,
-                                <em class="parameter"><code><a class="link" href="GstPluginFeature.html#GstRank" title="enum GstRank"><span class="type">GstRank</span></a> minrank</code></em>);</pre>
-<p>Get a list of factories that match all of the given <em class="parameter"><code>classes</code></em>
-. Only
-device monitors with a rank greater or equal to <em class="parameter"><code>minrank</code></em>
- will be
-returned.  The list of factories is returned by decreasing rank.</p>
-<div class="refsect3">
-<a name="id-1.4.4.8.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>classes</p></td>
-<td class="parameter_description"><p>a "/" separate list of klasses to match, only match if all classes
-are matched</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>minrank</p></td>
-<td class="parameter_description"><p>Minimum rank</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.8.10.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
-<a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> device monitors. Use <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a> after
-usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.DeviceMonitorFactory]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GstDeviceMonitorFactory-struct"></a><h3>GstDeviceMonitorFactory</h3>
-<pre class="programlisting">typedef struct _GstDeviceMonitorFactory GstDeviceMonitorFactory;</pre>
-<p>The opaque <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> data structure.</p>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GstDeviceMonitorFactoryClass"></a><h3>GstDeviceMonitorFactoryClass</h3>
-<pre class="programlisting">typedef struct _GstDeviceMonitorFactoryClass GstDeviceMonitorFactoryClass;</pre>
-<p>The opaque <a class="link" href="GstDeviceMonitorFactory.html#GstDeviceMonitorFactoryClass" title="GstDeviceMonitorFactoryClass"><span class="type">GstDeviceMonitorFactoryClass</span></a> data structure.</p>
-<p class="since">Since 1.4</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="GstDeviceMonitorFactory.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a>, <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>, <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a>, <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a>.</p>
-</div>
-</div>
-<div class="footer">
-<hr>
-          Generated by GTK-Doc V1.20</div>
-</body>
-</html>
\ No newline at end of file
diff --git a/docs/gst/html/GstDeviceProviderFactory.html b/docs/gst/html/GstDeviceProviderFactory.html
new file mode 100644
index 0000000..fb29a5d
--- /dev/null
+++ b/docs/gst/html/GstDeviceProviderFactory.html
@@ -0,0 +1,497 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer 1.0 Core Reference Manual: GstDeviceProviderFactory</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
+<link rel="up" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
+<link rel="prev" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">
+<link rel="next" href="gstreamer-support.html" title="GStreamer Core Support">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstDeviceProviderFactory.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstDeviceProviderFactory.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="gstreamer-device-probing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gstreamer-GstDeviceProvider.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gstreamer-support.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="GstDeviceProviderFactory"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="GstDeviceProviderFactory.top_of_page"></a>GstDeviceProviderFactory</span></h2>
+<p>GstDeviceProviderFactory — Create GstDeviceProviders from a factory</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="returnvalue">GstDeviceProviderFactory</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-find" title="gst_device_provider_factory_find ()">gst_device_provider_factory_find</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="returnvalue">GstDeviceProvider</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get" title="gst_device_provider_factory_get ()">gst_device_provider_factory_get</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="returnvalue">GstDeviceProvider</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-by-name" title="gst_device_provider_factory_get_by_name ()">gst_device_provider_factory_get_by_name</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-device-provider-type" title="gst_device_provider_factory_get_device_provider_type ()">gst_device_provider_factory_get_device_provider_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata" title="gst_device_provider_factory_get_metadata ()">gst_device_provider_factory_get_metadata</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata-keys" title="gst_device_provider_factory_get_metadata_keys ()">gst_device_provider_factory_get_metadata_keys</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-has-classes" title="gst_device_provider_factory_has_classes ()">gst_device_provider_factory_has_classes</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-has-classesv" title="gst_device_provider_factory_has_classesv ()">gst_device_provider_factory_has_classesv</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-list-get-device-providers" title="gst_device_provider_factory_list_get_device_providers ()">gst_device_provider_factory_list_get_device_providers</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="GstDeviceProviderFactory.html#GstDeviceProviderFactory-struct" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="GstDeviceProviderFactory.html#GstDeviceProviderFactoryClass" title="GstDeviceProviderFactoryClass">GstDeviceProviderFactoryClass</a></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+        <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
+            <span class="lineart">╰──</span> <a class="link" href="GstPluginFeature.html" title="GstPluginFeature">GstPluginFeature</a>
+                <span class="lineart">╰──</span> GstDeviceProviderFactory
+</pre>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;gst/gst.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.description"></a><h2>Description</h2>
+<p><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> is used to create instances of device providers. A
+GstDeviceProviderfactory can be added to a <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> as it is also a
+<a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a>.</p>
+<p>Use the <a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-find" title="gst_device_provider_factory_find ()"><code class="function">gst_device_provider_factory_find()</code></a> and
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get" title="gst_device_provider_factory_get ()"><code class="function">gst_device_provider_factory_get()</code></a> functions to create device
+provider instances or use <a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-by-name" title="gst_device_provider_factory_get_by_name ()"><code class="function">gst_device_provider_factory_get_by_name()</code></a> as a
+convenient shortcut.</p>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="gst-device-provider-factory-find"></a><h3>gst_device_provider_factory_find ()</h3>
+<pre class="programlisting"><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="returnvalue">GstDeviceProviderFactory</span></a> *
+gst_device_provider_factory_find (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<p>Search for an device provider factory of the given name. Refs the returned
+device provider factory; caller is responsible for unreffing.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.2.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>name of factory to find</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.2.6"></a><h4>Returns</h4>
+<p> <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> if
+found, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-get"></a><h3>gst_device_provider_factory_get ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="returnvalue">GstDeviceProvider</span></a> *
+gst_device_provider_factory_get (<em class="parameter"><code><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *factory</code></em>);</pre>
+<p>Returns the device provider of the type defined by the given device
+providerfactory.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.3.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>factory</p></td>
+<td class="parameter_description"><p>factory to instantiate</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.3.6"></a><h4>Returns</h4>
+<p> the <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+if the device provider couldn't be created. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-get-by-name"></a><h3>gst_device_provider_factory_get_by_name ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="returnvalue">GstDeviceProvider</span></a> *
+gst_device_provider_factory_get_by_name
+                               (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *factoryname</code></em>);</pre>
+<p>Returns the device provider of the type defined by the given device
+provider factory.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.4.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>factoryname</p></td>
+<td class="parameter_description"><p>a named factory to instantiate</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.4.6"></a><h4>Returns</h4>
+<p> a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+if unable to create device provider. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-get-device-provider-type"></a><h3>gst_device_provider_factory_get_device_provider_type ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+gst_device_provider_factory_get_device_provider_type
+                               (<em class="parameter"><code><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *factory</code></em>);</pre>
+<p>Get the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for device providers managed by this factory. The type can
+only be retrieved if the device provider factory is loaded, which can be
+assured with <a class="link" href="GstPluginFeature.html#gst-plugin-feature-load" title="gst_plugin_feature_load ()"><code class="function">gst_plugin_feature_load()</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.5.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>factory</p></td>
+<td class="parameter_description"><p>factory to get managed <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> from</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.5.6"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for device providers managed by this factory.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-get-metadata"></a><h3>gst_device_provider_factory_get_metadata ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_device_provider_factory_get_metadata
+                               (<em class="parameter"><code><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *factory</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
+<p>Get the metadata on <em class="parameter"><code>factory</code></em>
+ with <em class="parameter"><code>key</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.6.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>factory</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>a key</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.6.6"></a><h4>Returns</h4>
+<p> the metadata with <em class="parameter"><code>key</code></em>
+on <em class="parameter"><code>factory</code></em>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when there was no metadata with the given <em class="parameter"><code>key</code></em>
+. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-get-metadata-keys"></a><h3>gst_device_provider_factory_get_metadata_keys ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+gst_device_provider_factory_get_metadata_keys
+                               (<em class="parameter"><code><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *factory</code></em>);</pre>
+<p>Get the available keys for the metadata on <em class="parameter"><code>factory</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.7.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>factory</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.7.6"></a><h4>Returns</h4>
+<p>a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of key strings, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no
+metadata. Free with <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> when no longer needed. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-has-classes"></a><h3>gst_device_provider_factory_has_classes ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_device_provider_factory_has_classes
+                               (<em class="parameter"><code><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *factory</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>);</pre>
+<p>Check if <em class="parameter"><code>factory</code></em>
+ matches all of the given <em class="parameter"><code>classes</code></em>
+</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.8.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>factory</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>classes</p></td>
+<td class="parameter_description"><p> a "/" separate list of classes to match, only match
+if all classes are matched. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.8.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>factory</code></em>
+matches or if <em class="parameter"><code>classes</code></em>
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-has-classesv"></a><h3>gst_device_provider_factory_has_classesv ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_device_provider_factory_has_classesv
+                               (<em class="parameter"><code><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *factory</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **classes</code></em>);</pre>
+<p>Check if <em class="parameter"><code>factory</code></em>
+ matches all of the given classes</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.9.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>factory</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>classes</p></td>
+<td class="parameter_description"><p> a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array
+of classes to match, only match if all classes are matched. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.9.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>factory</code></em>
+matches.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-factory-list-get-device-providers"></a><h3>gst_device_provider_factory_list_get_device_providers ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_device_provider_factory_list_get_device_providers
+                               (<em class="parameter"><code><a class="link" href="GstPluginFeature.html#GstRank" title="enum GstRank"><span class="type">GstRank</span></a> minrank</code></em>);</pre>
+<p>Get a list of factories with a rank greater or equal to <em class="parameter"><code>minrank</code></em>
+.
+The list of factories is returned by decreasing rank.</p>
+<div class="refsect3">
+<a name="id-1.4.5.8.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>minrank</p></td>
+<td class="parameter_description"><p>Minimum rank</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.5.8.10.6"></a><h4>Returns</h4>
+<p>a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> device providers. Use
+<a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a> after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.DeviceProviderFactory]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstDeviceProviderFactory-struct"></a><h3>GstDeviceProviderFactory</h3>
+<pre class="programlisting">typedef struct _GstDeviceProviderFactory GstDeviceProviderFactory;</pre>
+<p>The opaque <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> data structure.</p>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstDeviceProviderFactoryClass"></a><h3>GstDeviceProviderFactoryClass</h3>
+<pre class="programlisting">typedef struct _GstDeviceProviderFactoryClass GstDeviceProviderFactoryClass;</pre>
+<p>The opaque <a class="link" href="GstDeviceProviderFactory.html#GstDeviceProviderFactoryClass" title="GstDeviceProviderFactoryClass"><span class="type">GstDeviceProviderFactoryClass</span></a> data structure.</p>
+<p class="since">Since 1.4</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="GstDeviceProviderFactory.see-also"></a><h2>See Also</h2>
+<p><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a>, <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>, <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a>, <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a>.</p>
+</div>
+</div>
+<div class="footer">
+<hr>
+          Generated by GTK-Doc V1.21</div>
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/gst/html/GstElement.html b/docs/gst/html/GstElement.html
index f6f3e32..861bfb8 100644
--- a/docs/gst/html/GstElement.html
+++ b/docs/gst/html/GstElement.html
@@ -8,16 +8,16 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstDateTime.html" title="GstDateTime">
 <link rel="next" href="GstElementFactory.html" title="GstElementFactory">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstElement.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstElement.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_derived_interfaces"> <span class="dim">|</span> 
-                  <a href="#GstElement.derived-interfaces" class="shortcut">Known Derived Interfaces</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstElement.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstElement.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_derived_interfaces">  <span class="dim">|</span> 
+                  <a href="#GstElement.derived-interfaces" class="shortcut">Known Derived Interfaces</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstElement.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -186,7 +186,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-class-get-pad-template-list" title="gst_element_class_get_pad_template_list ()">gst_element_class_get_pad_template_list</a> <span class="c_punctuation">()</span>
@@ -226,7 +226,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-add-pad" title="gst_element_add_pad ()">gst_element_add_pad</a> <span class="c_punctuation">()</span>
@@ -298,7 +298,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-remove-pad" title="gst_element_remove_pad ()">gst_element_remove_pad</a> <span class="c_punctuation">()</span>
@@ -330,7 +330,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-link" title="gst_element_link ()">gst_element_link</a> <span class="c_punctuation">()</span>
@@ -346,7 +346,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-link-many" title="gst_element_link_many ()">gst_element_link_many</a> <span class="c_punctuation">()</span>
@@ -362,7 +362,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-link-pads" title="gst_element_link_pads ()">gst_element_link_pads</a> <span class="c_punctuation">()</span>
@@ -370,7 +370,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-link-pads-full" title="gst_element_link_pads_full ()">gst_element_link_pads_full</a> <span class="c_punctuation">()</span>
@@ -386,7 +386,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-link-pads-filtered" title="gst_element_link_pads_filtered ()">gst_element_link_pads_filtered</a> <span class="c_punctuation">()</span>
@@ -394,14 +394,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-link-filtered" title="gst_element_link_filtered ()">gst_element_link_filtered</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-class-get-metadata" title="gst_element_class_get_metadata ()">gst_element_class_get_metadata</a> <span class="c_punctuation">()</span>
@@ -497,7 +497,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-set-clock" title="gst_element_set_clock ()">gst_element_set_clock</a> <span class="c_punctuation">()</span>
@@ -537,7 +537,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-set-locked-state" title="gst_element_set_locked_state ()">gst_element_set_locked_state</a> <span class="c_punctuation">()</span>
@@ -545,7 +545,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-is-locked-state" title="gst_element_is_locked_state ()">gst_element_is_locked_state</a> <span class="c_punctuation">()</span>
@@ -576,14 +576,14 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-state-get-name" title="gst_element_state_get_name ()">gst_element_state_get_name</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-state-change-return-get-name" title="gst_element_state_change_return_get_name ()">gst_element_state_change_return_get_name</a> <span class="c_punctuation">()</span>
@@ -591,7 +591,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-sync-state-with-parent" title="gst_element_sync_state_with_parent ()">gst_element_sync_state_with_parent</a> <span class="c_punctuation">()</span>
@@ -615,7 +615,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-post-message" title="gst_element_post_message ()">gst_element_post_message</a> <span class="c_punctuation">()</span>
@@ -623,7 +623,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-query" title="gst_element_query ()">gst_element_query</a> <span class="c_punctuation">()</span>
@@ -631,7 +631,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-query-convert" title="gst_element_query_convert ()">gst_element_query_convert</a> <span class="c_punctuation">()</span>
@@ -639,7 +639,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-query-position" title="gst_element_query_position ()">gst_element_query_position</a> <span class="c_punctuation">()</span>
@@ -647,7 +647,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-query-duration" title="gst_element_query_duration ()">gst_element_query_duration</a> <span class="c_punctuation">()</span>
@@ -655,7 +655,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-send-event" title="gst_element_send_event ()">gst_element_send_event</a> <span class="c_punctuation">()</span>
@@ -663,7 +663,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-seek-simple" title="gst_element_seek_simple ()">gst_element_seek_simple</a> <span class="c_punctuation">()</span>
@@ -671,7 +671,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElement.html#gst-element-seek" title="gst_element_seek ()">gst_element_seek</a> <span class="c_punctuation">()</span>
@@ -768,8 +768,8 @@
 </div>
 <div class="refsect1">
 <a name="GstElement.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstElement
                 <span class="lineart">╰──</span> <a class="link" href="GstBin.html" title="GstBin">GstBin</a>
@@ -797,7 +797,7 @@
 applications in order to retain ABI compatibility.</p>
 <p>Elements can have pads (of the type <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>).  These pads link to pads on
 other elements.  <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> flow between these linked pads.
-A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> has a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> structures for all their input (or sink)
+A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> has a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> structures for all their input (or sink)
 and output (or source) pads.
 Core and plug-in writers can add and remove pads with <a class="link" href="GstElement.html#gst-element-add-pad" title="gst_element_add_pad ()"><code class="function">gst_element_add_pad()</code></a>
 and <a class="link" href="GstElement.html#gst-element-remove-pad" title="gst_element_remove_pad ()"><code class="function">gst_element_remove_pad()</code></a>.</p>
@@ -1436,12 +1436,12 @@
 <a name="gst-element-class-get-pad-template"></a><h3>gst_element_class_get_pad_template ()</h3>
 <pre class="programlisting"><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="returnvalue">GstPadTemplate</span></a> *
 gst_element_class_get_pad_template (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *element_class</code></em>,
-                                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Retrieves a padtemplate from <em class="parameter"><code>element_class</code></em>
  with the given name.</p>
-<div class="note">If you use this function in the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> of an object class
+<div class="note">If you use this function in the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> of an object class
 that has subclasses, make sure to pass the g_class parameter of the
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> here.</div>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> here.</div>
 <div class="refsect3">
 <a name="id-1.3.21.10.24.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1466,23 +1466,24 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.24.7"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> with the given name, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if none was found. No unreferencing is necessary. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p> the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> with the
+given name, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none was found. No unreferencing is
+necessary. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-class-get-pad-template-list"></a><h3>gst_element_class_get_pad_template_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_element_class_get_pad_template_list
                                (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *element_class</code></em>);</pre>
 <p>Retrieves a list of the pad templates associated with <em class="parameter"><code>element_class</code></em>
 . The
 list must not be modified by the calling code.</p>
-<div class="note">If you use this function in the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> of an object class
+<div class="note">If you use this function in the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> of an object class
 that has subclasses, make sure to pass the g_class parameter of the
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> here.</div>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> here.</div>
 <div class="refsect3">
 <a name="id-1.3.21.10.25.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1500,7 +1501,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.25.7"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<p> the <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 pad templates. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.PadTemplate]</span></p>
 </div>
@@ -1510,10 +1511,10 @@
 <a name="gst-element-class-set-metadata"></a><h3>gst_element_class_set_metadata ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_element_class_set_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
 <p>Sets the detailed information for a <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a>.</p>
 <div class="note">This function is for use in _class_init functions only.</div>
 <div class="refsect3">
@@ -1563,10 +1564,10 @@
 <a name="gst-element-class-set-static-metadata"></a><h3>gst_element_class_set_static_metadata ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_element_class_set_static_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
 <p>Sets the detailed information for a <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a>.</p>
 <div class="note">This function is for use in _class_init functions only.</div>
 <p>Same as <a class="link" href="GstElement.html#gst-element-class-set-metadata" title="gst_element_class_set_metadata ()"><code class="function">gst_element_class_set_metadata()</code></a>, but <em class="parameter"><code>longname</code></em>
@@ -1624,8 +1625,8 @@
 <a name="gst-element-class-add-metadata"></a><h3>gst_element_class_add_metadata ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_element_class_add_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
 <p>Set <em class="parameter"><code>key</code></em>
  with <em class="parameter"><code>value</code></em>
  as metadata in <em class="parameter"><code>klass</code></em>
@@ -1663,8 +1664,8 @@
 <a name="gst-element-class-add-static-metadata"></a><h3>gst_element_class_add_static_metadata ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_element_class_add_static_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
 <p>Set <em class="parameter"><code>key</code></em>
  with <em class="parameter"><code>value</code></em>
  as metadata in <em class="parameter"><code>klass</code></em>
@@ -1705,7 +1706,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-add-pad"></a><h3>gst_element_add_pad ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_add_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                      <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Adds a pad (link point) to <em class="parameter"><code>element</code></em>
@@ -1742,7 +1743,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.30.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be added. This function can fail when
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be added. This function can fail when
 a pad with the same name already existed or the pad already had another
 parent.</p>
 <p>MT safe.</p>
@@ -1809,16 +1810,17 @@
 <tr>
 <td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to use as a filter. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.32.7"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to which a link can be made, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if one cannot be found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to which a link
+can be made, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if one cannot be found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a>
+after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1857,9 +1859,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.33.6"></a><h4>Returns</h4>
-<p> a compatible <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none
-was found. No unreferencing is necessary. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p> a compatible <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a>,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none was found. No unreferencing is necessary. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1867,12 +1869,14 @@
 <a name="gst-element-get-request-pad"></a><h3>gst_element_get_request_pad ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
 gst_element_get_request_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Retrieves a pad from the element by name (e.g. "src_%d"). This version only
 retrieves request pads. The pad should be released with
 <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()"><code class="function">gst_element_release_request_pad()</code></a>.</p>
-<p>This method is slow and will be deprecated in the future. New code should
-use <a class="link" href="GstElement.html#gst-element-request-pad" title="gst_element_request_pad ()"><code class="function">gst_element_request_pad()</code></a> with the requested template.</p>
+<p>This method is slower than manually getting the pad template and calling
+<a class="link" href="GstElement.html#gst-element-request-pad" title="gst_element_request_pad ()"><code class="function">gst_element_request_pad()</code></a> if the pads should have a specific name (e.g.
+<em class="parameter"><code>name</code></em>
+ is "src_1" instead of "src_%u").</p>
 <div class="refsect3">
 <a name="id-1.3.21.10.34.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1897,9 +1901,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.34.7"></a><h4>Returns</h4>
-<p> requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-Release after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found,
+otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  Release after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1907,7 +1911,7 @@
 <a name="gst-element-get-static-pad"></a><h3>gst_element_get_static_pad ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
 gst_element_get_static_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Retrieves a pad from <em class="parameter"><code>element</code></em>
  by name. This version only retrieves
 already-existing (i.e. 'static') pads.</p>
@@ -1935,10 +1939,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.35.6"></a><h4>Returns</h4>
-<p> the requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-unref after usage.</p>
+<p> the requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if
+found, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  unref after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1947,7 +1951,7 @@
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
 gst_element_request_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                          <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                          <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Retrieves a request pad from the element according to the provided template.
 Pad templates can be looked up using
@@ -1975,23 +1979,23 @@
 <tr>
 <td class="parameter_name"><p>name</p></td>
 <td class="parameter_description"><p> the name of the request <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>
-to retrieve. Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+to retrieve. Can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p> the caps of the pad we want to
-request. Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+request. Can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.36.7"></a><h4>Returns</h4>
-<p> requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-Release after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found,
+otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  Release after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -2061,7 +2065,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-remove-pad"></a><h3>gst_element_remove_pad ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_remove_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                         <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Removes <em class="parameter"><code>pad</code></em>
@@ -2103,7 +2107,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.39.10"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be removed. Can return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be removed. Can return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the
 pad does not belong to the provided element.</p>
 <p>MT safe.</p>
 <p></p>
@@ -2207,7 +2211,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-link"></a><h3>gst_element_link ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_link (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>,
                   <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>);</pre>
 <p>Links <em class="parameter"><code>src</code></em>
@@ -2243,7 +2247,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.43.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the elements could be linked, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the elements could be linked, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -2283,7 +2287,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-link-many"></a><h3>gst_element_link_many ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_link_many (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_1</code></em>,
                        <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_2</code></em>,
                        <em class="parameter"><code>...</code></em>);</pre>
@@ -2311,7 +2315,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to link in order.</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to link in order.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -2319,7 +2323,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -2352,7 +2356,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to unlink in order.</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of elements to unlink in order.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -2362,11 +2366,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-link-pads"></a><h3>gst_element_link_pads ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_link_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
                        <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>);</pre>
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>);</pre>
 <p>Links the two named pads of the source and destination elements.
 Side effect is that if one of the pads has no parent, it becomes a
 child of the parent of the other element.  If they have different
@@ -2388,8 +2392,8 @@
 <tr>
 <td class="parameter_name"><p>srcpadname</p></td>
 <td class="parameter_description"><p> the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
@@ -2399,26 +2403,26 @@
 <tr>
 <td class="parameter_name"><p>destpadname</p></td>
 <td class="parameter_description"><p> the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.47.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-link-pads-full"></a><h3>gst_element_link_pads_full ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_link_pads_full (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
                             <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>,
                             <em class="parameter"><code><a class="link" href="GstPad.html#GstPadLinkCheck" title="enum GstPadLinkCheck"><span class="type">GstPadLinkCheck</span></a> flags</code></em>);</pre>
 <p>Links the two named pads of the source and destination elements.
 Side effect is that if one of the pads has no parent, it becomes a
@@ -2446,8 +2450,8 @@
 <tr>
 <td class="parameter_name"><p>srcpadname</p></td>
 <td class="parameter_description"><p> the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
@@ -2457,8 +2461,8 @@
 <tr>
 <td class="parameter_name"><p>destpadname</p></td>
 <td class="parameter_description"><p> the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flags</p></td>
@@ -2470,7 +2474,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.48.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -2479,9 +2483,9 @@
 <a name="gst-element-unlink-pads"></a><h3>gst_element_unlink_pads ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_element_unlink_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
                          <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>);</pre>
 <p>Unlinks the two named pads of the source and destination elements.</p>
 <p>This is a convenience function for <a class="link" href="GstPad.html#gst-pad-unlink" title="gst_pad_unlink ()"><code class="function">gst_pad_unlink()</code></a>.</p>
 <div class="refsect3">
@@ -2520,17 +2524,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-link-pads-filtered"></a><h3>gst_element_link_pads_filtered ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_link_pads_filtered (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>);</pre>
 <p>Links the two named pads of the source and destination elements. Side effect
 is that if one of the pads has no parent, it becomes a child of the parent of
 the other element. If they have different parents, the link fails. If <em class="parameter"><code>caps</code></em>
 
-is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, makes sure that the caps of the link is a subset of <em class="parameter"><code>caps</code></em>
+is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, makes sure that the caps of the link is a subset of <em class="parameter"><code>caps</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.3.21.10.50.5"></a><h4>Parameters</h4>
@@ -2549,8 +2553,8 @@
 <tr>
 <td class="parameter_name"><p>srcpadname</p></td>
 <td class="parameter_description"><p> the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
@@ -2560,28 +2564,28 @@
 <tr>
 <td class="parameter_name"><p>destpadname</p></td>
 <td class="parameter_description"><p> the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>filter</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to filter the link,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for no filter. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for no filter. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.50.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-link-filtered"></a><h3>gst_element_link_filtered ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_link_filtered (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>,
                            <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>,
                            <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>);</pre>
@@ -2616,24 +2620,24 @@
 <tr>
 <td class="parameter_name"><p>filter</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to filter the link,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for no filter. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for no filter. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.51.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads could be linked, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-class-get-metadata"></a><h3>gst_element_class_get_metadata ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_element_class_get_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
 <p>Get metadata with <em class="parameter"><code>key</code></em>
  in <em class="parameter"><code>klass</code></em>
 .</p>
@@ -2954,8 +2958,8 @@
 </pre>
 <p>Returns a copy of the name of <em class="parameter"><code>elem</code></em>
 .
-Caller should <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the return value after usage.
-For a nameless element, this returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, which you can safely <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
+Caller should <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the return value after usage.
+For a nameless element, this returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, which you can safely <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
 as well.</p>
 <div class="refsect3">
 <a name="id-1.3.21.10.62.5"></a><h4>Parameters</h4>
@@ -2976,8 +2980,9 @@
 <div class="refsect3">
 <a name="id-1.3.21.10.62.6"></a><h4>Returns</h4>
 <p> the name of <em class="parameter"><code>elem</code></em>
-. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
+after usage. MT safe. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -3039,7 +3044,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-set-clock"></a><h3>gst_element_set_clock ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_set_clock (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                        <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>);</pre>
 <p>Sets the clock for the element. This function increases the
@@ -3069,7 +3074,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.65.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element accepted the clock. An element can refuse a
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element accepted the clock. An element can refuse a
 clock when it, for example, is not able to slave its internal clock to the
 <em class="parameter"><code>clock</code></em>
 or when it requires a specific clock to operate.</p>
@@ -3131,10 +3136,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.67.7"></a><h4>Returns</h4>
-<p> the GstClock provided by the element or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if no clock could be provided.  Unref after usage.</p>
+<p> the GstClock provided by the
+element or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no clock could be provided.  Unref after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -3225,14 +3230,14 @@
 <tr>
 <td class="parameter_name"><p>state</p></td>
 <td class="parameter_description"><p> a pointer to <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> to hold the state.
-Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+Can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>pending</p></td>
 <td class="parameter_description"><p> a pointer to <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> to hold the pending
-state. Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+state. Can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>timeout</p></td>
@@ -3256,9 +3261,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-set-locked-state"></a><h3>gst_element_set_locked_state ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_set_locked_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> locked_state</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> locked_state</code></em>);</pre>
 <p>Locks the state of an element, so state changes of the parent don't affect
 this element anymore.</p>
 <p>MT safe.</p>
@@ -3278,7 +3283,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>locked_state</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to lock the element's state</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to lock the element's state</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -3286,7 +3291,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.70.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the state was changed, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if bad parameters were given
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the state was changed, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if bad parameters were given
 or the elements state-locking needed no change.</p>
 <p></p>
 </div>
@@ -3294,7 +3299,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-is-locked-state"></a><h3>gst_element_is_locked_state ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_is_locked_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre>
 <p>Checks if the state of an element is locked.
 If the state of an element is locked, state changes of the parent don't
@@ -3319,7 +3324,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.71.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the element's state is locked.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the element's state is locked.</p>
 <p></p>
 </div>
 </div>
@@ -3430,7 +3435,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-state-get-name"></a><h3>gst_element_state_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_element_state_get_name (<em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> state</code></em>);</pre>
 <p>Gets a string representing the given state.</p>
 <div class="refsect3">
@@ -3457,7 +3462,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-state-change-return-get-name"></a><h3>gst_element_state_change_return_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_element_state_change_return_get_name
                                (<em class="parameter"><code><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> state_ret</code></em>);</pre>
 <p>Gets a string representing the given state change result.</p>
@@ -3486,10 +3491,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-sync-state-with-parent"></a><h3>gst_element_sync_state_with_parent ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_sync_state_with_parent (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre>
 <p>Tries to change the state of the element to the same as its parent.
-If this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the state of element is undefined.</p>
+If this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the state of element is undefined.</p>
 <div class="refsect3">
 <a name="id-1.3.21.10.77.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3507,7 +3512,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.77.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the element's state could be synced to the parent's state.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the element's state could be synced to the parent's state.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -3557,13 +3562,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_element_message_full (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                           <em class="parameter"><code><a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *text</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *text</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>);</pre>
 <p>Post an error, warning or info message on the bus from inside an element.</p>
 <p><em class="parameter"><code>type</code></em>
  must be of <a class="link" href="GstMessage.html#GST-MESSAGE-ERROR:CAPS"><span class="type">GST_MESSAGE_ERROR</span></a>, <a class="link" href="GstMessage.html#GST-MESSAGE-WARNING:CAPS"><span class="type">GST_MESSAGE_WARNING</span></a> or
@@ -3602,15 +3607,15 @@
 <td class="parameter_name"><p>text</p></td>
 <td class="parameter_description"><p> an allocated text string to be used
 as a replacement for the default message connected to code,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>debug</p></td>
 <td class="parameter_description"><p> an allocated debug message to be
 used as a replacement for the default debugging information,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>file</p></td>
@@ -3634,7 +3639,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-post-message"></a><h3>gst_element_post_message ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_post_message (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                           <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre>
 <p>Post a message on the element's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>. This function takes ownership of the
@@ -3664,8 +3669,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.80.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message was successfully posted. The function returns
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the element did not have a bus.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message was successfully posted. The function returns
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the element did not have a bus.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -3673,7 +3678,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-query"></a><h3>gst_element_query ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_query (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                    <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Performs a query on the given element.</p>
@@ -3705,7 +3710,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.81.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -3713,7 +3718,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-query-convert"></a><h3>gst_element_query_convert ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_query_convert (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                            <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
                            <em class="parameter"><code><span class="type">gint64</span> src_val</code></em>,
@@ -3762,14 +3767,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.82.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-query-position"></a><h3>gst_element_query_position ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_query_position (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                             <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                             <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>);</pre>
@@ -3803,22 +3808,22 @@
 <tr>
 <td class="parameter_name"><p>cur</p></td>
 <td class="parameter_description"><p> a location in which to store the current
-position, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+position, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.83.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-query-duration"></a><h3>gst_element_query_duration ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_query_duration (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                             <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                             <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>);</pre>
@@ -3850,27 +3855,27 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>duration</p></td>
-<td class="parameter_description"><p> A location in which to store the total duration, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> A location in which to store the total duration, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.84.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-send-event"></a><h3>gst_element_send_event ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_send_event (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                         <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
 <p>Sends an event to an element. If the element doesn't implement an
 event handler, the event will be pushed on a random linked sink pad for
-upstream events or a random linked source pad for downstream events.</p>
+downstream events or a random linked source pad for upstream events.</p>
 <p>This function takes ownership of the provided event so you should
 <a class="link" href="GstEvent.html#gst-event-ref" title="gst_event_ref ()"><code class="function">gst_event_ref()</code></a> it if you want to reuse the event after this call.</p>
 <p>MT safe.</p>
@@ -3898,7 +3903,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.85.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled. Events that trigger a preroll (such
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled. Events that trigger a preroll (such
 as flushing seeks and steps) will emit <a class="link" href="GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a>.</p>
 <p></p>
 </div>
@@ -3906,7 +3911,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-seek-simple"></a><h3>gst_element_seek_simple ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_seek_simple (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
                          <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                          <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> seek_flags</code></em>,
@@ -3917,11 +3922,11 @@
 rate or seeking relative to the last configured playback segment you should
 use <a class="link" href="GstElement.html#gst-element-seek" title="gst_element_seek ()"><code class="function">gst_element_seek()</code></a>.</p>
 <p>In a completely prerolled PAUSED or PLAYING pipeline, seeking is always
-guaranteed to return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on a seekable media type or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the media
+guaranteed to return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on a seekable media type or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the media
 type is certainly not seekable (such as a live stream).</p>
 <p>Some elements allow for seeking in the READY state, in this
 case they will store the seek event and execute it when they are put to
-PAUSED. If the element supports seek in READY, it will always return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when
+PAUSED. If the element supports seek in READY, it will always return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when
 it receives the event in the READY state.</p>
 <div class="refsect3">
 <a name="id-1.3.21.10.86.7"></a><h4>Parameters</h4>
@@ -3961,7 +3966,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.86.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the seek operation succeeded. Flushing seeks will trigger a
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the seek operation succeeded. Flushing seeks will trigger a
 preroll, which will emit <a class="link" href="GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a>.</p>
 <p></p>
 </div>
@@ -3969,9 +3974,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-seek"></a><h3>gst_element_seek ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_seek (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>,
-                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
                   <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                   <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> flags</code></em>,
                   <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> start_type</code></em>,
@@ -4036,7 +4041,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.21.10.87.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled. Flushing seeks will trigger a
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled. Flushing seeks will trigger a
 preroll, which will emit <a class="link" href="GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a>.</p>
 <p></p>
 </div>
@@ -4087,12 +4092,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> <em class="structfield"><code><a name="GstElement-struct.state-lock"></a>state_lock</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> <em class="structfield"><code><a name="GstElement-struct.state-lock"></a>state_lock</code></em>;</p></td>
 <td class="struct_member_description"><p>Used to serialize execution of <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GCond"><span class="type">GCond</span></a> <em class="structfield"><code><a name="GstElement-struct.state-cond"></a>state_cond</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GCond"><span class="type">GCond</span></a> <em class="structfield"><code><a name="GstElement-struct.state-cond"></a>state_cond</code></em>;</p></td>
 <td class="struct_member_description"><p>Used to signal completion of a state change</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -4160,7 +4165,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.pads"></a>pads</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.pads"></a>pads</code></em>;</p></td>
 <td class="struct_member_description"><p> list of pads. </p></td>
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Pad]</span></td>
 </tr>
@@ -4170,7 +4175,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.srcpads"></a>srcpads</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.srcpads"></a>srcpads</code></em>;</p></td>
 <td class="struct_member_description"><p> list of source pads. </p></td>
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Pad]</span></td>
 </tr>
@@ -4180,7 +4185,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.sinkpads"></a>sinkpads</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.sinkpads"></a>sinkpads</code></em>;</p></td>
 <td class="struct_member_description"><p> list of sink pads. </p></td>
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Pad]</span></td>
 </tr>
@@ -4259,7 +4264,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstElementClass.metadata"></a>metadata</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstElementClass.metadata"></a>metadata</code></em>;</p></td>
 <td class="struct_member_description"><p>metadata for elements of this class</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -4269,12 +4274,12 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElementClass.padtemplates"></a>padtemplates</code></em>;</p></td>
-<td class="struct_member_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a></p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElementClass.padtemplates"></a>padtemplates</code></em>;</p></td>
+<td class="struct_member_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstElementClass.numpadtemplates"></a>numpadtemplates</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstElementClass.numpadtemplates"></a>numpadtemplates</code></em>;</p></td>
 <td class="struct_member_description"><p>the number of padtemplates</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -4757,7 +4762,7 @@
 <a name="GstElement-no-more-pads"></a><h3>The <code class="literal">“no-more-pads”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *gstelement,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>This signals that the element will not generate more dynamic pads.
 Note that this signal will usually be emitted from the context of
 the streaming thread.</p>
@@ -4791,7 +4796,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *gstelement,
                <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>     *new_pad,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> has been added to the element. Note that this signal will
 usually be emitted from the context of the streaming thread. Also keep in
 mind that if you add new elements to the pipeline in the signal handler
@@ -4832,7 +4837,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *gstelement,
                <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>     *old_pad,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> has been removed from the element</p>
 <div class="refsect3">
 <a name="id-1.3.21.12.4.5"></a><h4>Parameters</h4>
@@ -4871,6 +4876,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstElementFactory.html b/docs/gst/html/GstElementFactory.html
index 1b2576e..b53765c 100644
--- a/docs/gst/html/GstElementFactory.html
+++ b/docs/gst/html/GstElementFactory.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstElement.html" title="GstElement">
 <link rel="next" href="gstreamer-GstGError.html" title="GstGError">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstElementFactory.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstElementFactory.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstElementFactory.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-register" title="gst_element_register ()">gst_element_register</a> <span class="c_punctuation">()</span>
@@ -58,14 +58,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-get-element-type" title="gst_element_factory_get_element_type ()">gst_element_factory_get_element_type</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-get-metadata" title="gst_element_factory_get_metadata ()">gst_element_factory_get_metadata</a> <span class="c_punctuation">()</span>
@@ -73,7 +73,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-get-metadata-keys" title="gst_element_factory_get_metadata_keys ()">gst_element_factory_get_metadata_keys</a> <span class="c_punctuation">()</span>
@@ -81,7 +81,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-get-num-pad-templates" title="gst_element_factory_get_num_pad_templates ()">gst_element_factory_get_num_pad_templates</a> <span class="c_punctuation">()</span>
@@ -96,7 +96,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-get-uri-protocols" title="gst_element_factory_get_uri_protocols ()">gst_element_factory_get_uri_protocols</a> <span class="c_punctuation">()</span>
@@ -104,7 +104,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-has-interface" title="gst_element_factory_has_interface ()">gst_element_factory_has_interface</a> <span class="c_punctuation">()</span>
@@ -128,7 +128,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-can-sink-all-caps" title="gst_element_factory_can_sink_all_caps ()">gst_element_factory_can_sink_all_caps</a> <span class="c_punctuation">()</span>
@@ -136,7 +136,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-can-src-all-caps" title="gst_element_factory_can_src_all_caps ()">gst_element_factory_can_src_all_caps</a> <span class="c_punctuation">()</span>
@@ -144,7 +144,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-can-sink-any-caps" title="gst_element_factory_can_sink_any_caps ()">gst_element_factory_can_sink_any_caps</a> <span class="c_punctuation">()</span>
@@ -152,14 +152,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-can-src-any-caps" title="gst_element_factory_can_src_any_caps ()">gst_element_factory_can_src_any_caps</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-get-static-pad-templates" title="gst_element_factory_get_static_pad_templates ()">gst_element_factory_get_static_pad_templates</a> <span class="c_punctuation">()</span>
@@ -251,7 +251,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-list-filter" title="gst_element_factory_list_filter ()">gst_element_factory_list_filter</a> <span class="c_punctuation">()</span>
@@ -259,7 +259,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-list-get-elements" title="gst_element_factory_list_get_elements ()">gst_element_factory_list_get_elements</a> <span class="c_punctuation">()</span>
@@ -267,7 +267,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstElementFactory.html#gst-element-factory-list-is-type" title="gst_element_factory_list_is_type ()">gst_element_factory_list_is_type</a> <span class="c_punctuation">()</span>
@@ -301,8 +301,8 @@
 </div>
 <div class="refsect1">
 <a name="GstElementFactory.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> <a class="link" href="GstPluginFeature.html" title="GstPluginFeature">GstPluginFeature</a>
                 <span class="lineart">╰──</span> GstElementFactory
@@ -348,9 +348,9 @@
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-Gst.html#gst-init">gst_init</a></span> <span class="gtkdoc opt">(&amp;</span>argc<span class="gtkdoc opt">, &amp;</span>argv<span class="gtkdoc opt">);</span>
 
 srcfactory <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#gst-element-factory-find">gst_element_factory_find</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;filesrc&quot;</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-return-if-fail">g_return_if_fail</a></span> <span class="gtkdoc opt">(</span>srcfactory <span class="gtkdoc opt">!=</span> NULL<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-return-if-fail">g_return_if_fail</a></span> <span class="gtkdoc opt">(</span>srcfactory <span class="gtkdoc opt">!=</span> NULL<span class="gtkdoc opt">);</span>
 src <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#gst-element-factory-create">gst_element_factory_create</a></span> <span class="gtkdoc opt">(</span>srcfactory<span class="gtkdoc opt">,</span> <span class="string">&quot;src&quot;</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-return-if-fail">g_return_if_fail</a></span> <span class="gtkdoc opt">(</span>src <span class="gtkdoc opt">!=</span> NULL<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-return-if-fail">g_return_if_fail</a></span> <span class="gtkdoc opt">(</span>src <span class="gtkdoc opt">!=</span> NULL<span class="gtkdoc opt">);</span>
 <span class="gtkdoc opt">...</span></pre></td>
       </tr>
     </tbody>
@@ -364,11 +364,11 @@
 <a name="GstElementFactory.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-element-register"></a><h3>gst_element_register ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_register (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
 <p>Create a new elementfactory capable of instantiating objects of the
 <em class="parameter"><code>type</code></em>
  and add the factory to <em class="parameter"><code>plugin</code></em>
@@ -384,9 +384,9 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>plugin</p></td>
-<td class="parameter_description"><p> <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> to register the element with, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for
+<td class="parameter_description"><p> <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> to register the element with, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for
 a static element. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
@@ -408,7 +408,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the registering succeeded, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the registering succeeded, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error</p>
 <p></p>
 </div>
 </div>
@@ -416,7 +416,7 @@
 <div class="refsect2">
 <a name="gst-element-factory-find"></a><h3>gst_element_factory_find ()</h3>
 <pre class="programlisting"><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="returnvalue">GstElementFactory</span></a> *
-gst_element_factory_find (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_element_factory_find (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Search for an element factory of the given name. Refs the returned
 element factory; caller is responsible for unreffing.</p>
 <div class="refsect3">
@@ -436,16 +436,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.3.6"></a><h4>Returns</h4>
-<p> <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> if found, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> if found,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-get-element-type"></a><h3>gst_element_factory_get_element_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 gst_element_factory_get_element_type (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>);</pre>
-<p>Get the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for elements managed by this factory. The type can
+<p>Get the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for elements managed by this factory. The type can
 only be retrieved if the element factory is loaded, which can be
 assured with <a class="link" href="GstPluginFeature.html#gst-plugin-feature-load" title="gst_plugin_feature_load ()"><code class="function">gst_plugin_feature_load()</code></a>.</p>
 <div class="refsect3">
@@ -458,14 +459,14 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>factory</p></td>
-<td class="parameter_description"><p>factory to get managed <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> from</p></td>
+<td class="parameter_description"><p>factory to get managed <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> from</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.4.6"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for elements managed by this factory or 0 if
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for elements managed by this factory or 0 if
 the factory is not loaded.</p>
 <p></p>
 </div>
@@ -473,9 +474,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-get-metadata"></a><h3>gst_element_factory_get_metadata ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_element_factory_get_metadata (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
 <p>Get the metadata on <em class="parameter"><code>factory</code></em>
  with <em class="parameter"><code>key</code></em>
 .</p>
@@ -505,16 +506,16 @@
 <a name="id-1.3.22.8.5.6"></a><h4>Returns</h4>
 <p> the metadata with <em class="parameter"><code>key</code></em>
 on <em class="parameter"><code>factory</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there was no
-metadata with the given <em class="parameter"><code>key</code></em>
-.</p>
-<p></p>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when there was no metadata with the given <em class="parameter"><code>key</code></em>
+. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-get-metadata-keys"></a><h3>gst_element_factory_get_metadata_keys ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 gst_element_factory_get_metadata_keys (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>);</pre>
 <p>Get the available keys for the metadata on <em class="parameter"><code>factory</code></em>
 .</p>
@@ -535,15 +536,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.6.6"></a><h4>Returns</h4>
-<p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of key strings, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no
-metadata. Free with <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></p>
+<p>a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of key strings, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no
+metadata. Free with <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> when no longer needed. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-get-num-pad-templates"></a><h3>gst_element_factory_get_num_pad_templates ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_element_factory_get_num_pad_templates
                                (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>);</pre>
 <p>Gets the number of pad_templates in this factory.</p>
@@ -598,11 +599,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-get-uri-protocols"></a><h3>gst_element_factory_get_uri_protocols ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
 gst_element_factory_get_uri_protocols (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>);</pre>
-<p>Gets a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of protocols this element supports or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
+<p>Gets a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of protocols this element supports or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
 no protocols are supported. You may not change the contents of the returned
-array, as it is still owned by the element factory. Use <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strdupv"><code class="function">g_strdupv()</code></a> to
+array, as it is still owned by the element factory. Use <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strdupv"><code class="function">g_strdupv()</code></a> to
 make a copy of the protocol string array if you need to.</p>
 <div class="refsect3">
 <a name="id-1.3.22.8.9.5"></a><h4>Parameters</h4>
@@ -622,16 +623,16 @@
 <div class="refsect3">
 <a name="id-1.3.22.8.9.6"></a><h4>Returns</h4>
 <p> the supported protocols
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-has-interface"></a><h3>gst_element_factory_has_interface ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_factory_has_interface (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
-                                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interfacename</code></em>);</pre>
+                                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interfacename</code></em>);</pre>
 <p>Check if <em class="parameter"><code>factory</code></em>
  implements the interface with name <em class="parameter"><code>interfacename</code></em>
 .</p>
@@ -659,7 +660,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.10.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>factory</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>factory</code></em>
 implement the interface.</p>
 <p></p>
 </div>
@@ -669,7 +670,7 @@
 <a name="gst-element-factory-create"></a><h3>gst_element_factory_create ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
 gst_element_factory_create (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Create a new element of the type defined by the given elementfactory.
 It will be given the name supplied, since all elements require a name as
 their first argument.</p>
@@ -689,28 +690,28 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> name of new element, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to automatically create
+<td class="parameter_description"><p> name of new element, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to automatically create
 a unique name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.11.6"></a><h4>Returns</h4>
-<p> new <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the element couldn't
-be created. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
+<p> new <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+if the element couldn't be created. </p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-make"></a><h3>gst_element_factory_make ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_element_factory_make (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *factoryname</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_element_factory_make (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *factoryname</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Create a new element of the type defined by the given element factory.
-If name is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the element will receive a guaranteed unique name,
+If name is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the element will receive a guaranteed unique name,
 consisting of the element factory name and a number.
 If name is given, it will be given the name supplied.</p>
 <div class="refsect3">
@@ -729,23 +730,24 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> name of new element, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to automatically create
+<td class="parameter_description"><p> name of new element, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to automatically create
 a unique name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.12.6"></a><h4>Returns</h4>
-<p> new <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if unable to create element. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
+<p> new <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+if unable to create element. </p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-can-sink-all-caps"></a><h3>gst_element_factory_can_sink_all_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_factory_can_sink_all_caps (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
                                        <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Checks if the factory can sink all possible capabilities.</p>
@@ -773,14 +775,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps are fully compatible.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps are fully compatible.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-can-src-all-caps"></a><h3>gst_element_factory_can_src_all_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_factory_can_src_all_caps (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
                                       <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Checks if the factory can src all possible capabilities.</p>
@@ -808,14 +810,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps are fully compatible.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps are fully compatible.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-can-sink-any-caps"></a><h3>gst_element_factory_can_sink_any_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_factory_can_sink_any_caps (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
                                        <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Checks if the factory can sink any possible capability.</p>
@@ -843,14 +845,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps have a common subset.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps have a common subset.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-can-src-any-caps"></a><h3>gst_element_factory_can_src_any_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_factory_can_src_any_caps (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
                                       <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Checks if the factory can src any possible capability.</p>
@@ -878,17 +880,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps have a common subset.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps have a common subset.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-get-static-pad-templates"></a><h3>gst_element_factory_get_static_pad_templates ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_element_factory_get_static_pad_templates
                                (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>);</pre>
-<p>Gets the <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPadTemplate.html#GstStaticPadTemplate" title="struct GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> for this factory.</p>
+<p>Gets the <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPadTemplate.html#GstStaticPadTemplate" title="struct GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> for this factory.</p>
 <div class="refsect3">
 <a name="id-1.3.22.8.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1058,17 +1060,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-list-filter"></a><h3>gst_element_factory_list_filter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-gst_element_factory_list_filter (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>,
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_element_factory_list_filter (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>,
                                  <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPad.html#GstPadDirection" title="enum GstPadDirection"><span class="type">GstPadDirection</span></a> direction</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> subsetonly</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> subsetonly</code></em>);</pre>
 <p>Filter out all the elementfactories in <em class="parameter"><code>list</code></em>
  that can handle <em class="parameter"><code>caps</code></em>
  in
 the given direction.</p>
 <p>If <em class="parameter"><code>subsetonly</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, then only the elements whose pads templates
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, then only the elements whose pads templates
 are a complete superset of <em class="parameter"><code>caps</code></em>
  will be returned. Else any element
 whose pad templates caps can intersect with <em class="parameter"><code>caps</code></em>
@@ -1084,7 +1086,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>list</p></td>
-<td class="parameter_description"><p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<td class="parameter_description"><p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> to filter. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.ElementFactory]</span></td>
 </tr>
@@ -1108,7 +1110,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.39.7"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> elements that match the given requisites.
 Use <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><span class="type">gst_plugin_feature_list_free</span></a> after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.ElementFactory]</span></p>
@@ -1117,7 +1119,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-list-get-elements"></a><h3>gst_element_factory_list_get_elements ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_element_factory_list_get_elements (<em class="parameter"><code><a class="link" href="GstElementFactory.html#GstElementFactoryListType" title="GstElementFactoryListType"><span class="type">GstElementFactoryListType</span></a> type</code></em>,
                                        <em class="parameter"><code><a class="link" href="GstPluginFeature.html#GstRank" title="enum GstRank"><span class="type">GstRank</span></a> minrank</code></em>);</pre>
 <p>Get a list of factories that match the given <em class="parameter"><code>type</code></em>
@@ -1149,7 +1151,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.40.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> elements. Use <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a> after
 usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.ElementFactory]</span></p>
@@ -1158,7 +1160,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-element-factory-list-is-type"></a><h3>gst_element_factory_list_is_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_element_factory_list_is_type (<em class="parameter"><code><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *factory</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstElementFactory.html#GstElementFactoryListType" title="GstElementFactoryListType"><span class="type">GstElementFactoryListType</span></a> type</code></em>);</pre>
 <p>Check if <em class="parameter"><code>factory</code></em>
@@ -1187,7 +1189,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.22.8.41.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>factory</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>factory</code></em>
 is of <em class="parameter"><code>type</code></em>
 .</p>
 <p></p>
@@ -1223,6 +1225,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstEvent.html b/docs/gst/html/GstEvent.html
index caaead4..4abb08f 100644
--- a/docs/gst/html/GstEvent.html
+++ b/docs/gst/html/GstEvent.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstGError.html" title="GstGError">
 <link rel="next" href="gstreamer-GstFormat.html" title="GstFormat">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstEvent.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstEvent.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstEvent.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -104,7 +104,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstEvent.html#gst-event-type-get-name" title="gst_event_type_get_name ()">gst_event_type_get_name</a> <span class="c_punctuation">()</span>
@@ -112,7 +112,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstEvent.html#gst-event-type-to-quark" title="gst_event_type_to_quark ()">gst_event_type_to_quark</a> <span class="c_punctuation">()</span>
@@ -136,7 +136,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstEvent.html#gst-event-replace" title="gst_event_replace ()">gst_event_replace</a> <span class="c_punctuation">()</span>
@@ -160,7 +160,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstEvent.html#gst-event-take" title="gst_event_take ()">gst_event_take</a> <span class="c_punctuation">()</span>
@@ -203,7 +203,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstEvent.html#gst-event-has-name" title="gst_event_has_name ()">gst_event_has_name</a> <span class="c_punctuation">()</span>
@@ -331,7 +331,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstEvent.html#gst-event-parse-group-id" title="gst_event_parse_group_id ()">gst_event_parse_group_id</a> <span class="c_punctuation">()</span>
@@ -601,7 +601,7 @@
 </div>
 <div class="refsect1">
 <a name="GstEvent.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstEvent
 </pre>
 </div>
@@ -620,7 +620,7 @@
 elements will use <a class="link" href="GstPad.html#gst-pad-send-event" title="gst_pad_send_event ()"><code class="function">gst_pad_send_event()</code></a> or <a class="link" href="GstPad.html#gst-pad-push-event" title="gst_pad_push_event ()"><code class="function">gst_pad_push_event()</code></a>.
 The event should be unreffed with <a class="link" href="GstEvent.html#gst-event-unref" title="gst_event_unref ()"><code class="function">gst_event_unref()</code></a> if it has not been sent.</p>
 <p>Events that have been received can be parsed with their respective
-gst_event_parse_*() functions. It is valid to pass <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for unwanted details.</p>
+gst_event_parse_*() functions. It is valid to pass <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for unwanted details.</p>
 <p>Events are passed between elements in parallel to the data stream. Some events
 are serialized with buffers, others are not. Some events only travel downstream,
 others only upstream. Some events can travel both upstream and downstream.</p>
@@ -663,7 +663,7 @@
 <span class="gtkdoc opt">...</span>
 result <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-send-event">gst_element_send_event</a></span> <span class="gtkdoc opt">(</span>pipeline<span class="gtkdoc opt">,</span> event<span class="gtkdoc opt">);</span>
 <span class="keyword">if</span> <span class="gtkdoc opt">(!</span>result<span class="gtkdoc opt">)</span>
-  <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Message-Logging.html#g-warning">g_warning</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;seek failed&quot;</span><span class="gtkdoc opt">);</span>
+  <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Message-Logging.html#g-warning">g_warning</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;seek failed&quot;</span><span class="gtkdoc opt">);</span>
 <span class="gtkdoc opt">...</span></pre></td>
       </tr>
     </tbody>
@@ -911,7 +911,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-type-get-name"></a><h3>gst_event_type_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_event_type_get_name (<em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> type</code></em>);</pre>
 <p>Get a printable name for the given event type. Do not modify or free.</p>
 <div class="refsect3">
@@ -938,7 +938,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-type-to-quark"></a><h3>gst_event_type_to_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_event_type_to_quark (<em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> type</code></em>);</pre>
 <p>Get the unique quark for the given event type.</p>
 <div class="refsect3">
@@ -1015,7 +1015,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-replace"></a><h3>gst_event_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_event_replace (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **old_event</code></em>,
                    <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *new_event</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to point to a different <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. The
@@ -1024,7 +1024,7 @@
 event is unreffed, the new one is reffed).</p>
 <p>Either <em class="parameter"><code>new_event</code></em>
  or the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> pointed to by <em class="parameter"><code>old_event</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.24.8.16.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1036,23 +1036,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>old_event</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>
-to be replaced. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a
+pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to be replaced. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>new_event</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> that will
 replace the event pointed to by <em class="parameter"><code>old_event</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.24.8.16.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_event</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_event</code></em>
 was different from <em class="parameter"><code>old_event</code></em>
 </p>
 <p></p>
@@ -1091,7 +1091,7 @@
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
 gst_event_steal (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **old_event</code></em>);</pre>
 <p>Atomically replace the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> pointed to by <em class="parameter"><code>old_event</code></em>
- with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and
+ with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and
 return the original event.</p>
 <div class="refsect3">
 <a name="id-1.3.24.8.18.5"></a><h4>Parameters</h4>
@@ -1103,9 +1103,9 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>old_event</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>
-to be stolen. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a
+pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to be stolen. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -1119,7 +1119,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-take"></a><h3>gst_event_take ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_event_take (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **old_event</code></em>,
                 <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *new_event</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to point to a different <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. This
@@ -1128,7 +1128,7 @@
 .</p>
 <p>Either <em class="parameter"><code>new_event</code></em>
  or the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> pointed to by <em class="parameter"><code>old_event</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.24.8.19.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1140,23 +1140,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>old_event</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>
-to be stolen. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a
+pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to be stolen. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>new_event</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> that will
 replace the event pointed to by <em class="parameter"><code>old_event</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.24.8.19.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_event</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_event</code></em>
 was different from <em class="parameter"><code>old_event</code></em>
 </p>
 <p></p>
@@ -1244,7 +1244,7 @@
 it and that the pointer becomes invalid when you free the event.
 This function checks if <em class="parameter"><code>event</code></em>
 is writable and will never return
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -1325,9 +1325,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-has-name"></a><h3>gst_event_has_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_event_has_name (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>event</code></em>
  has the given <em class="parameter"><code>name</code></em>
 . This function is usually used to
@@ -1356,7 +1356,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.24.8.25.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em>
 matches the name of the event structure.</p>
 <p></p>
 </div>
@@ -1511,7 +1511,7 @@
 <a class="link" href="GstPad.html#GST-FLOW-FLUSHING:CAPS"><span class="type">GST_FLOW_FLUSHING</span></a> when used for data flow with <a class="link" href="GstPad.html#gst-pad-push" title="gst_pad_push ()"><code class="function">gst_pad_push()</code></a>,
 <a class="link" href="GstPad.html#gst-pad-chain" title="gst_pad_chain ()"><code class="function">gst_pad_chain()</code></a>, <a class="link" href="GstPad.html#gst-pad-get-range" title="gst_pad_get_range ()"><code class="function">gst_pad_get_range()</code></a> and <a class="link" href="GstPad.html#gst-pad-pull-range" title="gst_pad_pull_range ()"><code class="function">gst_pad_pull_range()</code></a>.
 Any event (except a <a class="link" href="GstEvent.html#GST-EVENT-FLUSH-STOP:CAPS"><span class="type">GST_EVENT_FLUSH_STOP</span></a>) received
-on a flushing pad will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> immediately.</p>
+on a flushing pad will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> immediately.</p>
 <p>Elements should unlock any blocking functions and exit their streaming
 functions as fast as possible when this event is received.</p>
 <p>This event is typically generated after a seek to flush out all queued data
@@ -1526,7 +1526,7 @@
 <div class="refsect2">
 <a name="gst-event-new-flush-stop"></a><h3>gst_event_new_flush_stop ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
-gst_event_new_flush_stop (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> reset_time</code></em>);</pre>
+gst_event_new_flush_stop (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> reset_time</code></em>);</pre>
 <p>Allocate a new flush stop event. The flush stop event can be sent
 upstream and downstream and travels serialized with the dataflow.
 It is typically sent after sending a FLUSH_START event to make the
@@ -1561,7 +1561,7 @@
 <a name="gst-event-parse-flush-stop"></a><h3>gst_event_parse_flush_stop ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_parse_flush_stop (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *reset_time</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *reset_time</code></em>);</pre>
 <p>Parse the FLUSH_STOP event and retrieve the <em class="parameter"><code>reset_time</code></em>
  member.</p>
 <div class="refsect3">
@@ -1672,14 +1672,14 @@
 <tr>
 <td class="parameter_name"><p>timestamp</p></td>
 <td class="parameter_description"><p> location where to store the
-start time (pts) of the gap, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+start time (pts) of the gap, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>duration</p></td>
 <td class="parameter_description"><p> location where to store the duration of
-the gap, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+the gap, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1689,13 +1689,13 @@
 <div class="refsect2">
 <a name="gst-event-new-stream-start"></a><h3>gst_event_new_stream_start ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
-gst_event_new_stream_start (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre>
+gst_event_new_stream_start (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre>
 <p>Create a new STREAM_START event. The stream start event can only
 travel downstream synchronized with the buffer flow. It is expected
 to be the first event that is sent for a new stream.</p>
 <p>Source elements, demuxers and other elements that create new streams
 are supposed to send this event as the first event of a new stream. It
-should not be send after a flushing seek or in similar situations
+should not be sent after a flushing seek or in similar situations
 and is used to mark the beginning of a new logical stream. Elements
 combining multiple streams must ensure that this event is only forwarded
 downstream once and not for every single input stream.</p>
@@ -1733,7 +1733,7 @@
 <a name="gst-event-parse-stream-start"></a><h3>gst_event_parse_stream_start ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_parse_stream_start (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **stream_id</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **stream_id</code></em>);</pre>
 <p>Parse a stream-id <em class="parameter"><code>event</code></em>
  and store the result in the given <em class="parameter"><code>stream_id</code></em>
 
@@ -1830,7 +1830,7 @@
 <a name="gst-event-set-group-id"></a><h3>gst_event_set_group_id ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_set_group_id (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> group_id</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> group_id</code></em>);</pre>
 <p>All streams that have the same group id are supposed to be played
 together, i.e. all streams inside a container file should have the
 same group id but different stream ids. The group id should change
@@ -1864,9 +1864,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-parse-group-id"></a><h3>gst_event_parse_group_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_event_parse_group_id (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *group_id</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *group_id</code></em>);</pre>
 <div class="refsect3">
 <a name="id-1.3.24.8.41.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1891,8 +1891,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.24.8.41.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a group id was set on the event and could be parsed,
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a group id was set on the event and could be parsed,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -1906,7 +1906,7 @@
 . The segment event can only travel
 downstream synchronized with the buffer flow and contains timing information
 and playback properties for the buffers that will follow.</p>
-<p>The newsegment event marks the range of buffers to be processed. All
+<p>The segment event marks the range of buffers to be processed. All
 data not within the segment range is not to be processed. This can be
 used intelligently by plugins to apply more efficient methods of skipping
 unneeded data. The valid range is expressed with the <em class="parameter"><code>start</code></em>
@@ -1938,11 +1938,11 @@
 requested for playback. For example, if an element has an input segment
 with intended playback <em class="parameter"><code>rate</code></em>
  of 2.0 and applied_rate of 1.0, it can adjust
-incoming timestamps and buffer content by half and output a newsegment event
+incoming timestamps and buffer content by half and output a segment event
 with <em class="parameter"><code>rate</code></em>
  of 1.0 and <em class="parameter"><code>applied_rate</code></em>
  of 2.0</p>
-<p>After a newsegment event, the buffer stream time is calculated with:</p>
+<p>After a segment event, the buffer stream time is calculated with:</p>
 <p>  time + (TIMESTAMP(buf) - start) * ABS (rate * applied_rate)</p>
 <div class="refsect3">
 <a name="id-1.3.24.8.42.11"></a><h4>Parameters</h4>
@@ -2111,7 +2111,7 @@
 gst_event_new_buffer_size (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                            <em class="parameter"><code><span class="type">gint64</span> minsize</code></em>,
                            <em class="parameter"><code><span class="type">gint64</span> maxsize</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> async</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> async</code></em>);</pre>
 <p>Create a new buffersize event. The event is sent downstream and notifies
 elements that they should provide a buffer of the specified dimensions.</p>
 <p>When the <em class="parameter"><code>async</code></em>
@@ -2162,7 +2162,7 @@
                              <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
                              <em class="parameter"><code><span class="type">gint64</span> *minsize</code></em>,
                              <em class="parameter"><code><span class="type">gint64</span> *maxsize</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *async</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *async</code></em>);</pre>
 <p>Get the format, minsize, maxsize and async-flag in the buffersize event.</p>
 <div class="refsect3">
 <a name="id-1.3.24.8.48.5"></a><h4>Parameters</h4>
@@ -2207,7 +2207,7 @@
 <a name="gst-event-new-qos"></a><h3>gst_event_new_qos ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
 gst_event_new_qos (<em class="parameter"><code><a class="link" href="GstEvent.html#GstQOSType" title="enum GstQOSType"><span class="type">GstQOSType</span></a> type</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>,
                    <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTimeDiff" title="GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> diff</code></em>,
                    <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Allocate a new qos event with the given values.
@@ -2306,7 +2306,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_parse_qos (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
                      <em class="parameter"><code><a class="link" href="GstEvent.html#GstQOSType" title="enum GstQOSType"><span class="type">GstQOSType</span></a> *type</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *proportion</code></em>,
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *proportion</code></em>,
                      <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTimeDiff" title="GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *diff</code></em>,
                      <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *timestamp</code></em>);</pre>
 <p>Get the type, proportion, diff and timestamp in the qos event. See
@@ -2355,7 +2355,7 @@
 <div class="refsect2">
 <a name="gst-event-new-seek"></a><h3>gst_event_new_seek ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
-gst_event_new_seek (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+gst_event_new_seek (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
                     <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                     <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> flags</code></em>,
                     <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> start_type</code></em>,
@@ -2454,7 +2454,7 @@
 <a name="gst-event-parse-seek"></a><h3>gst_event_parse_seek ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_parse_seek (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
                       <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> *flags</code></em>,
                       <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> *start_type</code></em>,
@@ -2614,9 +2614,9 @@
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
 gst_event_new_step (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                     <em class="parameter"><code><span class="type">guint64</span> amount</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flush</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> intermediate</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flush</code></em>,
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> intermediate</code></em>);</pre>
 <p>Create a new step event. The purpose of the step event is to instruct a sink
 to skip <em class="parameter"><code>amount</code></em>
  (expressed in <em class="parameter"><code>format</code></em>
@@ -2682,9 +2682,9 @@
 gst_event_parse_step (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
                       <em class="parameter"><code><span class="type">guint64</span> *amount</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *flush</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *intermediate</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *flush</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *intermediate</code></em>);</pre>
 <p>Parse the step event.</p>
 <div class="refsect3">
 <a name="id-1.3.24.8.57.5"></a><h4>Parameters</h4>
@@ -2703,28 +2703,28 @@
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> a pointer to store the format in. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>amount</p></td>
 <td class="parameter_description"><p> a pointer to store the amount in. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>rate</p></td>
 <td class="parameter_description"><p> a pointer to store the rate in. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flush</p></td>
 <td class="parameter_description"><p> a pointer to store the flush boolean in. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>intermediate</p></td>
 <td class="parameter_description"><p> a pointer to store the intermediate
 boolean in. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2734,7 +2734,7 @@
 <div class="refsect2">
 <a name="gst-event-new-sink-message"></a><h3>gst_event_new_sink_message ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
-gst_event_new_sink_message (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_event_new_sink_message (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                             <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *msg</code></em>);</pre>
 <p>Create a new sink-message event. The purpose of the sink-message event is
 to instruct a sink to post the message contained in the event synchronized
@@ -2883,7 +2883,7 @@
 <a name="gst-event-new-toc"></a><h3>gst_event_new_toc ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
 gst_event_new_toc (<em class="parameter"><code><a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> *toc</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> updated</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> updated</code></em>);</pre>
 <p>Generate a TOC event from the given <em class="parameter"><code>toc</code></em>
 . The purpose of the TOC event is to
 inform elements that some kind of the TOC was found.</p>
@@ -2922,7 +2922,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_parse_toc (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
                      <em class="parameter"><code><a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> **toc</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *updated</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *updated</code></em>);</pre>
 <p>Parse a TOC <em class="parameter"><code>event</code></em>
  and store the results in the given <em class="parameter"><code>toc</code></em>
  and <em class="parameter"><code>updated</code></em>
@@ -2959,7 +2959,7 @@
 <div class="refsect2">
 <a name="gst-event-new-toc-select"></a><h3>gst_event_new_toc_select ()</h3>
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
-gst_event_new_toc_select (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uid</code></em>);</pre>
+gst_event_new_toc_select (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uid</code></em>);</pre>
 <p>Generate a TOC select event with the given <em class="parameter"><code>uid</code></em>
 . The purpose of the
 TOC select event is to start playback based on the TOC's entry with the
@@ -2991,7 +2991,7 @@
 <a name="gst-event-parse-toc-select"></a><h3>gst_event_parse_toc_select ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_event_parse_toc_select (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uid</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uid</code></em>);</pre>
 <p>Parse a TOC select <em class="parameter"><code>event</code></em>
  and store the results in the given <em class="parameter"><code>uid</code></em>
  location.</p>
@@ -3012,7 +3012,7 @@
 <tr>
 <td class="parameter_name"><p>uid</p></td>
 <td class="parameter_description"><p> storage for the selection UID. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3078,13 +3078,13 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
-<td class="parameter_description"><p> Result location for the format, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the format, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>position</p></td>
-<td class="parameter_description"><p> Result location for the position, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the position, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3494,9 +3494,9 @@
 <tr>
 <td class="enum_member_name"><p><a name="GST-QOS-TYPE-OVERFLOW:CAPS"></a>GST_QOS_TYPE_OVERFLOW</p></td>
 <td class="enum_member_description">
-<p>The QoS event type that is produced when downstream
+<p>The QoS event type that is produced when upstream
    elements are producing data too quickly and the element can't keep up
-   processing the data. Upstream should reduce their processing rate. This
+   processing the data. Upstream should reduce their production rate. This
    type is also used when buffers arrive early or in time.</p>
 </td>
 <td class="enum_member_annotations"> </td>
@@ -3504,9 +3504,9 @@
 <tr>
 <td class="enum_member_name"><p><a name="GST-QOS-TYPE-UNDERFLOW:CAPS"></a>GST_QOS_TYPE_UNDERFLOW</p></td>
 <td class="enum_member_description">
-<p>The QoS event type that is produced when downstream
-   elements are producing data too slowly and need to speed up their processing
-   rate.</p>
+<p>The QoS event type that is produced when upstream
+   elements are producing data too slowly and need to speed up their
+   production rate.</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -3514,7 +3514,7 @@
 <td class="enum_member_name"><p><a name="GST-QOS-TYPE-THROTTLE:CAPS"></a>GST_QOS_TYPE_THROTTLE</p></td>
 <td class="enum_member_description">
 <p>The QoS event type that is produced when the
-   application enabled throttling to limit the datarate.</p>
+   application enabled throttling to limit the data rate.</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -3578,10 +3578,16 @@
 continue playback. With this seek method it is possible to perform seamless
 looping or simple linear editing.</p>
 <p>When doing fast forward (rate &gt; 1.0) or fast reverse (rate &lt; -1.0) trickmode
-playback, the <em class="parameter"><code>GST_SEEK_FLAG_SKIP</code></em>
+playback, the <em class="parameter"><code>GST_SEEK_FLAG_TRICKMODE</code></em>
  flag can be used to instruct decoders
 and demuxers to adjust the playback rate by skipping frames. This can improve
 performance and decrease CPU usage because not all frames need to be decoded.</p>
+<p>Beyond that, the <em class="parameter"><code>GST_SEEK_FLAG_TRICKMODE_KEY_UNITS</code></em>
+ flag can be used to
+request that decoders skip all frames except key units, and
+<em class="parameter"><code>GST_SEEK_FLAG_TRICKMODE_NO_AUDIO</code></em>
+ flags can be used to request that audio
+decoders do no decoding at all, and simple output silence.</p>
 <p>The <em class="parameter"><code>GST_SEEK_FLAG_SNAP_BEFORE</code></em>
  flag can be used to snap to the previous
 relevant location, and the <em class="parameter"><code>GST_SEEK_FLAG_SNAP_AFTER</code></em>
@@ -3597,7 +3603,7 @@
 details on the meaning of these flags and the behaviour expected of
 elements that handle them.</p>
 <div class="refsect3">
-<a name="id-1.3.24.9.9.10"></a><h4>Members</h4>
+<a name="id-1.3.24.9.9.11"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -3643,11 +3649,20 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-SEEK-FLAG-SKIP:CAPS"></a>GST_SEEK_FLAG_SKIP</p></td>
+<td class="enum_member_name"><p><a name="GST-SEEK-FLAG-TRICKMODE:CAPS"></a>GST_SEEK_FLAG_TRICKMODE</p></td>
 <td class="enum_member_description">
 <p>when doing fast forward or fast reverse playback, allow
                     elements to skip frames instead of generating all
-                    frames.</p>
+                    frames. (Since: 1.6)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-SEEK-FLAG-SKIP:CAPS"></a>GST_SEEK_FLAG_SKIP</p></td>
+<td class="enum_member_description">
+<p>Deprecated backward compatibility flag, replaced
+                    by <em class="parameter"><code>GST_SEEK_FLAG_TRICKMODE</code></em>
+</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -3679,6 +3694,25 @@
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-SEEK-FLAG-TRICKMODE-KEY-UNITS:CAPS"></a>GST_SEEK_FLAG_TRICKMODE_KEY_UNITS</p></td>
+<td class="enum_member_description">
+<p>when doing fast forward or fast reverse
+                    playback, request that elements only decode keyframes
+                    and skip all other content, for formats that have
+                    keyframes. (Since: 1.6)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-SEEK-FLAG-TRICKMODE-NO-AUDIO:CAPS"></a>GST_SEEK_FLAG_TRICKMODE_NO_AUDIO</p></td>
+<td class="enum_member_description">
+<p>when doing fast forward or fast reverse
+                    playback, request that audio decoder elements skip
+                    decoding and output only gap events or silence. (Since: 1.6)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -3691,6 +3725,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstGhostPad.html b/docs/gst/html/GstGhostPad.html
index 3ba1110..f4c8054 100644
--- a/docs/gst/html/GstGhostPad.html
+++ b/docs/gst/html/GstGhostPad.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstFormat.html" title="GstFormat">
 <link rel="next" href="gstreamer-GstIterator.html" title="GstIterator">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstGhostPad.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstGhostPad.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstGhostPad.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -74,7 +74,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstGhostPad.html#gst-ghost-pad-set-target" title="gst_ghost_pad_set_target ()">gst_ghost_pad_set_target</a> <span class="c_punctuation">()</span>
@@ -90,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstGhostPad.html#gst-ghost-pad-construct" title="gst_ghost_pad_construct ()">gst_ghost_pad_construct</a> <span class="c_punctuation">()</span>
@@ -98,7 +98,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstGhostPad.html#gst-ghost-pad-activate-mode-default" title="gst_ghost_pad_activate_mode_default ()">gst_ghost_pad_activate_mode_default</a> <span class="c_punctuation">()</span>
@@ -106,7 +106,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstGhostPad.html#gst-ghost-pad-internal-activate-mode-default" title="gst_ghost_pad_internal_activate_mode_default ()">gst_ghost_pad_internal_activate_mode_default</a> <span class="c_punctuation">()</span>
@@ -176,8 +176,8 @@
 </div>
 <div class="refsect1">
 <a name="GstGhostPad.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
                 <span class="lineart">├──</span> <a class="link" href="GstGhostPad.html#GstProxyPad">GstProxyPad</a>
@@ -210,7 +210,7 @@
 <div class="refsect2">
 <a name="gst-ghost-pad-new"></a><h3>gst_ghost_pad_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
-gst_ghost_pad_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_ghost_pad_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                    <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *target</code></em>);</pre>
 <p>Create a new ghostpad with <em class="parameter"><code>target</code></em>
  as the target. The direction will be taken
@@ -228,8 +228,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> the name of the new pad, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the name of the new pad, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>target</p></td>
@@ -241,15 +241,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.2.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error. </p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-ghost-pad-new-no-target"></a><h3>gst_ghost_pad_new_no_target ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
-gst_ghost_pad_new_no_target (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_ghost_pad_new_no_target (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                              <em class="parameter"><code><a class="link" href="GstPad.html#GstPadDirection" title="enum GstPadDirection"><span class="type">GstPadDirection</span></a> dir</code></em>);</pre>
 <p>Create a new ghostpad without a target with the given direction.
 A target can be set on the ghostpad later with the
@@ -266,8 +267,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> the name of the new pad, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the name of the new pad, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dir</p></td>
@@ -279,15 +280,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.3.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-ghost-pad-new-from-template"></a><h3>gst_ghost_pad_new_from_template ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
-gst_ghost_pad_new_from_template (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_ghost_pad_new_from_template (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *target</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>);</pre>
 <p>Create a new ghostpad with <em class="parameter"><code>target</code></em>
@@ -306,8 +308,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> the name of the new pad, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the name of the new pad, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>target</p></td>
@@ -324,8 +326,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.4.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -333,7 +336,7 @@
 <a name="gst-ghost-pad-new-no-target-from-template"></a><h3>gst_ghost_pad_new_no_target_from_template ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
 gst_ghost_pad_new_no_target_from_template
-                               (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                               (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>);</pre>
 <p>Create a new ghostpad based on <em class="parameter"><code>templ</code></em>
 , without setting a target. The
@@ -350,8 +353,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> the name of the new pad, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the name of the new pad, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to assign a default name. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>templ</p></td>
@@ -363,21 +366,22 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.5.6"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-ghost-pad-set-target"></a><h3>gst_ghost_pad_set_target ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_ghost_pad_set_target (<em class="parameter"><code><a class="link" href="GstGhostPad.html" title="GstGhostPad"><span class="type">GstGhostPad</span></a> *gpad</code></em>,
                           <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *newtarget</code></em>);</pre>
 <p>Set the new target of the ghostpad <em class="parameter"><code>gpad</code></em>
 . Any existing target
 is unlinked and links to the new target are established. if <em class="parameter"><code>newtarget</code></em>
  is
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> the target will be cleared.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> the target will be cleared.</p>
 <div class="refsect3">
 <a name="id-1.3.26.9.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -395,15 +399,15 @@
 <tr>
 <td class="parameter_name"><p>newtarget</p></td>
 <td class="parameter_description"><p> the new pad target. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the new target could be set. This function
-can return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the internal pads could not be linked. </p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the new target could be set. This function
+can return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the internal pads could not be linked. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -431,15 +435,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.7.6"></a><h4>Returns</h4>
-<p> the target <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the ghostpad
-has no target set. Unref target pad after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the target <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, can be
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the ghostpad has no target set. Unref target pad after
+usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-ghost-pad-construct"></a><h3>gst_ghost_pad_construct ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_ghost_pad_construct (<em class="parameter"><code><a class="link" href="GstGhostPad.html" title="GstGhostPad"><span class="type">GstGhostPad</span></a> *gpad</code></em>);</pre>
 <p>Finish initialization of a newly allocated ghost pad.</p>
 <p>This function is most useful in language bindings and when subclassing
@@ -464,18 +469,18 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.8.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the construction succeeds, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the construction succeeds, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-ghost-pad-activate-mode-default"></a><h3>gst_ghost_pad_activate_mode_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_ghost_pad_activate_mode_default (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Invoke the default activate mode function of a ghost pad.</p>
 <div class="refsect3">
 <a name="id-1.3.26.9.9.5"></a><h4>Parameters</h4>
@@ -494,8 +499,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
@@ -512,19 +517,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-ghost-pad-internal-activate-mode-default"></a><h3>gst_ghost_pad_internal_activate_mode_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_ghost_pad_internal_activate_mode_default
                                (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Invoke the default activate mode function of a proxy pad that is
 owned by a ghost pad.</p>
 <div class="refsect3">
@@ -544,8 +549,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
@@ -562,7 +567,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.10.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
 <p></p>
 </div>
 </div>
@@ -592,9 +597,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.11.7"></a><h4>Returns</h4>
-<p> the target <a class="link" href="GstGhostPad.html#GstProxyPad"><span class="type">GstProxyPad</span></a>, can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-Unref target pad after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the target <a class="link" href="GstGhostPad.html#GstProxyPad"><span class="type">GstProxyPad</span></a>, can
+be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  Unref target pad after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -622,18 +627,17 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.26.9.12.6"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>pad</code></em>
-has no parent. Unref each
-returned pad with <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a>.</p>
-<p></p>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>pad</code></em>
+has no parent. Unref each returned pad with <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -661,8 +665,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
@@ -704,8 +708,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>list</p></td>
@@ -729,12 +733,11 @@
 gst_proxy_pad_getrange_default (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                                 <em class="parameter"><code><span class="type">guint64</span> offset</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>);</pre>
-<p>returns <a class="link" href="GstPad.html#GST-FLOW-ERROR:CAPS"><span class="type">GST_FLOW_ERROR</span></a> if <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>Invoke the default getrange function of the proxy pad.</p>
 <div class="refsect3">
-<a name="id-1.3.26.9.15.6"></a><h4>Parameters</h4>
+<a name="id-1.3.26.9.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -765,14 +768,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p> a pointer to hold the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>,. </p></td>
+<td class="parameter_description"><p> a pointer to hold the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>,
+returns <a class="link" href="GstPad.html#GST-FLOW-ERROR:CAPS"><span class="type">GST_FLOW_ERROR</span></a> if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out callee-allocates</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.26.9.15.7"></a><h4>Returns</h4>
+<a name="id-1.3.26.9.15.6"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the pad.</p>
 <p></p>
 </div>
@@ -798,6 +802,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstMemory.html b/docs/gst/html/GstMemory.html
index 3dbe344..57d9fb0 100644
--- a/docs/gst/html/GstMemory.html
+++ b/docs/gst/html/GstMemory.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstIterator.html" title="GstIterator">
 <link rel="next" href="GstMessage.html" title="GstMessage">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstMemory.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstMemory.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstMemory.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -100,7 +100,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstMemory.html#GstMemoryMapFunction" title="GstMemoryMapFunction ()">*GstMemoryMapFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -132,7 +132,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstMemory.html#GstMemoryIsSpanFunction" title="GstMemoryIsSpanFunction ()">*GstMemoryIsSpanFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -148,7 +148,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMemory.html#gst-memory-is-type" title="gst_memory_is_type ()">gst_memory_is_type</a> <span class="c_punctuation">()</span>
@@ -220,7 +220,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMemory.html#gst-memory-map" title="gst_memory_map ()">gst_memory_map</a> <span class="c_punctuation">()</span>
@@ -252,7 +252,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMemory.html#gst-memory-is-span" title="gst_memory_is_span ()">gst_memory_is_span</a> <span class="c_punctuation">()</span>
@@ -294,7 +294,7 @@
 </div>
 <div class="refsect1">
 <a name="GstMemory.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstMemory
 </pre>
 </div>
@@ -312,7 +312,7 @@
 also has an offset and size property that specifies the valid range of memory
 in the allocated region.</p>
 <p>Memory is usually created by allocators with a <a class="link" href="GstAllocator.html#gst-allocator-alloc" title="gst_allocator_alloc ()"><code class="function">gst_allocator_alloc()</code></a>
-method call. When <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is used as the allocator, the default allocator will
+method call. When <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is used as the allocator, the default allocator will
 be used.</p>
 <p>New allocators can be registered with <a class="link" href="GstAllocator.html#gst-allocator-register" title="gst_allocator_register ()"><code class="function">gst_allocator_register()</code></a>.
 Allocators are identified by name and can be retrieved with
@@ -331,7 +331,7 @@
 copy. <a class="link" href="GstMemory.html#gst-memory-share" title="gst_memory_share ()"><code class="function">gst_memory_share()</code></a> will create a new memory block that shares the
 memory with an existing memory block at a custom offset and with a custom
 size.</p>
-<p>Memory can be efficiently merged when <a class="link" href="GstMemory.html#gst-memory-is-span" title="gst_memory_is_span ()"><code class="function">gst_memory_is_span()</code></a> returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+<p>Memory can be efficiently merged when <a class="link" href="GstMemory.html#gst-memory-is-span" title="gst_memory_is_span ()"><code class="function">gst_memory_is_span()</code></a> returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 </div>
 <div class="refsect1">
 <a name="GstMemory.functions_details"></a><h2>Functions</h2>
@@ -567,7 +567,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMemoryMapFunction"></a><h3>GstMemoryMapFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 <span class="c_punctuation">(</span>*GstMemoryMapFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem</code></em>,
                          <em class="parameter"><code><span class="type">gsize</span> maxsize</code></em>,
                          <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapFlags" title="enum GstMapFlags"><span class="type">GstMapFlags</span></a> flags</code></em>);</pre>
@@ -636,7 +636,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.28.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success.</p>
 <p></p>
 </div>
 </div>
@@ -743,7 +743,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMemoryIsSpanFunction"></a><h3>GstMemoryIsSpanFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstMemoryIsSpanFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem1</code></em>,
                             <em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem2</code></em>,
                             <em class="parameter"><code><span class="type">gsize</span> *offset</code></em>);</pre>
@@ -782,7 +782,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.28.8.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>mem1</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>mem1</code></em>
 and <em class="parameter"><code>mem2</code></em>
 are in contiguous memory.</p>
 <p></p>
@@ -860,9 +860,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-memory-is-type"></a><h3>gst_memory_is_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_memory_is_type (<em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mem_type</code></em>);</pre>
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mem_type</code></em>);</pre>
 <p>Check if <em class="parameter"><code>mem</code></em>
  if allocated with an allocator for <em class="parameter"><code>mem_type</code></em>
 .</p>
@@ -890,7 +890,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.28.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>mem</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>mem</code></em>
 was allocated from an allocator for <em class="parameter"><code>mem_type</code></em>
 .</p>
 <p></p>
@@ -1105,16 +1105,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.28.8.27.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> object mapped with <em class="parameter"><code>flags</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when
-a mapping is not possible. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> object mapped
+with <em class="parameter"><code>flags</code></em>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when a mapping is not possible. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-memory-map"></a><h3>gst_memory_map ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_memory_map (<em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem</code></em>,
                 <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapInfo" title="GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>,
                 <em class="parameter"><code><a class="link" href="GstMemory.html#GstMapFlags" title="enum GstMapFlags"><span class="type">GstMapFlags</span></a> flags</code></em>);</pre>
@@ -1123,7 +1123,7 @@
  that can be
 accessed according to <em class="parameter"><code>flags</code></em>
 .</p>
-<p>This function can return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> for various reasons:</p>
+<p>This function can return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> for various reasons:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
 <li class="listitem"><p>the memory backed by <em class="parameter"><code>mem</code></em>
  is not accessible with the given <em class="parameter"><code>flags</code></em>
@@ -1165,7 +1165,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.28.8.28.10"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map operation was successful.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map operation was successful.</p>
 <p></p>
 </div>
 </div>
@@ -1299,7 +1299,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-memory-is-span"></a><h3>gst_memory_is_span ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_memory_is_span (<em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem1</code></em>,
                     <em class="parameter"><code><a class="link" href="GstMemory.html" title="GstMemory"><span class="type">GstMemory</span></a> *mem2</code></em>,
                     <em class="parameter"><code><span class="type">gsize</span> *offset</code></em>);</pre>
@@ -1341,7 +1341,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.28.8.32.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the memory is contiguous and of a common parent.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the memory is contiguous and of a common parent.</p>
 <p></p>
 </div>
 </div>
@@ -1586,6 +1586,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstMessage.html b/docs/gst/html/GstMessage.html
index 5c7da8e..bf22bc7 100644
--- a/docs/gst/html/GstMessage.html
+++ b/docs/gst/html/GstMessage.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstMemory.html" title="GstMemory">
 <link rel="next" href="gstreamer-GstMeta.html" title="GstMeta">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstMessage.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstMessage.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstMessage.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -74,19 +74,25 @@
 <tr>
 <td class="define_keyword">#define</td>
 <td class="function_name">
+<a class="link" href="GstMessage.html#GST-MESSAGE-TYPE-IS-EXTENDED:CAPS" title="GST_MESSAGE_TYPE_IS_EXTENDED()">GST_MESSAGE_TYPE_IS_EXTENDED</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
 <a class="link" href="GstMessage.html#GST-MESSAGE-TYPE-NAME:CAPS" title="GST_MESSAGE_TYPE_NAME()">GST_MESSAGE_TYPE_NAME</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-type-to-quark" title="gst_message_type_to_quark ()">gst_message_type_to_quark</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-type-get-name" title="gst_message_type_get_name ()">gst_message_type_get_name</a> <span class="c_punctuation">()</span>
@@ -147,7 +153,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-has-name" title="gst_message_has_name ()">gst_message_has_name</a> <span class="c_punctuation">()</span>
@@ -161,7 +167,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-replace" title="gst_message_replace ()">gst_message_replace</a> <span class="c_punctuation">()</span>
@@ -569,7 +575,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-parse-group-id" title="gst_message_parse_group_id ()">gst_message_parse_group_id</a> <span class="c_punctuation">()</span>
@@ -632,7 +638,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-get-stream-status-object" title="gst_message_get_stream_status_object ()">gst_message_get_stream_status_object</a> <span class="c_punctuation">()</span>
@@ -664,7 +670,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstMessage.html#gst-message-parse-context-type" title="gst_message_parse_context_type ()">gst_message_parse_context_type</a> <span class="c_punctuation">()</span>
@@ -754,7 +760,7 @@
 </div>
 <div class="refsect1">
 <a name="GstMessage.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstMessage
 </pre>
 </div>
@@ -906,11 +912,11 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GST-MESSAGE-TYPE-NAME:CAPS"></a><h3>GST_MESSAGE_TYPE_NAME()</h3>
-<pre class="programlisting">#define GST_MESSAGE_TYPE_NAME(message)  gst_message_type_get_name(GST_MESSAGE_TYPE(message))
+<a name="GST-MESSAGE-TYPE-IS-EXTENDED:CAPS"></a><h3>GST_MESSAGE_TYPE_IS_EXTENDED()</h3>
+<pre class="programlisting">#define GST_MESSAGE_TYPE_IS_EXTENDED(message)       (!!(GST_MESSAGE_CAST(message)-&gt;type &amp; GST_MESSAGE_EXTENDED))
 </pre>
-<p>Get a constant string representation of the <a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> of <em class="parameter"><code>message</code></em>
-.</p>
+<p>Check if the message is in the extended message group
+(Since 1.4)</p>
 <div class="refsect3">
 <a name="id-1.3.29.8.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -929,10 +935,11 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-message-type-to-quark"></a><h3>gst_message_type_to_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
-gst_message_type_to_quark (<em class="parameter"><code><a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>);</pre>
-<p>Get the unique quark for the given message type.</p>
+<a name="GST-MESSAGE-TYPE-NAME:CAPS"></a><h3>GST_MESSAGE_TYPE_NAME()</h3>
+<pre class="programlisting">#define GST_MESSAGE_TYPE_NAME(message)  gst_message_type_get_name(GST_MESSAGE_TYPE(message))
+</pre>
+<p>Get a constant string representation of the <a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> of <em class="parameter"><code>message</code></em>
+.</p>
 <div class="refsect3">
 <a name="id-1.3.29.8.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -942,24 +949,19 @@
 <col width="200px" class="parameters_annotations">
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>the message type</p></td>
+<td class="parameter_name"><p>message</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.3.29.8.8.6"></a><h4>Returns</h4>
-<p> the quark associated with the message type</p>
-<p></p>
-</div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-message-type-get-name"></a><h3>gst_message_type_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_message_type_get_name (<em class="parameter"><code><a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>);</pre>
-<p>Get a printable name for the given message type. Do not modify or free.</p>
+<a name="gst-message-type-to-quark"></a><h3>gst_message_type_to_quark ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+gst_message_type_to_quark (<em class="parameter"><code><a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>);</pre>
+<p>Get the unique quark for the given message type.</p>
 <div class="refsect3">
 <a name="id-1.3.29.8.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -977,6 +979,33 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.29.8.9.6"></a><h4>Returns</h4>
+<p> the quark associated with the message type</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-message-type-get-name"></a><h3>gst_message_type_get_name ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_message_type_get_name (<em class="parameter"><code><a class="link" href="GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>);</pre>
+<p>Get a printable name for the given message type. Do not modify or free.</p>
+<div class="refsect3">
+<a name="id-1.3.29.8.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the message type</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.29.8.10.6"></a><h4>Returns</h4>
 <p> a reference to the static name of the message.</p>
 <p></p>
 </div>
@@ -988,7 +1017,7 @@
 gst_message_ref (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *msg</code></em>);</pre>
 <p>Convenience macro to increase the reference count of the message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1003,7 +1032,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.10.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.11.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>msg</code></em>
 (for convenience when doing assignments)</p>
 <p></p>
@@ -1017,7 +1046,7 @@
 <p>Convenience macro to decrease the reference count of the message, possibly
 freeing it.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1039,7 +1068,7 @@
 gst_message_copy (<em class="parameter"><code>const <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *msg</code></em>);</pre>
 <p>Creates a copy of the message. Returns a copy of the message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1054,7 +1083,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.12.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.13.6"></a><h4>Returns</h4>
 <p> a new copy of <em class="parameter"><code>msg</code></em>
 .</p>
 <p>MT safe. </p>
@@ -1068,7 +1097,7 @@
 gst_message_get_structure (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre>
 <p>Access the structure of the message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1083,7 +1112,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.13.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.14.6"></a><h4>Returns</h4>
 <p> The structure of the message. The structure is
 still owned by the message, which means that you should not free it and
 that the pointer becomes invalid when you free the message.</p>
@@ -1099,7 +1128,7 @@
 <p>Checks if a message is writable. If not, a writable copy is made and
 returned.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1114,7 +1143,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.14.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.15.6"></a><h4>Returns</h4>
 <p> a message (possibly a duplicate) that is writable.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1136,7 +1165,7 @@
 two events or messages will never have the same sequence number unless
 that correspondence was made explicitly.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.15.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.16.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1151,7 +1180,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.15.8"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.16.8"></a><h4>Returns</h4>
 <p> The message's sequence number.</p>
 <p>MT safe.</p>
 <p></p>
@@ -1169,7 +1198,7 @@
 for more information.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.16.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.17.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1194,15 +1223,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-message-has-name"></a><h3>gst_message_has_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_message_has_name (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>message</code></em>
  has the given <em class="parameter"><code>name</code></em>
 . This function is usually used to
 check the name of a custom message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1224,8 +1253,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em>
+<a name="id-1.3.29.8.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em>
 matches the name of the message structure.</p>
 <p></p>
 </div>
@@ -1238,7 +1267,7 @@
 <p>Tests if you can safely write into a message's structure or validly
 modify the seqnum and timestamp fields.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1256,7 +1285,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-message-replace"></a><h3>gst_message_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_message_replace (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> **old_message</code></em>,
                      <em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *new_message</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> to point to a different <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a>. The
@@ -1265,9 +1294,9 @@
 message is unreffed, the new one is reffed).</p>
 <p>Either <em class="parameter"><code>new_message</code></em>
  or the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> pointed to by <em class="parameter"><code>old_message</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.19.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.20.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1277,23 +1306,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>old_message</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a>
-to be replaced. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a
+pointer to a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> to be replaced. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>new_message</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> that will
 replace the message pointed to by <em class="parameter"><code>old_message</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.19.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_message</code></em>
+<a name="id-1.3.29.8.20.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_message</code></em>
 was different from <em class="parameter"><code>old_message</code></em>
 </p>
 <p></p>
@@ -1308,7 +1337,7 @@
 the sink elements of a GstBin. The bin will only forward the EOS
 message to the application if all sinks have posted an EOS message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1323,7 +1352,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.20.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.21.6"></a><h4>Returns</h4>
 <p> The new eos message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1334,8 +1363,8 @@
 <a name="gst-message-new-error"></a><h3>gst_message_new_error ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_error (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
 <p>Create a new error message. The message will copy <em class="parameter"><code>error</code></em>
  and
 <em class="parameter"><code>debug</code></em>
@@ -1343,7 +1372,7 @@
 occurred. The pipeline will probably (partially) stop. The application
 receiving this message should stop the pipeline.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1370,7 +1399,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.21.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.22.6"></a><h4>Returns</h4>
 <p> the new error message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1381,8 +1410,8 @@
 <a name="gst-message-parse-error"></a><h3>gst_message_parse_error ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_error (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **gerror</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **debug</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **gerror</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **debug</code></em>);</pre>
 <p>Extracts the GError and debug string from the GstMessage. The values returned
 in the output arguments are copies; the caller must free them when done.</p>
 <p>Typical usage of this function might be:</p>
@@ -1414,11 +1443,11 @@
     gchar <span class="gtkdoc opt">*</span>dbg_info <span class="gtkdoc opt">=</span> NULL<span class="gtkdoc opt">;</span>
     
     <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-parse-error">gst_message_parse_error</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">, &amp;</span>err<span class="gtkdoc opt">, &amp;</span>dbg_info<span class="gtkdoc opt">);</span>
-    <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;ERROR from element %s: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span>
+    <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;ERROR from element %s: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span>
         <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#GST-OBJECT-NAME:CAPS">GST_OBJECT_NAME</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">-&gt;</span>src<span class="gtkdoc opt">),</span> err<span class="gtkdoc opt">-&gt;</span>message<span class="gtkdoc opt">);</span>
-    <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Debugging info: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">, (</span>dbg_info<span class="gtkdoc opt">)</span> ? dbg_info <span class="gtkdoc opt">:</span> <span class="string">&quot;none&quot;</span><span class="gtkdoc opt">);</span>
-    <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#g-error-free">g_error_free</a></span> <span class="gtkdoc opt">(</span>err<span class="gtkdoc opt">);</span>
-    <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>dbg_info<span class="gtkdoc opt">);</span>
+    <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Debugging info: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">, (</span>dbg_info<span class="gtkdoc opt">)</span> ? dbg_info <span class="gtkdoc opt">:</span> <span class="string">&quot;none&quot;</span><span class="gtkdoc opt">);</span>
+    <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#g-error-free">g_error_free</a></span> <span class="gtkdoc opt">(</span>err<span class="gtkdoc opt">);</span>
+    <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>dbg_info<span class="gtkdoc opt">);</span>
     <span class="keyword">break</span><span class="gtkdoc opt">;</span>
   <span class="gtkdoc opt">}</span>
   <span class="gtkdoc opt">...</span>
@@ -1432,7 +1461,7 @@
 <p></p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.22.9"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.23.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1448,13 +1477,13 @@
 <tr>
 <td class="parameter_name"><p>gerror</p></td>
 <td class="parameter_description"><p> location for the GError. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>debug</p></td>
 <td class="parameter_description"><p> location for the debug message,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1465,14 +1494,14 @@
 <a name="gst-message-new-warning"></a><h3>gst_message_new_warning ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_warning (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
 <p>Create a new warning message. The message will make copies of <em class="parameter"><code>error</code></em>
  and
 <em class="parameter"><code>debug</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1499,7 +1528,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.23.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.24.6"></a><h4>Returns</h4>
 <p> The new warning message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1510,13 +1539,13 @@
 <a name="gst-message-parse-warning"></a><h3>gst_message_parse_warning ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_warning (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **gerror</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **debug</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **gerror</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **debug</code></em>);</pre>
 <p>Extracts the GError and debug string from the GstMessage. The values returned
 in the output arguments are copies; the caller must free them when done.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.24.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.25.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1532,13 +1561,13 @@
 <tr>
 <td class="parameter_name"><p>gerror</p></td>
 <td class="parameter_description"><p> location for the GError. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>debug</p></td>
 <td class="parameter_description"><p> location for the debug message,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1549,15 +1578,15 @@
 <a name="gst-message-new-info"></a><h3>gst_message_new_info ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_info (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
 <p>Create a new info message. The message will make copies of <em class="parameter"><code>error</code></em>
  and
 <em class="parameter"><code>debug</code></em>
 .</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.25.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.26.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1584,7 +1613,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.25.7"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.26.7"></a><h4>Returns</h4>
 <p> the new info message. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1594,13 +1623,13 @@
 <a name="gst-message-parse-info"></a><h3>gst_message_parse_info ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_info (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **gerror</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **debug</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **gerror</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **debug</code></em>);</pre>
 <p>Extracts the GError and debug string from the GstMessage. The values returned
 in the output arguments are copies; the caller must free them when done.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.26.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.27.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1616,13 +1645,13 @@
 <tr>
 <td class="parameter_name"><p>gerror</p></td>
 <td class="parameter_description"><p> location for the GError. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>debug</p></td>
 <td class="parameter_description"><p> location for the debug message,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1637,7 +1666,7 @@
 <p>Create a new tag message. The message will take ownership of the tag list.
 The message is posted by elements that discovered a new taglist.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1659,7 +1688,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.27.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.28.6"></a><h4>Returns</h4>
 <p> the new tag message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1698,7 +1727,7 @@
     GstTagList <span class="gtkdoc opt">*</span>tags <span class="gtkdoc opt">=</span> NULL<span class="gtkdoc opt">;</span>
     
     <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-parse-tag">gst_message_parse_tag</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">, &amp;</span>tags<span class="gtkdoc opt">);</span>
-    <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Got tags from element %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#GST-OBJECT-NAME:CAPS">GST_OBJECT_NAME</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">-&gt;</span>src<span class="gtkdoc opt">));</span>
+    <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Got tags from element %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#GST-OBJECT-NAME:CAPS">GST_OBJECT_NAME</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">-&gt;</span>src<span class="gtkdoc opt">));</span>
     <span class="function">handle_tags</span> <span class="gtkdoc opt">(</span>tags<span class="gtkdoc opt">);</span>
     <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstTagList.html#gst-tag-list-unref">gst_tag_list_unref</a></span> <span class="gtkdoc opt">(</span>tags<span class="gtkdoc opt">);</span>
     <span class="keyword">break</span><span class="gtkdoc opt">;</span>
@@ -1714,7 +1743,7 @@
 <p></p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.28.9"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.29.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1741,7 +1770,7 @@
 <a name="gst-message-new-buffering"></a><h3>gst_message_new_buffering ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_buffering (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> percent</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> percent</code></em>);</pre>
 <p>Create a new buffering message. This message can be posted by an element that
 needs to buffer data before it can continue processing. <em class="parameter"><code>percent</code></em>
  should be a
@@ -1757,7 +1786,7 @@
 completed prerolling.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.29.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.30.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1779,7 +1808,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.29.8"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.30.8"></a><h4>Returns</h4>
 <p> The new buffering message. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1789,12 +1818,12 @@
 <a name="gst-message-parse-buffering"></a><h3>gst_message_parse_buffering ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_buffering (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *percent</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *percent</code></em>);</pre>
 <p>Extracts the buffering percent from the GstMessage. see also
 <a class="link" href="GstMessage.html#gst-message-new-buffering" title="gst_message_new_buffering ()"><code class="function">gst_message_new_buffering()</code></a>.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.30.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.31.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1810,7 +1839,7 @@
 <tr>
 <td class="parameter_name"><p>percent</p></td>
 <td class="parameter_description"><p> Return location for the percent. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1822,13 +1851,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_set_buffering_stats (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> mode</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_in</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_out</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_in</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_out</code></em>,
                                  <em class="parameter"><code><span class="type">gint64</span> buffering_left</code></em>);</pre>
 <p>Configures the buffering stats values in <em class="parameter"><code>message</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.31.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1871,13 +1900,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_buffering_stats (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                                    <em class="parameter"><code><a class="link" href="GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> *mode</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_in</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_out</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_in</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_out</code></em>,
                                    <em class="parameter"><code><span class="type">gint64</span> *buffering_left</code></em>);</pre>
 <p>Extracts the buffering stats values from <em class="parameter"><code>message</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.32.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1892,24 +1921,24 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
-<td class="parameter_description"><p> a buffering mode, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a buffering mode, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>avg_in</p></td>
-<td class="parameter_description"><p> the average input rate, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the average input rate, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>avg_out</p></td>
-<td class="parameter_description"><p> the average output rate, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the average output rate, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>buffering_left</p></td>
 <td class="parameter_description"><p> amount of buffering time left in
-milliseconds, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+milliseconds, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1926,7 +1955,7 @@
 <p>Create a state change message. This message is posted whenever an element
 changed its state.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1958,7 +1987,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.33.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.34.6"></a><h4>Returns</h4>
 <p> the new state change message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1999,7 +2028,7 @@
     GstState old_state<span class="gtkdoc opt">,</span> new_state<span class="gtkdoc opt">;</span>
     
     <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-parse-state-changed">gst_message_parse_state_changed</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">, &amp;</span>old_state<span class="gtkdoc opt">, &amp;</span>new_state<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
-    <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Element %s changed state from %s to %s.</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span>
+    <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Element %s changed state from %s to %s.</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span>
         <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#GST-OBJECT-NAME:CAPS">GST_OBJECT_NAME</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">-&gt;</span>src<span class="gtkdoc opt">),</span>
         <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-state-get-name">gst_element_state_get_name</a></span> <span class="gtkdoc opt">(</span>old_state<span class="gtkdoc opt">),</span>
         <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-state-get-name">gst_element_state_get_name</a></span> <span class="gtkdoc opt">(</span>new_state<span class="gtkdoc opt">));</span>
@@ -2016,7 +2045,7 @@
 <p></p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.34.9"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.35.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2031,18 +2060,18 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>oldstate</p></td>
-<td class="parameter_description"><p> the previous state, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the previous state, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>newstate</p></td>
-<td class="parameter_description"><p> the new (current) state, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the new (current) state, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>pending</p></td>
-<td class="parameter_description"><p> the pending (target) state, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the pending (target) state, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2057,7 +2086,7 @@
 changed its state asynchronously and is used internally to update the
 states of container objects.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2072,7 +2101,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.35.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.36.6"></a><h4>Returns</h4>
 <p> the new state dirty message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2085,21 +2114,21 @@
 gst_message_new_step_done (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                            <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                            <em class="parameter"><code><span class="type">guint64</span> amount</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flush</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> intermediate</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flush</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> intermediate</code></em>,
                            <em class="parameter"><code><span class="type">guint64</span> duration</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> eos</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> eos</code></em>);</pre>
 <p>This message is posted by elements when they complete a part, when <em class="parameter"><code>intermediate</code></em>
  set
-to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, or a complete step operation.</p>
+to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, or a complete step operation.</p>
 <p><em class="parameter"><code>duration</code></em>
  will contain the amount of time (in GST_FORMAT_TIME) of the stepped
 <em class="parameter"><code>amount</code></em>
  of media in format <em class="parameter"><code>format</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.36.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.37.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2152,7 +2181,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.36.7"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.37.7"></a><h4>Returns</h4>
 <p> the new step_done message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2165,15 +2194,15 @@
 gst_message_parse_step_done (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                              <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
                              <em class="parameter"><code><span class="type">guint64</span> *amount</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *flush</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *intermediate</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *flush</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *intermediate</code></em>,
                              <em class="parameter"><code><span class="type">guint64</span> *duration</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *eos</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *eos</code></em>);</pre>
 <p>Extract the values the step_done message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.37.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.38.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2189,37 +2218,37 @@
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> result location for the format. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>amount</p></td>
 <td class="parameter_description"><p> result location for the amount. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>rate</p></td>
 <td class="parameter_description"><p> result location for the rate. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flush</p></td>
 <td class="parameter_description"><p> result location for the flush flag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>intermediate</p></td>
 <td class="parameter_description"><p> result location for the intermediate flag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>duration</p></td>
 <td class="parameter_description"><p> result location for the duration. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>eos</p></td>
 <td class="parameter_description"><p> result location for the EOS flag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2231,14 +2260,14 @@
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_clock_provide (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                                <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ready</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ready</code></em>);</pre>
 <p>Create a clock provide message. This message is posted whenever an
 element is ready to provide a clock or lost its ability to provide
 a clock (maybe because it paused or became EOS).</p>
 <p>This message is mainly used internally to manage the clock
 selection.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.38.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.39.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2258,14 +2287,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>ready</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sender can provide a clock</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sender can provide a clock</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.38.7"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.39.7"></a><h4>Returns</h4>
 <p> the new provide clock message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2277,12 +2306,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_clock_provide (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> **clock</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *ready</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *ready</code></em>);</pre>
 <p>Extracts the clock and ready flag from the GstMessage.
 The clock object returned remains valid until the message is freed.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.39.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.40.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2298,13 +2327,13 @@
 <tr>
 <td class="parameter_name"><p>clock</p></td>
 <td class="parameter_description"><p> a pointer to  hold a clock
-object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+object, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>ready</p></td>
-<td class="parameter_description"><p> a pointer to hold the ready flag, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a pointer to hold the ready flag, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2322,7 +2351,7 @@
 select a new clock again when it goes to PLAYING. It might therefore
 be needed to set the pipeline to PAUSED and PLAYING again.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.40.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.41.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2344,7 +2373,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.40.7"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.41.7"></a><h4>Returns</h4>
 <p> The new clock lost message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2360,7 +2389,7 @@
 The clock object returned remains valid until the message is freed.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.41.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.42.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2376,7 +2405,7 @@
 <tr>
 <td class="parameter_name"><p>clock</p></td>
 <td class="parameter_description"><p> a pointer to hold the lost clock. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2391,7 +2420,7 @@
 <p>Create a new clock message. This message is posted whenever the
 pipeline selects a new clock for the pipeline.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2413,7 +2442,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.42.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.43.6"></a><h4>Returns</h4>
 <p> The new new clock message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2429,7 +2458,7 @@
 The clock object returned remains valid until the message is freed.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.43.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.44.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2446,7 +2475,7 @@
 <td class="parameter_name"><p>clock</p></td>
 <td class="parameter_description"><p> a pointer to hold the selected
 new clock. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2461,7 +2490,7 @@
 <p>Create a new application-typed message. GStreamer will never create these
 messages; they are a gift from us to you. Enjoy.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2484,7 +2513,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.44.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.45.6"></a><h4>Returns</h4>
 <p> The new application message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2499,9 +2528,9 @@
 <p>Create a new element-specific message. This is meant as a generic way of
 allowing one-way communication from an element to an application, for example
 "the firewire cable was unplugged". The format of the message should be
-documented in the element's documentation. The structure field can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+documented in the element's documentation. The structure field can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2516,15 +2545,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p> The structure for the message. The message
-will take ownership of the structure. </p></td>
+<td class="parameter_description"><p> The structure for the
+message. The message will take ownership of the structure. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.45.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.46.6"></a><h4>Returns</h4>
 <p> The new element message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2539,9 +2568,9 @@
                         <em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Create a new custom-typed message. This can be used for anything not
 handled by other message-specific functions to pass a message to the
-app. The structure field can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+app. The structure field can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.47.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2561,15 +2590,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p> the structure for the message. The message
-will take ownership of the structure. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> the structure for the
+message. The message will take ownership of the structure. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.46.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.47.6"></a><h4>Returns</h4>
 <p> The new message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2587,7 +2616,7 @@
 is not received by the application but is used for maintenance reasons in
 container elements.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.47.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2614,7 +2643,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.47.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.48.6"></a><h4>Returns</h4>
 <p> the new segment start message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2630,7 +2659,7 @@
 <p>Extracts the position and format from the segment start message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.48.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.49.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2645,13 +2674,13 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
-<td class="parameter_description"><p> Result location for the format, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the format, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>position</p></td>
-<td class="parameter_description"><p> Result location for the position, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the position, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2669,7 +2698,7 @@
 is received by the application after all elements that posted a segment_start
 have posted the segment_done.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.49.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2696,7 +2725,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.49.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.50.6"></a><h4>Returns</h4>
 <p> the new segment done message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2712,7 +2741,7 @@
 <p>Extracts the position and format from the segment done message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.50.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.51.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2727,13 +2756,13 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
-<td class="parameter_description"><p> Result location for the format, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the format, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>position</p></td>
-<td class="parameter_description"><p> Result location for the position, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the position, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2752,35 +2781,6 @@
 cached duration should be discarded. The new duration can then be 
 retrieved via a query.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.51.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>src</p></td>
-<td class="parameter_description"><p> The object originating the message. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.29.8.51.6"></a><h4>Returns</h4>
-<p> The new duration-changed message.</p>
-<p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-message-new-latency"></a><h3>gst_message_new_latency ()</h3>
-<pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
-gst_message_new_latency (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>);</pre>
-<p>This message can be posted by elements when their latency requirements have
-changed.</p>
-<div class="refsect3">
 <a name="id-1.3.29.8.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -2797,17 +2797,18 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.29.8.52.6"></a><h4>Returns</h4>
-<p> The new latency message.</p>
+<p> The new duration-changed message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-message-new-async-start"></a><h3>gst_message_new_async_start ()</h3>
+<a name="gst-message-new-latency"></a><h3>gst_message_new_latency ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
-gst_message_new_async_start (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>);</pre>
-<p>This message is posted by elements when they start an ASYNC state change.</p>
+gst_message_new_latency (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>);</pre>
+<p>This message can be posted by elements when their latency requirements have
+changed.</p>
 <div class="refsect3">
 <a name="id-1.3.29.8.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2825,6 +2826,34 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.29.8.53.6"></a><h4>Returns</h4>
+<p> The new latency message.</p>
+<p>MT safe. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-message-new-async-start"></a><h3>gst_message_new_async_start ()</h3>
+<pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
+gst_message_new_async_start (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>);</pre>
+<p>This message is posted by elements when they start an ASYNC state change.</p>
+<div class="refsect3">
+<a name="id-1.3.29.8.54.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p> The object originating the message. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.29.8.54.6"></a><h4>Returns</h4>
 <p> The new async_start message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2844,7 +2873,7 @@
 means that the element has no clock interaction and thus doesn't care about
 the running_time of the pipeline.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.54.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.55.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2866,7 +2895,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.54.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.55.6"></a><h4>Returns</h4>
 <p> The new async_done message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2881,7 +2910,7 @@
 <p>Extract the running_time from the async_done message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.55.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.56.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2896,8 +2925,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>running_time</p></td>
-<td class="parameter_description"><p> Result location for the running_time or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the running_time or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2908,26 +2937,26 @@
 <a name="gst-message-new-step-start"></a><h3>gst_message_new_step_start ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_step_start (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>,
                             <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                             <em class="parameter"><code><span class="type">guint64</span> amount</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flush</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> intermediate</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flush</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> intermediate</code></em>);</pre>
 <p>This message is posted by elements when they accept or activate a new step
 event for <em class="parameter"><code>amount</code></em>
  in <em class="parameter"><code>format</code></em>
 . </p>
 <p><em class="parameter"><code>active</code></em>
- is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the element accepted the new step event and has
+ is set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the element accepted the new step event and has
 queued it for execution in the streaming threads.</p>
 <p><em class="parameter"><code>active</code></em>
- is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the element has activated the step operation and
+ is set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the element has activated the step operation and
 is now ready to start executing the step in the streaming thread. After this
 message is emitted, the application can queue a new step operation in the
 element.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.56.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.57.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2975,7 +3004,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.56.8"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.57.8"></a><h4>Returns</h4>
 <p> The new step_start message. </p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -2986,16 +3015,16 @@
 <a name="gst-message-parse-step-start"></a><h3>gst_message_parse_step_start ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_step_start (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *active</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *active</code></em>,
                               <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
                               <em class="parameter"><code><span class="type">guint64</span> *amount</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *flush</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *intermediate</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *flush</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *intermediate</code></em>);</pre>
 <p>Extract the values from step_start message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.57.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.58.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3011,32 +3040,32 @@
 <tr>
 <td class="parameter_name"><p>active</p></td>
 <td class="parameter_description"><p> result location for the active flag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> result location for the format. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>amount</p></td>
 <td class="parameter_description"><p> result location for the amount. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>rate</p></td>
 <td class="parameter_description"><p> result location for the rate. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flush</p></td>
 <td class="parameter_description"><p> result location for the flush flag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>intermediate</p></td>
 <td class="parameter_description"><p> result location for the intermediate flag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3047,7 +3076,7 @@
 <a name="gst-message-new-qos"></a><h3>gst_message_new_qos ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_qos (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> live</code></em>,
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> live</code></em>,
                      <em class="parameter"><code><span class="type">guint64</span> running_time</code></em>,
                      <em class="parameter"><code><span class="type">guint64</span> stream_time</code></em>,
                      <em class="parameter"><code><span class="type">guint64</span> timestamp</code></em>,
@@ -3068,7 +3097,7 @@
 buffer that generated the QoS event. Values can be left to
 GST_CLOCK_TIME_NONE when unknown.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.58.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.59.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3110,7 +3139,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.58.8"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.59.8"></a><h4>Returns</h4>
 <p> The new qos message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3122,12 +3151,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_set_qos_values (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                             <em class="parameter"><code><span class="type">gint64</span> jitter</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> quality</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> quality</code></em>);</pre>
 <p>Set the QoS values that have been calculated/analysed from the QoS data</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.59.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.60.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3181,7 +3210,7 @@
  mean unknown values.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.60.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.61.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3222,7 +3251,7 @@
 <a name="gst-message-parse-qos"></a><h3>gst_message_parse_qos ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_qos (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
                        <em class="parameter"><code><span class="type">guint64</span> *running_time</code></em>,
                        <em class="parameter"><code><span class="type">guint64</span> *stream_time</code></em>,
                        <em class="parameter"><code><span class="type">guint64</span> *timestamp</code></em>,
@@ -3233,7 +3262,7 @@
 values.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.61.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.62.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3249,31 +3278,31 @@
 <tr>
 <td class="parameter_name"><p>live</p></td>
 <td class="parameter_description"><p> if the message was generated by a live element. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>running_time</p></td>
 <td class="parameter_description"><p> the running time of the buffer that
 generated the message. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>stream_time</p></td>
 <td class="parameter_description"><p> the stream time of the buffer that
 generated the message. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>timestamp</p></td>
 <td class="parameter_description"><p> the timestamps of the buffer that
 generated the message. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>duration</p></td>
 <td class="parameter_description"><p> the duration of the buffer that
 generated the message. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3285,12 +3314,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_qos_values (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                               <em class="parameter"><code><span class="type">gint64</span> *jitter</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *proportion</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *quality</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *proportion</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *quality</code></em>);</pre>
 <p>Extract the QoS values that have been calculated/analysed from the QoS data</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.62.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.63.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3307,20 +3336,20 @@
 <td class="parameter_name"><p>jitter</p></td>
 <td class="parameter_description"><p> The difference of the running-time against
 the deadline. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>proportion</p></td>
 <td class="parameter_description"><p> Long term prediction of the ideal rate
 relative to normal rate to get optimal quality. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>quality</p></td>
 <td class="parameter_description"><p> An element dependent integer value that
 specifies the current quality level of the element. The default
 maximum quality is 1000000. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3346,7 +3375,7 @@
  mean unknown values.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.63.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.64.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3365,19 +3394,19 @@
 Video sinks and video filters will use GST_FORMAT_BUFFERS (frames).
 Audio sinks and audio filters will likely use GST_FORMAT_DEFAULT
 (samples). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>processed</p></td>
 <td class="parameter_description"><p> Total number of units correctly processed
 since the last state change to READY or a flushing operation. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dropped</p></td>
 <td class="parameter_description"><p> Total number of units dropped since the last
 state change to READY or a flushing operation. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3389,11 +3418,11 @@
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_toc (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                      <em class="parameter"><code><a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> *toc</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> updated</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> updated</code></em>);</pre>
 <p>Create a new TOC message. The message is posted by elements
 that discovered or updated a TOC.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.64.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3420,7 +3449,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.64.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.65.6"></a><h4>Returns</h4>
 <p> a new TOC message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3432,13 +3461,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_toc (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                        <em class="parameter"><code><a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> **toc</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *updated</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *updated</code></em>);</pre>
 <p>Extract the TOC from the <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a>. The TOC returned in the
 output argument is a copy; the caller must free it with
 <a class="link" href="GstToc.html#gst-toc-unref" title="gst_toc_unref()"><code class="function">gst_toc_unref()</code></a> when done.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.65.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.66.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3475,7 +3504,7 @@
 <em class="parameter"><code>running_time</code></em>
 , like after a flushing seek.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.66.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.67.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3497,7 +3526,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.66.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.67.6"></a><h4>Returns</h4>
 <p> The new reset_time message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3512,7 +3541,7 @@
 <p>Extract the running-time from the RESET_TIME message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.67.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.68.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3528,8 +3557,8 @@
 <tr>
 <td class="parameter_name"><p>running_time</p></td>
 <td class="parameter_description"><p> Result location for the running_time or
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3544,7 +3573,7 @@
 the sink elements of a GstBin. The bin will only forward the STREAM_START
 message to the application if all sinks have posted an STREAM_START message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.68.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3559,7 +3588,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.68.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.69.6"></a><h4>Returns</h4>
 <p> The new stream_start message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3570,7 +3599,7 @@
 <a name="gst-message-set-group-id"></a><h3>gst_message_set_group_id ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_set_group_id (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> group_id</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> group_id</code></em>);</pre>
 <p>Sets the group id on the stream-start message.</p>
 <p>All streams that have the same group id are supposed to be played
 together, i.e. all streams inside a container file should have the
@@ -3579,7 +3608,7 @@
 each time a file is played for example.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.69.7"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.70.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3605,12 +3634,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-message-parse-group-id"></a><h3>gst_message_parse_group_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_message_parse_group_id (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *group_id</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *group_id</code></em>);</pre>
 <p>Extract the group from the STREAM_START message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.70.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.71.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3626,15 +3655,15 @@
 <tr>
 <td class="parameter_name"><p>group_id</p></td>
 <td class="parameter_description"><p> Result location for the group id or
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.70.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message had a group id set, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<a name="id-1.3.29.8.71.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message had a group id set, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -3647,14 +3676,14 @@
 gst_message_new_structure_change (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstMessage.html#GstStructureChangeType" title="enum GstStructureChangeType"><span class="type">GstStructureChangeType</span></a> type</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *owner</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> busy</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> busy</code></em>);</pre>
 <p>Create a new structure change message. This message is posted when the
 structure of a pipeline is in the process of being changed, for example
 when pads are linked or unlinked.</p>
 <p><em class="parameter"><code>src</code></em>
  should be the sinkpad that unlinked or linked.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.71.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.72.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3687,7 +3716,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.71.7"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.72.7"></a><h4>Returns</h4>
 <p> the new structure change message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3700,11 +3729,11 @@
 gst_message_parse_structure_change (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstMessage.html#GstStructureChangeType" title="enum GstStructureChangeType"><span class="type">GstStructureChangeType</span></a> *type</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> **owner</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *busy</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *busy</code></em>);</pre>
 <p>Extracts the change type and completion status from the GstMessage.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.72.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.73.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3726,13 +3755,13 @@
 <td class="parameter_name"><p>owner</p></td>
 <td class="parameter_description"><p> The owner element of the
 message source. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>busy</p></td>
 <td class="parameter_description"><p> a pointer to hold whether the change is in
 progress or has been completed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3748,7 +3777,7 @@
 changed. A typical use case would be an audio server that wants to pause the
 pipeline because a higher priority stream is being played.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.73.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.74.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3770,7 +3799,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.73.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.74.6"></a><h4>Returns</h4>
 <p> the new request state message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3785,7 +3814,7 @@
 <p>Extract the requested state from the request_state message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.74.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.75.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3800,8 +3829,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>state</p></td>
-<td class="parameter_description"><p> Result location for the requested state or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Result location for the requested state or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3817,7 +3846,7 @@
 <p>Create a new stream status message. This message is posted when a streaming
 thread is created/destroyed or when the state changed.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.75.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.76.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3845,7 +3874,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.75.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.76.6"></a><h4>Returns</h4>
 <p> the new stream status message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -3864,7 +3893,7 @@
 should thus not be unreffed.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.76.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.77.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3896,11 +3925,11 @@
 <a name="gst-message-set-stream-status-object"></a><h3>gst_message_set_stream_status_object ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_set_stream_status_object (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *object</code></em>);</pre>
+                                      <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *object</code></em>);</pre>
 <p>Configures the object handling the streaming thread. This is usually a
 GstTask object but other objects might be added in the future.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.77.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.78.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3925,12 +3954,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-message-get-stream-status-object"></a><h3>gst_message_get_stream_status_object ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 gst_message_get_stream_status_object (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre>
 <p>Extracts the object managing the streaming thread from <em class="parameter"><code>message</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.78.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.79.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3945,7 +3974,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.78.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.79.6"></a><h4>Returns</h4>
 <p> a GValue containing the object that manages the streaming thread.
 This object is usually of type GstTask but other types can be added in the
 future. The object remains valid as long as <em class="parameter"><code>message</code></em>
@@ -3959,8 +3988,8 @@
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_progress (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                           <em class="parameter"><code><a class="link" href="GstMessage.html#GstProgressType" title="enum GstProgressType"><span class="type">GstProgressType</span></a> type</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *code</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *text</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *code</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *text</code></em>);</pre>
 <p>Progress messages are posted by elements when they use an asynchronous task
 to perform actions triggered by a state change.</p>
 <p><em class="parameter"><code>code</code></em>
@@ -3968,7 +3997,7 @@
 <em class="parameter"><code>test</code></em>
  should contain a user visible string detailing the current action.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.79.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.80.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4000,7 +4029,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.79.7"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.80.7"></a><h4>Returns</h4>
 <p> The new qos message. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -4011,14 +4040,14 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_message_parse_progress (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                             <em class="parameter"><code><a class="link" href="GstMessage.html#GstProgressType" title="enum GstProgressType"><span class="type">GstProgressType</span></a> *type</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **code</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **text</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **code</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **text</code></em>);</pre>
 <p>Parses the progress <em class="parameter"><code>type</code></em>
 , <em class="parameter"><code>code</code></em>
  and <em class="parameter"><code>text</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.80.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.81.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4034,17 +4063,17 @@
 <tr>
 <td class="parameter_name"><p>type</p></td>
 <td class="parameter_description"><p> location for the type. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>code</p></td>
 <td class="parameter_description"><p> location for the code. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>text</p></td>
 <td class="parameter_description"><p> location for the text. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -4055,10 +4084,10 @@
 <a name="gst-message-new-need-context"></a><h3>gst_message_new_need_context ()</h3>
 <pre class="programlisting"><a class="link" href="GstMessage.html" title="GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_need_context (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>);</pre>
 <p>This message is posted when an element needs a specific <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.81.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.82.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4080,7 +4109,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.81.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.82.6"></a><h4>Returns</h4>
 <p> The new need-context message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -4090,12 +4119,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-message-parse-context-type"></a><h3>gst_message_parse_context_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_message_parse_context_type (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **context_type</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **context_type</code></em>);</pre>
 <p>Parse a context type from an existing GST_MESSAGE_NEED_CONTEXT message.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.82.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.83.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4110,15 +4139,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>context_type</p></td>
-<td class="parameter_description"><p> the context type, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the context type, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.82.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the parsing succeeded.</p>
+<a name="id-1.3.29.8.83.6"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the parsing succeeded.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -4131,7 +4160,7 @@
                               <em class="parameter"><code><a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a> *context</code></em>);</pre>
 <p>This message is posted when an element has a new local <a class="link" href="GstContext.html" title="GstContext"><span class="type">GstContext</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.83.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.84.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4153,7 +4182,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.83.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.84.6"></a><h4>Returns</h4>
 <p> The new have-context message.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -4169,7 +4198,7 @@
 <p>Extract the context from the HAVE_CONTEXT message.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.84.6"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.85.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4185,8 +4214,8 @@
 <tr>
 <td class="parameter_name"><p>context</p></td>
 <td class="parameter_description"><p> Result location for the
-context or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+context or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -4200,10 +4229,10 @@
 gst_message_new_device_added (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                               <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
 <p>Creates a new device-added message. The device-added message is produced by
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> or a <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a>. They announce the appearance
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> or a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a>. They announce the appearance
 of monitored devices.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.85.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.86.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4225,7 +4254,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.85.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.86.6"></a><h4>Returns</h4>
 <p> a newly allocated <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a></p>
 <p></p>
 </div>
@@ -4238,10 +4267,10 @@
 gst_message_new_device_removed (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *src</code></em>,
                                 <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
 <p>Creates a new device-removed message. The device-removed message is produced
-by <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> or a <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a>. They announce the
+by <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> or a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a>. They announce the
 disappearance of monitored devices.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.86.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.87.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4263,7 +4292,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.29.8.86.6"></a><h4>Returns</h4>
+<a name="id-1.3.29.8.87.6"></a><h4>Returns</h4>
 <p> a newly allocated <a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a></p>
 <p></p>
 </div>
@@ -4276,10 +4305,10 @@
 gst_message_parse_device_added (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                                 <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> **device</code></em>);</pre>
 <p>Parses a device-added message. The device-added message is produced by
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> or a <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a>. It announces the appearance
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> or a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a>. It announces the appearance
 of monitored devices.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.87.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.88.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4295,8 +4324,8 @@
 <tr>
 <td class="parameter_name"><p>device</p></td>
 <td class="parameter_description"><p> A location where to store a
-pointer to the new <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+pointer to the new <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -4310,10 +4339,10 @@
 gst_message_parse_device_removed (<em class="parameter"><code><a class="link" href="GstMessage.html" title="GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
                                   <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> **device</code></em>);</pre>
 <p>Parses a device-removed message. The device-removed message is produced by
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> or a <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a>. It announces the
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> or a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a>. It announces the
 disappearance of monitored devices.</p>
 <div class="refsect3">
-<a name="id-1.3.29.8.88.5"></a><h4>Parameters</h4>
+<a name="id-1.3.29.8.89.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4329,8 +4358,8 @@
 <tr>
 <td class="parameter_name"><p>device</p></td>
 <td class="parameter_description"><p> A location where to store a
-pointer to the removed <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+pointer to the removed <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -4682,7 +4711,7 @@
 <td class="enum_member_name"><p><a name="GST-MESSAGE-DEVICE-ADDED:CAPS"></a>GST_MESSAGE_DEVICE_ADDED</p></td>
 <td class="enum_member_description">
 <p>Message indicating a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> was added to
-    a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> (Since 1.4)</p>
+    a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> (Since 1.4)</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -4690,7 +4719,7 @@
 <td class="enum_member_name"><p><a name="GST-MESSAGE-DEVICE-REMOVED:CAPS"></a>GST_MESSAGE_DEVICE_REMOVED</p></td>
 <td class="enum_member_description">
 <p>Message indicating a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> was removed
-    from a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> (Since 1.4)</p>
+    from a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> (Since 1.4)</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -4865,6 +4894,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstObject.html b/docs/gst/html/GstObject.html
index d3dc706..a544db3 100644
--- a/docs/gst/html/GstObject.html
+++ b/docs/gst/html/GstObject.html
@@ -8,16 +8,16 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstMiniObject.html" title="GstMiniObject">
 <link rel="next" href="GstPad.html" title="GstPad">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstObject.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstObject.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#GstObject.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstObject.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstObject.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#GstObject.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstObject.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -116,7 +116,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-set-name" title="gst_object_set_name ()">gst_object_set_name</a> <span class="c_punctuation">()</span>
@@ -124,7 +124,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-get-name" title="gst_object_get_name ()">gst_object_get_name</a> <span class="c_punctuation">()</span>
@@ -132,7 +132,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-set-parent" title="gst_object_set_parent ()">gst_object_set_parent</a> <span class="c_punctuation">()</span>
@@ -148,6 +148,14 @@
 </tr>
 <tr>
 <td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstObject.html#gst-object-has-parent" title="gst_object_has_parent ()">gst_object_has_parent</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
 <span class="returnvalue">void</span>
 </td>
 <td class="function_name">
@@ -172,7 +180,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-check-uniqueness" title="gst_object_check_uniqueness ()">gst_object_check_uniqueness</a> <span class="c_punctuation">()</span>
@@ -180,7 +188,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-has-ancestor" title="gst_object_has_ancestor ()">gst_object_has_ancestor</a> <span class="c_punctuation">()</span>
@@ -188,7 +196,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-ref" title="gst_object_ref ()">gst_object_ref</a> <span class="c_punctuation">()</span>
@@ -204,7 +212,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-ref-sink" title="gst_object_ref_sink ()">gst_object_ref_sink</a> <span class="c_punctuation">()</span>
@@ -212,7 +220,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-replace" title="gst_object_replace ()">gst_object_replace</a> <span class="c_punctuation">()</span>
@@ -220,7 +228,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-get-path-string" title="gst_object_get_path_string ()">gst_object_get_path_string</a> <span class="c_punctuation">()</span>
@@ -236,7 +244,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-sync-values" title="gst_object_sync_values ()">gst_object_sync_values</a> <span class="c_punctuation">()</span>
@@ -244,7 +252,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-has-active-control-bindings" title="gst_object_has_active_control_bindings ()">gst_object_has_active_control_bindings</a> <span class="c_punctuation">()</span>
@@ -268,7 +276,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-add-control-binding" title="gst_object_add_control_binding ()">gst_object_add_control_binding</a> <span class="c_punctuation">()</span>
@@ -284,7 +292,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-remove-control-binding" title="gst_object_remove_control_binding ()">gst_object_remove_control_binding</a> <span class="c_punctuation">()</span>
@@ -292,7 +300,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-get-value" title="gst_object_get_value ()">gst_object_get_value</a> <span class="c_punctuation">()</span>
@@ -300,7 +308,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-get-value-array" title="gst_object_get_value_array ()">gst_object_get_value_array</a> <span class="c_punctuation">()</span>
@@ -308,7 +316,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstObject.html#gst-object-get-g-value-array" title="gst_object_get_g_value_array ()">gst_object_get_g_value_array</a> <span class="c_punctuation">()</span>
@@ -344,7 +352,7 @@
 <tbody>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="GstObject.html#GstObject--name" title="The “name” property">name</a></td>
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
@@ -397,8 +405,8 @@
 </div>
 <div class="refsect1">
 <a name="GstObject.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> GstObject
             <span class="lineart">├──</span> <a class="link" href="GstAllocator.html" title="GstAllocator">GstAllocator</a>
             <span class="lineart">├──</span> <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
@@ -425,15 +433,15 @@
 <a name="GstObject.description"></a><h2>Description</h2>
 <p><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> provides a root for the object hierarchy tree filed in by the
 GStreamer library.  It is currently a thin wrapper on top of
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>. It is an abstract class that is not very usable on its own.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>. It is an abstract class that is not very usable on its own.</p>
 <p><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> gives us basic refcounting, parenting functionality and locking.
 Most of the functions are just extended for special GStreamer needs and can be
-found under the same name in the base class of <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> which is <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
-(e.g. <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> becomes <a class="link" href="GstObject.html#gst-object-ref" title="gst_object_ref ()"><code class="function">gst_object_ref()</code></a>).</p>
-<p>Since <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> derives from <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>, it also inherits the
+found under the same name in the base class of <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> which is <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
+(e.g. <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> becomes <a class="link" href="GstObject.html#gst-object-ref" title="gst_object_ref ()"><code class="function">gst_object_ref()</code></a>).</p>
+<p>Since <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> derives from <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>, it also inherits the
 floating reference. Be aware that functions such as <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()"><code class="function">gst_bin_add()</code></a> and
 <a class="link" href="GstElement.html#gst-element-add-pad" title="gst_element_add_pad ()"><code class="function">gst_element_add_pad()</code></a> take ownership of the floating reference.</p>
-<p>In contrast to <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instances, <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> adds a name property. The functions
+<p>In contrast to <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instances, <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> adds a name property. The functions
 <a class="link" href="GstObject.html#gst-object-set-name" title="gst_object_set_name ()"><code class="function">gst_object_set_name()</code></a> and <a class="link" href="GstObject.html#gst-object-get-name" title="gst_object_get_name ()"><code class="function">gst_object_get_name()</code></a> are used to set/get the name
 of the object.</p>
 <div class="refsect2">
@@ -714,7 +722,7 @@
 <pre class="programlisting">#define GST_OBJECT_TRYLOCK(obj)                g_mutex_trylock(GST_OBJECT_GET_LOCK(obj))
 </pre>
 <p>This macro will try to obtain a lock on the object, but will return with
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it can't get it immediately.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it can't get it immediately.</p>
 <div class="refsect3">
 <a name="id-1.3.32.10.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -778,14 +786,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-set-name"></a><h3>gst_object_set_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_set_name (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Sets the name of <em class="parameter"><code>object</code></em>
 , or gives <em class="parameter"><code>object</code></em>
  a guaranteed unique
 name (if <em class="parameter"><code>name</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>).
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>).
 This function makes a copy of the provided name, so the caller
 retains ownership of the name it sent.</p>
 <div class="refsect3">
@@ -804,16 +812,16 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>new name of object</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> new name of object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.32.10.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the name could be set. Since Objects that have
-a parent cannot be renamed, this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in those
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the name could be set. Since Objects that have
+a parent cannot be renamed, this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in those
 cases.</p>
 <p>MT safe.  This function grabs and releases <em class="parameter"><code>object</code></em>
 's LOCK.</p>
@@ -823,12 +831,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-get-name"></a><h3>gst_object_get_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_object_get_name (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>);</pre>
 <p>Returns a copy of the name of <em class="parameter"><code>object</code></em>
 .
-Caller should <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the return value after usage.
-For a nameless object, this returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, which you can safely <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
+Caller should <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the return value after usage.
+For a nameless object, this returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, which you can safely <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
 as well.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
@@ -849,16 +857,17 @@
 <div class="refsect3">
 <a name="id-1.3.32.10.15.7"></a><h4>Returns</h4>
 <p> the name of <em class="parameter"><code>object</code></em>
-. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
+after usage.</p>
 <p>MT safe. This function grabs and releases <em class="parameter"><code>object</code></em>
 's LOCK. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-object-set-parent"></a><h3>gst_object_set_parent ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_set_parent (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
                        <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>);</pre>
 <p>Sets the parent of <em class="parameter"><code>object</code></em>
@@ -889,8 +898,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.32.10.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>parent</code></em>
-could be set or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>object</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>parent</code></em>
+could be set or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>object</code></em>
 already had a parent or <em class="parameter"><code>object</code></em>
 and <em class="parameter"><code>parent</code></em>
 are the same.</p>
@@ -925,15 +934,62 @@
 <div class="refsect3">
 <a name="id-1.3.32.10.17.6"></a><h4>Returns</h4>
 <p> parent of <em class="parameter"><code>object</code></em>
-, this can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>object</code></em>
+, this can be
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>object</code></em>
 has no parent. unref after usage.</p>
 <p>MT safe. Grabs and releases <em class="parameter"><code>object</code></em>
 's LOCK. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-object-has-parent"></a><h3>gst_object_has_parent ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_object_has_parent (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
+                       <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>);</pre>
+<p>Check if <em class="parameter"><code>parent</code></em>
+ is the parent of <em class="parameter"><code>object</code></em>
+.
+E.g. a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> can check if it owns a given <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.32.10.18.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>object</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> to check</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> to check as parent</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.32.10.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if either <em class="parameter"><code>object</code></em>
+or <em class="parameter"><code>parent</code></em>
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>parent</code></em>
+is
+the parent of <em class="parameter"><code>object</code></em>
+. Otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p>MT safe. Grabs and releases <em class="parameter"><code>object</code></em>
+'s locks.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-object-unparent"></a><h3>gst_object_unparent ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_object_unparent (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>);</pre>
@@ -944,7 +1000,7 @@
 <p>MT safe. Grabs and releases <em class="parameter"><code>object</code></em>
 's lock.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.18.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.19.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -963,10 +1019,10 @@
 <div class="refsect2">
 <a name="gst-object-default-deep-notify"></a><h3>gst_object_default_deep_notify ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_object_default_deep_notify (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
+gst_object_default_deep_notify (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *orig</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **excluded_props</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **excluded_props</code></em>);</pre>
 <p>A default deep_notify signal callback for an object. The user data
 should contain a pointer to an array of strings that should be excluded
 from the notify. The default handler will print the new value of the property
@@ -975,7 +1031,7 @@
 's LOCK for getting its
          path string.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.19.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.20.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -985,7 +1041,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that signalled the notify.</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that signalled the notify.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -995,14 +1051,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>pspec</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> of the property.</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> of the property.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>excluded_props</p></td>
-<td class="parameter_description"><p>    a set of user-specified properties to exclude or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to show
+<td class="parameter_description"><p>    a set of user-specified properties to exclude or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to show
 all changes. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1013,13 +1069,13 @@
 <a name="gst-object-default-error"></a><h3>gst_object_default_error ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_object_default_error (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *source</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
-<p>A default error function that uses <a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-printerr"><code class="function">g_printerr()</code></a> to display the error message
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>);</pre>
+<p>A default error function that uses <a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-printerr"><code class="function">g_printerr()</code></a> to display the error message
 and the optional debug sting..</p>
 <p>The default handler will simply print the error string using g_print.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.20.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.21.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1039,8 +1095,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>debug</p></td>
-<td class="parameter_description"><p> an additional debug information string, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> an additional debug information string, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1049,9 +1105,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-check-uniqueness"></a><h3>gst_object_check_uniqueness ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_object_check_uniqueness (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_object_check_uniqueness (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Checks to see if there is any object named <em class="parameter"><code>name</code></em>
  in <em class="parameter"><code>list</code></em>
 . This function
@@ -1060,7 +1116,7 @@
 will lock each <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> in the list to compare the name, so be
 careful when passing a list with a locked object.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1083,11 +1139,11 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.21.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> named <em class="parameter"><code>name</code></em>
+<a name="id-1.3.32.10.22.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> named <em class="parameter"><code>name</code></em>
 does not appear in <em class="parameter"><code>list</code></em>
 ,
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it does.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it does.</p>
 <p>MT safe. Grabs and releases the LOCK of each object in the list.</p>
 <p></p>
 </div>
@@ -1095,7 +1151,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-has-ancestor"></a><h3>gst_object_has_ancestor ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_has_ancestor (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
                          <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *ancestor</code></em>);</pre>
 <p>Check if <em class="parameter"><code>object</code></em>
@@ -1103,7 +1159,7 @@
  somewhere up in
 the hierarchy. One can e.g. check if a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> is inside a <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.22.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1125,8 +1181,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.22.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>ancestor</code></em>
+<a name="id-1.3.32.10.23.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>ancestor</code></em>
 is an ancestor of <em class="parameter"><code>object</code></em>
 .</p>
 <p>MT safe. Grabs and releases <em class="parameter"><code>object</code></em>
@@ -1137,8 +1193,8 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-ref"></a><h3>gst_object_ref ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
-gst_object_ref (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+gst_object_ref (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
 <p>Increments the reference count on <em class="parameter"><code>object</code></em>
 . This function
 does not take the lock on <em class="parameter"><code>object</code></em>
@@ -1148,7 +1204,7 @@
 constructs like :
  result = gst_object_ref (object-&gt;parent);</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.23.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.24.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1163,7 +1219,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.23.7"></a><h4>Returns</h4>
+<a name="id-1.3.32.10.24.7"></a><h4>Returns</h4>
 <p> A pointer to <em class="parameter"><code>object</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gst.Object]</span></p>
@@ -1173,7 +1229,7 @@
 <div class="refsect2">
 <a name="gst-object-unref"></a><h3>gst_object_unref ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_object_unref (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
+gst_object_unref (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
 <p>Decrements the reference count on <em class="parameter"><code>object</code></em>
 .  If reference count hits
 zero, destroy <em class="parameter"><code>object</code></em>
@@ -1183,7 +1239,7 @@
 <p>The unref method should never be called with the LOCK held since
 this might deadlock the dispose function.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.24.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.25.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1201,8 +1257,8 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-ref-sink"></a><h3>gst_object_ref_sink ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
-gst_object_ref_sink (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+gst_object_ref_sink (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
 <p>Increase the reference count of <em class="parameter"><code>object</code></em>
 , and possibly remove the floating
 reference, if <em class="parameter"><code>object</code></em>
@@ -1213,7 +1269,7 @@
 is not floating, then this call adds a new normal reference increasing the
 reference count by one.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.25.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.26.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1231,7 +1287,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-replace"></a><h3>gst_object_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_replace (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> **oldobj</code></em>,
                     <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *newobj</code></em>);</pre>
 <p>Atomically modifies a pointer to point to a new object.
@@ -1241,9 +1297,9 @@
  is increased.</p>
 <p>Either <em class="parameter"><code>newobj</code></em>
  and the value pointed to by <em class="parameter"><code>oldobj</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.26.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.27.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1253,21 +1309,21 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>oldobj</p></td>
-<td class="parameter_description"><p> pointer to a place of a <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> to
-replace. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a place of
+a <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> to replace. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>newobj</p></td>
 <td class="parameter_description"><p> a new <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.26.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>newobj</code></em>
+<a name="id-1.3.32.10.27.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>newobj</code></em>
 was different from <em class="parameter"><code>oldobj</code></em>
 </p>
 <p></p>
@@ -1276,14 +1332,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-get-path-string"></a><h3>gst_object_get_path_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_object_get_path_string (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>);</pre>
 <p>Generates a string describing the path of <em class="parameter"><code>object</code></em>
  in
 the object hierarchy. Only useful (or used) for debugging.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.27.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.28.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1298,10 +1354,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.27.7"></a><h4>Returns</h4>
+<a name="id-1.3.32.10.28.7"></a><h4>Returns</h4>
 <p> a string describing the path of <em class="parameter"><code>object</code></em>
 . You must
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the string after usage.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the string after usage.</p>
 <p>MT safe. Grabs and releases the <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a>'s LOCK for all objects
 in the hierarchy. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1315,7 +1371,7 @@
 <p>Returns a suggestion for timestamps where buffers should be split
 to get best controller results.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1330,7 +1386,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.28.6"></a><h4>Returns</h4>
+<a name="id-1.3.32.10.29.6"></a><h4>Returns</h4>
 <p> Returns the suggested timestamp or <a class="link" href="GstClock.html#GST-CLOCK-TIME-NONE:CAPS" title="GST_CLOCK_TIME_NONE"><code class="literal">GST_CLOCK_TIME_NONE</code></a>
 if no control-rate was set.</p>
 <p></p>
@@ -1339,7 +1395,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-sync-values"></a><h3>gst_object_sync_values ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_sync_values (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
                         <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Sets the properties of the object, according to the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSources</span></a> that
@@ -1347,7 +1403,7 @@
 <p>If this function fails, it is most likely the application developers fault.
 Most probably the control sources are not setup correctly.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.29.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.30.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1369,22 +1425,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.29.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the controller values could be applied to the object
-properties, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<a name="id-1.3.32.10.30.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the controller values could be applied to the object
+properties, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-object-has-active-control-bindings"></a><h3>gst_object_has_active_control_bindings ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_has_active_control_bindings
                                (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>);</pre>
 <p>Check if the <em class="parameter"><code>object</code></em>
  has an active controlled properties.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.30.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1399,8 +1455,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.30.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the object has active controlled properties</p>
+<a name="id-1.3.32.10.31.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the object has active controlled properties</p>
 <p></p>
 </div>
 </div>
@@ -1410,12 +1466,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_object_set_control_bindings_disabled
                                (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> disabled</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> disabled</code></em>);</pre>
 <p>This function is used to disable all controlled properties of the <em class="parameter"><code>object</code></em>
  for
 some time, i.e. <a class="link" href="GstObject.html#gst-object-sync-values" title="gst_object_sync_values ()"><code class="function">gst_object_sync_values()</code></a> will do nothing.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.31.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1444,13 +1500,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_object_set_control_binding_disabled
                                (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> disabled</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> disabled</code></em>);</pre>
 <p>This function is used to disable the control bindings on a property for
 some time, i.e. <a class="link" href="GstObject.html#gst-object-sync-values" title="gst_object_sync_values ()"><code class="function">gst_object_sync_values()</code></a> will do nothing for the
 property.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.32.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1481,7 +1537,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-object-add-control-binding"></a><h3>gst_object_add_control_binding ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_add_control_binding (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>);</pre>
 <p>Attach the <a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> to the object. If there already was a
@@ -1490,7 +1546,7 @@
  will take ownership of the <em class="parameter"><code>binding</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.33.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.34.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1512,10 +1568,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.33.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the given <em class="parameter"><code>binding</code></em>
+<a name="id-1.3.32.10.34.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the given <em class="parameter"><code>binding</code></em>
 has not been setup for this object or
-has been setup for a non suitable property, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
+has been setup for a non suitable property, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -1524,11 +1580,11 @@
 <a name="gst-object-get-control-binding"></a><h3>gst_object_get_control_binding ()</h3>
 <pre class="programlisting"><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="returnvalue">GstControlBinding</span></a> *
 gst_object_get_control_binding (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);</pre>
 <p>Gets the corresponding <a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> for the property. This should be
 unreferenced again after use.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.34.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1550,23 +1606,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.34.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> for <em class="parameter"><code>property_name</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
-the property is not controlled. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.32.10.35.6"></a><h4>Returns</h4>
+<p> the <a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> for
+<em class="parameter"><code>property_name</code></em>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the property is not controlled. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-object-remove-control-binding"></a><h3>gst_object_remove_control_binding ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_remove_control_binding (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
                                    <em class="parameter"><code><a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a> *binding</code></em>);</pre>
 <p>Removes the corresponding <a class="link" href="GstControlBinding.html" title="GstControlBinding"><span class="type">GstControlBinding</span></a>. If it was the
 last ref of the binding, it will be disposed.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.35.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1588,21 +1644,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.35.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the binding could be removed.</p>
+<a name="id-1.3.32.10.36.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the binding could be removed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-object-get-value"></a><h3>gst_object_get_value ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 gst_object_get_value (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
                       <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Gets the value for the given controlled property at the requested time.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.36.5"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1629,22 +1685,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.36.6"></a><h4>Returns</h4>
-<p> the GValue of the property at the given time, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-property isn't controlled.</p>
-<p></p>
+<a name="id-1.3.32.10.37.6"></a><h4>Returns</h4>
+<p> the GValue of the property at the given time,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the property isn't controlled. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-object-get-value-array"></a><h3>gst_object_get_value_array ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_get_value_array (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
                             <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
                             <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> interval</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> values</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> values</code></em>);</pre>
 <p>Gets a number of values for the given controlled property starting at the
 requested time. The array <em class="parameter"><code>values</code></em>
  need to hold enough space for <em class="parameter"><code>n_values</code></em>
@@ -1653,10 +1709,10 @@
 <p>This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</p>
 <p>The values are unboxed and ready to be used. The similar function 
-<a class="link" href="GstObject.html#gst-object-get-g-value-array" title="gst_object_get_g_value_array ()"><code class="function">gst_object_get_g_value_array()</code></a> returns the array as <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> and is
+<a class="link" href="GstObject.html#gst-object-get-g-value-array" title="gst_object_get_g_value_array ()"><code class="function">gst_object_get_g_value_array()</code></a> returns the array as <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> and is
 better suites for bindings.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.37.7"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.38.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1698,30 +1754,30 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.37.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<a name="id-1.3.32.10.38.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-object-get-g-value-array"></a><h3>gst_object_get_g_value_array ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_object_get_g_value_array (<em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *object</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
                               <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
                               <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> interval</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *values</code></em>);</pre>
-<p>Gets a number of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> for the given controlled property starting at the
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_values</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *values</code></em>);</pre>
+<p>Gets a number of <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a> for the given controlled property starting at the
 requested time. The array <em class="parameter"><code>values</code></em>
  need to hold enough space for <em class="parameter"><code>n_values</code></em>
  of
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
 <p>This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.38.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.39.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1763,8 +1819,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.38.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<a name="id-1.3.32.10.39.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given array could be filled, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
@@ -1785,7 +1841,7 @@
 <p>The control-rate is not expected to change if the element is in
 <a class="link" href="GstElement.html#GST-STATE-PAUSED:CAPS"><code class="literal">GST_STATE_PAUSED</code></a> or <a class="link" href="GstElement.html#GST-STATE-PLAYING:CAPS"><code class="literal">GST_STATE_PLAYING</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.39.7"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.40.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1800,7 +1856,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.32.10.39.8"></a><h4>Returns</h4>
+<a name="id-1.3.32.10.40.8"></a><h4>Returns</h4>
 <p> the control rate in nanoseconds</p>
 <p></p>
 </div>
@@ -1820,7 +1876,7 @@
 <p>The control-rate should not change if the element is in <a class="link" href="GstElement.html#GST-STATE-PAUSED:CAPS"><code class="literal">GST_STATE_PAUSED</code></a> or
 <a class="link" href="GstElement.html#GST-STATE-PLAYING:CAPS"><code class="literal">GST_STATE_PLAYING</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.32.10.40.6"></a><h4>Parameters</h4>
+<a name="id-1.3.32.10.41.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1865,12 +1921,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> <em class="structfield"><code><a name="GstObject-struct.lock"></a>lock</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> <em class="structfield"><code><a name="GstObject-struct.lock"></a>lock</code></em>;</p></td>
 <td class="struct_member_description"><p>object LOCK</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstObject-struct.name"></a>name</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstObject-struct.name"></a>name</code></em>;</p></td>
 <td class="struct_member_description"><p>The name of the object</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1913,12 +1969,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnownedClass"><span class="type">GInitiallyUnownedClass</span></a> <em class="structfield"><code><a name="GstObjectClass.parent-class"></a>parent_class</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnownedClass"><span class="type">GInitiallyUnownedClass</span></a> <em class="structfield"><code><a name="GstObjectClass.parent-class"></a>parent_class</code></em>;</p></td>
 <td class="struct_member_description"><p>parent</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstObjectClass.path-string-separator"></a>path_string_separator</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstObjectClass.path-string-separator"></a>path_string_separator</code></em>;</p></td>
 <td class="struct_member_description"><p>separator used by <a class="link" href="GstObject.html#gst-object-get-path-string" title="gst_object_get_path_string ()"><code class="function">gst_object_get_path_string()</code></a></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1958,7 +2014,7 @@
 <a name="GstObject.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstObject--name"></a><h3>The <code class="literal">“name”</code> property</h3>
-<pre class="programlisting">  “name”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “name”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The name of the object.</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: NULL</p>
@@ -1968,7 +2024,7 @@
 <a name="GstObject--parent"></a><h3>The <code class="literal">“parent”</code> property</h3>
 <pre class="programlisting">  “parent”                   <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *</pre>
 <p>The parent of the object. Please note, that when changing the 'parent'
-property, we don't emit <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a> and <a class="link" href="GstObject.html#GstObject-deep-notify" title="The “deep-notify” signal"><span class="type">“deep-notify”</span></a>
+property, we don't emit <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a> and <a class="link" href="GstObject.html#GstObject-deep-notify" title="The “deep-notify” signal"><span class="type">“deep-notify”</span></a>
 signals due to locking issues. In some cases one can use
 <a class="link" href="GstBin.html#GstBin-element-added" title="The “element-added” signal"><span class="type">“element-added”</span></a> or <a class="link" href="GstBin.html#GstBin-element-removed" title="The “element-removed” signal"><span class="type">“element-removed”</span></a> signals on the parent to
 achieve a similar effect.</p>
@@ -1982,8 +2038,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a>  *gstobject,
                <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a>  *prop_object,
-               <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> *prop,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> *prop,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>The deep notify signal is used to be notified of property changes. It is
 typically attached to the toplevel bin to receive notifications from all
 the elements contained in that bin.</p>
@@ -2025,6 +2081,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstPad.html b/docs/gst/html/GstPad.html
index 15425b1..a95edcd 100644
--- a/docs/gst/html/GstPad.html
+++ b/docs/gst/html/GstPad.html
@@ -8,16 +8,16 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstObject.html" title="GstObject">
 <link rel="next" href="GstPadTemplate.html" title="GstPadTemplate">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPad.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstPad.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#GstPad.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPad.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstPad.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#GstPad.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstPad.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,7 +44,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-link-get-name" title="gst_pad_link_get_name ()">gst_pad_link_get_name</a> <span class="c_punctuation">()</span>
@@ -63,7 +63,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-flow-get-name" title="gst_flow_get_name ()">gst_flow_get_name</a> <span class="c_punctuation">()</span>
@@ -71,14 +71,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-flow-to-quark" title="gst_flow_to_quark ()">gst_flow_to_quark</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-mode-get-name" title="gst_pad_mode_get_name ()">gst_pad_mode_get_name</a> <span class="c_punctuation">()</span>
@@ -146,7 +146,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-unlink" title="gst_pad_unlink ()">gst_pad_unlink</a> <span class="c_punctuation">()</span>
@@ -154,7 +154,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-is-linked" title="gst_pad_is_linked ()">gst_pad_is_linked</a> <span class="c_punctuation">()</span>
@@ -162,7 +162,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-can-link" title="gst_pad_can_link ()">gst_pad_can_link</a> <span class="c_punctuation">()</span>
@@ -210,7 +210,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-has-current-caps" title="gst_pad_has_current_caps ()">gst_pad_has_current_caps</a> <span class="c_punctuation">()</span>
@@ -226,7 +226,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPad.html#GstPadStickyEventsForeachFunction" title="GstPadStickyEventsForeachFunction ()">*GstPadStickyEventsForeachFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -242,13 +242,21 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-is-active" title="gst_pad_is_active ()">gst_pad_is_active</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
+<td class="function_type">
+<a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstPad.html#gst-pad-get-last-flow-return" title="gst_pad_get_last_flow_return ()">gst_pad_get_last_flow_return</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
 <td class="define_keyword">#define</td>
 <td class="function_name">
 <a class="link" href="GstPad.html#GST-PAD-PROBE-INFO-TYPE:CAPS" title="GST_PAD_PROBE_INFO_TYPE()">GST_PAD_PROBE_INFO_TYPE</a><span class="c_punctuation">()</span>
@@ -344,7 +352,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gulong"><span class="returnvalue">gulong</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gulong"><span class="returnvalue">gulong</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-add-probe" title="gst_pad_add_probe ()">gst_pad_add_probe</a> <span class="c_punctuation">()</span>
@@ -360,7 +368,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-is-blocked" title="gst_pad_is_blocked ()">gst_pad_is_blocked</a> <span class="c_punctuation">()</span>
@@ -368,7 +376,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-is-blocking" title="gst_pad_is_blocking ()">gst_pad_is_blocking</a> <span class="c_punctuation">()</span>
@@ -504,7 +512,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPad.html#GstPadEventFunction" title="GstPadEventFunction ()">*GstPadEventFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -556,7 +564,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-proxy-query-caps" title="gst_pad_proxy_query_caps ()">gst_pad_proxy_query_caps</a> <span class="c_punctuation">()</span>
@@ -564,7 +572,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-proxy-query-accept-caps" title="gst_pad_proxy_query_accept_caps ()">gst_pad_proxy_query_accept_caps</a> <span class="c_punctuation">()</span>
@@ -586,7 +594,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPad.html#GstPadActivateFunction" title="GstPadActivateFunction ()">*GstPadActivateFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -608,7 +616,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPad.html#GstPadActivateModeFunction" title="GstPadActivateModeFunction ()">*GstPadActivateModeFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -616,7 +624,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-needs-reconfigure" title="gst_pad_needs_reconfigure ()">gst_pad_needs_reconfigure</a> <span class="c_punctuation">()</span>
@@ -624,7 +632,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-check-reconfigure" title="gst_pad_check_reconfigure ()">gst_pad_check_reconfigure</a> <span class="c_punctuation">()</span>
@@ -648,7 +656,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-push-event" title="gst_pad_push_event ()">gst_pad_push_event</a> <span class="c_punctuation">()</span>
@@ -672,7 +680,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-activate-mode" title="gst_pad_activate_mode ()">gst_pad_activate_mode</a> <span class="c_punctuation">()</span>
@@ -680,7 +688,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-send-event" title="gst_pad_send_event ()">gst_pad_send_event</a> <span class="c_punctuation">()</span>
@@ -688,7 +696,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-event-default" title="gst_pad_event_default ()">gst_pad_event_default</a> <span class="c_punctuation">()</span>
@@ -696,7 +704,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-query" title="gst_pad_query ()">gst_pad_query</a> <span class="c_punctuation">()</span>
@@ -704,7 +712,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-peer-query" title="gst_pad_peer_query ()">gst_pad_peer_query</a> <span class="c_punctuation">()</span>
@@ -712,7 +720,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-query-default" title="gst_pad_query_default ()">gst_pad_query_default</a> <span class="c_punctuation">()</span>
@@ -720,7 +728,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-query-position" title="gst_pad_query_position ()">gst_pad_query_position</a> <span class="c_punctuation">()</span>
@@ -728,7 +736,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-query-duration" title="gst_pad_query_duration ()">gst_pad_query_duration</a> <span class="c_punctuation">()</span>
@@ -736,7 +744,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-query-convert" title="gst_pad_query_convert ()">gst_pad_query_convert</a> <span class="c_punctuation">()</span>
@@ -744,7 +752,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-query-accept-caps" title="gst_pad_query_accept_caps ()">gst_pad_query_accept_caps</a> <span class="c_punctuation">()</span>
@@ -760,7 +768,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-peer-query-position" title="gst_pad_peer_query_position ()">gst_pad_peer_query_position</a> <span class="c_punctuation">()</span>
@@ -768,7 +776,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-peer-query-duration" title="gst_pad_peer_query_duration ()">gst_pad_peer_query_duration</a> <span class="c_punctuation">()</span>
@@ -776,7 +784,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-peer-query-convert" title="gst_pad_peer_query_convert ()">gst_pad_peer_query_convert</a> <span class="c_punctuation">()</span>
@@ -784,7 +792,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-peer-query-accept-caps" title="gst_pad_peer_query_accept_caps ()">gst_pad_peer_query_accept_caps</a> <span class="c_punctuation">()</span>
@@ -814,7 +822,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPad.html#GstPadQueryFunction" title="GstPadQueryFunction ()">*GstPadQueryFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -868,7 +876,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-get-element-private" title="gst_pad_get_element_private ()">gst_pad_get_element_private</a> <span class="c_punctuation">()</span>
@@ -876,7 +884,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-create-stream-id" title="gst_pad_create_stream_id ()">gst_pad_create_stream_id</a> <span class="c_punctuation">()</span>
@@ -884,7 +892,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-create-stream-id-printf" title="gst_pad_create_stream_id_printf ()">gst_pad_create_stream_id_printf</a> <span class="c_punctuation">()</span>
@@ -892,7 +900,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-create-stream-id-printf-valist" title="gst_pad_create_stream_id_printf_valist ()">gst_pad_create_stream_id_printf_valist</a> <span class="c_punctuation">()</span>
@@ -900,7 +908,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-get-stream-id" title="gst_pad_get_stream_id ()">gst_pad_get_stream_id</a> <span class="c_punctuation">()</span>
@@ -908,7 +916,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPad.html#GstPadForwardFunction" title="GstPadForwardFunction ()">*GstPadForwardFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -916,7 +924,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-forward" title="gst_pad_forward ()">gst_pad_forward</a> <span class="c_punctuation">()</span>
@@ -940,7 +948,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-start-task" title="gst_pad_start_task ()">gst_pad_start_task</a> <span class="c_punctuation">()</span>
@@ -948,7 +956,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-pause-task" title="gst_pad_pause_task ()">gst_pad_pause_task</a> <span class="c_punctuation">()</span>
@@ -956,7 +964,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-stop-task" title="gst_pad_stop_task ()">gst_pad_stop_task</a> <span class="c_punctuation">()</span>
@@ -964,7 +972,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPad.html#gst-pad-set-active" title="gst_pad_set_active ()">gst_pad_set_active</a> <span class="c_punctuation">()</span>
@@ -1027,6 +1035,12 @@
 <tr>
 <td class="define_keyword">#define</td>
 <td class="function_name">
+<a class="link" href="GstPad.html#GST-PAD-LAST-FLOW-RETURN:CAPS" title="GST_PAD_LAST_FLOW_RETURN()">GST_PAD_LAST_FLOW_RETURN</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
 <a class="link" href="GstPad.html#GST-PAD-TASK:CAPS" title="GST_PAD_TASK()">GST_PAD_TASK</a><span class="c_punctuation">()</span>
 </td>
 </tr>
@@ -1282,6 +1296,11 @@
 <td class="property_flags">Read / Write / Construct Only</td>
 </tr>
 <tr>
+<td class="property_type"><span class="type">gint64</span></td>
+<td class="property_name"><a class="link" href="GstPad.html#GstPad--offset" title="The “offset” property">offset</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
 <td class="property_type">
 <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *</td>
 <td class="property_name"><a class="link" href="GstPad.html#GstPad--template" title="The “template” property">template</a></td>
@@ -1365,8 +1384,8 @@
 </div>
 <div class="refsect1">
 <a name="GstPad.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstPad
                 <span class="lineart">╰──</span> <a class="link" href="GstGhostPad.html#GstProxyPad">GstProxyPad</a>
@@ -1389,7 +1408,7 @@
 on the data that the element is processing or based on the pads that the
 application requests.</p>
 <p>Pads without pad templates can be created with <a class="link" href="GstPad.html#gst-pad-new" title="gst_pad_new ()"><code class="function">gst_pad_new()</code></a>,
-which takes a direction and a name as an argument.  If the name is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
+which takes a direction and a name as an argument.  If the name is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
 then a guaranteed unique name will be assigned to it.</p>
 <p>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> creating a pad will typically use the various
 gst_pad_set_*_function() calls to register callbacks for events, queries or
@@ -1430,7 +1449,7 @@
 <a name="GstPad.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-pad-link-get-name"></a><h3>gst_pad_link_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_pad_link_get_name (<em class="parameter"><code><a class="link" href="GstPad.html#GstPadLinkReturn" title="enum GstPadLinkReturn"><span class="type">GstPadLinkReturn</span></a> ret</code></em>);</pre>
 <p>Gets a string representing the given pad-link return.</p>
 <div class="refsect3">
@@ -1504,7 +1523,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-flow-get-name"></a><h3>gst_flow_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_flow_get_name (<em class="parameter"><code><a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> ret</code></em>);</pre>
 <p>Gets a string representing the given flow return.</p>
 <div class="refsect3">
@@ -1531,7 +1550,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-flow-to-quark"></a><h3>gst_flow_to_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_flow_to_quark (<em class="parameter"><code><a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> ret</code></em>);</pre>
 <p>Get the unique quark for the given GstFlowReturn.</p>
 <div class="refsect3">
@@ -1559,7 +1578,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-mode-get-name"></a><h3>gst_pad_mode_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_pad_mode_get_name (<em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>);</pre>
 <p>Return the name of a pad mode, for use in debug messages mostly.</p>
 <div class="refsect3">
@@ -1628,7 +1647,7 @@
 <a name="gst-pad-get-name"></a><h3>gst_pad_get_name()</h3>
 <pre class="programlisting">#define gst_pad_get_name(pad) gst_object_get_name (GST_OBJECT_CAST (pad))
 </pre>
-<p>Get a copy of the name of the pad. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+<p>Get a copy of the name of the pad. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
 <p>MT safe.</p>
 <div class="refsect3">
 <a name="id-1.3.33.10.9.6"></a><h4>Parameters</h4>
@@ -1684,7 +1703,7 @@
 <p>Get the parent of <em class="parameter"><code>pad</code></em>
 . This function increases the refcount
 of the parent object so you should <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> it after usage.
-Can return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the pad did not have a parent.</p>
+Can return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the pad did not have a parent.</p>
 <p>MT safe.</p>
 <div class="refsect3">
 <a name="id-1.3.33.10.11.6"></a><h4>Parameters</h4>
@@ -1701,6 +1720,11 @@
 </tr></tbody>
 </table></div>
 </div>
+<div class="refsect3">
+<a name="id-1.3.33.10.11.7"></a><h4>Returns</h4>
+<p> the parent. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
 </div>
 <hr>
 <div class="refsect2">
@@ -1710,7 +1734,7 @@
 <p>Gets the parent of <em class="parameter"><code>pad</code></em>
 , cast to a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>. If a <em class="parameter"><code>pad</code></em>
  has no parent or
-its parent is not an element, return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+its parent is not an element, return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.33.10.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1728,10 +1752,11 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.12.6"></a><h4>Returns</h4>
-<p> the parent of the pad. The caller has a
-reference on the parent, so unref when you're finished with it.</p>
+<p> the parent of the pad. The
+caller has a reference on the parent, so unref when you're finished
+with it.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1758,10 +1783,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.13.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> from which this pad was
-instantiated, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if this pad has no template. Unref after
-usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> from which
+this pad was instantiated, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if this pad has no
+template. Unref after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1852,7 +1877,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-unlink"></a><h3>gst_pad_unlink ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_unlink (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *srcpad</code></em>,
                 <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *sinkpad</code></em>);</pre>
 <p>Unlinks the source pad from the sink pad. Will emit the <a class="link" href="GstPad.html#GstPad-unlinked" title="The “unlinked” signal"><span class="type">“unlinked”</span></a>
@@ -1881,7 +1906,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads were unlinked. This function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads were unlinked. This function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
 the pads were not linked together.</p>
 <p>MT safe.</p>
 <p></p>
@@ -1890,7 +1915,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-is-linked"></a><h3>gst_pad_is_linked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_is_linked (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Checks if a <em class="parameter"><code>pad</code></em>
  is linked to another pad or not.</p>
@@ -1911,7 +1936,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is linked, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is linked, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -1919,7 +1944,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-can-link"></a><h3>gst_pad_can_link ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_can_link (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *srcpad</code></em>,
                   <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *sinkpad</code></em>);</pre>
 <p>Checks if the source pad and the sink pad are compatible so they can be
@@ -1948,7 +1973,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads can be linked.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pads can be linked.</p>
 <p></p>
 </div>
 </div>
@@ -1981,11 +2006,12 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.19.7"></a><h4>Returns</h4>
-<p> the allowed <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> of the pad link. Unref the
-caps when you no longer need it. This function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when <em class="parameter"><code>pad</code></em>
+<p> the allowed <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> of the
+pad link. Unref the caps when you no longer need it. This
+function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when <em class="parameter"><code>pad</code></em>
 has no peer.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -2106,7 +2132,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-has-current-caps"></a><h3>gst_pad_has_current_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_has_current_caps (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Check if <em class="parameter"><code>pad</code></em>
  has caps set on it with a <a class="link" href="GstEvent.html#GST-EVENT-CAPS"><span class="type">GST_EVENT_CAPS</span></a> event.</p>
@@ -2127,7 +2153,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.24.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>pad</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>pad</code></em>
 has caps associated with it.</p>
 <p></p>
 </div>
@@ -2138,7 +2164,7 @@
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
 gst_pad_get_sticky_event (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                           <em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> event_type</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>Returns a new reference of the sticky event of type <em class="parameter"><code>event_type</code></em>
 
 from the event.</p>
@@ -2171,26 +2197,27 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.25.6"></a><h4>Returns</h4>
-<p> a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> of type <em class="parameter"><code>event_type</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when no
-event of <em class="parameter"><code>event_type</code></em>
-was on <em class="parameter"><code>pad</code></em>
+<p> a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> of type
+<em class="parameter"><code>event_type</code></em>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when no event of <em class="parameter"><code>event_type</code></em>
+was on
+<em class="parameter"><code>pad</code></em>
 . Unref after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstPadStickyEventsForeachFunction"></a><h3>GstPadStickyEventsForeachFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPadStickyEventsForeachFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **event</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Callback used by <a class="link" href="GstPad.html#gst-pad-sticky-events-foreach" title="gst_pad_sticky_events_foreach ()"><code class="function">gst_pad_sticky_events_foreach()</code></a>.</p>
-<p>When this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the next event will be
-returned. When <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned, <a class="link" href="GstPad.html#gst-pad-sticky-events-foreach" title="gst_pad_sticky_events_foreach ()"><code class="function">gst_pad_sticky_events_foreach()</code></a> will return.</p>
+<p>When this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the next event will be
+returned. When <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned, <a class="link" href="GstPad.html#gst-pad-sticky-events-foreach" title="gst_pad_sticky_events_foreach ()"><code class="function">gst_pad_sticky_events_foreach()</code></a> will return.</p>
 <p>When <em class="parameter"><code>event</code></em>
- is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the item will be removed from the list of sticky events.
+ is set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the item will be removed from the list of sticky events.
 <em class="parameter"><code>event</code></em>
  can be replaced by assigning a new reference to it.
 This function is responsible for unreffing the old event when
@@ -2211,12 +2238,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>event</p></td>
-<td class="parameter_description"><p>a sticky <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> a sticky <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>user_data</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> to optional user data.</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> to optional user data.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -2224,7 +2251,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.26.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the iteration should continue</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the iteration should continue</p>
 <p></p>
 </div>
 </div>
@@ -2234,12 +2261,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_sticky_events_foreach (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                <em class="parameter"><code><a class="link" href="GstPad.html#GstPadStickyEventsForeachFunction" title="GstPadStickyEventsForeachFunction ()"><span class="type">GstPadStickyEventsForeachFunction</span></a> foreach_func</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Iterates all sticky events on <em class="parameter"><code>pad</code></em>
  and calls <em class="parameter"><code>foreach_func</code></em>
  for every
 event. If <em class="parameter"><code>foreach_func</code></em>
- returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> the iteration is immediately stopped.</p>
+ returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> the iteration is immediately stopped.</p>
 <div class="refsect3">
 <a name="id-1.3.33.10.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2272,7 +2299,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-is-active"></a><h3>gst_pad_is_active ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_is_active (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Query if a pad is active</p>
 <div class="refsect3">
@@ -2292,13 +2319,36 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.28.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is active.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is active.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-pad-get-last-flow-return"></a><h3>gst_pad_get_last_flow_return ()</h3>
+<pre class="programlisting"><a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>
+gst_pad_get_last_flow_return (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
+<p>Gets the <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> return from the last data passed by this pad.</p>
+<div class="refsect3">
+<a name="id-1.3.33.10.29.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GST-PAD-PROBE-INFO-TYPE:CAPS"></a><h3>GST_PAD_PROBE_INFO_TYPE()</h3>
 <pre class="programlisting">#define GST_PAD_PROBE_INFO_TYPE(d)         ((d)-&gt;type)
 </pre>
@@ -2345,7 +2395,7 @@
 <pre class="programlisting"><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="returnvalue">GstBuffer</span></a> *
 gst_pad_probe_info_get_buffer (<em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a> *info</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.3.33.10.36.4"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.37.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2360,7 +2410,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.36.5"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.37.5"></a><h4>Returns</h4>
 <p> The <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> from the probe. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -2377,32 +2427,6 @@
 <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> *
 gst_pad_probe_info_get_event (<em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a> *info</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.3.33.10.38.4"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.33.10.38.5"></a><h4>Returns</h4>
-<p> The <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> from the probe. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-pad-probe-info-get-query"></a><h3>gst_pad_probe_info_get_query ()</h3>
-<pre class="programlisting"><a class="link" href="GstQuery.html" title="GstQuery"><span class="returnvalue">GstQuery</span></a> *
-gst_pad_probe_info_get_query (<em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a> *info</code></em>);</pre>
-<div class="refsect3">
 <a name="id-1.3.33.10.39.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -2419,6 +2443,32 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.39.5"></a><h4>Returns</h4>
+<p> The <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> from the probe. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-pad-probe-info-get-query"></a><h3>gst_pad_probe_info_get_query ()</h3>
+<pre class="programlisting"><a class="link" href="GstQuery.html" title="GstQuery"><span class="returnvalue">GstQuery</span></a> *
+gst_pad_probe_info_get_query (<em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a> *info</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.3.33.10.40.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.33.10.40.5"></a><h4>Returns</h4>
 <p> The <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> from the probe. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -2441,13 +2491,13 @@
 <pre class="programlisting"><a class="link" href="GstPad.html#GstPadProbeReturn" title="enum GstPadProbeReturn"><span class="returnvalue">GstPadProbeReturn</span></a>
 <span class="c_punctuation">(</span>*GstPadProbeCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                         <em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeInfo" title="struct GstPadProbeInfo"><span class="type">GstPadProbeInfo</span></a> *info</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Callback used by <a class="link" href="GstPad.html#gst-pad-add-probe" title="gst_pad_add_probe ()"><code class="function">gst_pad_add_probe()</code></a>. Gets called to notify about the current
 blocking type.</p>
 <p>The callback is allowed to modify the data pointer in <em class="parameter"><code>info</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.42.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.43.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2474,7 +2524,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.42.7"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.43.7"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstPadProbeReturn" title="enum GstPadProbeReturn"><span class="type">GstPadProbeReturn</span></a></p>
 <p></p>
 </div>
@@ -2482,17 +2532,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-add-probe"></a><h3>gst_pad_add_probe ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gulong"><span class="returnvalue">gulong</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gulong"><span class="returnvalue">gulong</span></a>
 gst_pad_add_probe (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                    <em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeType" title="enum GstPadProbeType"><span class="type">GstPadProbeType</span></a> mask</code></em>,
                    <em class="parameter"><code><a class="link" href="GstPad.html#GstPadProbeCallback" title="GstPadProbeCallback ()"><span class="type">GstPadProbeCallback</span></a> callback</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_data</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_data</code></em>);</pre>
 <p>Be notified of different states of pads. The provided callback is called for
 every state that matches <em class="parameter"><code>mask</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.43.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2523,17 +2573,17 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>destroy_data</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> for user_data</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> for user_data</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.43.6"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.44.6"></a><h4>Returns</h4>
 <p> an id or 0 if no probe is pending. The id can be used to remove the
 probe with <a class="link" href="GstPad.html#gst-pad-remove-probe" title="gst_pad_remove_probe ()"><code class="function">gst_pad_remove_probe()</code></a>. When using GST_PAD_PROBE_TYPE_IDLE it can
-happend that the probe can be run immediately and if the probe returns
+happen that the probe can be run immediately and if the probe returns
 GST_PAD_PROBE_REMOVE this functions returns 0.</p>
 <p>MT safe.</p>
 <p></p>
@@ -2544,13 +2594,13 @@
 <a name="gst-pad-remove-probe"></a><h3>gst_pad_remove_probe ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_remove_probe (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> id</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> id</code></em>);</pre>
 <p>Remove the probe with <em class="parameter"><code>id</code></em>
  from <em class="parameter"><code>pad</code></em>
 .</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.44.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.45.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2575,41 +2625,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-is-blocked"></a><h3>gst_pad_is_blocked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_is_blocked (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Checks if the pad is blocked or not. This function returns the
 last requested state of the pad. It is not certain that the pad
 is actually blocking at this point (see <a class="link" href="GstPad.html#gst-pad-is-blocking" title="gst_pad_is_blocking ()"><code class="function">gst_pad_is_blocking()</code></a>).</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.45.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>pad</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to query</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.33.10.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is blocked.</p>
-<p>MT safe.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-pad-is-blocking"></a><h3>gst_pad_is_blocking ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_pad_is_blocking (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
-<p>Checks if the pad is blocking or not. This is a guaranteed state
-of whether the pad is actually blocking on a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> or a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p>
-<div class="refsect3">
 <a name="id-1.3.33.10.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -2626,7 +2647,36 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.46.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is blocking.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is blocked.</p>
+<p>MT safe.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-pad-is-blocking"></a><h3>gst_pad_is_blocking ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_pad_is_blocking (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
+<p>Checks if the pad is blocking or not. This is a guaranteed state
+of whether the pad is actually blocking on a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> or a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.33.10.47.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to query</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.33.10.47.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is blocking.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -2641,7 +2691,7 @@
  has to be a source
 pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.47.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2656,7 +2706,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.47.6"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.48.6"></a><h4>Returns</h4>
 <p> the offset.</p>
 <p></p>
 </div>
@@ -2670,7 +2720,7 @@
 <p>Set the offset that will be applied to the running time of <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.48.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2696,14 +2746,14 @@
 <div class="refsect2">
 <a name="gst-pad-new"></a><h3>gst_pad_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
-gst_pad_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_pad_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
              <em class="parameter"><code><a class="link" href="GstPad.html#GstPadDirection" title="enum GstPadDirection"><span class="type">GstPadDirection</span></a> direction</code></em>);</pre>
 <p>Creates a new pad with the given name in the given direction.
-If name is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a guaranteed unique name (across all pads)
+If name is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a guaranteed unique name (across all pads)
 will be assigned.
 This function makes a copy of the name so you can safely free the name.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.49.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2713,8 +2763,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>the name of the new pad.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the name of the new pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>direction</p></td>
@@ -2725,10 +2775,11 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.49.6"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error.</p>
+<a name="id-1.3.33.10.50.6"></a><h4>Returns</h4>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -2736,13 +2787,13 @@
 <a name="gst-pad-new-from-template"></a><h3>gst_pad_new_from_template ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
 gst_pad_new_from_template (<em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Creates a new pad with the given name from the given template.
-If name is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a guaranteed unique name (across all pads)
+If name is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a guaranteed unique name (across all pads)
 will be assigned.
 This function makes a copy of the name so you can safely free the name.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.50.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2757,16 +2808,17 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>the name of the element</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the name of the pad. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.50.6"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
+<a name="id-1.3.33.10.51.6"></a><h4>Returns</h4>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error. </p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -2774,13 +2826,13 @@
 <a name="gst-pad-new-from-static-template"></a><h3>gst_pad_new_from_static_template ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> *
 gst_pad_new_from_static_template (<em class="parameter"><code><a class="link" href="GstPadTemplate.html#GstStaticPadTemplate" title="struct GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> *templ</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Creates a new pad with the given name from the given static template.
-If name is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a guaranteed unique name (across all pads)
+If name is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a guaranteed unique name (across all pads)
 will be assigned.
 This function makes a copy of the name so you can safely free the name.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.51.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2795,16 +2847,17 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>the name of the element</p></td>
+<td class="parameter_description"><p>the name of the pad</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.51.6"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
+<a name="id-1.3.33.10.52.6"></a><h4>Returns</h4>
+<p> a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error. </p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -2812,10 +2865,10 @@
 <a name="gst-pad-set-chain-function"></a><h3>gst_pad_set_chain_function()</h3>
 <pre class="programlisting">#define gst_pad_set_chain_function(p,f)         gst_pad_set_chain_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-chain-function-full" title="gst_pad_set_chain_function_full ()"><code class="function">gst_pad_set_chain_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-chain-function-full" title="gst_pad_set_chain_function_full ()"><code class="function">gst_pad_set_chain_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.52.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2843,12 +2896,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_chain_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPad.html#GstPadChainFunction" title="GstPadChainFunction ()"><span class="type">GstPadChainFunction</span></a> chain</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given chain function for the pad. The chain function is called to
 process a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> input buffer. see <a class="link" href="GstPad.html#GstPadChainFunction" title="GstPadChainFunction ()"><span class="type">GstPadChainFunction</span></a> for more details.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.53.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2898,7 +2951,7 @@
 <p>When a chain function detects an error in the data stream, it must post an
 error on the bus and return an appropriate <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.54.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.55.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2913,23 +2966,23 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> that is chained, not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> that is chained, not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.54.8"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.55.8"></a><h4>Returns</h4>
 <p> <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> for success</p>
 <p></p>
 </div>
@@ -2939,10 +2992,10 @@
 <a name="gst-pad-set-chain-list-function"></a><h3>gst_pad_set_chain_list_function()</h3>
 <pre class="programlisting">#define gst_pad_set_chain_list_function(p,f)    gst_pad_set_chain_list_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-chain-list-function-full" title="gst_pad_set_chain_list_function_full ()"><code class="function">gst_pad_set_chain_list_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-chain-list-function-full" title="gst_pad_set_chain_list_function_full ()"><code class="function">gst_pad_set_chain_list_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.55.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.56.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2970,13 +3023,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_chain_list_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstPad.html#GstPadChainListFunction" title="GstPadChainListFunction ()"><span class="type">GstPadChainListFunction</span></a> chainlist</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given chain list function for the pad. The chainlist function is
 called to process a <a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> input buffer list. See
 <a class="link" href="GstPad.html#GstPadChainListFunction" title="GstPadChainListFunction ()"><span class="type">GstPadChainListFunction</span></a> for more details.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.56.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3026,7 +3079,7 @@
 <p>When a chainlist function detects an error in the data stream, it must
 post an error on the bus and return an appropriate <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.57.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.58.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3041,23 +3094,23 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>list</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> that is chained, not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstBufferList.html" title="GstBufferList"><span class="type">GstBufferList</span></a> that is chained, not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.57.8"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.58.8"></a><h4>Returns</h4>
 <p> <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> for success</p>
 <p></p>
 </div>
@@ -3068,13 +3121,12 @@
 <pre class="programlisting"><a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>
 gst_pad_get_range (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                    <em class="parameter"><code><span class="type">guint64</span> offset</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                    <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>);</pre>
-<p>returns <a class="link" href="GstPad.html#GST-FLOW-ERROR:CAPS"><span class="type">GST_FLOW_ERROR</span></a> if <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>When <em class="parameter"><code>pad</code></em>
  is flushing this function returns <a class="link" href="GstPad.html#GST-FLOW-FLUSHING:CAPS"><span class="type">GST_FLOW_FLUSHING</span></a>
 immediately and <em class="parameter"><code>buffer</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>Calls the getrange function of <em class="parameter"><code>pad</code></em>
 , see <a class="link" href="GstPad.html#GstPadGetRangeFunction" title="GstPadGetRangeFunction ()"><span class="type">GstPadGetRangeFunction</span></a> for a
 description of a getrange function. If <em class="parameter"><code>pad</code></em>
@@ -3082,7 +3134,7 @@
 installed (see <a class="link" href="GstPad.html#gst-pad-set-getrange-function" title="gst_pad_set_getrange_function()"><code class="function">gst_pad_set_getrange_function()</code></a>) this function returns
 <a class="link" href="GstPad.html#GST-FLOW-NOT-SUPPORTED:CAPS"><span class="type">GST_FLOW_NOT_SUPPORTED</span></a>.</p>
 <p>If <em class="parameter"><code>buffer</code></em>
- points to a variable holding <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a valid new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> will be
+ points to a variable holding <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a valid new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> will be
 placed in <em class="parameter"><code>buffer</code></em>
  when this function returns <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a>. The new buffer
 must be freed with <a class="link" href="GstBuffer.html#gst-buffer-unref" title="gst_buffer_unref ()"><code class="function">gst_buffer_unref()</code></a> after usage.</p>
@@ -3106,7 +3158,7 @@
 will be unchanged.</p>
 <p>This is a lowlevel function. Usually <a class="link" href="GstPad.html#gst-pad-pull-range" title="gst_pad_pull_range ()"><code class="function">gst_pad_pull_range()</code></a> is used.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.58.12"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.59.11"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3131,14 +3183,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p> a pointer to hold the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>,. </p></td>
+<td class="parameter_description"><p> a pointer to hold the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>,
+returns <a class="link" href="GstPad.html#GST-FLOW-ERROR:CAPS"><span class="type">GST_FLOW_ERROR</span></a> if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out callee-allocates</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.58.13"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.59.12"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the pad.</p>
 <p>MT safe.</p>
 <p></p>
@@ -3149,10 +3202,10 @@
 <a name="gst-pad-set-getrange-function"></a><h3>gst_pad_set_getrange_function()</h3>
 <pre class="programlisting">#define gst_pad_set_getrange_function(p,f)      gst_pad_set_getrange_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-getrange-function-full" title="gst_pad_set_getrange_function_full ()"><code class="function">gst_pad_set_getrange_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-getrange-function-full" title="gst_pad_set_getrange_function_full ()"><code class="function">gst_pad_set_getrange_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.59.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.60.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3180,13 +3233,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_getrange_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstPad.html#GstPadGetRangeFunction" title="GstPadGetRangeFunction ()"><span class="type">GstPadGetRangeFunction</span></a> get</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given getrange function for the pad. The getrange function is
 called to produce a new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> to start the processing pipeline. see
 <a class="link" href="GstPad.html#GstPadGetRangeFunction" title="GstPadGetRangeFunction ()"><span class="type">GstPadGetRangeFunction</span></a> for a description of the getrange function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.60.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.61.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3227,7 +3280,7 @@
 <span class="c_punctuation">(</span>*GstPadGetRangeFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                            <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                            <em class="parameter"><code><span class="type">guint64</span> offset</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>,
                            <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>);</pre>
 <p>This function will be called on source pads when a peer element
 request a buffer at the specified <em class="parameter"><code>offset</code></em>
@@ -3278,7 +3331,7 @@
 of <em class="parameter"><code>offset</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.61.12"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.62.12"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3293,12 +3346,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>offset</p></td>
@@ -3312,14 +3365,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a memory location to hold the result buffer, cannot be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
+<td class="parameter_description"><p>a memory location to hold the result buffer, cannot be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.61.13"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.62.13"></a><h4>Returns</h4>
 <p> <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> for success and a valid buffer in <em class="parameter"><code>buffer</code></em>
 . Any other
 return value leaves <em class="parameter"><code>buffer</code></em>
@@ -3332,10 +3385,10 @@
 <a name="gst-pad-set-event-function"></a><h3>gst_pad_set_event_function()</h3>
 <pre class="programlisting">#define gst_pad_set_event_function(p,f)         gst_pad_set_event_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-event-function-full" title="gst_pad_set_event_function_full ()"><code class="function">gst_pad_set_event_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-event-function-full" title="gst_pad_set_event_function_full ()"><code class="function">gst_pad_set_event_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.62.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.63.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3363,11 +3416,11 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_event_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPad.html#GstPadEventFunction" title="GstPadEventFunction ()"><span class="type">GstPadEventFunction</span></a> event</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given event handler for the pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.63.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3404,13 +3457,13 @@
 <hr>
 <div class="refsect2">
 <a name="GstPadEventFunction"></a><h3>GstPadEventFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPadEventFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                         <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                         <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
 <p>Function signature to handle an event for the pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.64.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3425,24 +3478,24 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>event</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to handle.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to handle. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.64.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event.</p>
+<a name="id-1.3.33.10.65.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event.</p>
 <p></p>
 </div>
 </div>
@@ -3451,10 +3504,10 @@
 <a name="gst-pad-set-link-function"></a><h3>gst_pad_set_link_function()</h3>
 <pre class="programlisting">#define gst_pad_set_link_function(p,f)          gst_pad_set_link_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-link-function-full" title="gst_pad_set_link_function_full ()"><code class="function">gst_pad_set_link_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-link-function-full" title="gst_pad_set_link_function_full ()"><code class="function">gst_pad_set_link_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 for the user_data and notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.65.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3482,8 +3535,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_link_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstPad.html#GstPadLinkFunction" title="GstPadLinkFunction ()"><span class="type">GstPadLinkFunction</span></a> link</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given link function for the pad. It will be called when
 the pad is linked with another pad.</p>
 <p>The return value <a class="link" href="GstPad.html#GST-PAD-LINK-OK:CAPS"><span class="type">GST_PAD_LINK_OK</span></a> should be used when the connection can be
@@ -3494,7 +3547,7 @@
  is installed on a source pad, it should call the <a class="link" href="GstPad.html#GstPadLinkFunction" title="GstPadLinkFunction ()"><span class="type">GstPadLinkFunction</span></a>
 of the peer sink pad, if present.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.66.8"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.67.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3537,7 +3590,7 @@
                        <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *peer</code></em>);</pre>
 <p>Function signature to handle a new link on the pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.67.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.68.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3552,12 +3605,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>peer</p></td>
@@ -3568,7 +3621,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.67.6"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.68.6"></a><h4>Returns</h4>
 <p> the result of the link with the specified peer.</p>
 <p></p>
 </div>
@@ -3578,10 +3631,10 @@
 <a name="gst-pad-set-unlink-function"></a><h3>gst_pad_set_unlink_function()</h3>
 <pre class="programlisting">#define gst_pad_set_unlink_function(p,f)        gst_pad_set_unlink_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-unlink-function-full" title="gst_pad_set_unlink_function_full ()"><code class="function">gst_pad_set_unlink_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-unlink-function-full" title="gst_pad_set_unlink_function_full ()"><code class="function">gst_pad_set_unlink_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 for the user_data and notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.68.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3609,12 +3662,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_unlink_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstPad.html#GstPadUnlinkFunction" title="GstPadUnlinkFunction ()"><span class="type">GstPadUnlinkFunction</span></a> unlink</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given unlink function for the pad. It will be called
 when the pad is unlinked.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.69.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.70.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3656,7 +3709,7 @@
                          <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>);</pre>
 <p>Function signature to handle a unlinking the pad prom its peer.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.70.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.71.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3671,12 +3724,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3685,7 +3738,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-proxy-query-caps"></a><h3>gst_pad_proxy_query_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_proxy_query_caps (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                           <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Calls <a class="link" href="GstPad.html#gst-pad-query-caps" title="gst_pad_query_caps ()"><code class="function">gst_pad_query_caps()</code></a> for all internally linked pads of <em class="parameter"><code>pad</code></em>
@@ -3695,7 +3748,7 @@
 that can handle any stream format, but requires all its pads to have
 the same caps.  Two such elements are tee and adder.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.71.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.72.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3717,8 +3770,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.71.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>query</code></em>
+<a name="id-1.3.33.10.72.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>query</code></em>
 could be executed</p>
 <p></p>
 </div>
@@ -3726,7 +3779,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-proxy-query-accept-caps"></a><h3>gst_pad_proxy_query_accept_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_proxy_query_accept_caps (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Checks if all internally linked pads of <em class="parameter"><code>pad</code></em>
@@ -3737,7 +3790,7 @@
 that can handle any stream format, but requires caps that are acceptable for
 all opposite pads.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.72.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.73.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3759,8 +3812,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.72.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>query</code></em>
+<a name="id-1.3.33.10.73.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>query</code></em>
 could be executed</p>
 <p></p>
 </div>
@@ -3770,10 +3823,10 @@
 <a name="gst-pad-set-activate-function"></a><h3>gst_pad_set_activate_function()</h3>
 <pre class="programlisting">#define gst_pad_set_activate_function(p,f)      gst_pad_set_activate_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-activate-function-full" title="gst_pad_set_activate_function_full ()"><code class="function">gst_pad_set_activate_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-activate-function-full" title="gst_pad_set_activate_function_full ()"><code class="function">gst_pad_set_activate_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.73.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.74.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3801,15 +3854,15 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_activate_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstPad.html#GstPadActivateFunction" title="GstPadActivateFunction ()"><span class="type">GstPadActivateFunction</span></a> activate</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given activate function for <em class="parameter"><code>pad</code></em>
 . The activate function will
 dispatch to <a class="link" href="GstPad.html#gst-pad-activate-mode" title="gst_pad_activate_mode ()"><code class="function">gst_pad_activate_mode()</code></a> to perform the actual activation.
 Only makes sense to set on sink pads.</p>
 <p>Call this function if your sink pad can start a pull-based task.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.74.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.75.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3846,7 +3899,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstPadActivateFunction"></a><h3>GstPadActivateFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPadActivateFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                            <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>);</pre>
 <p>This function is called when the pad is activated during the element
@@ -3854,7 +3907,7 @@
 activate function that puts the pad in push mode but elements can
 override this function to activate the pad in pull mode if they wish.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.75.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.76.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3877,8 +3930,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.75.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be activated.</p>
+<a name="id-1.3.33.10.76.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be activated.</p>
 <p></p>
 </div>
 </div>
@@ -3887,10 +3940,10 @@
 <a name="gst-pad-set-activatemode-function"></a><h3>gst_pad_set_activatemode_function()</h3>
 <pre class="programlisting">#define gst_pad_set_activatemode_function(p,f)  gst_pad_set_activatemode_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-activatemode-function-full" title="gst_pad_set_activatemode_function_full ()"><code class="function">gst_pad_set_activatemode_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-activatemode-function-full" title="gst_pad_set_activatemode_function_full ()"><code class="function">gst_pad_set_activatemode_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.76.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.77.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3919,12 +3972,12 @@
 gst_pad_set_activatemode_function_full
                                (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstPad.html#GstPadActivateModeFunction" title="GstPadActivateModeFunction ()"><span class="type">GstPadActivateModeFunction</span></a> activatemode</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given activate_mode function for the pad. An activate_mode function
 prepares the element for data passing.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.77.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.78.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3961,14 +4014,14 @@
 <hr>
 <div class="refsect2">
 <a name="GstPadActivateModeFunction"></a><h3>GstPadActivateModeFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPadActivateModeFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                                <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>The prototype of the push and pull activate functions.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.78.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.79.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4002,48 +4055,18 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.78.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be activated or deactivated.</p>
+<a name="id-1.3.33.10.79.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be activated or deactivated.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-needs-reconfigure"></a><h3>gst_pad_needs_reconfigure ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_needs_reconfigure (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Check the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-RECONFIGURE:CAPS"><span class="type">GST_PAD_FLAG_NEED_RECONFIGURE</span></a> flag on <em class="parameter"><code>pad</code></em>
- and return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
-if the flag was set.</p>
-<div class="refsect3">
-<a name="id-1.3.33.10.79.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>pad</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to check</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.33.10.79.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the GST_PAD_FLAG_NEED_RECONFIGURE flag is set on <em class="parameter"><code>pad</code></em>
-.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-pad-check-reconfigure"></a><h3>gst_pad_check_reconfigure ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_pad_check_reconfigure (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
-<p>Check and clear the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-RECONFIGURE:CAPS"><span class="type">GST_PAD_FLAG_NEED_RECONFIGURE</span></a> flag on <em class="parameter"><code>pad</code></em>
- and return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
+ and return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
 if the flag was set.</p>
 <div class="refsect3">
 <a name="id-1.3.33.10.80.5"></a><h4>Parameters</h4>
@@ -4062,7 +4085,37 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.80.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on <em class="parameter"><code>pad</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the GST_PAD_FLAG_NEED_RECONFIGURE flag is set on <em class="parameter"><code>pad</code></em>
+.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-pad-check-reconfigure"></a><h3>gst_pad_check_reconfigure ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_pad_check_reconfigure (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
+<p>Check and clear the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-RECONFIGURE:CAPS"><span class="type">GST_PAD_FLAG_NEED_RECONFIGURE</span></a> flag on <em class="parameter"><code>pad</code></em>
+ and return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
+if the flag was set.</p>
+<div class="refsect3">
+<a name="id-1.3.33.10.81.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to check</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.33.10.81.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on <em class="parameter"><code>pad</code></em>
 .</p>
 <p></p>
 </div>
@@ -4073,9 +4126,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_mark_reconfigure (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Mark a pad for needing reconfiguration. The next call to
-<a class="link" href="GstPad.html#gst-pad-check-reconfigure" title="gst_pad_check_reconfigure ()"><code class="function">gst_pad_check_reconfigure()</code></a> will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> after this call.</p>
+<a class="link" href="GstPad.html#gst-pad-check-reconfigure" title="gst_pad_check_reconfigure ()"><code class="function">gst_pad_check_reconfigure()</code></a> will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> after this call.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.81.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.82.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4108,7 +4161,7 @@
 
 after calling this function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.82.8"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.83.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4131,7 +4184,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.82.9"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.83.9"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the peer pad.</p>
 <p>MT safe.</p>
 <p></p>
@@ -4140,7 +4193,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-push-event"></a><h3>gst_pad_push_event ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_push_event (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                     <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
 <p>Sends the event to the peer of the given pad. This function is
@@ -4149,7 +4202,7 @@
 <p>This function takes ownership of the provided event so you should
 <a class="link" href="GstEvent.html#gst-event-ref" title="gst_event_ref ()"><code class="function">gst_event_ref()</code></a> it if you want to reuse the event after this call.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.83.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.84.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4171,8 +4224,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.83.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled.</p>
+<a name="id-1.3.33.10.84.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -4197,7 +4250,7 @@
 
 after calling this function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.84.8"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.85.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4220,7 +4273,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.84.9"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.85.9"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the peer pad.</p>
 <p>MT safe.</p>
 <p></p>
@@ -4232,7 +4285,7 @@
 <pre class="programlisting"><a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>
 gst_pad_pull_range (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                     <em class="parameter"><code><span class="type">guint64</span> offset</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                     <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>);</pre>
 <p>Pulls a <em class="parameter"><code>buffer</code></em>
  from the peer pad or fills up a provided buffer.</p>
@@ -4244,12 +4297,12 @@
 See <a class="link" href="GstPad.html#gst-pad-get-range" title="gst_pad_get_range ()"><code class="function">gst_pad_get_range()</code></a> for a list of return values and for the
 semantics of the arguments of this function.</p>
 <p>If <em class="parameter"><code>buffer</code></em>
- points to a variable holding <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a valid new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> will be
+ points to a variable holding <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a valid new <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> will be
 placed in <em class="parameter"><code>buffer</code></em>
  when this function returns <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a>. The new buffer
 must be freed with <a class="link" href="GstBuffer.html#gst-buffer-unref" title="gst_buffer_unref ()"><code class="function">gst_buffer_unref()</code></a> after usage. When this function
 returns any other result value, <em class="parameter"><code>buffer</code></em>
- will still point to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ will still point to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>When <em class="parameter"><code>buffer</code></em>
  points to a variable that points to a valid <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>, the
 buffer will be filled with the result data when this function returns
@@ -4268,7 +4321,7 @@
 
 bytes. The caller should check the result buffer size to get the result size.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.85.10"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.86.10"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4294,14 +4347,14 @@
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
 <td class="parameter_description"><p> a pointer to hold the <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>, returns
-GST_FLOW_ERROR if <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+GST_FLOW_ERROR if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out callee-allocates</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.85.11"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.86.11"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the peer pad.</p>
 <p>MT safe.</p>
 <p></p>
@@ -4310,16 +4363,16 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-activate-mode"></a><h3>gst_pad_activate_mode ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_activate_mode (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                        <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Activates or deactivates the given pad in <em class="parameter"><code>mode</code></em>
  via dispatching to the
 pad's activatemodefunc. For use from within pad activation functions only.</p>
 <p>If you don't know what this is, you probably don't want to call it.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.86.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.87.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4346,8 +4399,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.86.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
+<a name="id-1.3.33.10.87.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -4355,7 +4408,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-send-event"></a><h3>gst_pad_send_event ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_send_event (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                     <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
 <p>Sends the event to the pad. This function can be used
@@ -4380,7 +4433,7 @@
 <p>This function takes ownership of the provided event so you should
 <a class="link" href="GstEvent.html#gst-event-ref" title="gst_event_ref ()"><code class="function">gst_event_ref()</code></a> it if you want to reuse the event after this call.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.87.8"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.88.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4402,15 +4455,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.87.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled.</p>
+<a name="id-1.3.33.10.88.9"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-event-default"></a><h3>gst_pad_event_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_event_default (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                        <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                        <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
@@ -4423,7 +4476,7 @@
 takes ownership of <em class="parameter"><code>event</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.88.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.89.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4439,8 +4492,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>event</p></td>
@@ -4451,15 +4504,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.88.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was sent successfully.</p>
+<a name="id-1.3.33.10.89.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was sent successfully.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-query"></a><h3>gst_pad_query ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_query (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Dispatches a query to a pad. The query should have been allocated by the
@@ -4471,7 +4524,7 @@
 the query structure.</p>
 <p>Please also note that some queries might need a running pipeline to work.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.89.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.90.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4493,15 +4546,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.89.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.90.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-peer-query"></a><h3>gst_pad_peer_query ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_peer_query (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                     <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Performs <a class="link" href="GstPad.html#gst-pad-query" title="gst_pad_query ()"><code class="function">gst_pad_query()</code></a> on the peer of <em class="parameter"><code>pad</code></em>
@@ -4509,7 +4562,7 @@
 <p>The caller is responsible for both the allocation and deallocation of
 the query structure.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.90.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.91.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4531,8 +4584,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.90.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed. This function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<a name="id-1.3.33.10.91.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed. This function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 if <em class="parameter"><code>pad</code></em>
 has no peer.</p>
 <p></p>
@@ -4541,7 +4594,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-query-default"></a><h3>gst_pad_query_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_query_default (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                        <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                        <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
@@ -4553,7 +4606,7 @@
 , only one will be sent the query.
 Multi-sinkpad elements should implement custom query handlers.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.91.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.92.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4569,8 +4622,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>query</p></td>
@@ -4581,21 +4634,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.91.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query was performed successfully.</p>
+<a name="id-1.3.33.10.92.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query was performed successfully.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-query-position"></a><h3>gst_pad_query_position ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_query_position (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                         <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>);</pre>
 <p>Queries a pad for the stream position.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.92.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.93.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4615,28 +4668,28 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>cur</p></td>
-<td class="parameter_description"><p> A location in which to store the current position, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> A location in which to store the current position, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.92.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.93.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-query-duration"></a><h3>gst_pad_query_duration ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_query_duration (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                         <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>);</pre>
 <p>Queries a pad for the total stream duration.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.93.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.94.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4657,22 +4710,22 @@
 <tr>
 <td class="parameter_name"><p>duration</p></td>
 <td class="parameter_description"><p> a location in which to store the total
-duration, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+duration, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.93.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.94.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-query-convert"></a><h3>gst_pad_query_convert ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_query_convert (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
                        <em class="parameter"><code><span class="type">gint64</span> src_val</code></em>,
@@ -4683,7 +4736,7 @@
  to <em class="parameter"><code>dest_format</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.94.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.95.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4720,20 +4773,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.94.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.95.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-query-accept-caps"></a><h3>gst_pad_query_accept_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_query_accept_caps (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                            <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Check if the given pad accepts the caps.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.95.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.96.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4755,8 +4808,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.95.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad can accept the caps.</p>
+<a name="id-1.3.33.10.96.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad can accept the caps.</p>
 <p></p>
 </div>
 </div>
@@ -4772,20 +4825,20 @@
 gst_pad_query_caps returns all possible caps a pad can operate with, using
 the pad's CAPS query function, If the query fails, this function will return
 <em class="parameter"><code>filter</code></em>
-, if not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, otherwise ANY.</p>
+, if not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, otherwise ANY.</p>
 <p>When called on sinkpads <em class="parameter"><code>filter</code></em>
  contains the caps that
 upstream could produce in the order preferred by upstream. When
 called on srcpads <em class="parameter"><code>filter</code></em>
  contains the caps accepted by
 downstream in the preferred order. <em class="parameter"><code>filter</code></em>
- might be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> but
-if it is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> the returned caps will be a subset of <em class="parameter"><code>filter</code></em>
+ might be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> but
+if it is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> the returned caps will be a subset of <em class="parameter"><code>filter</code></em>
 .</p>
 <p>Note that this function does not return writable <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>, use
 <a class="link" href="GstCaps.html#gst-caps-make-writable" title="gst_caps_make_writable()"><code class="function">gst_caps_make_writable()</code></a> before modifying the caps.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.96.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.97.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4800,14 +4853,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>filter</p></td>
-<td class="parameter_description"><p> suggested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> suggested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.96.8"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.97.8"></a><h4>Returns</h4>
 <p> the caps of the pad with incremented ref-count. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -4815,13 +4868,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-peer-query-position"></a><h3>gst_pad_peer_query_position ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_peer_query_position (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                              <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                              <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>);</pre>
 <p>Queries the peer of a given sink pad for the stream position.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.97.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.98.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4843,28 +4896,28 @@
 <tr>
 <td class="parameter_name"><p>cur</p></td>
 <td class="parameter_description"><p> a location in which to store the current
-position, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+position, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.97.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.98.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-peer-query-duration"></a><h3>gst_pad_peer_query_duration ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_peer_query_duration (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                              <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                              <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>);</pre>
 <p>Queries the peer pad of a given sink pad for the total stream duration.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.98.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.99.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4886,22 +4939,22 @@
 <tr>
 <td class="parameter_name"><p>duration</p></td>
 <td class="parameter_description"><p> a location in which to store the total
-duration, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+duration, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.98.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.99.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-peer-query-convert"></a><h3>gst_pad_peer_query_convert ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_peer_query_convert (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                             <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
                             <em class="parameter"><code><span class="type">gint64</span> src_val</code></em>,
@@ -4913,7 +4966,7 @@
 to <em class="parameter"><code>dest_format</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.99.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.100.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4951,24 +5004,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.99.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.100.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-peer-query-accept-caps"></a><h3>gst_pad_peer_query_accept_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_peer_query_accept_caps (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Check if the peer of <em class="parameter"><code>pad</code></em>
  accepts <em class="parameter"><code>caps</code></em>
 . If <em class="parameter"><code>pad</code></em>
  has no peer, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.100.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.101.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4990,8 +5043,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.100.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the peer of <em class="parameter"><code>pad</code></em>
+<a name="id-1.3.33.10.101.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the peer of <em class="parameter"><code>pad</code></em>
 can accept the caps or <em class="parameter"><code>pad</code></em>
 has no peer.</p>
 <p></p>
@@ -5011,11 +5064,11 @@
 called on sinkpads <em class="parameter"><code>filter</code></em>
  contains the caps accepted by
 downstream in the preferred order. <em class="parameter"><code>filter</code></em>
- might be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> but
-if it is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> the returned caps will be a subset of <em class="parameter"><code>filter</code></em>
+ might be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> but
+if it is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> the returned caps will be a subset of <em class="parameter"><code>filter</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.101.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.102.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5030,18 +5083,18 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>filter</p></td>
-<td class="parameter_description"><p> a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> filter, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> filter, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.101.7"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.102.7"></a><h4>Returns</h4>
 <p> the caps of the peer pad with incremented ref-count. When there is
 no peer pad, this function returns <em class="parameter"><code>filter</code></em>
 or, when <em class="parameter"><code>filter</code></em>
-is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, ANY
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, ANY
 caps.</p>
 <p></p>
 </div>
@@ -5051,10 +5104,10 @@
 <a name="gst-pad-set-query-function"></a><h3>gst_pad_set_query_function()</h3>
 <pre class="programlisting">#define gst_pad_set_query_function(p,f)   gst_pad_set_query_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-query-function-full" title="gst_pad_set_query_function_full ()"><code class="function">gst_pad_set_query_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-query-function-full" title="gst_pad_set_query_function_full ()"><code class="function">gst_pad_set_query_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the user_data and
 notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.102.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.103.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5082,11 +5135,11 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_query_function_full (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPad.html#GstPadQueryFunction" title="GstPadQueryFunction ()"><span class="type">GstPadQueryFunction</span></a> query</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Set the given query function for the pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.103.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.104.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5123,13 +5176,13 @@
 <hr>
 <div class="refsect2">
 <a name="GstPadQueryFunction"></a><h3>GstPadQueryFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPadQueryFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                         <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>,
                         <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>The signature of the query function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.104.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.105.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5144,12 +5197,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>query</p></td>
@@ -5160,8 +5213,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.104.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
+<a name="id-1.3.33.10.105.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be performed.</p>
 <p></p>
 </div>
 </div>
@@ -5170,10 +5223,10 @@
 <a name="gst-pad-set-iterate-internal-links-function"></a><h3>gst_pad_set_iterate_internal_links_function()</h3>
 <pre class="programlisting">#define gst_pad_set_iterate_internal_links_function(p,f) gst_pad_set_iterate_internal_links_function_full((p),(f),NULL,NULL)
 </pre>
-<p>Calls <a class="link" href="GstPad.html#gst-pad-set-iterate-internal-links-function-full" title="gst_pad_set_iterate_internal_links_function_full ()"><code class="function">gst_pad_set_iterate_internal_links_function_full()</code></a> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<p>Calls <a class="link" href="GstPad.html#gst-pad-set-iterate-internal-links-function-full" title="gst_pad_set_iterate_internal_links_function_full ()"><code class="function">gst_pad_set_iterate_internal_links_function_full()</code></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 for the user_data and notify.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.105.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.106.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5202,11 +5255,11 @@
 gst_pad_set_iterate_internal_links_function_full
                                (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstPad.html#GstPadIterIntLinkFunction" title="GstPadIterIntLinkFunction ()"><span class="type">GstPadIterIntLinkFunction</span></a> iterintlink</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Sets the given internal link iterator function for the pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.106.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.107.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5248,7 +5301,7 @@
                               <em class="parameter"><code><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> *parent</code></em>);</pre>
 <p>The signature of the internal pad link iterator function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.107.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.108.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5263,18 +5316,18 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>the parent of <em class="parameter"><code>pad</code></em>
-. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a> flag is set,
-<em class="parameter"><code>parent</code></em>
-is guaranteed to be not-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid during the
-execution of this function.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
+. If the <a class="link" href="GstPad.html#GST-PAD-FLAG-NEED-PARENT:CAPS"><span class="type">GST_PAD_FLAG_NEED_PARENT</span></a>
+flag is set, <em class="parameter"><code>parent</code></em>
+is guaranteed to be not-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and remain valid
+during the execution of this function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.107.6"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.108.6"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> that will iterate over all pads that are
 linked to the given pad on the inside of the parent element.</p>
 <p>the caller must call <a class="link" href="gstreamer-GstIterator.html#gst-iterator-free" title="gst_iterator_free ()"><code class="function">gst_iterator_free()</code></a> after usage.</p>
@@ -5292,7 +5345,7 @@
 so unref after use.</p>
 <p>Free-function: gst_iterator_free</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.108.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.109.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5307,11 +5360,11 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.108.8"></a><h4>Returns</h4>
-<p> a new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the
-pad does not have an iterator function configured. Use
-<a class="link" href="gstreamer-GstIterator.html#gst-iterator-free" title="gst_iterator_free ()"><code class="function">gst_iterator_free()</code></a> after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.33.10.109.8"></a><h4>Returns</h4>
+<p> a new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the pad does not have an iterator function
+configured. Use <a class="link" href="gstreamer-GstIterator.html#gst-iterator-free" title="gst_iterator_free ()"><code class="function">gst_iterator_free()</code></a> after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -5327,7 +5380,7 @@
 pads inside the parent element with opposite direction.</p>
 <p>The caller must free this iterator after use with <a class="link" href="gstreamer-GstIterator.html#gst-iterator-free" title="gst_iterator_free ()"><code class="function">gst_iterator_free()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.109.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.110.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5343,18 +5396,17 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>pad</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.109.7"></a><h4>Returns</h4>
-<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>pad</code></em>
-has no parent. Unref each
-returned pad with <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a>.</p>
-<p></p>
+<a name="id-1.3.33.10.110.7"></a><h4>Returns</h4>
+<p> a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>pad</code></em>
+has no parent. Unref each returned pad with <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -5362,12 +5414,12 @@
 <a name="gst-pad-set-element-private"></a><h3>gst_pad_set_element_private ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pad_set_element_private (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> priv</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> priv</code></em>);</pre>
 <p>Set the given private data gpointer on the pad.
 This function can only be used by the element that owns the pad.
 No locking is performed in this function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.110.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.111.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5392,12 +5444,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-get-element-private"></a><h3>gst_pad_get_element_private ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_pad_get_element_private (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Gets the private data of a pad.
 No locking is performed in this function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.111.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.112.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5412,18 +5464,18 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.111.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> to the private data. </p>
+<a name="id-1.3.33.10.112.6"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> to the private data. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-create-stream-id"></a><h3>gst_pad_create_stream_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_pad_create_stream_id (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                           <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *parent</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre>
 <p>Creates a stream-id for the source <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> <em class="parameter"><code>pad</code></em>
  by combining the
 upstream information with the optional <em class="parameter"><code>stream_id</code></em>
@@ -5432,7 +5484,7 @@
 . <em class="parameter"><code>pad</code></em>
  must have a parent <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> and which must have zero
 or one sinkpad. <em class="parameter"><code>stream_id</code></em>
- can only be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the parent element
+ can only be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the parent element
 of <em class="parameter"><code>pad</code></em>
  has only a single source pad.</p>
 <p>This function generates an unique stream-id by getting the upstream
@@ -5447,7 +5499,7 @@
 stream ID should be printed with a fixed number of characters,
 preceded by 0's, such as by using the format %03u instead of %u.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.112.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.113.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5469,25 +5521,25 @@
 <tr>
 <td class="parameter_name"><p>stream_id</p></td>
 <td class="parameter_description"><p> The stream-id. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.112.8"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.113.8"></a><h4>Returns</h4>
 <p> A stream-id for <em class="parameter"><code>pad</code></em>
-. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-create-stream-id-printf"></a><h3>gst_pad_create_stream_id_printf ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_pad_create_stream_id_printf (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *parent</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>,
                                  <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a stream-id for the source <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> <em class="parameter"><code>pad</code></em>
  by combining the
@@ -5497,76 +5549,7 @@
 . <em class="parameter"><code>pad</code></em>
  must have a parent <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> and which must have zero
 or one sinkpad. <em class="parameter"><code>stream_id</code></em>
- can only be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the parent element
-of <em class="parameter"><code>pad</code></em>
- has only a single source pad.</p>
-<p>This function generates an unique stream-id by getting the upstream
-stream-start event stream ID and appending <em class="parameter"><code>stream_id</code></em>
- to it. If the
-element has no sinkpad it will generate an upstream stream-id by
-doing an URI query on the element and in the worst case just uses
-a random number. Source elements that don't implement the URI
-handler interface should ideally generate a unique, deterministic
-stream-id manually instead.</p>
-<div class="refsect3">
-<a name="id-1.3.33.10.113.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>pad</p></td>
-<td class="parameter_description"><p>A source <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>parent</p></td>
-<td class="parameter_description"><p>Parent <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> of <em class="parameter"><code>pad</code></em>
-</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>stream_id</p></td>
-<td class="parameter_description"><p> The stream-id. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p>parameters for the <em class="parameter"><code>stream_id</code></em>
-format string</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.33.10.113.7"></a><h4>Returns</h4>
-<p> A stream-id for <em class="parameter"><code>pad</code></em>
-. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-pad-create-stream-id-printf-valist"></a><h3>gst_pad_create_stream_id_printf_valist ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_pad_create_stream_id_printf_valist
-                               (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
-                                <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *parent</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>,
-                                <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
-<p>Creates a stream-id for the source <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> <em class="parameter"><code>pad</code></em>
- by combining the
-upstream information with the optional <em class="parameter"><code>stream_id</code></em>
- of the stream
-of <em class="parameter"><code>pad</code></em>
-. <em class="parameter"><code>pad</code></em>
- must have a parent <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> and which must have zero
-or one sinkpad. <em class="parameter"><code>stream_id</code></em>
- can only be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the parent element
+ can only be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the parent element
 of <em class="parameter"><code>pad</code></em>
  has only a single source pad.</p>
 <p>This function generates an unique stream-id by getting the upstream
@@ -5600,7 +5583,76 @@
 <tr>
 <td class="parameter_name"><p>stream_id</p></td>
 <td class="parameter_description"><p> The stream-id. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>...</p></td>
+<td class="parameter_description"><p>parameters for the <em class="parameter"><code>stream_id</code></em>
+format string</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.33.10.114.7"></a><h4>Returns</h4>
+<p> A stream-id for <em class="parameter"><code>pad</code></em>
+. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-pad-create-stream-id-printf-valist"></a><h3>gst_pad_create_stream_id_printf_valist ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_pad_create_stream_id_printf_valist
+                               (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
+                                <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *parent</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>,
+                                <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
+<p>Creates a stream-id for the source <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> <em class="parameter"><code>pad</code></em>
+ by combining the
+upstream information with the optional <em class="parameter"><code>stream_id</code></em>
+ of the stream
+of <em class="parameter"><code>pad</code></em>
+. <em class="parameter"><code>pad</code></em>
+ must have a parent <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> and which must have zero
+or one sinkpad. <em class="parameter"><code>stream_id</code></em>
+ can only be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the parent element
+of <em class="parameter"><code>pad</code></em>
+ has only a single source pad.</p>
+<p>This function generates an unique stream-id by getting the upstream
+stream-start event stream ID and appending <em class="parameter"><code>stream_id</code></em>
+ to it. If the
+element has no sinkpad it will generate an upstream stream-id by
+doing an URI query on the element and in the worst case just uses
+a random number. Source elements that don't implement the URI
+handler interface should ideally generate a unique, deterministic
+stream-id manually instead.</p>
+<div class="refsect3">
+<a name="id-1.3.33.10.115.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>A source <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>Parent <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> of <em class="parameter"><code>pad</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>stream_id</p></td>
+<td class="parameter_description"><p> The stream-id. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>var_args</p></td>
@@ -5612,26 +5664,26 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.114.7"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.115.7"></a><h4>Returns</h4>
 <p> A stream-id for <em class="parameter"><code>pad</code></em>
-. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-get-stream-id"></a><h3>gst_pad_get_stream_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_pad_get_stream_id (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Returns the current stream-id for the <em class="parameter"><code>pad</code></em>
-, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none has been
+, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none has been
 set yet, i.e. the pad has not received a stream-start event yet.</p>
 <p>This is a convenience wrapper around <a class="link" href="GstPad.html#gst-pad-get-sticky-event" title="gst_pad_get_sticky_event ()"><code class="function">gst_pad_get_sticky_event()</code></a> and
 <a class="link" href="GstEvent.html#gst-event-parse-stream-start" title="gst_event_parse_stream_start ()"><code class="function">gst_event_parse_stream_start()</code></a>.</p>
 <p>The returned stream-id string should be treated as an opaque string, its
 contents should not be interpreted.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.115.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.116.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5646,24 +5698,25 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.115.8"></a><h4>Returns</h4>
-<p> a newly-allocated copy of the stream-id for <em class="parameter"><code>pad</code></em>
-, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the returned string when no longer needed.</p>
-<p></p>
+<a name="id-1.3.33.10.116.8"></a><h4>Returns</h4>
+<p> a newly-allocated copy of the stream-id for
+<em class="parameter"><code>pad</code></em>
+, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the returned string when no longer
+needed. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.2</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstPadForwardFunction"></a><h3>GstPadForwardFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPadForwardFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A forward function is called for all internally linked pads, see
 <a class="link" href="GstPad.html#gst-pad-forward" title="gst_pad_forward ()"><code class="function">gst_pad_forward()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.116.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.117.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5685,18 +5738,18 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.116.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the dispatching procedure has to be stopped.</p>
+<a name="id-1.3.33.10.117.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the dispatching procedure has to be stopped.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-forward"></a><h3>gst_pad_forward ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_forward (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                  <em class="parameter"><code><a class="link" href="GstPad.html#GstPadForwardFunction" title="GstPadForwardFunction ()"><span class="type">GstPadForwardFunction</span></a> forward</code></em>,
-                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Calls <em class="parameter"><code>forward</code></em>
  for all internally linked pads of <em class="parameter"><code>pad</code></em>
 . This function deals with
@@ -5704,9 +5757,9 @@
 
 function is only called once for each pad.</p>
 <p>When <em class="parameter"><code>forward</code></em>
- returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, no further pads will be processed.</p>
+ returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, no further pads will be processed.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.117.6"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.118.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5734,8 +5787,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.117.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if one of the dispatcher functions returned <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+<a name="id-1.3.33.10.118.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if one of the dispatcher functions returned <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 <p></p>
 </div>
 </div>
@@ -5762,7 +5815,7 @@
 
 after calling this function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.118.9"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.119.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5785,7 +5838,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.118.10"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.119.10"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the pad.</p>
 <p>MT safe.</p>
 <p></p>
@@ -5814,7 +5867,7 @@
 after calling this function.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.119.10"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.120.10"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5837,7 +5890,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.119.11"></a><h4>Returns</h4>
+<a name="id-1.3.33.10.120.11"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> from the pad.</p>
 <p></p>
 </div>
@@ -5845,11 +5898,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-start-task"></a><h3>gst_pad_start_task ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_start_task (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
                     <em class="parameter"><code><a class="link" href="GstTask.html#GstTaskFunction" title="GstTaskFunction ()"><span class="type">GstTaskFunction</span></a> func</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Starts a task that repeatedly calls <em class="parameter"><code>func</code></em>
  with <em class="parameter"><code>user_data</code></em>
 . This function
@@ -5859,7 +5912,7 @@
 before <em class="parameter"><code>func</code></em>
  is called.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.120.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.121.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5892,22 +5945,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.120.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be started.</p>
+<a name="id-1.3.33.10.121.6"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be started.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-pause-task"></a><h3>gst_pad_pause_task ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_pause_task (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Pause the task of <em class="parameter"><code>pad</code></em>
 . This function will also wait until the
 function executed by the task is finished if this function is not
 called from the task function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.121.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.122.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5922,8 +5975,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.121.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be paused or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the pad
+<a name="id-1.3.33.10.122.6"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be paused or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the pad
 has no task.</p>
 <p></p>
 </div>
@@ -5931,7 +5984,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pad-stop-task"></a><h3>gst_pad_stop_task ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_stop_task (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Stop the task of <em class="parameter"><code>pad</code></em>
 . This function will also make sure that the
@@ -5942,7 +5995,7 @@
 <p>Regardless of whether the pad has a task, the stream lock is acquired and
 released so as to ensure that streaming through this pad has finished.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.122.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.123.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -5957,17 +6010,17 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.122.8"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be stopped or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error.</p>
+<a name="id-1.3.33.10.123.8"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be stopped or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-pad-set-active"></a><h3>gst_pad_set_active ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pad_set_active (<em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Activates or deactivates the given pad.
 Normally called from within core state change functions.</p>
 <p>If <em class="parameter"><code>active</code></em>
@@ -5976,9 +6029,9 @@
 function to perform the actual activation.</p>
 <p>If not <em class="parameter"><code>active</code></em>
 , calls <a class="link" href="GstPad.html#gst-pad-activate-mode" title="gst_pad_activate_mode ()"><code class="function">gst_pad_activate_mode()</code></a> with the pad's current mode
-and a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> argument.</p>
+and a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> argument.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.123.7"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.124.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6000,8 +6053,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.33.10.123.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
+<a name="id-1.3.33.10.124.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation was successful.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -6018,7 +6071,7 @@
 macro, use <a class="link" href="GstPad.html#GST-PAD-STREAM-LOCK:CAPS" title="GST_PAD_STREAM_LOCK()"><code class="function">GST_PAD_STREAM_LOCK()</code></a> and <a class="link" href="GstPad.html#GST-PAD-STREAM-UNLOCK:CAPS" title="GST_PAD_STREAM_UNLOCK()"><code class="function">GST_PAD_STREAM_UNLOCK()</code></a> instead
 to take/release the pad's stream lock.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.124.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.125.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6041,7 +6094,7 @@
 <p>Take the pad's stream lock. The stream lock is recursive and will be taken
 when buffers or serialized downstream events are pushed on a pad.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.125.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.126.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6061,10 +6114,10 @@
 <a name="GST-PAD-STREAM-TRYLOCK:CAPS"></a><h3>GST_PAD_STREAM_TRYLOCK()</h3>
 <pre class="programlisting">#define GST_PAD_STREAM_TRYLOCK(pad)     g_rec_mutex_trylock(GST_PAD_GET_STREAM_LOCK(pad))
 </pre>
-<p>Try to take the pad's stream lock, and return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the lock could be
-taken, and otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p>Try to take the pad's stream lock, and return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the lock could be
+taken, and otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.126.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.127.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6086,7 +6139,7 @@
 </pre>
 <p>Release the pad's stream lock.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.127.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.128.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6109,7 +6162,7 @@
 <p>Get name of the given pad.
 No locking is performed in this function, use <a class="link" href="GstPad.html#gst-pad-get-name" title="gst_pad_get_name()"><code class="function">gst_pad_get_name()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.128.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.129.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6133,7 +6186,7 @@
  parent.
 No locking is performed in this function, use <a class="link" href="GstPad.html#gst-pad-get-parent" title="gst_pad_get_parent()"><code class="function">gst_pad_get_parent()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.129.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.130.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6158,7 +6211,7 @@
 structure created by the element and set on the pad when creating it.
 No locking is performed in this function.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.130.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.131.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6183,7 +6236,7 @@
 a <em class="parameter"><code>pad</code></em>
  or an element factory can handle.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.131.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.132.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6207,7 +6260,7 @@
 . Accessor macro, use
 <a class="link" href="GstPad.html#gst-pad-get-direction" title="gst_pad_get_direction ()"><code class="function">gst_pad_get_direction()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.132.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.133.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6224,6 +6277,29 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="GST-PAD-LAST-FLOW-RETURN:CAPS"></a><h3>GST_PAD_LAST_FLOW_RETURN()</h3>
+<pre class="programlisting">#define GST_PAD_LAST_FLOW_RETURN(pad)   (GST_PAD_CAST(pad)-&gt;ABI.abi.last_flowret)
+</pre>
+<p>Gets the last flow return on this pad</p>
+<div class="refsect3">
+<a name="id-1.3.33.10.134.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GST-PAD-TASK:CAPS"></a><h3>GST_PAD_TASK()</h3>
 <pre class="programlisting">#define GST_PAD_TASK(pad)		(GST_PAD_CAST(pad)-&gt;task)
 </pre>
@@ -6232,7 +6308,7 @@
 <a class="link" href="GstPad.html#gst-pad-start-task" title="gst_pad_start_task ()"><code class="function">gst_pad_start_task()</code></a>, <a class="link" href="GstPad.html#gst-pad-stop-task" title="gst_pad_stop_task ()"><code class="function">gst_pad_stop_task()</code></a> and <a class="link" href="GstPad.html#gst-pad-pause-task" title="gst_pad_pause_task ()"><code class="function">gst_pad_pause_task()</code></a>
 functions instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.133.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.135.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6256,7 +6332,7 @@
 has not been activated yet, and otherwise either GST_PAD_MODE_PUSH or
 GST_PAD_MODE_PULL depending on which mode the pad was activated in.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.134.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.136.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6279,7 +6355,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadActivateFunction" title="GstPadActivateFunction ()"><span class="type">GstPadActivateFunction</span></a> from <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.135.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.137.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6302,7 +6378,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadActivateModeFunction" title="GstPadActivateModeFunction ()"><span class="type">GstPadActivateModeFunction</span></a> from the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.136.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.138.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6325,7 +6401,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadChainFunction" title="GstPadChainFunction ()"><span class="type">GstPadChainFunction</span></a> from the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.137.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.139.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6348,7 +6424,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadChainListFunction" title="GstPadChainListFunction ()"><span class="type">GstPadChainListFunction</span></a> from the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.138.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.140.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6375,7 +6451,7 @@
 after you create it.  If your element derives from a base
 class, use the base class's virtual functions instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.139.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.141.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6398,7 +6474,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadGetRangeFunction" title="GstPadGetRangeFunction ()"><span class="type">GstPadGetRangeFunction</span></a> from the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.140.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.142.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6425,7 +6501,7 @@
 element derives from a base class, use the base class's virtual
 functions instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.141.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.143.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6448,7 +6524,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadIterIntLinkFunction" title="GstPadIterIntLinkFunction ()"><span class="type">GstPadIterIntLinkFunction</span></a> from the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.142.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.144.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6472,7 +6548,7 @@
 .
 No locking is performed in this function, use <a class="link" href="GstPad.html#gst-pad-get-peer" title="gst_pad_get_peer ()"><code class="function">gst_pad_get_peer()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.143.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.145.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6495,7 +6571,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadLinkFunction" title="GstPadLinkFunction ()"><span class="type">GstPadLinkFunction</span></a> for the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.144.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.146.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6518,7 +6594,7 @@
 <p>Get the <a class="link" href="GstPad.html#GstPadUnlinkFunction" title="GstPadUnlinkFunction ()"><span class="type">GstPadUnlinkFunction</span></a> from the given <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.145.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.147.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6539,59 +6615,6 @@
 <pre class="programlisting">#define GST_PAD_IS_LINKED(pad)		(GST_PAD_PEER(pad) != NULL)
 </pre>
 <div class="refsect3">
-<a name="id-1.3.33.10.146.4"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>pad</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.33.10.146.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is linked to another pad. Use <a class="link" href="GstPad.html#gst-pad-is-linked" title="gst_pad_is_linked ()"><code class="function">gst_pad_is_linked()</code></a>
-instead.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GST-PAD-IS-SRC:CAPS"></a><h3>GST_PAD_IS_SRC()</h3>
-<pre class="programlisting">#define GST_PAD_IS_SRC(pad)		(GST_PAD_DIRECTION(pad) == GST_PAD_SRC)
-</pre>
-<div class="refsect3">
-<a name="id-1.3.33.10.147.4"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>pad</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.33.10.147.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is a source pad (i.e. produces data).</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GST-PAD-IS-SINK:CAPS"></a><h3>GST_PAD_IS_SINK()</h3>
-<pre class="programlisting">#define GST_PAD_IS_SINK(pad)		(GST_PAD_DIRECTION(pad) == GST_PAD_SINK)
-</pre>
-<div class="refsect3">
 <a name="id-1.3.33.10.148.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -6608,14 +6631,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.148.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is a sink pad (i.e. consumes data).</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is linked to another pad. Use <a class="link" href="GstPad.html#gst-pad-is-linked" title="gst_pad_is_linked ()"><code class="function">gst_pad_is_linked()</code></a>
+instead.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="GST-PAD-IS-ACTIVE:CAPS"></a><h3>GST_PAD_IS_ACTIVE()</h3>
-<pre class="programlisting">#define GST_PAD_IS_ACTIVE(pad)          (GST_PAD_MODE(pad) != GST_PAD_MODE_NONE)
+<a name="GST-PAD-IS-SRC:CAPS"></a><h3>GST_PAD_IS_SRC()</h3>
+<pre class="programlisting">#define GST_PAD_IS_SRC(pad)		(GST_PAD_DIRECTION(pad) == GST_PAD_SRC)
 </pre>
 <div class="refsect3">
 <a name="id-1.3.33.10.149.4"></a><h4>Parameters</h4>
@@ -6634,7 +6658,59 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.33.10.149.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad has been activated.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is a source pad (i.e. produces data).</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-PAD-IS-SINK:CAPS"></a><h3>GST_PAD_IS_SINK()</h3>
+<pre class="programlisting">#define GST_PAD_IS_SINK(pad)		(GST_PAD_DIRECTION(pad) == GST_PAD_SINK)
+</pre>
+<div class="refsect3">
+<a name="id-1.3.33.10.150.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.33.10.150.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad is a sink pad (i.e. consumes data).</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-PAD-IS-ACTIVE:CAPS"></a><h3>GST_PAD_IS_ACTIVE()</h3>
+<pre class="programlisting">#define GST_PAD_IS_ACTIVE(pad)          (GST_PAD_MODE(pad) != GST_PAD_MODE_NONE)
+</pre>
+<div class="refsect3">
+<a name="id-1.3.33.10.151.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pad</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.33.10.151.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad has been activated.</p>
 <p></p>
 </div>
 </div>
@@ -6646,7 +6722,7 @@
 <p>Check if the dataflow on a <em class="parameter"><code>pad</code></em>
  is blocked. Use <a class="link" href="GstPad.html#gst-pad-is-blocked" title="gst_pad_is_blocked ()"><code class="function">gst_pad_is_blocked()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.150.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.152.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6670,7 +6746,7 @@
  is currently blocking on a buffer or event. Use
 <a class="link" href="GstPad.html#gst-pad-is-blocking" title="gst_pad_is_blocking ()"><code class="function">gst_pad_is_blocking()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.151.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.153.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6693,7 +6769,7 @@
 <p>Check if the given <em class="parameter"><code>pad</code></em>
  is flushing.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.152.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.154.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6721,7 +6797,7 @@
 events pass through pads, or when an element state is changed and pads are
 activated or deactivated.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.153.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.155.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6743,7 +6819,7 @@
 </pre>
 <p>Unset the flushing flag.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.154.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.156.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6766,7 +6842,7 @@
 <p>Check if the <em class="parameter"><code>pad</code></em>
  is in EOS state.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.155.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.157.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6791,7 +6867,7 @@
 The flag has to be unset manually after reconfiguration happened.
 Use <a class="link" href="GstPad.html#gst-pad-needs-reconfigure" title="gst_pad_needs_reconfigure ()"><code class="function">gst_pad_needs_reconfigure()</code></a> or <a class="link" href="GstPad.html#gst-pad-check-reconfigure" title="gst_pad_check_reconfigure ()"><code class="function">gst_pad_check_reconfigure()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.156.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.158.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6815,7 +6891,7 @@
  has pending events. This is used internally by
 GStreamer.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.157.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.159.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6841,7 +6917,7 @@
 , the caps query function will
 only return those caps. See <a class="link" href="GstPad.html#gst-pad-use-fixed-caps" title="gst_pad_use_fixed_caps ()"><code class="function">gst_pad_use_fixed_caps()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.158.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.160.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6865,7 +6941,7 @@
  callbacks.
 This is used internally by GStreamer.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.159.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.161.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6891,7 +6967,7 @@
 internally linked <em class="parameter"><code>pads</code></em>
  instead of discarding them.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.160.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.162.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6918,7 +6994,7 @@
 receives as input. This is just for convenience to avoid implementing some
 standard event and query handling code in an element.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.161.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.163.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6940,7 +7016,7 @@
 </pre>
 <p>Unset proxy caps flag.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.162.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.164.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6966,7 +7042,7 @@
 internally linked <em class="parameter"><code>pads</code></em>
  instead of discarding them.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.163.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.165.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -6995,7 +7071,7 @@
 receives as input. This is just for convenience to avoid implementing some
 standard query handling code in an element.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.164.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.166.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7017,7 +7093,7 @@
 </pre>
 <p>Unset proxy allocation flag.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.165.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.167.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7044,7 +7120,7 @@
 instead of discarding them. You will usually want to handle scheduling
 queries explicitly if your element supports multiple scheduling modes.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.166.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.168.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7066,7 +7142,7 @@
 </pre>
 <p>Unset proxy scheduling flag.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.167.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.169.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7092,7 +7168,7 @@
 linked <em class="parameter"><code>pads</code></em>
  instead of discarding them.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.168.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.170.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7117,7 +7193,7 @@
 checking for a subset. This is interesting for parser elements that can
 accept incompletely specified caps.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.169.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.171.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7142,7 +7218,7 @@
 checking for a subset. This is interesting for parser elements that can
 accept incompletely specified caps.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.170.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.172.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7164,7 +7240,7 @@
 </pre>
 <p>Unset accept intersect flag.</p>
 <div class="refsect3">
-<a name="id-1.3.33.10.171.5"></a><h4>Parameters</h4>
+<a name="id-1.3.33.10.173.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -7203,7 +7279,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstPad-struct.element-private"></a>element_private</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstPad-struct.element-private"></a>element_private</code></em>;</p></td>
 <td class="struct_member_description"><p>private data owned by the parent element</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -7696,7 +7772,7 @@
 <p>drop data in data probes. For push mode this means that
        the data item is not sent downstream. For pull mode, it means that the
        data item is not passed upstream. In both cases, this result code
-       means that <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is returned to the caller.</p>
+       means that <a class="link" href="GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is returned to the caller.</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -7933,16 +8009,16 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> <em class="structfield"><code><a name="GstPadProbeInfo.id"></a>id</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> <em class="structfield"><code><a name="GstPadProbeInfo.id"></a>id</code></em>;</p></td>
 <td class="struct_member_description"><p>the id of the probe</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstPadProbeInfo.data"></a>data</code></em>;</p></td>
-<td class="struct_member_description"><p>type specific data, check the <em class="parameter"><code>type</code></em>
-field to know the datatype.
-This field can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
-<td class="struct_member_annotations"> </td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstPadProbeInfo.data"></a>data</code></em>;</p></td>
+<td class="struct_member_description"><p> type specific data, check the <em class="parameter"><code>type</code></em>
+field to know the
+datatype.  This field can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="struct_member_name"><p><span class="type">guint64</span> <em class="structfield"><code><a name="GstPadProbeInfo.offset"></a>offset</code></em>;</p></td>
@@ -7952,7 +8028,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstPadProbeInfo.size"></a>size</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstPadProbeInfo.size"></a>size</code></em>;</p></td>
 <td class="struct_member_description"><p>size of pull probe, this field is valid when <em class="parameter"><code>type</code></em>
 contains
 <a class="link" href="GstPad.html#GST-PAD-PROBE-TYPE-PULL:CAPS"><span class="type">GST_PAD_PROBE_TYPE_PULL</span></a></p></td>
@@ -7981,6 +8057,16 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="GstPad--offset"></a><h3>The <code class="literal">“offset”</code> property</h3>
+<pre class="programlisting">  “offset”                   <span class="type">gint64</span></pre>
+<p>The offset that will be applied to the running time of the pad.</p>
+<p>Flags: Read / Write</p>
+<p>Allowed values: &gt;= 0</p>
+<p>Default value: 0</p>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GstPad--template"></a><h3>The <code class="literal">“template”</code> property</h3>
 <pre class="programlisting">  “template”                 <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *</pre>
 <p>The GstPadTemplate of this pad.</p>
@@ -7994,7 +8080,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>  *pad,
                <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>  *peer,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
 <p>Signals that a pad has been linked to the peer pad.</p>
 <div class="refsect3">
 <a name="id-1.3.33.13.2.5"></a><h4>Parameters</h4>
@@ -8031,7 +8117,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>  *pad,
                <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>  *peer,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
 <p>Signals that a pad has been unlinked from the peer pad.</p>
 <div class="refsect3">
 <a name="id-1.3.33.13.3.5"></a><h4>Parameters</h4>
@@ -8070,6 +8156,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstPadTemplate.html b/docs/gst/html/GstPadTemplate.html
index ab81f4b..7c16a85 100644
--- a/docs/gst/html/GstPadTemplate.html
+++ b/docs/gst/html/GstPadTemplate.html
@@ -8,16 +8,16 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstPad.html" title="GstPad">
 <link rel="next" href="gstreamer-GstParamSpec.html" title="GstParamSpec">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPadTemplate.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstPadTemplate.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#GstPadTemplate.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPadTemplate.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstPadTemplate.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#GstPadTemplate.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstPadTemplate.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -135,7 +135,7 @@
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="GstPadTemplate.html#GstPadTemplate--name-template" title="The “name-template” property">name-template</a></td>
 <td class="property_flags">Read / Write / Construct Only</td>
 </tr>
@@ -191,8 +191,8 @@
 </div>
 <div class="refsect1">
 <a name="GstPadTemplate.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstPadTemplate
 </pre>
@@ -511,7 +511,7 @@
 <div class="refsect2">
 <a name="gst-pad-template-new"></a><h3>gst_pad_template_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="returnvalue">GstPadTemplate</span></a> *
-gst_pad_template_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name_template</code></em>,
+gst_pad_template_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name_template</code></em>,
                       <em class="parameter"><code><a class="link" href="GstPad.html#GstPadDirection" title="enum GstPadDirection"><span class="type">GstPadDirection</span></a> direction</code></em>,
                       <em class="parameter"><code><a class="link" href="GstPadTemplate.html#GstPadPresence" title="enum GstPadPresence"><span class="type">GstPadPresence</span></a> presence</code></em>,
                       <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
@@ -606,7 +606,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstStaticPadTemplate.name-template"></a>name_template</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstStaticPadTemplate.name-template"></a>name_template</code></em>;</p></td>
 <td class="struct_member_description"><p>the name of the template</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -716,7 +716,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstPadTemplate--name-template"></a><h3>The <code class="literal">“name-template”</code> property</h3>
-<pre class="programlisting">  “name-template”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “name-template”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The name template of the pad template.</p>
 <p>Flags: Read / Write / Construct Only</p>
 <p>Default value: NULL</p>
@@ -737,7 +737,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *pad_template,
                <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>         *pad,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)</pre>
 <p>This signal is fired when an element creates a pad from this template.</p>
 <div class="refsect3">
 <a name="id-1.3.34.13.2.5"></a><h4>Parameters</h4>
@@ -776,6 +776,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstPipeline.html b/docs/gst/html/GstPipeline.html
index 1b77792..95235fd 100644
--- a/docs/gst/html/GstPipeline.html
+++ b/docs/gst/html/GstPipeline.html
@@ -8,16 +8,16 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstParse.html" title="GstParse">
 <link rel="next" href="GstPlugin.html" title="GstPlugin">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPipeline.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstPipeline.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
-                  <a href="#GstPipeline.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPipeline.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstPipeline.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
+                  <a href="#GstPipeline.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstPipeline.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -61,7 +61,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPipeline.html#gst-pipeline-set-clock" title="gst_pipeline_set_clock ()">gst_pipeline_set_clock</a> <span class="c_punctuation">()</span>
@@ -101,7 +101,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPipeline.html#gst-pipeline-get-auto-flush-bus" title="gst_pipeline_get_auto_flush_bus ()">gst_pipeline_get_auto_flush_bus</a> <span class="c_punctuation">()</span>
@@ -136,7 +136,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstPipeline.html#GstPipeline--auto-flush-bus" title="The “auto-flush-bus” property">auto-flush-bus</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -169,8 +169,8 @@
 </div>
 <div class="refsect1">
 <a name="GstPipeline.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
                 <span class="lineart">╰──</span> <a class="link" href="GstBin.html" title="GstBin">GstBin</a>
@@ -234,7 +234,7 @@
 <div class="refsect2">
 <a name="gst-pipeline-new"></a><h3>gst_pipeline_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_pipeline_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_pipeline_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Create a new pipeline with the given name.</p>
 <div class="refsect3">
 <a name="id-1.3.37.10.2.5"></a><h4>Parameters</h4>
@@ -247,7 +247,7 @@
 <tbody><tr>
 <td class="parameter_name"><p>name</p></td>
 <td class="parameter_description"><p> name of new pipeline. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -291,7 +291,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pipeline-set-clock"></a><h3>gst_pipeline_set_clock ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pipeline_set_clock (<em class="parameter"><code><a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> *pipeline</code></em>,
                         <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>);</pre>
 <p>Set the clock for <em class="parameter"><code>pipeline</code></em>
@@ -321,7 +321,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.37.10.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the clock could be set on the pipeline. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the clock could be set on the pipeline. <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
 some element did not accept the clock.</p>
 <p>MT safe.</p>
 <p></p>
@@ -367,7 +367,7 @@
 always use the given clock even if new clock providers are added
 to this pipeline.</p>
 <p>If <em class="parameter"><code>clock</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> all clocking will be disabled which will make
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> all clocking will be disabled which will make
 the pipeline run as fast as possible.</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -387,7 +387,7 @@
 <tr>
 <td class="parameter_name"><p>clock</p></td>
 <td class="parameter_description"><p> the clock to use. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -426,7 +426,7 @@
 <a name="gst-pipeline-set-auto-flush-bus"></a><h3>gst_pipeline_set_auto_flush_bus ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_pipeline_set_auto_flush_bus (<em class="parameter"><code><a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> *pipeline</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> auto_flush</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> auto_flush</code></em>);</pre>
 <p>Usually, when a pipeline goes from READY to NULL state, it automatically
 flushes all pending messages on the bus, which is done for refcounting
 purposes, to break circular references.</p>
@@ -465,7 +465,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-pipeline-get-auto-flush-bus"></a><h3>gst_pipeline_get_auto_flush_bus ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_pipeline_get_auto_flush_bus (<em class="parameter"><code><a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> *pipeline</code></em>);</pre>
 <p>Check if <em class="parameter"><code>pipeline</code></em>
  will automatically flush messages when going to
@@ -642,7 +642,7 @@
 <a name="GstPipeline.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstPipeline--auto-flush-bus"></a><h3>The <code class="literal">“auto-flush-bus”</code> property</h3>
-<pre class="programlisting">  “auto-flush-bus”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “auto-flush-bus”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Whether or not to automatically flush all messages on the
 pipeline's bus when going from READY to NULL state. Please see
 <a class="link" href="GstPipeline.html#gst-pipeline-set-auto-flush-bus" title="gst_pipeline_set_auto_flush_bus ()"><code class="function">gst_pipeline_set_auto_flush_bus()</code></a> for more information on this option.</p>
@@ -667,6 +667,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstPlugin.html b/docs/gst/html/GstPlugin.html
index 8ad19b2..ed21bc1 100644
--- a/docs/gst/html/GstPlugin.html
+++ b/docs/gst/html/GstPlugin.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstPipeline.html" title="GstPipeline">
 <link rel="next" href="GstPluginFeature.html" title="GstPluginFeature">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPlugin.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPlugin.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstPlugin.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-error-quark" title="gst_plugin_error_quark ()">gst_plugin_error_quark</a> <span class="c_punctuation">()</span>
@@ -50,7 +50,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPlugin.html#GstPluginInitFunc" title="GstPluginInitFunc ()">*GstPluginInitFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -58,7 +58,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPlugin.html#GstPluginInitFullFunc" title="GstPluginInitFullFunc ()">*GstPluginInitFullFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -84,70 +84,70 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPlugin.html#GstPluginFilter" title="GstPluginFilter ()">*GstPluginFilter</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-name" title="gst_plugin_get_name ()">gst_plugin_get_name</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-description" title="gst_plugin_get_description ()">gst_plugin_get_description</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-filename" title="gst_plugin_get_filename ()">gst_plugin_get_filename</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-license" title="gst_plugin_get_license ()">gst_plugin_get_license</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-package" title="gst_plugin_get_package ()">gst_plugin_get_package</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-origin" title="gst_plugin_get_origin ()">gst_plugin_get_origin</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-source" title="gst_plugin_get_source ()">gst_plugin_get_source</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-version" title="gst_plugin_get_version ()">gst_plugin_get_version</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-get-release-date-string" title="gst_plugin_get_release_date_string ()">gst_plugin_get_release_date_string</a> <span class="c_punctuation">()</span>
@@ -155,7 +155,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-is-loaded" title="gst_plugin_is_loaded ()">gst_plugin_is_loaded</a> <span class="c_punctuation">()</span>
@@ -210,7 +210,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-register-static" title="gst_plugin_register_static ()">gst_plugin_register_static</a> <span class="c_punctuation">()</span>
@@ -218,7 +218,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPlugin.html#gst-plugin-register-static-full" title="gst_plugin_register_static_full ()">gst_plugin_register_static_full</a> <span class="c_punctuation">()</span>
@@ -284,8 +284,8 @@
 </div>
 <div class="refsect1">
 <a name="GstPlugin.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstPlugin
 </pre>
@@ -318,7 +318,7 @@
 <a name="GstPlugin.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-plugin-error-quark"></a><h3>gst_plugin_error_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_plugin_error_quark (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Get the error quark.</p>
 <div class="refsect3">
@@ -330,7 +330,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstPluginInitFunc"></a><h3>GstPluginInitFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPluginInitFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>A plugin should provide a pointer to a function of this type in the
 plugin_desc struct.
@@ -353,16 +353,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.3.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if plugin initialised successfully</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if plugin initialised successfully</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstPluginInitFullFunc"></a><h3>GstPluginInitFullFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPluginInitFullFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A plugin should provide a pointer to a function of either <a class="link" href="GstPlugin.html#GstPluginInitFunc" title="GstPluginInitFunc ()"><span class="type">GstPluginInitFunc</span></a>
 or this type in the plugin_desc struct.
 The function will be called by the loader at startup. One would then
@@ -392,7 +392,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if plugin initialised successfully</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if plugin initialised successfully</p>
 <p></p>
 </div>
 </div>
@@ -523,9 +523,9 @@
 <hr>
 <div class="refsect2">
 <a name="GstPluginFilter"></a><h3>GstPluginFilter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPluginFilter<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that can be used with e.g. <a class="link" href="GstRegistry.html#gst-registry-plugin-filter" title="gst_registry_plugin_filter ()"><code class="function">gst_registry_plugin_filter()</code></a>
 to get a list of plugins that match certain criteria.</p>
 <div class="refsect3">
@@ -552,14 +552,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for a positive match, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for a positive match, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-name"></a><h3>gst_plugin_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_name (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>Get the short name of the plugin</p>
 <div class="refsect3">
@@ -586,7 +586,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-description"></a><h3>gst_plugin_get_description ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_description (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>Get the long descriptive name of the plugin</p>
 <div class="refsect3">
@@ -613,7 +613,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-filename"></a><h3>gst_plugin_get_filename ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_filename (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>get the filename of the plugin</p>
 <div class="refsect3">
@@ -640,7 +640,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-license"></a><h3>gst_plugin_get_license ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_license (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>get the license of the plugin</p>
 <div class="refsect3">
@@ -667,7 +667,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-package"></a><h3>gst_plugin_get_package ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_package (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>get the package the plugin belongs to.</p>
 <div class="refsect3">
@@ -694,7 +694,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-origin"></a><h3>gst_plugin_get_origin ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_origin (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>get the URL where the plugin comes from</p>
 <div class="refsect3">
@@ -721,7 +721,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-source"></a><h3>gst_plugin_get_source ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_source (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>get the source module the plugin belongs to.</p>
 <div class="refsect3">
@@ -748,7 +748,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-version"></a><h3>gst_plugin_get_version ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_version (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>get the version of the plugin</p>
 <div class="refsect3">
@@ -775,7 +775,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-get-release-date-string"></a><h3>gst_plugin_get_release_date_string ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_get_release_date_string (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>Get the release date (and possibly time) in form of a string, if available.</p>
 <p>For normal GStreamer plugin releases this will usually just be a date in
@@ -800,14 +800,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.17.8"></a><h4>Returns</h4>
-<p> the date string of the plugin, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not available.</p>
-<p></p>
+<p> the date string of the plugin, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not
+available. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-is-loaded"></a><h3>gst_plugin_is_loaded ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_plugin_is_loaded (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>queries if the plugin is loaded into memory</p>
 <div class="refsect3">
@@ -827,7 +828,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is loaded, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is loaded, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
@@ -836,7 +837,7 @@
 <a name="gst-plugin-get-cache-data"></a><h3>gst_plugin_get_cache_data ()</h3>
 <pre class="programlisting">const <a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
 gst_plugin_get_cache_data (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
-<p>Gets the plugin specific data cache. If it is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> there is no cached data
+<p>Gets the plugin specific data cache. If it is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> there is no cached data
 stored. This is the case when the registry is getting rebuilt.</p>
 <div class="refsect3">
 <a name="id-1.3.38.8.19.5"></a><h4>Parameters</h4>
@@ -855,8 +856,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.19.6"></a><h4>Returns</h4>
-<p> The cached data as a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p> The cached data as a
+<a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -896,8 +898,8 @@
 <div class="refsect2">
 <a name="gst-plugin-load-file"></a><h3>gst_plugin_load_file ()</h3>
 <pre class="programlisting"><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="returnvalue">GstPlugin</span></a> *
-gst_plugin_load_file (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *filename</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+gst_plugin_load_file (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *filename</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Loads the given plugin and refs it.  Caller needs to unref after use.</p>
 <div class="refsect3">
 <a name="id-1.3.38.8.21.5"></a><h4>Parameters</h4>
@@ -915,7 +917,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-valued GError</p></td>
+<td class="parameter_description"><p>pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-valued GError</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -924,7 +926,7 @@
 <div class="refsect3">
 <a name="id-1.3.38.8.21.6"></a><h4>Returns</h4>
 <p> a reference to the existing loaded GstPlugin, a
-reference to the newly-loaded GstPlugin, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error occurred. </p>
+reference to the newly-loaded GstPlugin, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error occurred. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -961,7 +963,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.22.7"></a><h4>Returns</h4>
-<p> a reference to a loaded plugin, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
+<p> a reference to a loaded plugin, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -969,7 +971,7 @@
 <div class="refsect2">
 <a name="gst-plugin-load-by-name"></a><h3>gst_plugin_load_by_name ()</h3>
 <pre class="programlisting"><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="returnvalue">GstPlugin</span></a> *
-gst_plugin_load_by_name (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_plugin_load_by_name (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Load the named plugin. Refs the plugin.</p>
 <div class="refsect3">
 <a name="id-1.3.38.8.23.5"></a><h4>Parameters</h4>
@@ -988,7 +990,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.23.6"></a><h4>Returns</h4>
-<p> a reference to a loaded plugin, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
+<p> a reference to a loaded plugin, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -996,7 +998,7 @@
 <div class="refsect2">
 <a name="gst-plugin-list-free"></a><h3>gst_plugin_list_free ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_plugin_list_free (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>);</pre>
+gst_plugin_list_free (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>);</pre>
 <p>Unrefs each member of <em class="parameter"><code>list</code></em>
 , then frees the list.</p>
 <div class="refsect3">
@@ -1018,17 +1020,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-register-static"></a><h3>gst_plugin_register_static ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_plugin_register_static (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> major_version</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minor_version</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_plugin_register_static (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> major_version</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minor_version</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
                             <em class="parameter"><code><a class="link" href="GstPlugin.html#GstPluginInitFunc" title="GstPluginInitFunc ()"><span class="type">GstPluginInitFunc</span></a> init_func</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *version</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *license</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *source</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *package</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *origin</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *version</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *license</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *source</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *package</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *origin</code></em>);</pre>
 <p>Registers a static plugin, ie. a plugin which is private to an application
 or library and contained within the application or library (as opposed to
 being shipped as a separate module file).</p>
@@ -1103,25 +1105,25 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.25.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the plugin was registered correctly, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the plugin was registered correctly, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-register-static-full"></a><h3>gst_plugin_register_static_full ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_plugin_register_static_full (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> major_version</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minor_version</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_plugin_register_static_full (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> major_version</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minor_version</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstPlugin.html#GstPluginInitFullFunc" title="GstPluginInitFullFunc ()"><span class="type">GstPluginInitFullFunc</span></a> init_full_func</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *version</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *license</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *source</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *package</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *origin</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *version</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *license</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *source</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *package</code></em>,
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *origin</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Registers a static plugin, ie. a plugin which is private to an application
 or library and contained within the application or library (as opposed to
 being shipped as a separate module file) with a <a class="link" href="GstPlugin.html#GstPluginInitFullFunc" title="GstPluginInitFullFunc ()"><span class="type">GstPluginInitFullFunc</span></a>
@@ -1204,7 +1206,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.38.8.26.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the plugin was registered correctly, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the plugin was registered correctly, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
@@ -1213,9 +1215,9 @@
 <a name="gst-plugin-add-dependency"></a><h3>gst_plugin_add_dependency ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_plugin_add_dependency (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **env_vars</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **paths</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **names</code></em>,
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **env_vars</code></em>,
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **paths</code></em>,
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **names</code></em>,
                            <em class="parameter"><code><a class="link" href="GstPlugin.html#GstPluginDependencyFlags" title="enum GstPluginDependencyFlags"><span class="type">GstPluginDependencyFlags</span></a> flags</code></em>);</pre>
 <p>Make GStreamer aware of external dependencies which affect the feature
 set of this plugin (ie. the elements or typefinders associated with it).</p>
@@ -1241,30 +1243,30 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>env_vars</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of environment variables affecting the
+<td class="parameter_description"><p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of environment variables affecting the
 feature set of the plugin (e.g. an environment variable containing
 paths where to look for additional modules/plugins of a library),
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Environment variable names may be followed by a path component
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Environment variable names may be followed by a path component
 which will be added to the content of the environment variable, e.g.
 "HOME/.mystuff/plugins". </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>paths</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of directories/paths where dependent files
-may be, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of directories/paths where dependent files
+may be, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>names</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of file names (or file name suffixes,
+<td class="parameter_description"><p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of file names (or file name suffixes,
 depending on <em class="parameter"><code>flags</code></em>
 ) to be used in combination with the paths from
 <em class="parameter"><code>paths</code></em>
 and/or the paths extracted from the environment variables in
 <em class="parameter"><code>env_vars</code></em>
-, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flags</p></td>
@@ -1280,9 +1282,9 @@
 <a name="gst-plugin-add-dependency-simple"></a><h3>gst_plugin_add_dependency_simple ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_plugin_add_dependency_simple (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *env_vars</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *paths</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *names</code></em>,
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *env_vars</code></em>,
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *paths</code></em>,
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *names</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstPlugin.html#GstPluginDependencyFlags" title="enum GstPluginDependencyFlags"><span class="type">GstPluginDependencyFlags</span></a> flags</code></em>);</pre>
 <p>Make GStreamer aware of external dependencies which affect the feature
 set of this plugin (ie. the elements or typefinders associated with it).</p>
@@ -1312,22 +1314,22 @@
 <tr>
 <td class="parameter_name"><p>env_vars</p></td>
 <td class="parameter_description"><p> one or more environment variables (separated by ':', ';' or ','),
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Environment variable names may be followed by a path component
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Environment variable names may be followed by a path component
 which will be added to the content of the environment variable, e.g.
 "HOME/.mystuff/plugins:MYSTUFF_PLUGINS_PATH". </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>paths</p></td>
 <td class="parameter_description"><p> one ore more directory paths (separated by ':' or ';' or ','),
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Example: "/usr/lib/mystuff/plugins". </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Example: "/usr/lib/mystuff/plugins". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>names</p></td>
 <td class="parameter_description"><p> one or more file names or file name suffixes (separated by commas),
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flags</p></td>
@@ -1423,22 +1425,22 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstPluginDesc.major-version"></a>major_version</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstPluginDesc.major-version"></a>major_version</code></em>;</p></td>
 <td class="struct_member_description"><p>the major version number of core that plugin was compiled for</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstPluginDesc.minor-version"></a>minor_version</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstPluginDesc.minor-version"></a>minor_version</code></em>;</p></td>
 <td class="struct_member_description"><p>the minor version number of core that plugin was compiled for</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.name"></a>name</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.name"></a>name</code></em>;</p></td>
 <td class="struct_member_description"><p>a unique name of the plugin</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.description"></a>description</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.description"></a>description</code></em>;</p></td>
 <td class="struct_member_description"><p>description of plugin</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1448,38 +1450,39 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.version"></a>version</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.version"></a>version</code></em>;</p></td>
 <td class="struct_member_description"><p>version of the plugin</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.license"></a>license</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.license"></a>license</code></em>;</p></td>
 <td class="struct_member_description"><p>effective license of plugin</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.source"></a>source</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.source"></a>source</code></em>;</p></td>
 <td class="struct_member_description"><p>source module plugin belongs to</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.package"></a>package</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.package"></a>package</code></em>;</p></td>
 <td class="struct_member_description"><p>shipped package plugin belongs to</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.origin"></a>origin</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.origin"></a>origin</code></em>;</p></td>
 <td class="struct_member_description"><p>URL to provider of plugin</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.release-datetime"></a>release_datetime</code></em>;</p></td>
-<td class="struct_member_description"><p>date time string in ISO 8601 format (or rather, a
-subset thereof), or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Allowed are the following formats:
-"YYYY-MM-DD" and "YYY-MM-DDTHH:MMZ" (with 'T' a separator and 'Z'
-indicating UTC/Zulu time). This field should be set via the
-GST_PACKAGE_RELEASE_DATETIME preprocessor macro.</p></td>
-<td class="struct_member_annotations"> </td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstPluginDesc.release-datetime"></a>release_datetime</code></em>;</p></td>
+<td class="struct_member_description"><p> date time string in ISO 8601
+format (or rather, a subset thereof), or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Allowed are the
+following formats: "YYYY-MM-DD" and "YYY-MM-DDTHH:MMZ" (with
+'T' a separator and 'Z' indicating UTC/Zulu time). This field
+should be set via the <code class="literal">GST_PACKAGE_RELEASE_DATETIME</code>
+preprocessor macro. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1579,6 +1582,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstPluginFeature.html b/docs/gst/html/GstPluginFeature.html
index 24e655d..617b18a 100644
--- a/docs/gst/html/GstPluginFeature.html
+++ b/docs/gst/html/GstPluginFeature.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstPlugin.html" title="GstPlugin">
 <link rel="next" href="gstreamer-GstPoll.html" title="GstPoll">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPluginFeature.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPluginFeature.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstPluginFeature.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstPluginFeature.html#GstPluginFeatureFilter" title="GstPluginFeatureFilter ()">*GstPluginFeatureFilter</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -64,7 +64,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPluginFeature.html#gst-plugin-feature-get-rank" title="gst_plugin_feature_get_rank ()">gst_plugin_feature_get_rank</a> <span class="c_punctuation">()</span>
@@ -85,7 +85,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPluginFeature.html#gst-plugin-feature-get-plugin-name" title="gst_plugin_feature_get_plugin_name ()">gst_plugin_feature_get_plugin_name</a> <span class="c_punctuation">()</span>
@@ -101,7 +101,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-copy" title="gst_plugin_feature_list_copy ()">gst_plugin_feature_list_copy</a> <span class="c_punctuation">()</span>
@@ -123,7 +123,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPluginFeature.html#gst-plugin-feature-check-version" title="gst_plugin_feature_check_version ()">gst_plugin_feature_check_version</a> <span class="c_punctuation">()</span>
@@ -131,7 +131,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPluginFeature.html#gst-plugin-feature-rank-compare-func" title="gst_plugin_feature_rank_compare_func ()">gst_plugin_feature_rank_compare_func</a> <span class="c_punctuation">()</span>
@@ -161,13 +161,13 @@
 </div>
 <div class="refsect1">
 <a name="GstPluginFeature.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstPluginFeature
                 <span class="lineart">├──</span> <a class="link" href="GstElementFactory.html" title="GstElementFactory">GstElementFactory</a>
                 <span class="lineart">├──</span> <a class="link" href="GstTypeFindFactory.html" title="GstTypeFindFactory">GstTypeFindFactory</a>
-                <span class="lineart">╰──</span> <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
+                <span class="lineart">╰──</span> <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
 </pre>
 </div>
 <div class="refsect1">
@@ -183,9 +183,9 @@
 <a name="GstPluginFeature.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="GstPluginFeatureFilter"></a><h3>GstPluginFeatureFilter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstPluginFeatureFilter<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that can be used with e.g. <a class="link" href="GstRegistry.html#gst-registry-feature-filter" title="gst_registry_feature_filter ()"><code class="function">gst_registry_feature_filter()</code></a>
 to get a list of pluginfeature that match certain criteria.</p>
 <div class="refsect3">
@@ -213,7 +213,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.39.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for a positive match, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for a positive match, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
@@ -222,7 +222,7 @@
 <a name="gst-plugin-feature-set-rank"></a><h3>gst_plugin_feature_set_rank ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_plugin_feature_set_rank (<em class="parameter"><code><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>);</pre>
 <p>Specifies a rank for a plugin feature, so that autoplugging uses
 the most appropriate feature.</p>
 <div class="refsect3">
@@ -280,7 +280,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-feature-get-rank"></a><h3>gst_plugin_feature_get_rank ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_plugin_feature_get_rank (<em class="parameter"><code><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature</code></em>);</pre>
 <p>Gets the rank of a plugin feature.</p>
 <div class="refsect3">
@@ -311,7 +311,7 @@
 </pre>
 <p>Returns the name of <em class="parameter"><code>feature</code></em>
 .
-For a nameless plugin feature, this returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+For a nameless plugin feature, this returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.39.8.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -332,7 +332,7 @@
 <a name="id-1.3.39.8.6.6"></a><h4>Returns</h4>
 <p> the name of <em class="parameter"><code>feature</code></em>
 . MT safe. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -358,15 +358,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.39.8.7.6"></a><h4>Returns</h4>
-<p> the plugin that provides this feature, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-Unref with <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the plugin that provides this
+feature, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  Unref with <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> when no
+longer needed. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-feature-get-plugin-name"></a><h3>gst_plugin_feature_get_plugin_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_plugin_feature_get_plugin_name (<em class="parameter"><code><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature</code></em>);</pre>
 <p>Get the name of the plugin that provides this feature.</p>
 <div class="refsect3">
@@ -386,9 +387,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.39.8.8.6"></a><h4>Returns</h4>
-<p> the name of the plugin that provides this feature, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
-the feature is not associated with a plugin.</p>
-<p></p>
+<p> the name of the plugin that provides this
+feature, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the feature is not associated with a
+plugin. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.2</p>
 </div>
@@ -441,15 +443,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.39.8.9.9"></a><h4>Returns</h4>
-<p> a reference to the loaded feature, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a reference to the loaded
+feature, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-feature-list-copy"></a><h3>gst_plugin_feature_list_copy ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-gst_plugin_feature_list_copy (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_plugin_feature_list_copy (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>);</pre>
 <p>Copies the list of features. Caller should call <em class="parameter"><code>gst_plugin_feature_list_free</code></em>
 
 when done with the list.</p>
@@ -481,7 +484,7 @@
 <div class="refsect2">
 <a name="gst-plugin-feature-list-free"></a><h3>gst_plugin_feature_list_free ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_plugin_feature_list_free (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>);</pre>
+gst_plugin_feature_list_free (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *list</code></em>);</pre>
 <p>Unrefs each member of <em class="parameter"><code>list</code></em>
 , then frees the list.</p>
 <div class="refsect3">
@@ -518,7 +521,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>list</p></td>
-<td class="parameter_description"><p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<td class="parameter_description"><p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 plugin features. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.PluginFeature]</span></td>
 </tr></tbody>
@@ -528,11 +531,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-feature-check-version"></a><h3>gst_plugin_feature_check_version ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_plugin_feature_check_version (<em class="parameter"><code><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_major</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_minor</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_micro</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_major</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_minor</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_micro</code></em>);</pre>
 <p>Checks whether the given plugin feature is at least
  the required version</p>
 <div class="refsect3">
@@ -569,19 +572,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.39.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the plugin feature has at least
-the required version, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the plugin feature has at least
+the required version, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-plugin-feature-rank-compare-func"></a><h3>gst_plugin_feature_rank_compare_func ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_plugin_feature_rank_compare_func (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> p1</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> p2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_plugin_feature_rank_compare_func (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> p1</code></em>,
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> p2</code></em>);</pre>
 <p>Compares the two given <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> instances. This function can be
-used as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> when sorting by rank and then by name.</p>
+used as a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> when sorting by rank and then by name.</p>
 <div class="refsect3">
 <a name="id-1.3.39.8.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -680,6 +683,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstPreset.html b/docs/gst/html/GstPreset.html
index e86a58c..e438b53 100644
--- a/docs/gst/html/GstPreset.html
+++ b/docs/gst/html/GstPreset.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstPoll.html" title="GstPoll">
 <link rel="next" href="GstQuery.html" title="GstQuery">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPreset.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPreset.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstPreset.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-get-preset-names" title="gst_preset_get_preset_names ()">gst_preset_get_preset_names</a> <span class="c_punctuation">()</span>
@@ -50,7 +50,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-get-property-names" title="gst_preset_get_property_names ()">gst_preset_get_property_names</a> <span class="c_punctuation">()</span>
@@ -58,7 +58,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-load-preset" title="gst_preset_load_preset ()">gst_preset_load_preset</a> <span class="c_punctuation">()</span>
@@ -66,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-save-preset" title="gst_preset_save_preset ()">gst_preset_save_preset</a> <span class="c_punctuation">()</span>
@@ -74,7 +74,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-rename-preset" title="gst_preset_rename_preset ()">gst_preset_rename_preset</a> <span class="c_punctuation">()</span>
@@ -82,7 +82,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-delete-preset" title="gst_preset_delete_preset ()">gst_preset_delete_preset</a> <span class="c_punctuation">()</span>
@@ -90,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-set-meta" title="gst_preset_set_meta ()">gst_preset_set_meta</a> <span class="c_punctuation">()</span>
@@ -98,7 +98,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-get-meta" title="gst_preset_get_meta ()">gst_preset_get_meta</a> <span class="c_punctuation">()</span>
@@ -106,19 +106,27 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-set-app-dir" title="gst_preset_set_app_dir ()">gst_preset_set_app_dir</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstPreset.html#gst-preset-get-app-dir" title="gst_preset_get_app_dir ()">gst_preset_get_app_dir</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstPreset.html#gst-preset-is-editable" title="gst_preset_is_editable ()">gst_preset_is_editable</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -143,7 +151,7 @@
 </div>
 <div class="refsect1">
 <a name="GstPreset.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GInterface
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/GTypeModule.html">GInterface</a>
     <span class="lineart">╰──</span> GstPreset
 </pre>
 </div>
@@ -164,7 +172,10 @@
 Wrapper plugins will override most methods to implement support for the
 native preset format of those wrapped plugins.
 One method that is useful to be overridden is <a class="link" href="GstPreset.html#gst-preset-get-property-names" title="gst_preset_get_property_names ()"><code class="function">gst_preset_get_property_names()</code></a>.
-With that one can control which properties are saved and in which order.</p>
+With that one can control which properties are saved and in which order.
+When implementing support for read-only presets, one should set the vmethods
+for <a class="link" href="GstPreset.html#gst-preset-save-preset" title="gst_preset_save_preset ()"><code class="function">gst_preset_save_preset()</code></a> and <a class="link" href="GstPreset.html#gst-preset-delete-preset" title="gst_preset_delete_preset ()"><code class="function">gst_preset_delete_preset()</code></a> to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
+Applications can use <a class="link" href="GstPreset.html#gst-preset-is-editable" title="gst_preset_is_editable ()"><code class="function">gst_preset_is_editable()</code></a> to check for that.</p>
 <p>The default implementation supports presets located in a system directory, 
 application specific directory and in the users home directory. When getting
 a list of presets individual presets are read and overlaid in 1) system, 
@@ -175,9 +186,9 @@
 <a name="GstPreset.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-preset-get-preset-names"></a><h3>gst_preset_get_preset_names ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 gst_preset_get_preset_names (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>);</pre>
-<p>Get a copy of preset names as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated string array.</p>
+<p>Get a copy of preset names as a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated string array.</p>
 <div class="refsect3">
 <a name="id-1.3.41.8.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -188,21 +199,21 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.2.6"></a><h4>Returns</h4>
-<p>    list with names, use <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> after usage. </p>
+<p>    list with names, use <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-preset-get-property-names"></a><h3>gst_preset_get_property_names ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 gst_preset_get_property_names (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>);</pre>
 <p>Get a the names of the GObject properties that can be used for presets.</p>
 <div class="refsect3">
@@ -215,7 +226,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -223,16 +234,16 @@
 <div class="refsect3">
 <a name="id-1.3.41.8.3.6"></a><h4>Returns</h4>
 <p> an
-array of property names which should be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> after use. </p>
+array of property names which should be freed with <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> after use. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-preset-load-preset"></a><h3>gst_preset_load_preset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_preset_load_preset (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Load the given preset.</p>
 <div class="refsect3">
 <a name="id-1.3.41.8.4.5"></a><h4>Parameters</h4>
@@ -245,7 +256,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -258,7 +269,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
 </p>
 <p></p>
 </div>
@@ -266,9 +277,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-preset-save-preset"></a><h3>gst_preset_save_preset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_preset_save_preset (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Save the current object settings as a preset under the given name. If there
 is already a preset by this <em class="parameter"><code>name</code></em>
  it will be overwritten.</p>
@@ -283,7 +294,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -296,17 +307,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-preset-rename-preset"></a><h3>gst_preset_rename_preset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_preset_rename_preset (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *old_name</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *new_name</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *old_name</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *new_name</code></em>);</pre>
 <p>Renames a preset. If there is already a preset by the <em class="parameter"><code>new_name</code></em>
  it will be
 overwritten.</p>
@@ -321,7 +332,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -339,7 +350,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with <em class="parameter"><code>old_name</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with <em class="parameter"><code>old_name</code></em>
 </p>
 <p></p>
 </div>
@@ -347,9 +358,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-preset-delete-preset"></a><h3>gst_preset_delete_preset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_preset_delete_preset (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Delete the given preset.</p>
 <div class="refsect3">
 <a name="id-1.3.41.8.7.5"></a><h4>Parameters</h4>
@@ -362,7 +373,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -375,7 +386,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
 </p>
 <p></p>
 </div>
@@ -383,15 +394,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-preset-set-meta"></a><h3>gst_preset_set_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_preset_set_meta (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
 <p>Sets a new <em class="parameter"><code>value</code></em>
  for an existing meta data item or adds a new item. Meta
 data <em class="parameter"><code>tag</code></em>
- names can be something like e.g. "comment". Supplying <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the
+ names can be something like e.g. "comment". Supplying <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the
 <em class="parameter"><code>value</code></em>
  will unset an existing value.</p>
 <div class="refsect3">
@@ -405,7 +416,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -420,15 +431,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>new value</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> new value. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
 </p>
 <p></p>
 </div>
@@ -436,11 +447,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-preset-get-meta"></a><h3>gst_preset_get_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_preset_get_meta (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
 <p>Gets the <em class="parameter"><code>value</code></em>
  for an existing meta data <em class="parameter"><code>tag</code></em>
 . Meta data <em class="parameter"><code>tag</code></em>
@@ -457,7 +468,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>preset</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -480,7 +491,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if e.g. there is no preset with that <em class="parameter"><code>name</code></em>
 or no value for the given <em class="parameter"><code>tag</code></em>
 </p>
 <p></p>
@@ -489,8 +500,8 @@
 <hr>
 <div class="refsect2">
 <a name="gst-preset-set-app-dir"></a><h3>gst_preset_set_app_dir ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_preset_set_app_dir (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *app_dir</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_preset_set_app_dir (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *app_dir</code></em>);</pre>
 <p>Sets an extra directory as an absolute path that should be considered when
 looking for presets. Any presets in the application dir will shadow the 
 system presets.</p>
@@ -511,22 +522,51 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.41.8.10.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the dir already has been set</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the dir already has been set</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-preset-get-app-dir"></a><h3>gst_preset_get_app_dir ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_preset_get_app_dir (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the directory for application specific presets if set by the
 application.</p>
 <div class="refsect3">
 <a name="id-1.3.41.8.11.5"></a><h4>Returns</h4>
-<p> the directory or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, don't free or modify the string</p>
+<p> the directory or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, don't free or modify
+the string. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-preset-is-editable"></a><h3>gst_preset_is_editable ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_preset_is_editable (<em class="parameter"><code><a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a> *preset</code></em>);</pre>
+<p>Check if one can add new presets, change existing ones and remove presets.</p>
+<div class="refsect3">
+<a name="id-1.3.41.8.12.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>preset</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> that implements <a class="link" href="GstPreset.html" title="GstPreset"><span class="type">GstPreset</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.41.8.12.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if presets are editable or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are static</p>
 <p></p>
 </div>
+<p class="since">Since 1.6</p>
 </div>
 </div>
 <div class="refsect1">
@@ -570,7 +610,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstPresetInterface.parent"></a>parent</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstPresetInterface.parent"></a>parent</code></em>;</p></td>
 <td class="struct_member_description"><p>parent interface type.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -622,6 +662,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstQuery.html b/docs/gst/html/GstQuery.html
index feee4a6..02bf83c 100644
--- a/docs/gst/html/GstQuery.html
+++ b/docs/gst/html/GstQuery.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstPreset.html" title="GstPreset">
 <link rel="next" href="GstRegistry.html" title="GstRegistry">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstQuery.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstQuery.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstQuery.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -86,7 +86,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-type-get-name" title="gst_query_type_get_name ()">gst_query_type_get_name</a> <span class="c_punctuation">()</span>
@@ -94,7 +94,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-type-to-quark" title="gst_query_type_to_quark ()">gst_query_type_to_quark</a> <span class="c_punctuation">()</span>
@@ -138,7 +138,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-replace" title="gst_query_replace ()">gst_query_replace</a> <span class="c_punctuation">()</span>
@@ -473,7 +473,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-add-buffering-range" title="gst_query_add_buffering_range ()">gst_query_add_buffering_range</a> <span class="c_punctuation">()</span>
@@ -481,7 +481,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-get-n-buffering-ranges" title="gst_query_get_n_buffering_ranges ()">gst_query_get_n_buffering_ranges</a> <span class="c_punctuation">()</span>
@@ -489,7 +489,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-parse-nth-buffering-range" title="gst_query_parse_nth_buffering_range ()">gst_query_parse_nth_buffering_range</a> <span class="c_punctuation">()</span>
@@ -577,7 +577,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-get-n-allocation-pools" title="gst_query_get_n_allocation_pools ()">gst_query_get_n_allocation_pools</a> <span class="c_punctuation">()</span>
@@ -617,7 +617,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-get-n-allocation-params" title="gst_query_get_n_allocation_params ()">gst_query_get_n_allocation_params</a> <span class="c_punctuation">()</span>
@@ -657,7 +657,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-get-n-allocation-metas" title="gst_query_get_n_allocation_metas ()">gst_query_get_n_allocation_metas</a> <span class="c_punctuation">()</span>
@@ -665,7 +665,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-parse-nth-allocation-meta" title="gst_query_parse_nth_allocation_meta ()">gst_query_parse_nth_allocation_meta</a> <span class="c_punctuation">()</span>
@@ -681,7 +681,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-find-allocation-meta" title="gst_query_find_allocation_meta ()">gst_query_find_allocation_meta</a> <span class="c_punctuation">()</span>
@@ -721,7 +721,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-get-n-scheduling-modes" title="gst_query_get_n_scheduling_modes ()">gst_query_get_n_scheduling_modes</a> <span class="c_punctuation">()</span>
@@ -737,7 +737,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-has-scheduling-mode" title="gst_query_has_scheduling_mode ()">gst_query_has_scheduling_mode</a> <span class="c_punctuation">()</span>
@@ -745,7 +745,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-has-scheduling-mode-with-flags" title="gst_query_has_scheduling_mode_with_flags ()">gst_query_has_scheduling_mode_with_flags</a> <span class="c_punctuation">()</span>
@@ -785,7 +785,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstQuery.html#gst-query-parse-context-type" title="gst_query_parse_context_type ()">gst_query_parse_context_type</a> <span class="c_punctuation">()</span>
@@ -831,7 +831,7 @@
 </div>
 <div class="refsect1">
 <a name="GstQuery.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstQuery
 </pre>
 </div>
@@ -872,9 +872,9 @@
 <span class="keyword">if</span> <span class="gtkdoc opt">(</span>res<span class="gtkdoc opt">) {</span>
   gint64 duration<span class="gtkdoc opt">;</span>
   <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstQuery.html#gst-query-parse-duration">gst_query_parse_duration</a></span> <span class="gtkdoc opt">(</span>query<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">, &amp;</span>duration<span class="gtkdoc opt">);</span>
-  <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;duration = %&quot;</span>GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span>duration<span class="gtkdoc opt">));</span>
+  <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;duration = %&quot;</span>GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span>duration<span class="gtkdoc opt">));</span>
 <span class="gtkdoc opt">}</span> <span class="keyword">else</span> <span class="gtkdoc opt">{</span>
-  <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;duration query failed...&quot;</span><span class="gtkdoc opt">);</span>
+  <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;duration query failed...&quot;</span><span class="gtkdoc opt">);</span>
 <span class="gtkdoc opt">}</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstQuery.html#gst-query-unref">gst_query_unref</a></span> <span class="gtkdoc opt">(</span>query<span class="gtkdoc opt">);</span></pre></td>
       </tr>
@@ -1055,7 +1055,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-type-get-name"></a><h3>gst_query_type_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_query_type_get_name (<em class="parameter"><code><a class="link" href="GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
 <p>Get a printable name for the given query type. Do not modify or free.</p>
 <div class="refsect3">
@@ -1082,7 +1082,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-type-to-quark"></a><h3>gst_query_type_to_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_query_type_to_quark (<em class="parameter"><code><a class="link" href="GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
 <p>Get the unique quark for the given query type.</p>
 <div class="refsect3">
@@ -1239,7 +1239,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-replace"></a><h3>gst_query_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_replace (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> **old_query</code></em>,
                    <em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *new_query</code></em>);</pre>
 <p>Modifies a pointer to a <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> to point to a different <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a>. The
@@ -1248,7 +1248,7 @@
 query is unreffed, the new one is reffed).</p>
 <p>Either <em class="parameter"><code>new_query</code></em>
  or the <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> pointed to by <em class="parameter"><code>old_query</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.16.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1260,23 +1260,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>old_query</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a>
-to be replaced. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a pointer to a
+<a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> to be replaced. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>new_query</p></td>
 <td class="parameter_description"><p> pointer to a <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> that will
 replace the query pointed to by <em class="parameter"><code>old_query</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.16.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_query</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_query</code></em>
 was different from <em class="parameter"><code>old_query</code></em>
 </p>
 <p></p>
@@ -1339,7 +1339,7 @@
 <tr>
 <td class="parameter_name"><p>structure</p></td>
 <td class="parameter_description"><p> a structure for the query. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1485,7 +1485,7 @@
 , <em class="parameter"><code>dest_format</code></em>
 ,
 and <em class="parameter"><code>dest_value</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, in which case that value is omitted.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, in which case that value is omitted.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1503,25 +1503,25 @@
 <tr>
 <td class="parameter_name"><p>src_format</p></td>
 <td class="parameter_description"><p> the storage for the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> of the
-source value, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+source value, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>src_value</p></td>
-<td class="parameter_description"><p> the storage for the source value, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the source value, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest_format</p></td>
 <td class="parameter_description"><p> the storage for the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> of the
-destination value, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+destination value, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest_value</p></td>
 <td class="parameter_description"><p> the storage for the destination value,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1603,7 +1603,7 @@
 <p>Parse a position query, writing the format into <em class="parameter"><code>format</code></em>
 , and the position
 into <em class="parameter"><code>cur</code></em>
-, if the respective parameters are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+, if the respective parameters are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1621,13 +1621,13 @@
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> the storage for the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> of the
-position values (may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+position values (may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>cur</p></td>
-<td class="parameter_description"><p> the storage for the current position (may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the current position (may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1709,7 +1709,7 @@
 <p>Parse a duration query answer. Write the format of the duration into <em class="parameter"><code>format</code></em>
 ,
 and the value into <em class="parameter"><code>duration</code></em>
-, if the respective variables are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+, if the respective variables are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1727,13 +1727,13 @@
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> the storage for the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> of the duration
-value, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+value, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>duration</p></td>
-<td class="parameter_description"><p> the storage for the total duration, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the total duration, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1760,7 +1760,7 @@
 <a name="gst-query-parse-latency"></a><h3>gst_query_parse_latency ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_latency (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
                          <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>,
                          <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>);</pre>
 <p>Parse a latency query answer.</p>
@@ -1780,18 +1780,18 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>live</p></td>
-<td class="parameter_description"><p> storage for live or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> storage for live or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>min_latency</p></td>
-<td class="parameter_description"><p> the storage for the min latency or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the min latency or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>max_latency</p></td>
-<td class="parameter_description"><p> the storage for the max latency or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the max latency or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1802,7 +1802,7 @@
 <a name="gst-query-set-latency"></a><h3>gst_query_set_latency ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_latency (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> live</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> live</code></em>,
                        <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> min_latency</code></em>,
                        <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> max_latency</code></em>);</pre>
 <p>Answer a latency query by setting the requested values in the given format.</p>
@@ -1874,7 +1874,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_seeking (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> seekable</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> seekable</code></em>,
                        <em class="parameter"><code><span class="type">gint64</span> segment_start</code></em>,
                        <em class="parameter"><code><span class="type">gint64</span> segment_end</code></em>);</pre>
 <p>Set the seeking query result fields in <em class="parameter"><code>query</code></em>
@@ -1925,13 +1925,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_seeking (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                          <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *seekable</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *seekable</code></em>,
                          <em class="parameter"><code><span class="type">gint64</span> *segment_start</code></em>,
                          <em class="parameter"><code><span class="type">gint64</span> *segment_end</code></em>);</pre>
 <p>Parse a seeking query, writing the format into <em class="parameter"><code>format</code></em>
 , and
 other results into the passed parameters, if the respective parameters
-are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p>
+are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p>
 <div class="refsect3">
 <a name="id-1.3.42.8.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1950,23 +1950,23 @@
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> the format to set for the <em class="parameter"><code>segment_start</code></em>
 and <em class="parameter"><code>segment_end</code></em>
-values, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+values, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>seekable</p></td>
-<td class="parameter_description"><p> the seekable flag to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the seekable flag to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>segment_start</p></td>
-<td class="parameter_description"><p> the segment_start to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the segment_start to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>segment_end</p></td>
-<td class="parameter_description"><p> the segment_end to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the segment_end to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1991,7 +1991,7 @@
 <a name="gst-query-set-formats"></a><h3>gst_query_set_formats ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_formats (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_formats</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_formats</code></em>,
                        <em class="parameter"><code>...</code></em>);</pre>
 <p>Set the formats query result fields in <em class="parameter"><code>query</code></em>
 . The number of formats passed
@@ -2032,7 +2032,7 @@
 <a name="gst-query-set-formatsv"></a><h3>gst_query_set_formatsv ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_formatsv (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_formats</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_formats</code></em>,
                         <em class="parameter"><code>const <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *formats</code></em>);</pre>
 <p>Set the formats query result fields in <em class="parameter"><code>query</code></em>
 . The number of formats passed
@@ -2074,7 +2074,7 @@
 <a name="gst-query-parse-n-formats"></a><h3>gst_query_parse_n_formats ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_n_formats (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_formats</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_formats</code></em>);</pre>
 <p>Parse the number of formats in the formats <em class="parameter"><code>query</code></em>
 .</p>
 <div class="refsect3">
@@ -2094,7 +2094,7 @@
 <tr>
 <td class="parameter_name"><p>n_formats</p></td>
 <td class="parameter_description"><p> the number of formats in this query. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2105,7 +2105,7 @@
 <a name="gst-query-parse-nth-format"></a><h3>gst_query_parse_nth_format ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_nth_format (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nth</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nth</code></em>,
                             <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>);</pre>
 <p>Parse the format query and retrieve the <em class="parameter"><code>nth</code></em>
  format from it into
@@ -2136,7 +2136,7 @@
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> a pointer to store the nth format. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2177,7 +2177,7 @@
 <a name="gst-query-set-segment"></a><h3>gst_query_set_segment ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_segment (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                        <em class="parameter"><code><span class="type">gint64</span> start_value</code></em>,
                        <em class="parameter"><code><span class="type">gint64</span> stop_value</code></em>);</pre>
@@ -2244,7 +2244,7 @@
 <a name="gst-query-parse-segment"></a><h3>gst_query_parse_segment ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_segment (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
                          <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
                          <em class="parameter"><code><span class="type">gint64</span> *start_value</code></em>,
                          <em class="parameter"><code><span class="type">gint64</span> *stop_value</code></em>);</pre>
@@ -2253,7 +2253,7 @@
 , <em class="parameter"><code>start_value</code></em>
 , and
 <em class="parameter"><code>stop_value</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, which will cause this value to be omitted.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, which will cause this value to be omitted.</p>
 <p>See <a class="link" href="GstQuery.html#gst-query-set-segment" title="gst_query_set_segment ()"><code class="function">gst_query_set_segment()</code></a> for an explanation of the function arguments.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.42.6"></a><h4>Parameters</h4>
@@ -2271,24 +2271,24 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>rate</p></td>
-<td class="parameter_description"><p> the storage for the rate of the segment, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the rate of the segment, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> the storage for the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> of the values,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>start_value</p></td>
-<td class="parameter_description"><p> the storage for the start value, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the start value, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>stop_value</p></td>
-<td class="parameter_description"><p> the storage for the stop value, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the storage for the stop value, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2503,7 +2503,7 @@
 <a name="gst-query-set-accept-caps-result"></a><h3>gst_query_set_accept_caps_result ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_accept_caps_result (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> result</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> result</code></em>);</pre>
 <p>Set <em class="parameter"><code>result</code></em>
  as the result for the <em class="parameter"><code>query</code></em>
 .</p>
@@ -2535,7 +2535,7 @@
 <a name="gst-query-parse-accept-caps-result"></a><h3>gst_query_parse_accept_caps_result ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_accept_caps_result (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *result</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *result</code></em>);</pre>
 <p>Parse the result from <em class="parameter"><code>query</code></em>
  and store in <em class="parameter"><code>result</code></em>
 .</p>
@@ -2596,11 +2596,11 @@
 <a name="gst-query-set-buffering-percent"></a><h3>gst_query_set_buffering_percent ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_buffering_percent (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> busy</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> percent</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> busy</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> percent</code></em>);</pre>
 <p>Set the percentage of buffered data. This is a value between 0 and 100.
 The <em class="parameter"><code>busy</code></em>
- indicator is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the buffering is in progress.</p>
+ indicator is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the buffering is in progress.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2634,11 +2634,11 @@
 <a name="gst-query-parse-buffering-percent"></a><h3>gst_query_parse_buffering_percent ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_buffering_percent (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *busy</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *percent</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *busy</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *percent</code></em>);</pre>
 <p>Get the percentage of buffered data. This is a value between 0 and 100.
 The <em class="parameter"><code>busy</code></em>
- indicator is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the buffering is in progress.</p>
+ indicator is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the buffering is in progress.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2655,13 +2655,13 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>busy</p></td>
-<td class="parameter_description"><p> if buffering is busy, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> if buffering is busy, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>percent</p></td>
-<td class="parameter_description"><p> a buffering percent, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a buffering percent, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2673,8 +2673,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_buffering_stats (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                                <em class="parameter"><code><a class="link" href="GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> mode</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_in</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_out</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_in</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_out</code></em>,
                                <em class="parameter"><code><span class="type">gint64</span> buffering_left</code></em>);</pre>
 <p>Configures the buffering stats values in <em class="parameter"><code>query</code></em>
 .</p>
@@ -2722,8 +2722,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_buffering_stats (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> *mode</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_in</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_out</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_in</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_out</code></em>,
                                  <em class="parameter"><code><span class="type">gint64</span> *buffering_left</code></em>);</pre>
 <p>Extracts the buffering stats values from <em class="parameter"><code>query</code></em>
 .</p>
@@ -2743,24 +2743,24 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
-<td class="parameter_description"><p> a buffering mode, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a buffering mode, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>avg_in</p></td>
-<td class="parameter_description"><p> the average input rate, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the average input rate, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>avg_out</p></td>
-<td class="parameter_description"><p> the average output rat, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the average output rat, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>buffering_left</p></td>
 <td class="parameter_description"><p> amount of buffering time left in
-milliseconds, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+milliseconds, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2830,7 +2830,7 @@
 <p>Parse an available query, writing the format into <em class="parameter"><code>format</code></em>
 , and
 other results into the passed parameters, if the respective parameters
-are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p>
+are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p>
 <div class="refsect3">
 <a name="id-1.3.42.8.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2849,24 +2849,24 @@
 <td class="parameter_name"><p>format</p></td>
 <td class="parameter_description"><p> the format to set for the <em class="parameter"><code>segment_start</code></em>
 and <em class="parameter"><code>segment_end</code></em>
-values, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+values, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>start</p></td>
-<td class="parameter_description"><p> the start to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the start to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>stop</p></td>
-<td class="parameter_description"><p> the stop to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the stop to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>estimated_total</p></td>
 <td class="parameter_description"><p> estimated total amount of download
-time remaining in milliseconds, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+time remaining in milliseconds, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2875,7 +2875,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-add-buffering-range"></a><h3>gst_query_add_buffering_range ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_add_buffering_range (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                                <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
                                <em class="parameter"><code><span class="type">gint64</span> stop</code></em>);</pre>
@@ -2912,14 +2912,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.58.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the range was added or not.</p>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the range was added or not.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-query-get-n-buffering-ranges"></a><h3>gst_query_get_n_buffering_ranges ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_query_get_n_buffering_ranges (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Retrieve the number of values currently stored in the
 buffered-ranges array of the query's structure.</p>
@@ -2940,16 +2940,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.59.6"></a><h4>Returns</h4>
-<p> the range array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
+<p> the range array size as a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-query-parse-nth-buffering-range"></a><h3>gst_query_parse_nth_buffering_range ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_parse_nth_buffering_range (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                      <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
                                      <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>);</pre>
 <p>Parse an available query and get the start and stop values stored
@@ -2976,20 +2976,20 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>start</p></td>
-<td class="parameter_description"><p> the start position to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the start position to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>stop</p></td>
-<td class="parameter_description"><p> the stop position to set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the stop position to set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.60.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the parsing succeeded.</p>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the parsing succeeded.</p>
 <p></p>
 </div>
 </div>
@@ -3013,11 +3013,11 @@
 <a name="gst-query-parse-uri"></a><h3>gst_query_parse_uri ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_uri (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uri</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uri</code></em>);</pre>
 <p>Parse an URI query, writing the URI into <em class="parameter"><code>uri</code></em>
  as a newly
-allocated string, if the respective parameters are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-Free the string with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+allocated string, if the respective parameters are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
+Free the string with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.62.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3035,8 +3035,8 @@
 <tr>
 <td class="parameter_name"><p>uri</p></td>
 <td class="parameter_description"><p> the storage for the current URI
-(may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+(may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3047,7 +3047,7 @@
 <a name="gst-query-set-uri"></a><h3>gst_query_set_uri ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_uri (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
 <p>Answer a URI query by setting the requested URI.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.63.5"></a><h4>Parameters</h4>
@@ -3077,11 +3077,11 @@
 <a name="gst-query-parse-uri-redirection"></a><h3>gst_query_parse_uri_redirection ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_uri_redirection (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uri</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uri</code></em>);</pre>
 <p>Parse an URI query, writing the URI into <em class="parameter"><code>uri</code></em>
  as a newly
-allocated string, if the respective parameters are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
-Free the string with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
+allocated string, if the respective parameters are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
+Free the string with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3099,8 +3099,8 @@
 <tr>
 <td class="parameter_name"><p>uri</p></td>
 <td class="parameter_description"><p> the storage for the redirect URI
-(may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+(may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3112,7 +3112,7 @@
 <a name="gst-query-set-uri-redirection"></a><h3>gst_query_set_uri_redirection ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_uri_redirection (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
 <p>Answer a URI query by setting the requested URI redirection.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.65.5"></a><h4>Parameters</h4>
@@ -3144,9 +3144,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_uri_redirection_permanent
                                (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *permanent</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *permanent</code></em>);</pre>
 <p>Parse an URI query, and set <em class="parameter"><code>permanent</code></em>
- to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there is a redirection
+ to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there is a redirection
 and it should be considered permanent. If a redirection is permanent,
 applications should update their internal storage of the URI, otherwise
 they should make all future requests to the original URI.</p>
@@ -3167,8 +3167,8 @@
 <tr>
 <td class="parameter_name"><p>permanent</p></td>
 <td class="parameter_description"><p> if the URI redirection is permanent
-(may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+(may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3181,7 +3181,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_uri_redirection_permanent
                                (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> permanent</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> permanent</code></em>);</pre>
 <p>Answer a URI query by setting the requested URI redirection
 to permanent or not.</p>
 <div class="refsect3">
@@ -3195,7 +3195,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>query</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> with query type GST_QUERY_URI</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> with query type <a class="link" href="GstQuery.html#GST-QUERY-URI:CAPS"><code class="literal">GST_QUERY_URI</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -3213,7 +3213,7 @@
 <a name="gst-query-new-allocation"></a><h3>gst_query_new_allocation ()</h3>
 <pre class="programlisting"><a class="link" href="GstQuery.html" title="GstQuery"><span class="returnvalue">GstQuery</span></a> *
 gst_query_new_allocation (<em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> need_pool</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> need_pool</code></em>);</pre>
 <p>Constructs a new query object for querying the allocation properties.</p>
 <p>Free-function: gst_query_unref</p>
 <div class="refsect3">
@@ -3250,12 +3250,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_allocation (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                             <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *need_pool</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *need_pool</code></em>);</pre>
 <p>Parse an allocation query, writing the requested caps in <em class="parameter"><code>caps</code></em>
  and
 whether a pool is needed in <em class="parameter"><code>need_pool</code></em>
 , if the respective parameters
-are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+are non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3273,12 +3273,12 @@
 <tr>
 <td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p> The <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>need_pool</p></td>
 <td class="parameter_description"><p> Whether a <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> is needed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3290,9 +3290,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_add_allocation_pool (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                                <em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
 <p>Set the pool parameters in <em class="parameter"><code>query</code></em>
 .</p>
 <div class="refsect3">
@@ -3311,8 +3311,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>pool</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
@@ -3336,7 +3336,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-get-n-allocation-pools"></a><h3>gst_query_get_n_allocation_pools ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_query_get_n_allocation_pools (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Retrieve the number of values currently stored in the
 pool array of the query's structure.</p>
@@ -3357,7 +3357,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.71.6"></a><h4>Returns</h4>
-<p> the pool array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
+<p> the pool array size as a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
 <p></p>
 </div>
 </div>
@@ -3366,11 +3366,11 @@
 <a name="gst-query-parse-nth-allocation-pool"></a><h3>gst_query_parse_nth_allocation_pool ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_nth_allocation_pool (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> **pool</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *size</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *min_buffers</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *max_buffers</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *size</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *min_buffers</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *max_buffers</code></em>);</pre>
 <p>Get the pool parameters in <em class="parameter"><code>query</code></em>
 .</p>
 <p>Unref <em class="parameter"><code>pool</code></em>
@@ -3397,22 +3397,22 @@
 <tr>
 <td class="parameter_name"><p>pool</p></td>
 <td class="parameter_description"><p> the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
 <td class="parameter_description"><p> the size. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>min_buffers</p></td>
 <td class="parameter_description"><p> the min buffers. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>max_buffers</p></td>
 <td class="parameter_description"><p> the max buffers. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3423,11 +3423,11 @@
 <a name="gst-query-set-nth-allocation-pool"></a><h3>gst_query_set_nth_allocation_pool ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_nth_allocation_pool (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                    <em class="parameter"><code><a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_buffers</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
 <p>Set the pool parameters in <em class="parameter"><code>query</code></em>
 .</p>
 <div class="refsect3">
@@ -3451,8 +3451,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>pool</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
@@ -3478,7 +3478,7 @@
 <a name="gst-query-remove-nth-allocation-pool"></a><h3>gst_query_remove_nth_allocation_pool ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_remove_nth_allocation_pool (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Remove the allocation pool at <em class="parameter"><code>index</code></em>
  of the allocation pool array.</p>
 <div class="refsect3">
@@ -3532,12 +3532,12 @@
 <tr>
 <td class="parameter_name"><p>allocator</p></td>
 <td class="parameter_description"><p> the memory allocator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> a <a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3546,7 +3546,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-get-n-allocation-params"></a><h3>gst_query_get_n_allocation_params ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_query_get_n_allocation_params (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Retrieve the number of values currently stored in the
 allocator params array of the query's structure.</p>
@@ -3571,7 +3571,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.76.7"></a><h4>Returns</h4>
-<p> the allocator array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
+<p> the allocator array size as a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
 <p></p>
 </div>
 </div>
@@ -3580,7 +3580,7 @@
 <a name="gst-query-parse-nth-allocation-param"></a><h3>gst_query_parse_nth_allocation_param ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_nth_allocation_param (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> **allocator</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);</pre>
 <p>Parse an available query and get the allocator and its params
@@ -3608,12 +3608,12 @@
 <tr>
 <td class="parameter_name"><p>allocator</p></td>
 <td class="parameter_description"><p> variable to hold the result. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> parameters for the allocator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3624,7 +3624,7 @@
 <a name="gst-query-set-nth-allocation-param"></a><h3>gst_query_set_nth_allocation_param ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_nth_allocation_param (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstAllocator.html" title="GstAllocator"><span class="type">GstAllocator</span></a> *allocator</code></em>,
                                     <em class="parameter"><code>const <a class="link" href="GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);</pre>
 <p>Parse an available query and get the allocator and its params
@@ -3652,12 +3652,12 @@
 <tr>
 <td class="parameter_name"><p>allocator</p></td>
 <td class="parameter_description"><p> new allocator to set. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> parameters for the allocator. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3668,7 +3668,7 @@
 <a name="gst-query-remove-nth-allocation-param"></a><h3>gst_query_remove_nth_allocation_param ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_remove_nth_allocation_param (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Remove the allocation param at <em class="parameter"><code>index</code></em>
  of the allocation param array.</p>
 <div class="refsect3">
@@ -3700,7 +3700,7 @@
 <a name="gst-query-add-allocation-meta"></a><h3>gst_query_add_allocation_meta ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_add_allocation_meta (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
                                <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *params</code></em>);</pre>
 <p>Add <em class="parameter"><code>api</code></em>
  with <em class="parameter"><code>params</code></em>
@@ -3728,7 +3728,7 @@
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> API specific parameters. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3737,7 +3737,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-get-n-allocation-metas"></a><h3>gst_query_get_n_allocation_metas ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_query_get_n_allocation_metas (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Retrieve the number of values currently stored in the
 meta API array of the query's structure.</p>
@@ -3758,16 +3758,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.81.6"></a><h4>Returns</h4>
-<p> the metadata API array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
+<p> the metadata API array size as a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-query-parse-nth-allocation-meta"></a><h3>gst_query_parse_nth_allocation_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 gst_query_parse_nth_allocation_meta (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                      <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> **params</code></em>);</pre>
 <p>Parse an available query and get the metadata API
 at <em class="parameter"><code>index</code></em>
@@ -3794,14 +3794,14 @@
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> API specific flags. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.82.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the metadata API at <em class="parameter"><code>index</code></em>
+<p> a <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the metadata API at <em class="parameter"><code>index</code></em>
 .</p>
 <p></p>
 </div>
@@ -3811,7 +3811,7 @@
 <a name="gst-query-remove-nth-allocation-meta"></a><h3>gst_query_remove_nth_allocation_meta ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_remove_nth_allocation_meta (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Remove the metadata API at <em class="parameter"><code>index</code></em>
  of the metadata API array.</p>
 <div class="refsect3">
@@ -3840,13 +3840,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-find-allocation-meta"></a><h3>gst_query_find_allocation_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_find_allocation_meta (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *index</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *index</code></em>);</pre>
 <p>Check if <em class="parameter"><code>query</code></em>
  has metadata <em class="parameter"><code>api</code></em>
- set. When this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>,
+ set. When this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>,
 <em class="parameter"><code>index</code></em>
  will contain the index where the requested API and the flags can be
 found.</p>
@@ -3872,14 +3872,14 @@
 <tr>
 <td class="parameter_name"><p>index</p></td>
 <td class="parameter_description"><p> the index. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.84.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>api</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>api</code></em>
 is in the list of metadata.</p>
 <p></p>
 </div>
@@ -3903,9 +3903,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_parse_scheduling (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                             <em class="parameter"><code><a class="link" href="GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a> *flags</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *minsize</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *maxsize</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *align</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *minsize</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *maxsize</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *align</code></em>);</pre>
 <p>Set the scheduling properties.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.86.5"></a><h4>Parameters</h4>
@@ -3924,22 +3924,22 @@
 <tr>
 <td class="parameter_name"><p>flags</p></td>
 <td class="parameter_description"><p> <a class="link" href="GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>minsize</p></td>
 <td class="parameter_description"><p> the suggested minimum size of pull requests. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>maxsize</p></td>
 <td class="parameter_description"><p> the suggested maximum size of pull requests:. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>align</p></td>
 <td class="parameter_description"><p> the suggested alignment of pull requests. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3951,9 +3951,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_query_set_scheduling (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                           <em class="parameter"><code><a class="link" href="GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a> flags</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minsize</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> maxsize</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> align</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minsize</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> maxsize</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> align</code></em>);</pre>
 <p>Set the scheduling properties.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.87.5"></a><h4>Parameters</h4>
@@ -4028,7 +4028,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-get-n-scheduling-modes"></a><h3>gst_query_get_n_scheduling_modes ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_query_get_n_scheduling_modes (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
 <p>Retrieve the number of values currently stored in the
 scheduling mode array of the query's structure.</p>
@@ -4049,7 +4049,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.89.6"></a><h4>Returns</h4>
-<p> the scheduling mode array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
+<p> the scheduling mode array size as a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</p>
 <p></p>
 </div>
 </div>
@@ -4058,7 +4058,7 @@
 <a name="gst-query-parse-nth-scheduling-mode"></a><h3>gst_query_parse_nth_scheduling_mode ()</h3>
 <pre class="programlisting"><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="returnvalue">GstPadMode</span></a>
 gst_query_parse_nth_scheduling_mode (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Parse an available query and get the scheduling mode
 at <em class="parameter"><code>index</code></em>
  of the scheduling modes array.</p>
@@ -4094,7 +4094,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-has-scheduling-mode"></a><h3>gst_query_has_scheduling_mode ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_has_scheduling_mode (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                                <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>);</pre>
 <p>Check if <em class="parameter"><code>query</code></em>
@@ -4130,7 +4130,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.91.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>mode</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>mode</code></em>
 is in the list of scheduling modes.</p>
 <p></p>
 </div>
@@ -4138,7 +4138,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-has-scheduling-mode-with-flags"></a><h3>gst_query_has_scheduling_mode_with_flags ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_has_scheduling_mode_with_flags
                                (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>,
@@ -4176,7 +4176,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.92.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>mode</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>mode</code></em>
 is in the list of scheduling modes
 and <em class="parameter"><code>flags</code></em>
 are compatible with query flags.</p>
@@ -4200,7 +4200,7 @@
 <div class="refsect2">
 <a name="gst-query-new-context"></a><h3>gst_query_new_context ()</h3>
 <pre class="programlisting"><a class="link" href="GstQuery.html" title="GstQuery"><span class="returnvalue">GstQuery</span></a> *
-gst_query_new_context (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>);</pre>
+gst_query_new_context (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *context_type</code></em>);</pre>
 <p>Constructs a new query object for querying the pipeline-local context.</p>
 <p>Free-function: gst_query_unref</p>
 <div class="refsect3">
@@ -4293,9 +4293,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-query-parse-context-type"></a><h3>gst_query_parse_context_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_query_parse_context_type (<em class="parameter"><code><a class="link" href="GstQuery.html" title="GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **context_type</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **context_type</code></em>);</pre>
 <p>Parse a context type from an existing GST_QUERY_CONTEXT query.</p>
 <div class="refsect3">
 <a name="id-1.3.42.8.97.5"></a><h4>Parameters</h4>
@@ -4313,15 +4313,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>context_type</p></td>
-<td class="parameter_description"><p> the context type, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the context type, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.42.8.97.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the parsing succeeded.</p>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating if the parsing succeeded.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -4650,6 +4650,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstRegistry.html b/docs/gst/html/GstRegistry.html
index e21d466..2e8518d 100644
--- a/docs/gst/html/GstRegistry.html
+++ b/docs/gst/html/GstRegistry.html
@@ -8,15 +8,15 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstQuery.html" title="GstQuery">
 <link rel="next" href="GstSegment.html" title="GstSegment">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstRegistry.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstRegistry.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstRegistry.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstRegistry.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#GstRegistry.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -51,7 +51,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-get-feature-list" title="gst_registry_get_feature_list ()">gst_registry_get_feature_list</a> <span class="c_punctuation">()</span>
@@ -67,7 +67,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-get-feature-list-by-plugin" title="gst_registry_get_feature_list_by_plugin ()">gst_registry_get_feature_list_by_plugin</a> <span class="c_punctuation">()</span>
@@ -75,7 +75,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-get-plugin-list" title="gst_registry_get_plugin_list ()">gst_registry_get_plugin_list</a> <span class="c_punctuation">()</span>
@@ -83,7 +83,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-add-plugin" title="gst_registry_add_plugin ()">gst_registry_add_plugin</a> <span class="c_punctuation">()</span>
@@ -99,7 +99,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-plugin-filter" title="gst_registry_plugin_filter ()">gst_registry_plugin_filter</a> <span class="c_punctuation">()</span>
@@ -107,7 +107,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-feature-filter" title="gst_registry_feature_filter ()">gst_registry_feature_filter</a> <span class="c_punctuation">()</span>
@@ -147,7 +147,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-get-path-list" title="gst_registry_get_path_list ()">gst_registry_get_path_list</a> <span class="c_punctuation">()</span>
@@ -155,7 +155,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-scan-path" title="gst_registry_scan_path ()">gst_registry_scan_path</a> <span class="c_punctuation">()</span>
@@ -179,7 +179,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-add-feature" title="gst_registry_add_feature ()">gst_registry_add_feature</a> <span class="c_punctuation">()</span>
@@ -187,7 +187,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstRegistry.html#gst-registry-check-feature-version" title="gst_registry_check_feature_version ()">gst_registry_check_feature_version</a> <span class="c_punctuation">()</span>
@@ -233,8 +233,8 @@
 </div>
 <div class="refsect1">
 <a name="GstRegistry.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstRegistry
 </pre>
@@ -320,10 +320,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-get-feature-list"></a><h3>gst_registry_get_feature_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_registry_get_feature_list (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
-<p>Retrieves a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> of <em class="parameter"><code>type</code></em>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+<p>Retrieves a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> of <em class="parameter"><code>type</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.3.43.9.3.5"></a><h4>Parameters</h4>
@@ -341,7 +341,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a>.</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a>.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -349,7 +349,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.3.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> of <em class="parameter"><code>type</code></em>
 . Use <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a> after use</p>
 <p>MT safe. </p>
@@ -387,11 +387,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-get-feature-list-by-plugin"></a><h3>gst_registry_get_feature_list_by_plugin ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_registry_get_feature_list_by_plugin
                                (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
-<p>Retrieves a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of features of the plugin with name <em class="parameter"><code>name</code></em>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<p>Retrieves a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of features of the plugin with name <em class="parameter"><code>name</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.3.43.9.5.5"></a><h4>Parameters</h4>
@@ -417,7 +417,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.5.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a>. Use <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a> after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.PluginFeature]</span></p>
 </div>
@@ -425,7 +425,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-get-plugin-list"></a><h3>gst_registry_get_plugin_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_registry_get_plugin_list (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>);</pre>
 <p>Get a copy of all plugins registered in the given registry. The refcount
 of each element in the list in incremented.</p>
@@ -446,7 +446,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.6.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>.
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>.
 Use <a class="link" href="GstPlugin.html#gst-plugin-list-free" title="gst_plugin_list_free ()"><code class="function">gst_plugin_list_free()</code></a> after usage.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Plugin]</span></p>
@@ -455,7 +455,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-add-plugin"></a><h3>gst_registry_add_plugin ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_registry_add_plugin (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
                          <em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>);</pre>
 <p>Add the plugin to the registry. The plugin-added signal will be emitted.
@@ -485,7 +485,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -524,12 +524,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-plugin-filter"></a><h3>gst_registry_plugin_filter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_registry_plugin_filter (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
                             <em class="parameter"><code><a class="link" href="GstPlugin.html#GstPluginFilter" title="GstPluginFilter ()"><span class="type">GstPluginFilter</span></a> filter</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> first</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>Runs a filter against all plugins in the registry and returns a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> with
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> first</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Runs a filter against all plugins in the registry and returns a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> with
 the results. If the first flag is set, only the first match is
 returned (as a list with a single object).
 Every plugin is reffed; use <a class="link" href="GstPlugin.html#gst-plugin-list-free" title="gst_plugin_list_free ()"><code class="function">gst_plugin_list_free()</code></a> after use, which
@@ -568,7 +568,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.9.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>.
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>.
 Use <a class="link" href="GstPlugin.html#gst-plugin-list-free" title="gst_plugin_list_free ()"><code class="function">gst_plugin_list_free()</code></a> after usage.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Plugin]</span></p>
@@ -577,11 +577,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-feature-filter"></a><h3>gst_registry_feature_filter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_registry_feature_filter (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
                              <em class="parameter"><code><a class="link" href="GstPluginFeature.html#GstPluginFeatureFilter" title="GstPluginFeatureFilter ()"><span class="type">GstPluginFeatureFilter</span></a> filter</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> first</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> first</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Runs a filter against all features of the plugins in the registry
 and returns a GList with the results.
 If the first flag is set, only the first match is
@@ -620,7 +620,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.10.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
 <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a>. Use <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a> after usage.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.PluginFeature]</span></p>
@@ -631,7 +631,7 @@
 <a name="gst-registry-find-plugin"></a><h3>gst_registry_find_plugin ()</h3>
 <pre class="programlisting"><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="returnvalue">GstPlugin</span></a> *
 gst_registry_find_plugin (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Find the plugin with the given name in the registry.
 The plugin will be reffed; caller is responsible for unreffing.</p>
 <div class="refsect3">
@@ -658,10 +658,11 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.11.6"></a><h4>Returns</h4>
-<p> the plugin with the given name or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-plugin was not found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage.</p>
+<p> the plugin with the given name
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the plugin was not found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after
+usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -669,8 +670,8 @@
 <a name="gst-registry-find-feature"></a><h3>gst_registry_find_feature ()</h3>
 <pre class="programlisting"><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="returnvalue">GstPluginFeature</span></a> *
 gst_registry_find_feature (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
 <p>Find the pluginfeature with the given name and type in the registry.</p>
 <div class="refsect3">
 <a name="id-1.3.43.9.12.5"></a><h4>Parameters</h4>
@@ -701,10 +702,11 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.12.6"></a><h4>Returns</h4>
-<p> the pluginfeature with the given name and type
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the plugin was not found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage.</p>
+<p> the pluginfeature with the
+given name and type or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the plugin was not
+found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage.</p>
 <p>MT safe. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -751,7 +753,7 @@
 <a name="gst-registry-add-path"></a><h3>gst_registry_add_path ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_registry_add_path (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>);</pre>
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>);</pre>
 <p>Add the given path to the registry. The syntax of the
 path is specific to the registry. If the path has already been
 added, do nothing.</p>
@@ -781,7 +783,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-get-path-list"></a><h3>gst_registry_get_path_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_registry_get_path_list (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>);</pre>
 <p>Get the list of paths for the given registry.</p>
 <div class="refsect3">
@@ -801,7 +803,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.15.6"></a><h4>Returns</h4>
-<p> A <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of paths as
+<p> A <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of paths as
 strings. g_list_free after use.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> char*]</span></p>
@@ -810,9 +812,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-scan-path"></a><h3>gst_registry_scan_path ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_registry_scan_path (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>);</pre>
 <p>Scan the given path for plugins to add to the registry. The syntax of the
 path is specific to the registry.</p>
 <div class="refsect3">
@@ -839,7 +841,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if registry changed</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if registry changed</p>
 <p></p>
 </div>
 </div>
@@ -875,9 +877,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.17.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> if found, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not.
-<a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> the <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> if found, or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not.  <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -914,7 +916,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-add-feature"></a><h3>gst_registry_add_feature ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_registry_add_feature (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
                           <em class="parameter"><code><a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature</code></em>);</pre>
 <p>Add the feature to the registry. The feature-added signal will be emitted.
@@ -944,7 +946,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -952,12 +954,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-check-feature-version"></a><h3>gst_registry_check_feature_version ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_registry_check_feature_version (<em class="parameter"><code><a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry</code></em>,
-                                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature_name</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_major</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_minor</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_micro</code></em>);</pre>
+                                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *feature_name</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_major</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_minor</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_micro</code></em>);</pre>
 <p>Checks whether a plugin feature by the given name exists in
 <em class="parameter"><code>registry</code></em>
  and whether its version is at least the
@@ -1001,8 +1003,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.43.9.20.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the feature could be found and the version is
-the same as the required version or newer, and <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the feature could be found and the version is
+the same as the required version or newer, and <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -1022,7 +1024,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a>      *registry,
                <a class="link" href="GstPluginFeature.html" title="GstPluginFeature"><span class="type">GstPluginFeature</span></a> *feature,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>          user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>          user_data)</pre>
 <p>Signals that a feature has been added to the registry (possibly
 replacing a previously-added one by the same name)</p>
 <div class="refsect3">
@@ -1060,7 +1062,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="GstRegistry.html" title="GstRegistry"><span class="type">GstRegistry</span></a> *registry,
                <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>   *plugin,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
 <p>Signals that a plugin has been added to the registry (possibly
 replacing a previously-added one by the same name)</p>
 <div class="refsect3">
@@ -1100,6 +1102,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstSample.html b/docs/gst/html/GstSample.html
index 1439c5b..2b89995 100644
--- a/docs/gst/html/GstSample.html
+++ b/docs/gst/html/GstSample.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstCapsFeatures.html" title="GstCapsFeatures">
 <link rel="next" href="GstChildProxy.html" title="GstChildProxy">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstSample.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstSample.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstSample.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -121,7 +121,7 @@
 </div>
 <div class="refsect1">
 <a name="GstSample.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstSample
 </pre>
 </div>
@@ -161,12 +161,12 @@
 <div class="refsect3">
 <a name="id-1.3.13.8.2.6"></a><h4>Returns</h4>
 <p> the buffer of <em class="parameter"><code>sample</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there
-is no buffer. The buffer remains valid as long as <em class="parameter"><code>sample</code></em>
-is valid.
-If you need to hold on to it for longer than that, take a ref to
-the buffer with <a class="link" href="GstBuffer.html#gst-buffer-ref" title="gst_buffer_ref ()"><code class="function">gst_buffer_ref()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when there is no buffer. The buffer remains valid as long as
+<em class="parameter"><code>sample</code></em>
+is valid.  If you need to hold on to it for longer than
+that, take a ref to the buffer with <a class="link" href="GstBuffer.html#gst-buffer-ref" title="gst_buffer_ref ()"><code class="function">gst_buffer_ref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -194,12 +194,12 @@
 <div class="refsect3">
 <a name="id-1.3.13.8.3.6"></a><h4>Returns</h4>
 <p> the caps of <em class="parameter"><code>sample</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there
-is no caps. The caps remain valid as long as <em class="parameter"><code>sample</code></em>
-is valid.
-If you need to hold on to the caps for longer than that, take a ref to
-the caps with <a class="link" href="GstCaps.html#gst-caps-ref" title="gst_caps_ref ()"><code class="function">gst_caps_ref()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when there is no caps. The caps remain valid as long as <em class="parameter"><code>sample</code></em>
+is
+valid.  If you need to hold on to the caps for longer than that,
+take a ref to the caps with <a class="link" href="GstCaps.html#gst-caps-ref" title="gst_caps_ref ()"><code class="function">gst_caps_ref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -285,23 +285,23 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p> a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>caps</p></td>
-<td class="parameter_description"><p> a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>segment</p></td>
-<td class="parameter_description"><p> a <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p> a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -412,6 +412,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstSegment.html b/docs/gst/html/GstSegment.html
index 76e3cae..bc20671 100644
--- a/docs/gst/html/GstSegment.html
+++ b/docs/gst/html/GstSegment.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstRegistry.html" title="GstRegistry">
 <link rel="next" href="GstStructure.html" title="GstStructure">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstSegment.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstSegment.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstSegment.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,7 +43,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstSegment.html#gst-segment-clip" title="gst_segment_clip ()">gst_segment_clip</a> <span class="c_punctuation">()</span>
@@ -83,7 +83,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstSegment.html#gst-segment-do-seek" title="gst_segment_do_seek ()">gst_segment_do_seek</a> <span class="c_punctuation">()</span>
@@ -115,7 +115,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstSegment.html#gst-segment-set-running-time" title="gst_segment_set_running_time ()">gst_segment_set_running_time</a> <span class="c_punctuation">()</span>
@@ -131,7 +131,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstSegment.html#gst-segment-offset-running-time" title="gst_segment_offset_running_time ()">gst_segment_offset_running_time</a> <span class="c_punctuation">()</span>
@@ -161,7 +161,7 @@
 </div>
 <div class="refsect1">
 <a name="GstSegment.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstSegment
 </pre>
 </div>
@@ -214,7 +214,7 @@
 <a name="GstSegment.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-segment-clip"></a><h3>gst_segment_clip ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_segment_clip (<em class="parameter"><code>const <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> *segment</code></em>,
                   <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                   <em class="parameter"><code><span class="type">guint64</span> start</code></em>,
@@ -230,14 +230,14 @@
  are compared and clipped to <em class="parameter"><code>segment</code></em>
 
 start and stop values.</p>
-<p>If the function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, <em class="parameter"><code>start</code></em>
+<p>If the function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, <em class="parameter"><code>start</code></em>
  and <em class="parameter"><code>stop</code></em>
  are known to fall
 outside of <em class="parameter"><code>segment</code></em>
  and <em class="parameter"><code>clip_start</code></em>
  and <em class="parameter"><code>clip_stop</code></em>
  are not updated.</p>
-<p>When the function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>clip_start</code></em>
+<p>When the function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>clip_start</code></em>
  and <em class="parameter"><code>clip_stop</code></em>
  will be
 updated. If <em class="parameter"><code>clip_start</code></em>
@@ -282,23 +282,23 @@
 <tr>
 <td class="parameter_name"><p>clip_start</p></td>
 <td class="parameter_description"><p> the clipped start position in the segment. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>clip_stop</p></td>
 <td class="parameter_description"><p> the clipped stop position in the segment. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.44.8.2.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given <em class="parameter"><code>start</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the given <em class="parameter"><code>start</code></em>
 and <em class="parameter"><code>stop</code></em>
 times fall partially or
 completely in <em class="parameter"><code>segment</code></em>
-, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the values are completely outside
+, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the values are completely outside
 of the segment.</p>
 <p></p>
 </div>
@@ -406,16 +406,16 @@
 <hr>
 <div class="refsect2">
 <a name="gst-segment-do-seek"></a><h3>gst_segment_do_seek ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_segment_do_seek (<em class="parameter"><code><a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> *segment</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
                      <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                      <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> flags</code></em>,
                      <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> start_type</code></em>,
                      <em class="parameter"><code><span class="type">guint64</span> start</code></em>,
                      <em class="parameter"><code><a class="link" href="GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> stop_type</code></em>,
                      <em class="parameter"><code><span class="type">guint64</span> stop</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *update</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *update</code></em>);</pre>
 <p>Update the segment structure with the field values of a seek event (see
 <a class="link" href="GstEvent.html#gst-event-new-seek" title="gst_event_new_seek ()"><code class="function">gst_event_new_seek()</code></a>).</p>
 <p>After calling this method, the segment field position and time will
@@ -452,8 +452,8 @@
 
 rate and applied_rate after calling this function.</p>
 <p><em class="parameter"><code>update</code></em>
- will be set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a seek should be performed to the segment
-position field. This field can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if, for example, only the <em class="parameter"><code>rate</code></em>
+ will be set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a seek should be performed to the segment
+position field. This field can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if, for example, only the <em class="parameter"><code>rate</code></em>
 
 has been changed but not the playback position.</p>
 <div class="refsect3">
@@ -515,7 +515,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.44.8.7.11"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the seek could be performed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the seek could be performed.</p>
 <p></p>
 </div>
 </div>
@@ -675,7 +675,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-segment-set-running-time"></a><h3>gst_segment_set_running_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_segment_set_running_time (<em class="parameter"><code><a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> *segment</code></em>,
                               <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                               <em class="parameter"><code><span class="type">guint64</span> running_time</code></em>);</pre>
@@ -712,7 +712,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.44.8.11.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the segment could be updated successfully. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the segment could be updated successfully. If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is
 returned, <em class="parameter"><code>running_time</code></em>
 is -1 or not in <em class="parameter"><code>segment</code></em>
 .</p>
@@ -754,7 +754,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-segment-offset-running-time"></a><h3>gst_segment_offset_running_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_segment_offset_running_time (<em class="parameter"><code><a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> *segment</code></em>,
                                  <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
                                  <em class="parameter"><code><span class="type">gint64</span> offset</code></em>);</pre>
@@ -791,7 +791,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.44.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the segment could be updated successfully. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the segment could be updated successfully. If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is
 returned, <em class="parameter"><code>offset</code></em>
 is not in <em class="parameter"><code>segment</code></em>
 .</p>
@@ -838,12 +838,12 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> <em class="structfield"><code><a name="GstSegment-struct.rate"></a>rate</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> <em class="structfield"><code><a name="GstSegment-struct.rate"></a>rate</code></em>;</p></td>
 <td class="struct_member_description"><p>the rate of the segment</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> <em class="structfield"><code><a name="GstSegment-struct.applied-rate"></a>applied_rate</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> <em class="structfield"><code><a name="GstSegment-struct.applied-rate"></a>applied_rate</code></em>;</p></td>
 <td class="struct_member_description"><p>the already applied rate to the segment</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -923,9 +923,18 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
+<td class="enum_member_name"><p><a name="GST-SEGMENT-FLAG-TRICKMODE:CAPS"></a>GST_SEGMENT_FLAG_TRICKMODE</p></td>
+<td class="enum_member_description">
+<p>perform skip playback (Since: 1.6)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
 <td class="enum_member_name"><p><a name="GST-SEGMENT-FLAG-SKIP:CAPS"></a>GST_SEGMENT_FLAG_SKIP</p></td>
 <td class="enum_member_description">
-<p>perform skip playback</p>
+<p>Deprecated backward compatibility flag, replaced
+                        by <em class="parameter"><code>GST_SEGMENT_FLAG_TRICKMODE</code></em>
+</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -936,6 +945,22 @@
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-SEGMENT-FLAG-TRICKMODE-KEY-UNITS:CAPS"></a>GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS</p></td>
+<td class="enum_member_description">
+<p>Decode only keyframes, where
+                                       possible (Since: 1.6)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-SEGMENT-FLAG-TRICKMODE-NO-AUDIO:CAPS"></a>GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO</p></td>
+<td class="enum_member_description">
+<p>Do not decode any audio, where
+                                       possible (Since: 1.6)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -948,6 +973,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstStructure.html b/docs/gst/html/GstStructure.html
index 93d0934..9e1969a 100644
--- a/docs/gst/html/GstStructure.html
+++ b/docs/gst/html/GstStructure.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstSegment.html" title="GstSegment">
 <link rel="next" href="GstSystemClock.html" title="GstSystemClock">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstStructure.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstStructure.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstStructure.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstStructure.html#GstStructureForeachFunc" title="GstStructureForeachFunc ()">*GstStructureForeachFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -50,7 +50,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstStructure.html#GstStructureMapFunc" title="GstStructureMapFunc ()">*GstStructureMapFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -58,6 +58,14 @@
 </tr>
 <tr>
 <td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="GstStructure.html#GstStructureFilterMapFunc" title="GstStructureFilterMapFunc ()">*GstStructureFilterMapFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
 <a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
 </td>
 <td class="function_name">
@@ -121,7 +129,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-name" title="gst_structure_get_name ()">gst_structure_get_name</a> <span class="c_punctuation">()</span>
@@ -129,7 +137,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-has-name" title="gst_structure_has_name ()">gst_structure_has_name</a> <span class="c_punctuation">()</span>
@@ -145,7 +153,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-name-id" title="gst_structure_get_name_id ()">gst_structure_get_name_id</a> <span class="c_punctuation">()</span>
@@ -153,7 +161,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-id-get" title="gst_structure_id_get ()">gst_structure_id_get</a> <span class="c_punctuation">()</span>
@@ -161,14 +169,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-id-get-valist" title="gst_structure_id_get_valist ()">gst_structure_id_get_valist</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-id-get-value" title="gst_structure_id_get_value ()">gst_structure_id_get_value</a> <span class="c_punctuation">()</span>
@@ -192,7 +200,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get" title="gst_structure_get ()">gst_structure_get</a> <span class="c_punctuation">()</span>
@@ -200,14 +208,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-valist" title="gst_structure_get_valist ()">gst_structure_get_valist</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-value" title="gst_structure_get_value ()">gst_structure_get_value</a> <span class="c_punctuation">()</span>
@@ -295,7 +303,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-field-type" title="gst_structure_get_field_type ()">gst_structure_get_field_type</a> <span class="c_punctuation">()</span>
@@ -303,15 +311,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="GstStructure.html#gst-structure-foreach" title="gst_structure_foreach ()">gst_structure_foreach</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-n-fields" title="gst_structure_n_fields ()">gst_structure_n_fields</a> <span class="c_punctuation">()</span>
@@ -319,7 +319,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-has-field" title="gst_structure_has_field ()">gst_structure_has_field</a> <span class="c_punctuation">()</span>
@@ -327,7 +327,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-has-field-typed" title="gst_structure_has_field_typed ()">gst_structure_has_field_typed</a> <span class="c_punctuation">()</span>
@@ -335,7 +335,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-is-equal" title="gst_structure_is_equal ()">gst_structure_is_equal</a> <span class="c_punctuation">()</span>
@@ -343,7 +343,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-is-subset" title="gst_structure_is_subset ()">gst_structure_is_subset</a> <span class="c_punctuation">()</span>
@@ -351,7 +351,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-can-intersect" title="gst_structure_can_intersect ()">gst_structure_can_intersect</a> <span class="c_punctuation">()</span>
@@ -367,7 +367,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-id-has-field" title="gst_structure_id_has_field ()">gst_structure_id_has_field</a> <span class="c_punctuation">()</span>
@@ -375,7 +375,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-id-has-field-typed" title="gst_structure_id_has_field_typed ()">gst_structure_id_has_field_typed</a> <span class="c_punctuation">()</span>
@@ -383,7 +383,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-boolean" title="gst_structure_get_boolean ()">gst_structure_get_boolean</a> <span class="c_punctuation">()</span>
@@ -391,7 +391,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-int" title="gst_structure_get_int ()">gst_structure_get_int</a> <span class="c_punctuation">()</span>
@@ -399,7 +399,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-uint" title="gst_structure_get_uint ()">gst_structure_get_uint</a> <span class="c_punctuation">()</span>
@@ -407,7 +407,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-int64" title="gst_structure_get_int64 ()">gst_structure_get_int64</a> <span class="c_punctuation">()</span>
@@ -415,7 +415,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-uint64" title="gst_structure_get_uint64 ()">gst_structure_get_uint64</a> <span class="c_punctuation">()</span>
@@ -423,14 +423,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-double" title="gst_structure_get_double ()">gst_structure_get_double</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-string" title="gst_structure_get_string ()">gst_structure_get_string</a> <span class="c_punctuation">()</span>
@@ -438,7 +438,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-date" title="gst_structure_get_date ()">gst_structure_get_date</a> <span class="c_punctuation">()</span>
@@ -446,7 +446,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-date-time" title="gst_structure_get_date_time ()">gst_structure_get_date_time</a> <span class="c_punctuation">()</span>
@@ -454,7 +454,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-clock-time" title="gst_structure_get_clock_time ()">gst_structure_get_clock_time</a> <span class="c_punctuation">()</span>
@@ -462,7 +462,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-enum" title="gst_structure_get_enum ()">gst_structure_get_enum</a> <span class="c_punctuation">()</span>
@@ -470,7 +470,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-get-fraction" title="gst_structure_get_fraction ()">gst_structure_get_fraction</a> <span class="c_punctuation">()</span>
@@ -478,14 +478,30 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstStructure.html#gst-structure-foreach" title="gst_structure_foreach ()">gst_structure_foreach</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-map-in-place" title="gst_structure_map_in_place ()">gst_structure_map_in_place</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="GstStructure.html#gst-structure-filter-and-map-in-place" title="gst_structure_filter_and_map_in_place ()">gst_structure_filter_and_map_in_place</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-nth-field-name" title="gst_structure_nth_field_name ()">gst_structure_nth_field_name</a> <span class="c_punctuation">()</span>
@@ -493,7 +509,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-set-parent-refcount" title="gst_structure_set_parent_refcount ()">gst_structure_set_parent_refcount</a> <span class="c_punctuation">()</span>
@@ -501,7 +517,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-to-string" title="gst_structure_to_string ()">gst_structure_to_string</a> <span class="c_punctuation">()</span>
@@ -525,7 +541,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-fixate-field" title="gst_structure_fixate_field ()">gst_structure_fixate_field</a> <span class="c_punctuation">()</span>
@@ -533,7 +549,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-fixate-field-nearest-int" title="gst_structure_fixate_field_nearest_int ()">gst_structure_fixate_field_nearest_int</a> <span class="c_punctuation">()</span>
@@ -541,7 +557,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-fixate-field-nearest-double" title="gst_structure_fixate_field_nearest_double ()">gst_structure_fixate_field_nearest_double</a> <span class="c_punctuation">()</span>
@@ -549,7 +565,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-fixate-field-nearest-fraction" title="gst_structure_fixate_field_nearest_fraction ()">gst_structure_fixate_field_nearest_fraction</a> <span class="c_punctuation">()</span>
@@ -557,7 +573,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-fixate-field-boolean" title="gst_structure_fixate_field_boolean ()">gst_structure_fixate_field_boolean</a> <span class="c_punctuation">()</span>
@@ -565,7 +581,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstStructure.html#gst-structure-fixate-field-string" title="gst_structure_fixate_field_string ()">gst_structure_fixate_field_string</a> <span class="c_punctuation">()</span>
@@ -589,7 +605,7 @@
 </div>
 <div class="refsect1">
 <a name="GstStructure.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstStructure
 </pre>
 </div>
@@ -620,7 +636,7 @@
 <p>Fields can be removed with <a class="link" href="GstStructure.html#gst-structure-remove-field" title="gst_structure_remove_field ()"><code class="function">gst_structure_remove_field()</code></a> or
 <a class="link" href="GstStructure.html#gst-structure-remove-fields" title="gst_structure_remove_fields ()"><code class="function">gst_structure_remove_fields()</code></a>.</p>
 <p>Strings in structures must be ASCII or UTF-8 encoded. Other encodings are
-not allowed. Strings may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> however.</p>
+not allowed. Strings may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> however.</p>
 <p>Be aware that the current <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> / <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> serialization into string
 has limited support for nested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> / <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> fields. It can only
 support one level of nesting. Using more levels will lead to unexpected
@@ -631,10 +647,10 @@
 <a name="GstStructure.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="GstStructureForeachFunc"></a><h3>GstStructureForeachFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-<span class="c_punctuation">(</span>*GstStructureForeachFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_id</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstStructureForeachFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_id</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called in <a class="link" href="GstStructure.html#gst-structure-foreach" title="gst_structure_foreach ()"><code class="function">gst_structure_foreach()</code></a>. The function may
 not modify <em class="parameter"><code>value</code></em>
 .</p>
@@ -649,12 +665,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>field_id</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -667,18 +683,18 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the foreach operation should continue, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
-the foreach operation should stop with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the foreach operation should continue, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+the foreach operation should stop with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstStructureMapFunc"></a><h3>GstStructureMapFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-<span class="c_punctuation">(</span>*GstStructureMapFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_id</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstStructureMapFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_id</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called in <a class="link" href="GstStructure.html#gst-structure-map-in-place" title="gst_structure_map_in_place ()"><code class="function">gst_structure_map_in_place()</code></a>. The function
 may modify <em class="parameter"><code>value</code></em>
 .</p>
@@ -693,12 +709,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>field_id</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -711,8 +727,53 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.3.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map operation should continue, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
-the map operation should stop with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the map operation should continue, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if
+the map operation should stop with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstStructureFilterMapFunc"></a><h3>GstStructureFilterMapFunc ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstStructureFilterMapFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_id</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>A function that will be called in <a class="link" href="GstStructure.html#gst-structure-filter-and-map-in-place" title="gst_structure_filter_and_map_in_place ()"><code class="function">gst_structure_filter_and_map_in_place()</code></a>.
+The function may modify <em class="parameter"><code>value</code></em>
+, and the value will be removed from
+the structure if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.4.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>field_id</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.45.8.4.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the field should be preserved, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it
+should be removed.</p>
 <p></p>
 </div>
 </div>
@@ -720,14 +781,14 @@
 <div class="refsect2">
 <a name="gst-structure-new-empty"></a><h3>gst_structure_new_empty ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_new_empty (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_structure_new_empty (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Creates a new, empty <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> with the given <em class="parameter"><code>name</code></em>
 .</p>
 <p>See <a class="link" href="GstStructure.html#gst-structure-set-name" title="gst_structure_set_name ()"><code class="function">gst_structure_set_name()</code></a> for constraints on the <em class="parameter"><code>name</code></em>
  parameter.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.4.7"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.5.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -742,7 +803,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.4.8"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.5.8"></a><h4>Returns</h4>
 <p> a new, empty <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -751,11 +812,11 @@
 <div class="refsect2">
 <a name="gst-structure-new-id-empty"></a><h3>gst_structure_new_id_empty ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_new_id_empty (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
+gst_structure_new_id_empty (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
 <p>Creates a new, empty <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> with the given name as a GQuark.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.5.6"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.6.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -770,7 +831,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.5.7"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.6.7"></a><h4>Returns</h4>
 <p> a new, empty <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -779,16 +840,16 @@
 <div class="refsect2">
 <a name="gst-structure-new"></a><h3>gst_structure_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *firstfield</code></em>,
+gst_structure_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *firstfield</code></em>,
                    <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> with the given name.  Parses the
 list of variable arguments and sets fields to the values listed.
 Variable arguments should be passed as field name, field type,
-and value.  Last variable argument should be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+and value.  Last variable argument should be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.6.6"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.7.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -815,7 +876,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.6.7"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.7.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -824,8 +885,8 @@
 <div class="refsect2">
 <a name="gst-structure-new-valist"></a><h3>gst_structure_new_valist ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_new_valist (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *firstfield</code></em>,
+gst_structure_new_valist (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *firstfield</code></em>,
                           <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> with the given <em class="parameter"><code>name</code></em>
 .  Structure fields
@@ -835,7 +896,7 @@
  parameter.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.7.7"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.8.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -862,7 +923,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.7.8"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.8.8"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -871,17 +932,17 @@
 <div class="refsect2">
 <a name="gst-structure-new-id"></a><h3>gst_structure_new_id ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_new_id (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name_quark</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_quark</code></em>,
+gst_structure_new_id (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name_quark</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field_quark</code></em>,
                       <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> with the given name as a GQuark, followed by
 fieldname quark, GType, argument(s) "triplets" in the same format as
 <a class="link" href="GstStructure.html#gst-structure-id-set" title="gst_structure_id_set ()"><code class="function">gst_structure_id_set()</code></a>. Basically a convenience wrapper around
 <a class="link" href="GstStructure.html#gst-structure-new-id-empty" title="gst_structure_new_id_empty ()"><code class="function">gst_structure_new_id_empty()</code></a> and <a class="link" href="GstStructure.html#gst-structure-id-set" title="gst_structure_id_set ()"><code class="function">gst_structure_id_set()</code></a>.</p>
-<p>The last variable argument must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (or 0).</p>
+<p>The last variable argument must be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (or 0).</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.8.7"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.9.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -908,7 +969,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.8.8"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.9.8"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -917,15 +978,15 @@
 <div class="refsect2">
 <a name="gst-structure-new-from-string"></a><h3>gst_structure_new_from_string ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_new_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
+gst_structure_new_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
 <p>Creates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> from a string representation.
-If end is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a pointer to the place inside the given string
+If end is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a pointer to the place inside the given string
 where parsing ended will be returned.</p>
 <p>The current implementation of serialization will lead to unexpected results
 when there are nested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> / <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> deeper than one level.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.9.7"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.10.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -940,10 +1001,11 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.9.8"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the string could
-not be parsed. Free with <a class="link" href="GstStructure.html#gst-structure-free" title="gst_structure_free ()"><code class="function">gst_structure_free()</code></a> after use. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.45.8.10.8"></a><h4>Returns</h4>
+<p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when the string could not be parsed. Free with
+<a class="link" href="GstStructure.html#gst-structure-free" title="gst_structure_free ()"><code class="function">gst_structure_free()</code></a> after use. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.2</p>
 </div>
@@ -955,7 +1017,7 @@
 <p>Duplicates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> and all its fields and values.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.10.6"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.11.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -970,7 +1032,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.10.7"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.11.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -983,7 +1045,7 @@
 <p>Frees a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> and all its fields and values. The structure must not
 have a parent when this function is called.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1001,12 +1063,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-name"></a><h3>gst_structure_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_structure_get_name (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Get the name of <em class="parameter"><code>structure</code></em>
  as a string.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1021,7 +1083,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.12.6"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.13.6"></a><h4>Returns</h4>
 <p> the name of the structure.</p>
 <p></p>
 </div>
@@ -1029,12 +1091,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-has-name"></a><h3>gst_structure_has_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_has_name (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Checks if the structure has the given name</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1056,8 +1118,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em>
+<a name="id-1.3.45.8.14.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em>
 matches the name of the structure.</p>
 <p></p>
 </div>
@@ -1067,13 +1129,13 @@
 <a name="gst-structure-set-name"></a><h3>gst_structure_set_name ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_set_name (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Sets the name of the structure to the given <em class="parameter"><code>name</code></em>
 .  The string
 provided is copied before being used. It must not be empty, start with a
 letter and can be followed by letters, numbers and any of "/-_.:".</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1098,12 +1160,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-name-id"></a><h3>gst_structure_get_name_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_structure_get_name_id (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Get the name of <em class="parameter"><code>structure</code></em>
  as a GQuark.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1118,7 +1180,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.15.6"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.16.6"></a><h4>Returns</h4>
 <p> the quark representing the name of the structure.</p>
 <p></p>
 </div>
@@ -1126,26 +1188,26 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-id-get"></a><h3>gst_structure_id_get ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_id_get (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> first_field_id</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> first_field_id</code></em>,
                       <em class="parameter"><code>...</code></em>);</pre>
 <p>Parses the variable arguments and reads fields from <em class="parameter"><code>structure</code></em>
  accordingly.
 Variable arguments should be in the form field id quark, field type
 (as a GType), pointer(s) to a variable(s) to hold the return value(s).
-The last variable argument should be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (technically it should be a
-0 quark, but we require <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> so compilers that support it can check for
-the <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminator and warn if it's not there).</p>
+The last variable argument should be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (technically it should be a
+0 quark, but we require <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> so compilers that support it can check for
+the <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminator and warn if it's not there).</p>
 <p>This function is just like <a class="link" href="GstStructure.html#gst-structure-get" title="gst_structure_get ()"><code class="function">gst_structure_get()</code></a> only that it is slightly
 more efficient since it saves the string-to-quark lookup in the global
 quark hashtable.</p>
 <p>For refcounted (mini)objects you will receive a new reference which
 you must release with a suitable <code class="function">_unref()</code> when no longer needed. For
 strings and boxed types you will receive a copy which you will need to
-release with either <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> or the suitable function for the boxed type.</p>
+release with either <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> or the suitable function for the boxed type.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.16.7"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.17.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1172,26 +1234,26 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.16.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields (e.g.
+<a name="id-1.3.45.8.17.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields (e.g.
 because the field requested did not exist, or was of a type other
-than the type specified), otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+than the type specified), otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-id-get-valist"></a><h3>gst_structure_id_get_valist ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_id_get_valist (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> first_field_id</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> first_field_id</code></em>,
                              <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
 <p>Parses the variable arguments and reads fields from <em class="parameter"><code>structure</code></em>
  accordingly.
 valist-variant of <a class="link" href="GstStructure.html#gst-structure-id-get" title="gst_structure_id_get ()"><code class="function">gst_structure_id_get()</code></a>. Look at the documentation of
 <a class="link" href="GstStructure.html#gst-structure-id-get" title="gst_structure_id_get ()"><code class="function">gst_structure_id_get()</code></a> for more details.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1218,61 +1280,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields</p>
+<a name="id-1.3.45.8.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-id-get-value"></a><h3>gst_structure_id_get_value ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 gst_structure_id_get_value (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>);</pre>
 <p>Get the value of the field with GQuark <em class="parameter"><code>field</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.18.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>field</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field to get</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.45.8.18.6"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> corresponding to the field with the given name
-identifier.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-structure-id-set-value"></a><h3>gst_structure_id_set_value ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_structure_id_set_value (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
-<p>Sets the field with the given GQuark <em class="parameter"><code>field</code></em>
- to <em class="parameter"><code>value</code></em>
-.  If the field
-does not exist, it is created.  If the field exists, the previous
-value is replaced and freed.</p>
-<div class="refsect3">
 <a name="id-1.3.45.8.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -1288,25 +1309,26 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>field</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> representing a field</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the new value of the field</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field to get</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
+<div class="refsect3">
+<a name="id-1.3.45.8.19.6"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> corresponding to the field with the given name
+identifier.</p>
+<p></p>
+</div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-structure-id-take-value"></a><h3>gst_structure_id_take_value ()</h3>
+<a name="gst-structure-id-set-value"></a><h3>gst_structure_id_set_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_structure_id_take_value (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_structure_id_set_value (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Sets the field with the given GQuark <em class="parameter"><code>field</code></em>
  to <em class="parameter"><code>value</code></em>
 .  If the field
@@ -1328,7 +1350,47 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>field</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> representing a field</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> representing a field</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p>the new value of the field</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-structure-id-take-value"></a><h3>gst_structure_id_take_value ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_structure_id_take_value (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>Sets the field with the given GQuark <em class="parameter"><code>field</code></em>
+ to <em class="parameter"><code>value</code></em>
+.  If the field
+does not exist, it is created.  If the field exists, the previous
+value is replaced and freed.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.21.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>field</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> representing a field</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1343,7 +1405,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get"></a><h3>gst_structure_get ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                    <em class="parameter"><code>const <span class="type">char</span> *first_fieldname</code></em>,
                    <em class="parameter"><code>...</code></em>);</pre>
@@ -1351,13 +1413,13 @@
  accordingly.
 Variable arguments should be in the form field name, field type
 (as a GType), pointer(s) to a variable(s) to hold the return value(s).
-The last variable argument should be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The last variable argument should be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p>For refcounted (mini)objects you will receive a new reference which
 you must release with a suitable <code class="function">_unref()</code> when no longer needed. For
 strings and boxed types you will receive a copy which you will need to
-release with either <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> or the suitable function for the boxed type.</p>
+release with either <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> or the suitable function for the boxed type.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.21.6"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.22.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1384,17 +1446,17 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.21.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields (e.g.
+<a name="id-1.3.45.8.22.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields (e.g.
 because the field requested did not exist, or was of a type other
-than the type specified), otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+than the type specified), otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-valist"></a><h3>gst_structure_get_valist ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_valist (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                           <em class="parameter"><code>const <span class="type">char</span> *first_fieldname</code></em>,
                           <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
@@ -1403,7 +1465,7 @@
 valist-variant of <a class="link" href="GstStructure.html#gst-structure-get" title="gst_structure_get ()"><code class="function">gst_structure_get()</code></a>. Look at the documentation of
 <a class="link" href="GstStructure.html#gst-structure-get" title="gst_structure_get ()"><code class="function">gst_structure_get()</code></a> for more details.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1430,21 +1492,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.22.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields</p>
+<a name="id-1.3.45.8.23.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there was a problem reading any of the fields</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-value"></a><h3>gst_structure_get_value ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 gst_structure_get_value (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
 <p>Get the value of the field with name <em class="parameter"><code>fieldname</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1466,8 +1528,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.23.6"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> corresponding to the field with the given name.</p>
+<a name="id-1.3.45.8.24.6"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> corresponding to the field with the given name.</p>
 <p></p>
 </div>
 </div>
@@ -1476,15 +1538,15 @@
 <a name="gst-structure-set-value"></a><h3>gst_structure_set_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_set_value (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Sets the field with the given name <em class="parameter"><code>field</code></em>
  to <em class="parameter"><code>value</code></em>
 .  If the field
 does not exist, it is created.  If the field exists, the previous
 value is replaced and freed.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1516,8 +1578,8 @@
 <a name="gst-structure-take-value"></a><h3>gst_structure_take_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_take_value (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Sets the field with the given name <em class="parameter"><code>field</code></em>
  to <em class="parameter"><code>value</code></em>
 .  If the field
@@ -1525,7 +1587,7 @@
 value is replaced and freed. The function will take ownership of <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1557,13 +1619,13 @@
 <a name="gst-structure-set"></a><h3>gst_structure_set ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_set (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                    <em class="parameter"><code>...</code></em>);</pre>
 <p>Parses the variable arguments and sets fields accordingly.
 Variable arguments should be in the form field name, field type
-(as a GType), value(s).  The last variable argument should be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+(as a GType), value(s).  The last variable argument should be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1595,11 +1657,11 @@
 <a name="gst-structure-set-valist"></a><h3>gst_structure_set_valist ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_set_valist (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                           <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
 <p>va_list form of <a class="link" href="GstStructure.html#gst-structure-set" title="gst_structure_set ()"><code class="function">gst_structure_set()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1631,15 +1693,15 @@
 <a name="gst-structure-id-set"></a><h3>gst_structure_id_set ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_id_set (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> fieldname</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> fieldname</code></em>,
                       <em class="parameter"><code>...</code></em>);</pre>
 <p>Identical to gst_structure_set, except that field names are
 passed using the GQuark for the field name. This allows more efficient
 setting of the structure if the caller already knows the associated
 quark values.
-The last variable argument must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The last variable argument must be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1671,11 +1733,11 @@
 <a name="gst-structure-id-set-valist"></a><h3>gst_structure_id_set_valist ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_id_set_valist (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> fieldname</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> fieldname</code></em>,
                              <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
 <p>va_list form of <a class="link" href="GstStructure.html#gst-structure-id-set" title="gst_structure_id_set ()"><code class="function">gst_structure_id_set()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1707,11 +1769,11 @@
 <a name="gst-structure-remove-field"></a><h3>gst_structure_remove_field ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_remove_field (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
 <p>Removes the field with the given name.  If the field with the given
 name does not exist, the structure is unchanged.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.30.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1738,47 +1800,11 @@
 <a name="gst-structure-remove-fields"></a><h3>gst_structure_remove_fields ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_structure_remove_fields (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                              <em class="parameter"><code>...</code></em>);</pre>
 <p>Removes the fields with the given names. If a field does not exist, the
 argument is ignored.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.31.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>fieldname</p></td>
-<td class="parameter_description"><p>the name of the field to remove</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of more fieldnames to remove</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-structure-remove-fields-valist"></a><h3>gst_structure_remove_fields_valist ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_structure_remove_fields_valist (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                                    <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
-<p>va_list form of <a class="link" href="GstStructure.html#gst-structure-remove-fields" title="gst_structure_remove_fields ()"><code class="function">gst_structure_remove_fields()</code></a>.</p>
-<div class="refsect3">
 <a name="id-1.3.45.8.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -1798,8 +1824,44 @@
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
+<td class="parameter_name"><p>...</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of more fieldnames to remove</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-structure-remove-fields-valist"></a><h3>gst_structure_remove_fields_valist ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_structure_remove_fields_valist (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                                    <em class="parameter"><code><span class="type">va_list</span> varargs</code></em>);</pre>
+<p>va_list form of <a class="link" href="GstStructure.html#gst-structure-remove-fields" title="gst_structure_remove_fields ()"><code class="function">gst_structure_remove_fields()</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.33.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>fieldname</p></td>
+<td class="parameter_description"><p>the name of the field to remove</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
 <td class="parameter_name"><p>varargs</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of more fieldnames to remove</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of more fieldnames to remove</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1813,7 +1875,7 @@
 gst_structure_remove_all_fields (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Removes all fields in a GstStructure.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1831,14 +1893,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-field-type"></a><h3>gst_structure_get_field_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 gst_structure_get_field_type (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
 <p>Finds the field with the given name, and returns the type of the
 value it contains.  If the field is not found, G_TYPE_INVALID is
 returned.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1860,58 +1922,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.34.6"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-structure-foreach"></a><h3>gst_structure_foreach ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_structure_foreach (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                       <em class="parameter"><code><a class="link" href="GstStructure.html#GstStructureForeachFunc" title="GstStructureForeachFunc ()"><span class="type">GstStructureForeachFunc</span></a> func</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>Calls the provided function once for each field in the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. The
-function must not modify the fields. Also see <a class="link" href="GstStructure.html#gst-structure-map-in-place" title="gst_structure_map_in_place ()"><code class="function">gst_structure_map_in_place()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.3.45.8.35.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>func</p></td>
-<td class="parameter_description"><p> a function to call for each field. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>user_data</p></td>
-<td class="parameter_description"><p> private data. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
 <a name="id-1.3.45.8.35.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the supplied function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> For each of the fields,
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the field</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-n-fields"></a><h3>gst_structure_n_fields ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_structure_n_fields (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Get the number of fields in the structure.</p>
 <div class="refsect3">
@@ -1938,9 +1957,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-has-field"></a><h3>gst_structure_has_field ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_has_field (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
 <p>Check if <em class="parameter"><code>structure</code></em>
  contains a field named <em class="parameter"><code>fieldname</code></em>
 .</p>
@@ -1968,17 +1987,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.37.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-has-field-typed"></a><h3>gst_structure_has_field_typed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_has_field_typed (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
 <p>Check if <em class="parameter"><code>structure</code></em>
  contains a field named <em class="parameter"><code>fieldname</code></em>
  and with GType <em class="parameter"><code>type</code></em>
@@ -2012,14 +2031,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.38.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name and type</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name and type</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-is-equal"></a><h3>gst_structure_is_equal ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_is_equal (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure1</code></em>,
                         <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure2</code></em>);</pre>
 <p>Tests if the two <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> are equal.</p>
@@ -2047,14 +2066,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.39.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the two structures have the same name and field.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the two structures have the same name and field.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-is-subset"></a><h3>gst_structure_is_subset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_is_subset (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *subset</code></em>,
                          <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *superset</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>subset</code></em>
@@ -2089,7 +2108,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.40.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>subset</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>subset</code></em>
 is a subset of <em class="parameter"><code>superset</code></em>
 </p>
 <p></p>
@@ -2098,7 +2117,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-can-intersect"></a><h3>gst_structure_can_intersect ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_can_intersect (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *struct1</code></em>,
                              <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *struct2</code></em>);</pre>
 <p>Tries intersecting <em class="parameter"><code>struct1</code></em>
@@ -2129,7 +2148,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.41.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if intersection would not be empty</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if intersection would not be empty</p>
 <p></p>
 </div>
 </div>
@@ -2175,9 +2194,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-id-has-field"></a><h3>gst_structure_id_has_field ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_id_has_field (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>);</pre>
 <p>Check if <em class="parameter"><code>structure</code></em>
  contains a field named <em class="parameter"><code>field</code></em>
 .</p>
@@ -2197,7 +2216,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>field</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -2205,17 +2224,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.43.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-id-has-field-typed"></a><h3>gst_structure_id_has_field_typed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_id_has_field_typed (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> field</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
 <p>Check if <em class="parameter"><code>structure</code></em>
  contains a field named <em class="parameter"><code>field</code></em>
  and with GType <em class="parameter"><code>type</code></em>
@@ -2236,7 +2255,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>field</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> of the field name</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2249,17 +2268,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.44.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name and type</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure contains a field with the given name and type</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-boolean"></a><h3>gst_structure_get_boolean ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_boolean (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *value</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *value</code></em>);</pre>
 <p>Sets the boolean pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
@@ -2285,7 +2304,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> a pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> to set. </p></td>
+<td class="parameter_description"><p> a pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> to set. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -2293,20 +2312,20 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a boolean, this
-function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-int"></a><h3>gst_structure_get_int ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_int (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
 <p>Sets the int pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
@@ -2340,20 +2359,20 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.46.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain an int, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-uint"></a><h3>gst_structure_get_uint ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_uint (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *value</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *value</code></em>);</pre>
 <p>Sets the uint pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
@@ -2387,21 +2406,21 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.47.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a uint, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-int64"></a><h3>gst_structure_get_int64 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_int64 (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                          <em class="parameter"><code><span class="type">gint64</span> *value</code></em>);</pre>
-<p>Sets the int64 pointed to by <em class="parameter"><code>value</code></em>
+<p>Sets the <span class="type">gint64</span> pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field. Caller is responsible for making sure the field exists
 and has the correct type.</p>
@@ -2426,7 +2445,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> a pointer to an int64 to set. </p></td>
+<td class="parameter_description"><p> a pointer to a <span class="type">gint64</span> to set. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -2434,10 +2453,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.48.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
-or the existing field did not contain an int64, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+or the existing field did not contain a <span class="type">gint64</span>, this function
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -2445,11 +2464,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-uint64"></a><h3>gst_structure_get_uint64 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_uint64 (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                           <em class="parameter"><code><span class="type">guint64</span> *value</code></em>);</pre>
-<p>Sets the uint64 pointed to by <em class="parameter"><code>value</code></em>
+<p>Sets the <span class="type">guint64</span> pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field. Caller is responsible for making sure the field exists
 and has the correct type.</p>
@@ -2474,7 +2493,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> a pointer to a uint64 to set. </p></td>
+<td class="parameter_description"><p> a pointer to a <span class="type">guint64</span> to set. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -2482,10 +2501,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.49.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
-or the existing field did not contain a uint64, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+or the existing field did not contain a <span class="type">guint64</span>, this function
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -2493,10 +2512,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-double"></a><h3>gst_structure_get_double ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_double (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
 <p>Sets the double pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
@@ -2530,19 +2549,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.50.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a double, this
-function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-string"></a><h3>gst_structure_get_string ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_structure_get_string (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>);</pre>
 <p>Finds the field corresponding to <em class="parameter"><code>fieldname</code></em>
 , and returns the string
 contained in the field's value.  Caller is responsible for making
@@ -2573,25 +2592,25 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.51.7"></a><h4>Returns</h4>
-<p> a pointer to the string or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the field did not exist
-or did not contain a string.</p>
-<p></p>
+<p> a pointer to the string or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the
+field did not exist or did not contain a string. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-date"></a><h3>gst_structure_get_date ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_date (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> **value</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> **value</code></em>);</pre>
 <p>Sets the date pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the date of the
 given field.  Caller is responsible for making sure the field exists
 and has the correct type.</p>
 <p>On success <em class="parameter"><code>value</code></em>
  will point to a newly-allocated copy of the date which
-should be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-date-free"><code class="function">g_date_free()</code></a> when no longer needed (note: this is
+should be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#g-date-free"><code class="function">g_date_free()</code></a> when no longer needed (note: this is
 inconsistent with e.g. <a class="link" href="GstStructure.html#gst-structure-get-string" title="gst_structure_get_string ()"><code class="function">gst_structure_get_string()</code></a> which doesn't return a
 copy of the string).</p>
 <div class="refsect3">
@@ -2615,7 +2634,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> a pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> to set. </p></td>
+<td class="parameter_description"><p> a pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> to set. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out callee-allocates</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -2623,19 +2642,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.52.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a data, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-date-time"></a><h3>gst_structure_get_date_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_date_time (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                              <em class="parameter"><code><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> **value</code></em>);</pre>
 <p>Sets the datetime pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the datetime of the
@@ -2675,19 +2694,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.53.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a data, this function
-returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-clock-time"></a><h3>gst_structure_get_clock_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_clock_time (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
                               <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *value</code></em>);</pre>
 <p>Sets the clock time pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the clock time
@@ -2722,21 +2741,21 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.54.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a>, this
-function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-enum"></a><h3>gst_structure_get_enum ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_enum (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> enumtype</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> enumtype</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
 <p>Sets the int pointed to by <em class="parameter"><code>value</code></em>
  corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists,
@@ -2775,21 +2794,21 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.55.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain an enum of the given
-type, this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+type, this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-get-fraction"></a><h3>gst_structure_get_fraction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_get_fraction (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value_numerator</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value_denominator</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fieldname</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value_numerator</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value_denominator</code></em>);</pre>
 <p>Sets the integers pointed to by <em class="parameter"><code>value_numerator</code></em>
  and <em class="parameter"><code>value_denominator</code></em>
 
@@ -2829,23 +2848,23 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.56.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values could be set correctly. If there was no field
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values could be set correctly. If there was no field
 with <em class="parameter"><code>fieldname</code></em>
 or the existing field did not contain a GstFraction, this
-function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-structure-map-in-place"></a><h3>gst_structure_map_in_place ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_structure_map_in_place (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                            <em class="parameter"><code><a class="link" href="GstStructure.html#GstStructureMapFunc" title="GstStructureMapFunc ()"><span class="type">GstStructureMapFunc</span></a> func</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>Calls the provided function once for each field in the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. In
-contrast to <a class="link" href="GstStructure.html#gst-structure-foreach" title="gst_structure_foreach ()"><code class="function">gst_structure_foreach()</code></a>, the function may modify but not delete the
-fields. The structure must be mutable.</p>
+<a name="gst-structure-foreach"></a><h3>gst_structure_foreach ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_structure_foreach (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                       <em class="parameter"><code><a class="link" href="GstStructure.html#GstStructureForeachFunc" title="GstStructureForeachFunc ()"><span class="type">GstStructureForeachFunc</span></a> func</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Calls the provided function once for each field in the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. The
+function must not modify the fields. Also see <a class="link" href="GstStructure.html#gst-structure-map-in-place" title="gst_structure_map_in_place ()"><code class="function">gst_structure_map_in_place()</code></a>
+and <a class="link" href="GstStructure.html#gst-structure-filter-and-map-in-place" title="gst_structure_filter_and_map_in_place ()"><code class="function">gst_structure_filter_and_map_in_place()</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.45.8.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2875,18 +2894,21 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.45.8.57.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the supplied function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> For each of the fields,
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the supplied function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> For each of the fields,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-structure-nth-field-name"></a><h3>gst_structure_nth_field_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_structure_nth_field_name (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
-<p>Get the name of the given field number, counting from 0 onwards.</p>
+<a name="gst-structure-map-in-place"></a><h3>gst_structure_map_in_place ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_structure_map_in_place (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                            <em class="parameter"><code><a class="link" href="GstStructure.html#GstStructureMapFunc" title="GstStructureMapFunc ()"><span class="type">GstStructureMapFunc</span></a> func</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Calls the provided function once for each field in the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. In
+contrast to <a class="link" href="GstStructure.html#gst-structure-foreach" title="gst_structure_foreach ()"><code class="function">gst_structure_foreach()</code></a>, the function may modify but not delete the
+fields. The structure must be mutable.</p>
 <div class="refsect3">
 <a name="id-1.3.45.8.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2902,6 +2924,88 @@
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p> a function to call for each field. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p> private data. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.45.8.58.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the supplied function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> For each of the fields,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-structure-filter-and-map-in-place"></a><h3>gst_structure_filter_and_map_in_place ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_structure_filter_and_map_in_place (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                                       <em class="parameter"><code><a class="link" href="GstStructure.html#GstStructureFilterMapFunc" title="GstStructureFilterMapFunc ()"><span class="type">GstStructureFilterMapFunc</span></a> func</code></em>,
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<p>Calls the provided function once for each field in the <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. In
+contrast to <a class="link" href="GstStructure.html#gst-structure-foreach" title="gst_structure_foreach ()"><code class="function">gst_structure_foreach()</code></a>, the function may modify the fields.
+In contrast to <a class="link" href="GstStructure.html#gst-structure-map-in-place" title="gst_structure_map_in_place ()"><code class="function">gst_structure_map_in_place()</code></a>, the field is removed from
+the structure if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned from the function.
+The structure must be mutable.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.59.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p> a function to call for each field. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p> private data. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-structure-nth-field-name"></a><h3>gst_structure_nth_field_name ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_structure_nth_field_name (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+<p>Get the name of the given field number, counting from 0 onwards.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.60.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
 <td class="parameter_name"><p>index</p></td>
 <td class="parameter_description"><p>the index to get the name of</p></td>
 <td class="parameter_annotations"> </td>
@@ -2910,7 +3014,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.58.6"></a><h4>Returns</h4>
+<a name="id-1.3.45.8.60.6"></a><h4>Returns</h4>
 <p> the name of the given field number</p>
 <p></p>
 </div>
@@ -2918,15 +3022,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-set-parent-refcount"></a><h3>gst_structure_set_parent_refcount ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_set_parent_refcount (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *refcount</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *refcount</code></em>);</pre>
 <p>Sets the parent_refcount field of <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>. This field is used to
 determine whether a structure is mutable or not. This function should only be
 called by code implementing parent objects of <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a>, as described in
 the MT Refcounting section of the design documents.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.59.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.61.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2948,15 +3052,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.59.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parent refcount could be set.</p>
+<a name="id-1.3.45.8.61.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parent refcount could be set.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-to-string"></a><h3>gst_structure_to_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_structure_to_string (<em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Converts <em class="parameter"><code>structure</code></em>
  to a human-readable string representation.</p>
@@ -2978,7 +3082,7 @@
 when there are nested <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> / <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> deeper than one level.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.60.10"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.62.10"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2993,9 +3097,9 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.60.11"></a><h4>Returns</h4>
-<p> a pointer to string allocated by <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-malloc"><code class="function">g_malloc()</code></a>.
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. </p>
+<a name="id-1.3.45.8.62.11"></a><h4>Returns</h4>
+<p> a pointer to string allocated by <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-malloc"><code class="function">g_malloc()</code></a>.
+<a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -3003,14 +3107,14 @@
 <div class="refsect2">
 <a name="gst-structure-from-string"></a><h3>gst_structure_from_string ()</h3>
 <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_structure_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **end</code></em>);</pre>
+gst_structure_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *string</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **end</code></em>);</pre>
 <p>Creates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> from a string representation.
-If end is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a pointer to the place inside the given string
+If end is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a pointer to the place inside the given string
 where parsing ended will be returned.</p>
 <p>Free-function: gst_structure_free</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.61.6"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.63.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3026,16 +3130,17 @@
 <tr>
 <td class="parameter_name"><p>end</p></td>
 <td class="parameter_description"><p> pointer to store the end of the string in. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.61.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the string could
-not be parsed. Free with <a class="link" href="GstStructure.html#gst-structure-free" title="gst_structure_free ()"><code class="function">gst_structure_free()</code></a> after use. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.45.8.63.7"></a><h4>Returns</h4>
+<p> a new <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+when the string could not be parsed. Free with
+<a class="link" href="GstStructure.html#gst-structure-free" title="gst_structure_free ()"><code class="function">gst_structure_free()</code></a> after use. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -3048,7 +3153,7 @@
 <em class="parameter"><code>structure</code></em>
  will be modified in-place and should be writable.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.62.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3066,96 +3171,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-structure-fixate-field"></a><h3>gst_structure_fixate_field ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_fixate_field (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                             <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>);</pre>
 <p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given field with its fixated value.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.63.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>field_name</p></td>
-<td class="parameter_description"><p>a field in <em class="parameter"><code>structure</code></em>
-</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.45.8.63.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure field could be fixated</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-structure-fixate-field-nearest-int"></a><h3>gst_structure_fixate_field_nearest_int ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_structure_fixate_field_nearest_int
-                               (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                                <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
-                                <em class="parameter"><code><span class="type">int</span> target</code></em>);</pre>
-<p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given field to the nearest
-integer to <em class="parameter"><code>target</code></em>
- that is a subset of the existing field.</p>
-<div class="refsect3">
-<a name="id-1.3.45.8.64.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>structure</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>field_name</p></td>
-<td class="parameter_description"><p>a field in <em class="parameter"><code>structure</code></em>
-</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>target</p></td>
-<td class="parameter_description"><p>the target value of the fixation</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.45.8.64.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-structure-fixate-field-nearest-double"></a><h3>gst_structure_fixate_field_nearest_double ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_structure_fixate_field_nearest_double
-                               (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
-                                <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
-                                <em class="parameter"><code><span class="type">double</span> target</code></em>);</pre>
-<p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given field to the nearest
-double to <em class="parameter"><code>target</code></em>
- that is a subset of the existing field.</p>
-<div class="refsect3">
 <a name="id-1.3.45.8.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -3175,6 +3195,46 @@
 </p></td>
 <td class="parameter_annotations"> </td>
 </tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.45.8.65.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure field could be fixated</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-structure-fixate-field-nearest-int"></a><h3>gst_structure_fixate_field_nearest_int ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_structure_fixate_field_nearest_int
+                               (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                                <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
+                                <em class="parameter"><code><span class="type">int</span> target</code></em>);</pre>
+<p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given field to the nearest
+integer to <em class="parameter"><code>target</code></em>
+ that is a subset of the existing field.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.66.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>field_name</p></td>
+<td class="parameter_description"><p>a field in <em class="parameter"><code>structure</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
 <tr>
 <td class="parameter_name"><p>target</p></td>
 <td class="parameter_description"><p>the target value of the fixation</p></td>
@@ -3184,27 +3244,72 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.65.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
+<a name="id-1.3.45.8.66.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-structure-fixate-field-nearest-double"></a><h3>gst_structure_fixate_field_nearest_double ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_structure_fixate_field_nearest_double
+                               (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
+                                <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
+                                <em class="parameter"><code><span class="type">double</span> target</code></em>);</pre>
+<p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given field to the nearest
+double to <em class="parameter"><code>target</code></em>
+ that is a subset of the existing field.</p>
+<div class="refsect3">
+<a name="id-1.3.45.8.67.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>structure</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>field_name</p></td>
+<td class="parameter_description"><p>a field in <em class="parameter"><code>structure</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>target</p></td>
+<td class="parameter_description"><p>the target value of the fixation</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.45.8.67.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-fixate-field-nearest-fraction"></a><h3>gst_structure_fixate_field_nearest_fraction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_fixate_field_nearest_fraction
                                (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                                 <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> target_numerator</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> target_denominator</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> target_numerator</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> target_denominator</code></em>);</pre>
 <p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given field to the nearest
 fraction to <em class="parameter"><code>target_numerator</code></em>
 /<em class="parameter"><code>target_denominator</code></em>
  that is a subset
 of the existing field.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.66.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.68.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3237,24 +3342,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.66.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
+<a name="id-1.3.45.8.68.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-fixate-field-boolean"></a><h3>gst_structure_fixate_field_boolean ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_fixate_field_boolean (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                                     <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> target</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> target</code></em>);</pre>
 <p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given <em class="parameter"><code>field_name</code></em>
  field to the given
 <em class="parameter"><code>target</code></em>
  boolean if that field is not fixed yet.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.67.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3282,24 +3387,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.67.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
+<a name="id-1.3.45.8.69.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-structure-fixate-field-string"></a><h3>gst_structure_fixate_field_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_structure_fixate_field_string (<em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>,
                                    <em class="parameter"><code>const <span class="type">char</span> *field_name</code></em>,
-                                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *target</code></em>);</pre>
+                                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *target</code></em>);</pre>
 <p>Fixates a <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> by changing the given <em class="parameter"><code>field_name</code></em>
  field to the given
 <em class="parameter"><code>target</code></em>
  string if that field is not fixed yet.</p>
 <div class="refsect3">
-<a name="id-1.3.45.8.68.5"></a><h4>Parameters</h4>
+<a name="id-1.3.45.8.70.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3327,8 +3432,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.45.8.68.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
+<a name="id-1.3.45.8.70.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the structure could be fixated</p>
 <p></p>
 </div>
 </div>
@@ -3351,7 +3456,7 @@
 <col width="200px" class="struct_members_annotations">
 </colgroup>
 <tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstStructure-struct.type"></a>type</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstStructure-struct.type"></a>type</code></em>;</p></td>
 <td class="struct_member_description"><p>the GType of a structure</p></td>
 <td class="struct_member_annotations"> </td>
 </tr></tbody>
@@ -3366,6 +3471,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstSystemClock.html b/docs/gst/html/GstSystemClock.html
index 25ce8ed..8f07db0 100644
--- a/docs/gst/html/GstSystemClock.html
+++ b/docs/gst/html/GstSystemClock.html
@@ -8,15 +8,15 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstStructure.html" title="GstStructure">
 <link rel="next" href="GstTagList.html" title="GstTagList">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstSystemClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstSystemClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstSystemClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstSystemClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstSystemClock.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -96,8 +96,8 @@
 </div>
 <div class="refsect1">
 <a name="GstSystemClock.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> <a class="link" href="GstClock.html" title="GstClock">GstClock</a>
                 <span class="lineart">╰──</span> GstSystemClock
@@ -140,7 +140,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_system_clock_set_default (<em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *new_clock</code></em>);</pre>
 <p>Sets the default system clock that can be obtained with
-gst_system_clock_obtain.</p>
+<a class="link" href="GstSystemClock.html#gst-system-clock-obtain" title="gst_system_clock_obtain ()"><code class="function">gst_system_clock_obtain()</code></a>.</p>
 <p>This is mostly used for testing and debugging purposes when you
 want to have control over the time reported by the default system
 clock.</p>
@@ -227,6 +227,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstTagList.html b/docs/gst/html/GstTagList.html
index 9ee85ee..1420daa 100644
--- a/docs/gst/html/GstTagList.html
+++ b/docs/gst/html/GstTagList.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstSystemClock.html" title="GstSystemClock">
 <link rel="next" href="GstTagSetter.html" title="GstTagSetter">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTagList.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTagList.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstTagList.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -90,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-exists" title="gst_tag_exists ()">gst_tag_exists</a> <span class="c_punctuation">()</span>
@@ -98,21 +98,21 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-get-type" title="gst_tag_get_type ()">gst_tag_get_type</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-get-nick" title="gst_tag_get_nick ()">gst_tag_get_nick</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-get-description" title="gst_tag_get_description ()">gst_tag_get_description</a> <span class="c_punctuation">()</span>
@@ -128,7 +128,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-is-fixed" title="gst_tag_is_fixed ()">gst_tag_is_fixed</a> <span class="c_punctuation">()</span>
@@ -190,7 +190,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-to-string" title="gst_tag_list_to_string ()">gst_tag_list_to_string</a> <span class="c_punctuation">()</span>
@@ -198,7 +198,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-is-empty" title="gst_tag_list_is_empty ()">gst_tag_list_is_empty</a> <span class="c_punctuation">()</span>
@@ -206,7 +206,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-is-equal" title="gst_tag_list_is_equal ()">gst_tag_list_is_equal</a> <span class="c_punctuation">()</span>
@@ -266,7 +266,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-tag-size" title="gst_tag_list_get_tag_size ()">gst_tag_list_get_tag_size</a> <span class="c_punctuation">()</span>
@@ -274,14 +274,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-n-tags" title="gst_tag_list_n_tags ()">gst_tag_list_n_tags</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-nth-tag-name" title="gst_tag_list_nth_tag_name ()">gst_tag_list_nth_tag_name</a> <span class="c_punctuation">()</span>
@@ -344,7 +344,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-value-index" title="gst_tag_list_get_value_index ()">gst_tag_list_get_value_index</a> <span class="c_punctuation">()</span>
@@ -352,7 +352,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-copy-value" title="gst_tag_list_copy_value ()">gst_tag_list_copy_value</a> <span class="c_punctuation">()</span>
@@ -360,7 +360,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-boolean" title="gst_tag_list_get_boolean ()">gst_tag_list_get_boolean</a> <span class="c_punctuation">()</span>
@@ -368,7 +368,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-boolean-index" title="gst_tag_list_get_boolean_index ()">gst_tag_list_get_boolean_index</a> <span class="c_punctuation">()</span>
@@ -376,7 +376,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-int" title="gst_tag_list_get_int ()">gst_tag_list_get_int</a> <span class="c_punctuation">()</span>
@@ -384,7 +384,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-int-index" title="gst_tag_list_get_int_index ()">gst_tag_list_get_int_index</a> <span class="c_punctuation">()</span>
@@ -392,7 +392,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-uint" title="gst_tag_list_get_uint ()">gst_tag_list_get_uint</a> <span class="c_punctuation">()</span>
@@ -400,7 +400,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-uint-index" title="gst_tag_list_get_uint_index ()">gst_tag_list_get_uint_index</a> <span class="c_punctuation">()</span>
@@ -408,7 +408,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-int64" title="gst_tag_list_get_int64 ()">gst_tag_list_get_int64</a> <span class="c_punctuation">()</span>
@@ -416,7 +416,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-int64-index" title="gst_tag_list_get_int64_index ()">gst_tag_list_get_int64_index</a> <span class="c_punctuation">()</span>
@@ -424,7 +424,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-uint64" title="gst_tag_list_get_uint64 ()">gst_tag_list_get_uint64</a> <span class="c_punctuation">()</span>
@@ -432,7 +432,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-uint64-index" title="gst_tag_list_get_uint64_index ()">gst_tag_list_get_uint64_index</a> <span class="c_punctuation">()</span>
@@ -440,7 +440,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-float" title="gst_tag_list_get_float ()">gst_tag_list_get_float</a> <span class="c_punctuation">()</span>
@@ -448,7 +448,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-float-index" title="gst_tag_list_get_float_index ()">gst_tag_list_get_float_index</a> <span class="c_punctuation">()</span>
@@ -456,7 +456,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-double" title="gst_tag_list_get_double ()">gst_tag_list_get_double</a> <span class="c_punctuation">()</span>
@@ -464,7 +464,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-double-index" title="gst_tag_list_get_double_index ()">gst_tag_list_get_double_index</a> <span class="c_punctuation">()</span>
@@ -472,7 +472,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-string" title="gst_tag_list_get_string ()">gst_tag_list_get_string</a> <span class="c_punctuation">()</span>
@@ -480,7 +480,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-string-index" title="gst_tag_list_get_string_index ()">gst_tag_list_get_string_index</a> <span class="c_punctuation">()</span>
@@ -488,7 +488,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-peek-string-index" title="gst_tag_list_peek_string_index ()">gst_tag_list_peek_string_index</a> <span class="c_punctuation">()</span>
@@ -496,7 +496,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-pointer" title="gst_tag_list_get_pointer ()">gst_tag_list_get_pointer</a> <span class="c_punctuation">()</span>
@@ -504,7 +504,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-pointer-index" title="gst_tag_list_get_pointer_index ()">gst_tag_list_get_pointer_index</a> <span class="c_punctuation">()</span>
@@ -512,7 +512,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-date" title="gst_tag_list_get_date ()">gst_tag_list_get_date</a> <span class="c_punctuation">()</span>
@@ -520,7 +520,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-date-index" title="gst_tag_list_get_date_index ()">gst_tag_list_get_date_index</a> <span class="c_punctuation">()</span>
@@ -528,7 +528,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-date-time" title="gst_tag_list_get_date_time ()">gst_tag_list_get_date_time</a> <span class="c_punctuation">()</span>
@@ -536,7 +536,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-date-time-index" title="gst_tag_list_get_date_time_index ()">gst_tag_list_get_date_time_index</a> <span class="c_punctuation">()</span>
@@ -544,7 +544,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-sample" title="gst_tag_list_get_sample ()">gst_tag_list_get_sample</a> <span class="c_punctuation">()</span>
@@ -552,7 +552,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTagList.html#gst-tag-list-get-sample-index" title="gst_tag_list_get_sample_index ()">gst_tag_list_get_sample_index</a> <span class="c_punctuation">()</span>
@@ -922,7 +922,7 @@
 </div>
 <div class="refsect1">
 <a name="GstTagList.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstTagList
 </pre>
 </div>
@@ -935,7 +935,7 @@
 <a name="GstTagList.description"></a><h2>Description</h2>
 <p>List of tags and values used to describe media metadata.</p>
 <p>Strings in structures must be ASCII or UTF-8 encoded. Other encodings are
-not allowed. Strings must not be empty or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+not allowed. Strings must not be empty or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 </div>
 <div class="refsect1">
 <a name="GstTagList.functions_details"></a><h2>Functions</h2>
@@ -943,8 +943,8 @@
 <a name="GstTagForeachFunc"></a><h3>GstTagForeachFunc ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstTagForeachFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called in <a class="link" href="GstTagList.html#gst-tag-list-foreach" title="gst_tag_list_foreach ()"><code class="function">gst_tag_list_foreach()</code></a>. The function may
 not modify the tag list.</p>
 <div class="refsect3">
@@ -980,8 +980,8 @@
 <div class="refsect2">
 <a name="GstTagMergeFunc"></a><h3>GstTagMergeFunc ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GstTagMergeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
+<span class="c_punctuation">(</span>*GstTagMergeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
 <p>A function for merging multiple values of a tag used when registering
 tags.</p>
 <div class="refsect3">
@@ -995,12 +995,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p>the destination <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>the destination <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>src</p></td>
-<td class="parameter_description"><p>the source <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>the source <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1011,11 +1011,11 @@
 <div class="refsect2">
 <a name="gst-tag-register"></a><h3>gst_tag_register ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_tag_register (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_tag_register (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                   <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagFlag" title="enum GstTagFlag"><span class="type">GstTagFlag</span></a> flag</code></em>,
-                  <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
-                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
-                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *blurb</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
+                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
+                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *blurb</code></em>,
                   <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeFunc" title="GstTagMergeFunc ()"><span class="type">GstTagMergeFunc</span></a> func</code></em>);</pre>
 <p>Registers a new tag type for the use with GStreamer's type system. If a type
 with that name is already registered, that one is used.
@@ -1071,8 +1071,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>func</p></td>
-<td class="parameter_description"><p> function for merging multiple values of this tag, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> function for merging multiple values of this tag, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1082,11 +1082,11 @@
 <div class="refsect2">
 <a name="gst-tag-register-static"></a><h3>gst_tag_register_static ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_tag_register_static (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_tag_register_static (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                          <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagFlag" title="enum GstTagFlag"><span class="type">GstTagFlag</span></a> flag</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *blurb</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *blurb</code></em>,
                          <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeFunc" title="GstTagMergeFunc ()"><span class="type">GstTagMergeFunc</span></a> func</code></em>);</pre>
 <p>Registers a new tag type for the use with GStreamer's type system.</p>
 <p>Same as <a class="link" href="GstTagList.html#gst-tag-register" title="gst_tag_register ()"><code class="function">gst_tag_register()</code></a>, but <em class="parameter"><code>name</code></em>
@@ -1132,8 +1132,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>func</p></td>
-<td class="parameter_description"><p> function for merging multiple values of this tag, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> function for merging multiple values of this tag, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1143,8 +1143,8 @@
 <div class="refsect2">
 <a name="gst-tag-merge-use-first"></a><h3>gst_tag_merge_use_first ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_tag_merge_use_first (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
+gst_tag_merge_use_first (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
 <p>This is a convenience function for the func argument of <a class="link" href="GstTagList.html#gst-tag-register" title="gst_tag_register ()"><code class="function">gst_tag_register()</code></a>.
 It creates a copy of the first value from the list.</p>
 <div class="refsect3">
@@ -1174,8 +1174,8 @@
 <div class="refsect2">
 <a name="gst-tag-merge-strings-with-comma"></a><h3>gst_tag_merge_strings_with_comma ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_tag_merge_strings_with_comma (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
+gst_tag_merge_strings_with_comma (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
 <p>This is a convenience function for the func argument of <a class="link" href="GstTagList.html#gst-tag-register" title="gst_tag_register ()"><code class="function">gst_tag_register()</code></a>.
 It concatenates all given strings using a comma. The tag must be registered
 as a G_TYPE_STRING or this function will fail.</p>
@@ -1205,8 +1205,8 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-exists"></a><h3>gst_tag_exists ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_tag_exists (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_tag_exists (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Checks if the given type is already registered.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.8.5"></a><h4>Parameters</h4>
@@ -1225,16 +1225,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the type is already registered</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the type is already registered</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-get-type"></a><h3>gst_tag_get_type ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
-gst_tag_get_type (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
-<p>Gets the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> used for this tag.</p>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+gst_tag_get_type (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+<p>Gets the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> used for this tag.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1252,15 +1252,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.9.6"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of this tag</p>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of this tag</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-get-nick"></a><h3>gst_tag_get_nick ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_tag_get_nick (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_tag_get_nick (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Returns the human-readable name of this tag, You must not change or free
 this string.</p>
 <div class="refsect3">
@@ -1287,8 +1287,8 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-get-description"></a><h3>gst_tag_get_description ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_tag_get_description (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_tag_get_description (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Returns the human-readable description of this tag, You must not change or
 free this string.</p>
 <div class="refsect3">
@@ -1316,7 +1316,7 @@
 <div class="refsect2">
 <a name="gst-tag-get-flag"></a><h3>gst_tag_get_flag ()</h3>
 <pre class="programlisting"><a class="link" href="GstTagList.html#GstTagFlag" title="enum GstTagFlag"><span class="returnvalue">GstTagFlag</span></a>
-gst_tag_get_flag (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+gst_tag_get_flag (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Gets the flag of <em class="parameter"><code>tag</code></em>
 .</p>
 <div class="refsect3">
@@ -1343,8 +1343,8 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-is-fixed"></a><h3>gst_tag_is_fixed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_tag_is_fixed (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_tag_is_fixed (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Checks if the given tag is fixed. A fixed tag can only contain one value.
 Unfixed tags can contain lists of values.</p>
 <div class="refsect3">
@@ -1364,7 +1364,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the given tag is fixed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the given tag is fixed.</p>
 <p></p>
 </div>
 </div>
@@ -1372,10 +1372,10 @@
 <div class="refsect2">
 <a name="gst-tag-list-new"></a><h3>gst_tag_list_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstTagList.html" title="GstTagList"><span class="returnvalue">GstTagList</span></a> *
-gst_tag_list_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+gst_tag_list_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                   <em class="parameter"><code>...</code></em>);</pre>
 <p>Creates a new taglist and appends the values for the given tags. It expects
-tag-value pairs like <a class="link" href="GstTagList.html#gst-tag-list-add" title="gst_tag_list_add ()"><code class="function">gst_tag_list_add()</code></a>, and a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminator after the
+tag-value pairs like <a class="link" href="GstTagList.html#gst-tag-list-add" title="gst_tag_list_add ()"><code class="function">gst_tag_list_add()</code></a>, and a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminator after the
 last pair. The type of the values is implicit and is documented in the API
 reference, but can also be queried at runtime with <a class="link" href="GstTagList.html#gst-tag-get-type" title="gst_tag_get_type ()"><code class="function">gst_tag_get_type()</code></a>. It
 is an error to pass a value of a type not matching the tag type into this
@@ -1401,7 +1401,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of values to set</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of values to set</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1461,7 +1461,7 @@
 <div class="refsect2">
 <a name="gst-tag-list-new-from-string"></a><h3>gst_tag_list_new_from_string ()</h3>
 <pre class="programlisting"><a class="link" href="GstTagList.html" title="GstTagList"><span class="returnvalue">GstTagList</span></a> *
-gst_tag_list_new_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *str</code></em>);</pre>
+gst_tag_list_new_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *str</code></em>);</pre>
 <p>Deserializes a tag list.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.17.5"></a><h4>Parameters</h4>
@@ -1480,8 +1480,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.17.6"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error.</p>
-<p></p>
+<p> a new <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an
+error. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1557,7 +1558,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-to-string"></a><h3>gst_tag_list_to_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_tag_list_to_string (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>);</pre>
 <p>Serializes a tag list to a string.</p>
 <div class="refsect3">
@@ -1577,15 +1578,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.21.6"></a><h4>Returns</h4>
-<p> a newly-allocated string, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. The
-string must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
-<p></p>
+<p> a newly-allocated string, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of
+an error. The string must be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer
+needed. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-is-empty"></a><h3>gst_tag_list_is_empty ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_is_empty (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>);</pre>
 <p>Checks if the given taglist is empty.</p>
 <div class="refsect3">
@@ -1605,14 +1607,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.22.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the taglist is empty, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the taglist is empty, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-is-equal"></a><h3>gst_tag_list_is_equal ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_is_equal (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list1</code></em>,
                        <em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list2</code></em>);</pre>
 <p>Checks if the two given taglists are equal.</p>
@@ -1640,7 +1642,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.23.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the taglists are equal, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the taglists are equal, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
@@ -1842,8 +1844,8 @@
 gst_tag_list_merge (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list1</code></em>,
                     <em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list2</code></em>,
                     <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>);</pre>
-<p>Merges the two given lists into a new list. If one of the lists is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a
-copy of the other is returned. If both lists are <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned.</p>
+<p>Merges the two given lists into a new list. If one of the lists is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a
+copy of the other is returned. If both lists are <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned.</p>
 <p>Free-function: gst_tag_list_unref</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.30.6"></a><h4>Parameters</h4>
@@ -1856,13 +1858,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>list1</p></td>
-<td class="parameter_description"><p>first list to merge</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> first list to merge. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>list2</p></td>
-<td class="parameter_description"><p>second list to merge</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> second list to merge. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
@@ -1875,15 +1877,15 @@
 <div class="refsect3">
 <a name="id-1.3.47.8.30.7"></a><h4>Returns</h4>
 <p> the new list. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-tag-size"></a><h3>gst_tag_list_get_tag_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_tag_list_get_tag_size (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Checks how many value are stored in this tag list for the given tag.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.31.5"></a><h4>Parameters</h4>
@@ -1916,7 +1918,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-n-tags"></a><h3>gst_tag_list_n_tags ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_tag_list_n_tags (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>);</pre>
 <p>Get the number of tags in <em class="parameter"><code>list</code></em>
 .</p>
@@ -1945,9 +1947,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-nth-tag-name"></a><h3>gst_tag_list_nth_tag_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_tag_list_nth_tag_name (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Get the name of the tag in <em class="parameter"><code>list</code></em>
  at <em class="parameter"><code>index</code></em>
 .</p>
@@ -1986,7 +1988,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_add (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
                   <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                   <em class="parameter"><code>...</code></em>);</pre>
 <p>Sets the values for the given tags using the specified mode.</p>
 <div class="refsect3">
@@ -2015,7 +2017,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of values to set</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of values to set</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -2028,8 +2030,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_add_value (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
                         <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Sets the GValue for a given tag using the specified mode.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.35.5"></a><h4>Parameters</h4>
@@ -2070,7 +2072,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_add_values (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
                          <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                          <em class="parameter"><code>...</code></em>);</pre>
 <p>Sets the GValues for the given tags using the specified mode.</p>
 <div class="refsect3">
@@ -2112,7 +2114,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_add_valist (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
                          <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                          <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Sets the values for the given tags using the specified mode.</p>
 <div class="refsect3">
@@ -2154,7 +2156,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_add_valist_values (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                                 <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Sets the GValues for the given tags using the specified mode.</p>
 <div class="refsect3">
@@ -2195,7 +2197,7 @@
 <a name="gst-tag-list-remove-tag"></a><h3>gst_tag_list_remove_tag ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_remove_tag (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Removes the given tag from the taglist.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.39.5"></a><h4>Parameters</h4>
@@ -2226,7 +2228,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_list_foreach (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
                       <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagForeachFunc" title="GstTagForeachFunc ()"><span class="type">GstTagForeachFunc</span></a> func</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Calls the given function for each tag inside the tag list. Note that if there
 is no tag, the function won't be called at all.</p>
 <div class="refsect3">
@@ -2260,10 +2262,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-value-index"></a><h3>gst_tag_list_get_value_index ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 gst_tag_list_get_value_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -2295,22 +2297,23 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.41.6"></a><h4>Returns</h4>
-<p> The GValue for the specified entry or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-tag wasn't available or the tag doesn't have as many entries. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p> The GValue for the specified
+entry or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the tag wasn't available or the tag
+doesn't have as many entries. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-copy-value"></a><h3>gst_tag_list_copy_value ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_tag_list_copy_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_tag_list_copy_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
                          <em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>);</pre>
 <p>Copies the contents for the given tag into the value,
 merging multiple values into one if multiple values are associated
 with the tag.
-You must <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a> the value after use.</p>
+You must <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a> the value after use.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.42.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2322,7 +2325,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> uninitialized <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to copy into. </p></td>
+<td class="parameter_description"><p> uninitialized <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to copy into. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
 </tr>
 <tr>
@@ -2340,7 +2343,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.42.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2348,10 +2351,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-boolean"></a><h3>gst_tag_list_get_boolean ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_boolean (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *value</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
 <div class="refsect3">
@@ -2383,7 +2386,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.43.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2391,11 +2394,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-boolean-index"></a><h3>gst_tag_list_get_boolean_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_boolean_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *value</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -2432,7 +2435,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.44.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2440,10 +2443,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-int"></a><h3>gst_tag_list_get_int ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_int (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
 <div class="refsect3">
@@ -2475,7 +2478,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2483,11 +2486,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-int-index"></a><h3>gst_tag_list_get_int_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_int_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -2524,7 +2527,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.46.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2532,10 +2535,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-uint"></a><h3>gst_tag_list_get_uint ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_uint (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *value</code></em>);</pre>
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
 <div class="refsect3">
@@ -2567,7 +2570,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.47.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2575,11 +2578,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-uint-index"></a><h3>gst_tag_list_get_uint_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_uint_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *value</code></em>);</pre>
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -2616,7 +2619,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.48.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2624,18 +2627,18 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-int64"></a><h3>gst_tag_list_get_int64 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_int64 (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                         <em class="parameter"><code><span class="type">gint64</span> *value</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-int64-index"></a><h3>gst_tag_list_get_int64_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_int64_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                               <em class="parameter"><code><span class="type">gint64</span> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
@@ -2673,7 +2676,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.50.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2681,9 +2684,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-uint64"></a><h3>gst_tag_list_get_uint64 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_uint64 (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                          <em class="parameter"><code><span class="type">guint64</span> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
@@ -2716,7 +2719,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.51.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2724,10 +2727,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-uint64-index"></a><h3>gst_tag_list_get_uint64_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_uint64_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                <em class="parameter"><code><span class="type">guint64</span> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
@@ -2765,7 +2768,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.52.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2773,10 +2776,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-float"></a><h3>gst_tag_list_get_float ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_float (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *value</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
 <div class="refsect3">
@@ -2808,7 +2811,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.53.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2816,11 +2819,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-float-index"></a><h3>gst_tag_list_get_float_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_float_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *value</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -2857,7 +2860,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.54.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2865,10 +2868,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-double"></a><h3>gst_tag_list_get_double ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_double (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
 <div class="refsect3">
@@ -2900,7 +2903,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.55.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2908,11 +2911,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-double-index"></a><h3>gst_tag_list_get_double_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_double_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -2949,7 +2952,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.56.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -2957,10 +2960,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-string"></a><h3>gst_tag_list_get_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_string (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, possibly merging
 multiple values into one if multiple values are associated with the tag.</p>
 <p>Use gst_tag_list_get_string_index (list, tag, 0, value) if you want
@@ -2968,7 +2971,7 @@
 <p>The resulting string in <em class="parameter"><code>value</code></em>
  will be in UTF-8 encoding and should be
 freed by the caller using g_free when no longer needed. The
-returned string is also guaranteed to be non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and non-empty.</p>
+returned string is also guaranteed to be non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and non-empty.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.57.8"></a><h4>Parameters</h4>
@@ -2999,7 +3002,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.57.9"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -3007,17 +3010,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-string-index"></a><h3>gst_tag_list_get_string_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_string_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <p>The resulting string in <em class="parameter"><code>value</code></em>
  will be in UTF-8 encoding and should be
 freed by the caller using g_free when no longer needed. The
-returned string is also guaranteed to be non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and non-empty.</p>
+returned string is also guaranteed to be non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and non-empty.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.58.7"></a><h4>Parameters</h4>
@@ -3053,7 +3056,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.58.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -3061,17 +3064,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-peek-string-index"></a><h3>gst_tag_list_peek_string_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_peek_string_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **value</code></em>);</pre>
 <p>Peeks at the value that is at the given index for the given tag in the given
 list.</p>
 <p>The resulting string in <em class="parameter"><code>value</code></em>
  will be in UTF-8 encoding and doesn't need
 to be freed by the caller. The returned string is also guaranteed to
-be non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and non-empty.</p>
+be non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and non-empty.</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.59.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3106,7 +3109,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.59.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was set, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was set, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -3114,10 +3117,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-pointer"></a><h3>gst_tag_list_get_pointer ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_pointer (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *value</code></em>);</pre>
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *value</code></em>);</pre>
 <p>Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</p>
 <div class="refsect3">
@@ -3149,7 +3152,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.60.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -3157,11 +3160,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-pointer-index"></a><h3>gst_tag_list_get_pointer_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_pointer_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *value</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *value</code></em>);</pre>
 <p>Gets the value that is at the given index for the given tag in the given
 list.</p>
 <div class="refsect3">
@@ -3198,7 +3201,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.61.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
 given list.</p>
 <p></p>
 </div>
@@ -3206,13 +3209,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-date"></a><h3>gst_tag_list_get_date ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_date (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> **value</code></em>);</pre>
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> **value</code></em>);</pre>
 <p>Copies the first date for the given tag in the taglist into the variable
 pointed to by <em class="parameter"><code>value</code></em>
-. Free the date with <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-date-free"><code class="function">g_date_free()</code></a> when it is no longer
+. Free the date with <a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#g-date-free"><code class="function">g_date_free()</code></a> when it is no longer
 needed.</p>
 <p>Free-function: g_date_free</p>
 <div class="refsect3">
@@ -3245,23 +3248,23 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.62.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a date was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
-given list or if it was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a date was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+given list or if it was <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-date-index"></a><h3>gst_tag_list_get_date_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_date_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> **value</code></em>);</pre>
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> **value</code></em>);</pre>
 <p>Gets the date that is at the given index for the given tag in the given
 list and copies it into the variable pointed to by <em class="parameter"><code>value</code></em>
 . Free the date
-with <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-date-free"><code class="function">g_date_free()</code></a> when it is no longer needed.</p>
+with <a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#g-date-free"><code class="function">g_date_free()</code></a> when it is no longer needed.</p>
 <p>Free-function: g_date_free</p>
 <div class="refsect3">
 <a name="id-1.3.47.8.63.6"></a><h4>Parameters</h4>
@@ -3297,17 +3300,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.63.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
-given list or if it was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+given list or if it was <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-date-time"></a><h3>gst_tag_list_get_date_time ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_date_time (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                             <em class="parameter"><code><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> **value</code></em>);</pre>
 <p>Copies the first datetime for the given tag in the taglist into the variable
 pointed to by <em class="parameter"><code>value</code></em>
@@ -3344,18 +3347,18 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.64.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a datetime was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in
-the given list or if it was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a datetime was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in
+the given list or if it was <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-date-time-index"></a><h3>gst_tag_list_get_date_time_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_date_time_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstDateTime.html" title="GstDateTime"><span class="type">GstDateTime</span></a> **value</code></em>);</pre>
 <p>Gets the datetime that is at the given index for the given tag in the given
 list and copies it into the variable pointed to by <em class="parameter"><code>value</code></em>
@@ -3396,17 +3399,17 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.65.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
-given list or if it was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a value was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+given list or if it was <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-sample"></a><h3>gst_tag_list_get_sample ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_sample (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                          <em class="parameter"><code><a class="link" href="GstSample.html" title="GstSample"><span class="type">GstSample</span></a> **sample</code></em>);</pre>
 <p>Copies the first sample for the given tag in the taglist into the variable
 pointed to by <em class="parameter"><code>sample</code></em>
@@ -3445,18 +3448,18 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.66.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a sample was returned, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in
-the given list or if it was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a sample was returned, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in
+the given list or if it was <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-tag-list-get-sample-index"></a><h3>gst_tag_list_get_sample_index ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_tag_list_get_sample_index (<em class="parameter"><code>const <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *list</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>,
                                <em class="parameter"><code><a class="link" href="GstSample.html" title="GstSample"><span class="type">GstSample</span></a> **sample</code></em>);</pre>
 <p>Gets the sample that is at the given index for the given tag in the given
 list and copies it into the variable pointed to by <em class="parameter"><code>sample</code></em>
@@ -3500,8 +3503,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.47.8.67.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a sample was copied, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
-given list or if it was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if a sample was copied, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the tag didn't exist in the
+given list or if it was <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <p></p>
 </div>
 </div>
@@ -3826,7 +3829,7 @@
 <a name="GST-TAG-DATE:CAPS"></a><h3>GST_TAG_DATE</h3>
 <pre class="programlisting">#define GST_TAG_DATE                   "date"
 </pre>
-<p>date the data was created (<a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> structure)</p>
+<p>date the data was created (<a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#GDate"><span class="type">GDate</span></a> structure)</p>
 </div>
 <hr>
 <div class="refsect2">
@@ -4413,6 +4416,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstTagSetter.html b/docs/gst/html/GstTagSetter.html
index 16181dd..4395582 100644
--- a/docs/gst/html/GstTagSetter.html
+++ b/docs/gst/html/GstTagSetter.html
@@ -8,15 +8,15 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstTagList.html" title="GstTagList">
 <link rel="next" href="GstTask.html" title="GstTask">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTagSetter.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstTagSetter.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_prerequisites"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTagSetter.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstTagSetter.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_prerequisites">  <span class="dim">|</span> 
                   <a href="#GstTagSetter.prerequisites" class="shortcut">Prerequisites</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -145,7 +145,7 @@
 </div>
 <div class="refsect1">
 <a name="GstTagSetter.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GInterface
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/GTypeModule.html">GInterface</a>
     <span class="lineart">╰──</span> GstTagSetter
 </pre>
 </div>
@@ -292,10 +292,10 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_setter_add_tags (<em class="parameter"><code><a class="link" href="GstTagSetter.html" title="GstTagSetter"><span class="type">GstTagSetter</span></a> *setter</code></em>,
                          <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                          <em class="parameter"><code>...</code></em>);</pre>
 <p>Adds the given tag / value pairs on the setter using the given merge mode.
-The list must be terminated with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The list must be terminated with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.48.9.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -335,8 +335,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_setter_add_tag_value (<em class="parameter"><code><a class="link" href="GstTagSetter.html" title="GstTagSetter"><span class="type">GstTagSetter</span></a> *setter</code></em>,
                               <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Adds the given tag / GValue pair on the setter using the given merge mode.</p>
 <div class="refsect3">
 <a name="id-1.3.48.9.5.5"></a><h4>Parameters</h4>
@@ -377,10 +377,10 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_setter_add_tag_values (<em class="parameter"><code><a class="link" href="GstTagSetter.html" title="GstTagSetter"><span class="type">GstTagSetter</span></a> *setter</code></em>,
                                <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                                <em class="parameter"><code>...</code></em>);</pre>
 <p>Adds the given tag / GValue pairs on the setter using the given merge mode.
-The list must be terminated with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The list must be terminated with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.48.9.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -420,10 +420,10 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_setter_add_tag_valist (<em class="parameter"><code><a class="link" href="GstTagSetter.html" title="GstTagSetter"><span class="type">GstTagSetter</span></a> *setter</code></em>,
                                <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                                <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Adds the given tag / value pairs on the setter using the given merge mode.
-The list must be terminated with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The list must be terminated with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.48.9.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -463,10 +463,10 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_tag_setter_add_tag_valist_values (<em class="parameter"><code><a class="link" href="GstTagSetter.html" title="GstTagSetter"><span class="type">GstTagSetter</span></a> *setter</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstTagList.html#GstTagMergeMode" title="enum GstTagMergeMode"><span class="type">GstTagMergeMode</span></a> mode</code></em>,
-                                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
+                                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *tag</code></em>,
                                       <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
 <p>Adds the given tag / GValue pairs on the setter using the given merge mode.
-The list must be terminated with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+The list must be terminated with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.48.9.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -525,9 +525,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.48.9.9.7"></a><h4>Returns</h4>
-<p> a current snapshot of the taglist used in the
-setter or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none is used. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p> a current snapshot of the
+taglist used in the setter or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none is used. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -619,7 +619,7 @@
 <col width="200px" class="struct_members_annotations">
 </colgroup>
 <tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstTagSetterInterface.g-iface"></a>g_iface</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstTagSetterInterface.g-iface"></a>g_iface</code></em>;</p></td>
 <td class="struct_member_description"><p>parent interface type.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr></tbody>
@@ -630,6 +630,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstTask.html b/docs/gst/html/GstTask.html
index 4228080..2712f14 100644
--- a/docs/gst/html/GstTask.html
+++ b/docs/gst/html/GstTask.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstTagSetter.html" title="GstTagSetter">
 <link rel="next" href="GstTaskPool.html" title="GstTaskPool">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTask.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTask.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstTask.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -150,7 +150,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTask.html#gst-task-set-state" title="gst_task_set_state ()">gst_task_set_state</a> <span class="c_punctuation">()</span>
@@ -158,7 +158,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTask.html#gst-task-pause" title="gst_task_pause ()">gst_task_pause</a> <span class="c_punctuation">()</span>
@@ -166,7 +166,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTask.html#gst-task-start" title="gst_task_start ()">gst_task_start</a> <span class="c_punctuation">()</span>
@@ -174,7 +174,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTask.html#gst-task-stop" title="gst_task_stop ()">gst_task_stop</a> <span class="c_punctuation">()</span>
@@ -182,7 +182,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTask.html#gst-task-join" title="gst_task_join ()">gst_task_join</a> <span class="c_punctuation">()</span>
@@ -220,8 +220,8 @@
 </div>
 <div class="refsect1">
 <a name="GstTask.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstTask
 </pre>
@@ -243,7 +243,7 @@
 <p>Although convenience functions exist on <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to start/pause/stop tasks, it
 might sometimes be needed to create a <a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> manually if it is not related to
 a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>.</p>
-<p>Before the <a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> can be run, it needs a <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> that can be set with
+<p>Before the <a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> can be run, it needs a <a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> that can be set with
 <a class="link" href="GstTask.html#gst-task-set-lock" title="gst_task_set_lock ()"><code class="function">gst_task_set_lock()</code></a>.</p>
 <p>The task can be started, paused and stopped with <a class="link" href="GstTask.html#gst-task-start" title="gst_task_start ()"><code class="function">gst_task_start()</code></a>, <a class="link" href="GstTask.html#gst-task-pause" title="gst_task_pause ()"><code class="function">gst_task_pause()</code></a>
 and <a class="link" href="GstTask.html#gst-task-stop" title="gst_task_stop ()"><code class="function">gst_task_stop()</code></a> respectively or with the <a class="link" href="GstTask.html#gst-task-set-state" title="gst_task_set_state ()"><code class="function">gst_task_set_state()</code></a> function.</p>
@@ -269,7 +269,7 @@
 <div class="refsect2">
 <a name="GstTaskFunction"></a><h3>GstTaskFunction ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GstTaskFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<span class="c_punctuation">(</span>*GstTaskFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will repeatedly be called in the thread created by
 a <a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a>.</p>
 <div class="refsect3">
@@ -425,8 +425,8 @@
 <a name="gst-task-new"></a><h3>gst_task_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstTask.html" title="GstTask"><span class="returnvalue">GstTask</span></a> *
 gst_task_new (<em class="parameter"><code><a class="link" href="GstTask.html#GstTaskFunction" title="GstTaskFunction ()"><span class="type">GstTaskFunction</span></a> func</code></em>,
-              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Create a new Task that will repeatedly call the provided <em class="parameter"><code>func</code></em>
 
 with <em class="parameter"><code>user_data</code></em>
@@ -436,7 +436,7 @@
 must create a new <a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> to change the function.</p>
 <p>This function will not yet create and start a thread. Use <a class="link" href="GstTask.html#gst-task-start" title="gst_task_start ()"><code class="function">gst_task_start()</code></a> or
 <a class="link" href="GstTask.html#gst-task-pause" title="gst_task_pause ()"><code class="function">gst_task_pause()</code></a> to create and start the GThread.</p>
-<p>Before the task can be used, a <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> must be configured using the
+<p>Before the task can be used, a <a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> must be configured using the
 <a class="link" href="GstTask.html#gst-task-set-lock" title="gst_task_set_lock ()"><code class="function">gst_task_set_lock()</code></a> function. This lock will always be acquired while
 <em class="parameter"><code>func</code></em>
  is called.</p>
@@ -481,7 +481,7 @@
 <a name="gst-task-set-lock"></a><h3>gst_task_set_lock ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_task_set_lock (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> *mutex</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> *mutex</code></em>);</pre>
 <p>Set the mutex used by the task. The mutex will be acquired before
 calling the <a class="link" href="GstTask.html#GstTaskFunction" title="GstTaskFunction ()"><span class="type">GstTaskFunction</span></a>.</p>
 <p>This function has to be called before calling <a class="link" href="GstTask.html#gst-task-pause" title="gst_task_pause ()"><code class="function">gst_task_pause()</code></a> or
@@ -503,7 +503,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>mutex</p></td>
-<td class="parameter_description"><p>The <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> to use</p></td>
+<td class="parameter_description"><p>The <a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> to use</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -582,8 +582,8 @@
 <a name="GstTaskThreadFunc"></a><h3>GstTaskThreadFunc ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstTaskThreadFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GThread"><span class="type">GThread</span></a> *thread</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GThread"><span class="type">GThread</span></a> *thread</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Custom GstTask thread callback functions that can be installed.</p>
 <div class="refsect3">
 <a name="id-1.3.49.8.13.5"></a><h4>Parameters</h4>
@@ -601,7 +601,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>thread</p></td>
-<td class="parameter_description"><p>The <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GThread"><span class="type">GThread</span></a></p></td>
+<td class="parameter_description"><p>The <a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GThread"><span class="type">GThread</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -619,8 +619,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_task_set_enter_callback (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>,
                              <em class="parameter"><code><a class="link" href="GstTask.html#GstTaskThreadFunc" title="GstTaskThreadFunc ()"><span class="type">GstTaskThreadFunc</span></a> enter_func</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Call <em class="parameter"><code>enter_func</code></em>
  when the task function of <em class="parameter"><code>task</code></em>
  is entered. <em class="parameter"><code>user_data</code></em>
@@ -671,8 +671,8 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_task_set_leave_callback (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>,
                              <em class="parameter"><code><a class="link" href="GstTask.html#GstTaskThreadFunc" title="GstTaskThreadFunc ()"><span class="type">GstTaskThreadFunc</span></a> leave_func</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Call <em class="parameter"><code>leave_func</code></em>
  when the task function of <em class="parameter"><code>task</code></em>
  is left. <em class="parameter"><code>user_data</code></em>
@@ -748,7 +748,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-task-set-state"></a><h3>gst_task_set_state ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_task_set_state (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>,
                     <em class="parameter"><code><a class="link" href="GstTask.html#GstTaskState" title="enum GstTaskState"><span class="type">GstTaskState</span></a> state</code></em>);</pre>
 <p>Sets the state of <em class="parameter"><code>task</code></em>
@@ -757,7 +757,7 @@
 <p>The <em class="parameter"><code>task</code></em>
  must have a lock associated with it using
 <a class="link" href="GstTask.html#gst-task-set-lock" title="gst_task_set_lock ()"><code class="function">gst_task_set_lock()</code></a> when going to GST_TASK_STARTED or GST_TASK_PAUSED or
-this function will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+this function will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p>MT safe.</p>
 <div class="refsect3">
 <a name="id-1.3.49.8.17.7"></a><h4>Parameters</h4>
@@ -783,14 +783,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.49.8.17.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the state could be changed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the state could be changed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-task-pause"></a><h3>gst_task_pause ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_task_pause (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>);</pre>
 <p>Pauses <em class="parameter"><code>task</code></em>
 . This method can also be called on a task in the
@@ -814,7 +814,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.49.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be paused.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be paused.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -822,12 +822,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-task-start"></a><h3>gst_task_start ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_task_start (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>);</pre>
 <p>Starts <em class="parameter"><code>task</code></em>
 . The <em class="parameter"><code>task</code></em>
  must have a lock associated with it using
-<a class="link" href="GstTask.html#gst-task-set-lock" title="gst_task_set_lock ()"><code class="function">gst_task_set_lock()</code></a> or this function will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a class="link" href="GstTask.html#gst-task-set-lock" title="gst_task_set_lock ()"><code class="function">gst_task_set_lock()</code></a> or this function will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.3.49.8.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -845,7 +845,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.49.8.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be started.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be started.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -853,7 +853,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-task-stop"></a><h3>gst_task_stop ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_task_stop (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>);</pre>
 <p>Stops <em class="parameter"><code>task</code></em>
 . This method merely schedules the task to stop and
@@ -876,7 +876,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.49.8.20.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be stopped.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be stopped.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -884,7 +884,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-task-join"></a><h3>gst_task_join ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_task_join (<em class="parameter"><code><a class="link" href="GstTask.html" title="GstTask"><span class="type">GstTask</span></a> *task</code></em>);</pre>
 <p>Joins <em class="parameter"><code>task</code></em>
 . After this call, it is safe to unref the task
@@ -910,7 +910,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.49.8.21.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be joined.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the task could be joined.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -958,12 +958,12 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GCond"><span class="type">GCond</span></a> <em class="structfield"><code><a name="GstTask-struct.cond"></a>cond</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GCond"><span class="type">GCond</span></a> <em class="structfield"><code><a name="GstTask-struct.cond"></a>cond</code></em>;</p></td>
 <td class="struct_member_description"><p>used to pause/resume the task</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> *<em class="structfield"><code><a name="GstTask-struct.lock"></a>lock</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> *<em class="structfield"><code><a name="GstTask-struct.lock"></a>lock</code></em>;</p></td>
 <td class="struct_member_description"><p>The lock taken when iterating the task function</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -973,18 +973,18 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstTask-struct.user-data"></a>user_data</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstTask-struct.user-data"></a>user_data</code></em>;</p></td>
 <td class="struct_member_description"><p>user_data passed to the task function</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> <em class="structfield"><code><a name="GstTask-struct.notify"></a>notify</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> <em class="structfield"><code><a name="GstTask-struct.notify"></a>notify</code></em>;</p></td>
 <td class="struct_member_description"><p>GDestroyNotify for <em class="parameter"><code>user_data</code></em>
 </p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstTask-struct.running"></a>running</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstTask-struct.running"></a>running</code></em>;</p></td>
 <td class="struct_member_description"><p>a flag indicating that the task is running</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1038,6 +1038,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstTaskPool.html b/docs/gst/html/GstTaskPool.html
index 9756e54..c15e35e 100644
--- a/docs/gst/html/GstTaskPool.html
+++ b/docs/gst/html/GstTaskPool.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstTask.html" title="GstTask">
 <link rel="next" href="GstToc.html" title="GstToc">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTaskPool.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTaskPool.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstTaskPool.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -66,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTaskPool.html#gst-task-pool-push" title="gst_task_pool_push ()">gst_task_pool_push</a> <span class="c_punctuation">()</span>
@@ -112,8 +112,8 @@
 </div>
 <div class="refsect1">
 <a name="GstTaskPool.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> GstTaskPool
 </pre>
@@ -170,7 +170,7 @@
 <a name="gst-task-pool-prepare"></a><h3>gst_task_pool_prepare ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_task_pool_prepare (<em class="parameter"><code><a class="link" href="GstTaskPool.html" title="GstTaskPool"><span class="type">GstTaskPool</span></a> *pool</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Prepare the taskpool for accepting <a class="link" href="GstTaskPool.html#gst-task-pool-push" title="gst_task_pool_push ()"><code class="function">gst_task_pool_push()</code></a> operations.</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -199,11 +199,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-task-pool-push"></a><h3>gst_task_pool_push ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_task_pool_push (<em class="parameter"><code><a class="link" href="GstTaskPool.html" title="GstTaskPool"><span class="type">GstTaskPool</span></a> *pool</code></em>,
                     <em class="parameter"><code><a class="link" href="GstTaskPool.html#GstTaskPoolFunction" title="GstTaskPoolFunction ()"><span class="type">GstTaskPoolFunction</span></a> func</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Start the execution of a new thread from <em class="parameter"><code>pool</code></em>
 .</p>
 <div class="refsect3">
@@ -241,11 +241,11 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.50.8.5.6"></a><h4>Returns</h4>
-<p> a pointer that should be used for the
-gst_task_pool_join function. This pointer can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, you must
-check <em class="parameter"><code>error</code></em>
+<p> a pointer that should be used
+for the gst_task_pool_join function. This pointer can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, you
+must check <em class="parameter"><code>error</code></em>
 to detect errors. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -253,7 +253,7 @@
 <a name="gst-task-pool-join"></a><h3>gst_task_pool_join ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_task_pool_join (<em class="parameter"><code><a class="link" href="GstTaskPool.html" title="GstTaskPool"><span class="type">GstTaskPool</span></a> *pool</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> id</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> id</code></em>);</pre>
 <p>Join a task and/or return it to the pool. <em class="parameter"><code>id</code></em>
  is the id obtained from 
 <a class="link" href="GstTaskPool.html#gst-task-pool-push" title="gst_task_pool_push ()"><code class="function">gst_task_pool_push()</code></a>.</p>
@@ -373,6 +373,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstToc.html b/docs/gst/html/GstToc.html
index 5ca256b..56f61ac 100644
--- a/docs/gst/html/GstToc.html
+++ b/docs/gst/html/GstToc.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstTaskPool.html" title="GstTaskPool">
 <link rel="next" href="gstreamer-GstTocSetter.html" title="GstTocSetter">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstToc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstToc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstToc.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -82,7 +82,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-get-entries" title="gst_toc_get_entries ()">gst_toc_get_entries</a> <span class="c_punctuation">()</span>
@@ -177,7 +177,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-entry-get-uid" title="gst_toc_entry_get_uid ()">gst_toc_entry_get_uid</a> <span class="c_punctuation">()</span>
@@ -193,7 +193,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-entry-get-sub-entries" title="gst_toc_entry_get_sub_entries ()">gst_toc_entry_get_sub_entries</a> <span class="c_punctuation">()</span>
@@ -209,7 +209,23 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstToc.html#gst-toc-entry-get-loop" title="gst_toc_entry_get_loop ()">gst_toc_entry_get_loop</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="GstToc.html#gst-toc-entry-set-loop" title="gst_toc_entry_set_loop ()">gst_toc_entry_set_loop</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-entry-get-start-stop-times" title="gst_toc_entry_get_start_stop_times ()">gst_toc_entry_get_start_stop_times</a> <span class="c_punctuation">()</span>
@@ -248,7 +264,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-entry-type-get-nick" title="gst_toc_entry_type_get_nick ()">gst_toc_entry_type_get_nick</a> <span class="c_punctuation">()</span>
@@ -264,7 +280,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-entry-is-alternative" title="gst_toc_entry_is_alternative ()">gst_toc_entry_is_alternative</a> <span class="c_punctuation">()</span>
@@ -272,7 +288,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstToc.html#gst-toc-entry-is-sequence" title="gst_toc_entry_is_sequence ()">gst_toc_entry_is_sequence</a> <span class="c_punctuation">()</span>
@@ -290,6 +306,10 @@
 <a class="link" href="GstToc.html#GST-TOC-ENTRY-TYPE-IS-SEQUENCE:CAPS" title="GST_TOC_ENTRY_TYPE_IS_SEQUENCE()">GST_TOC_ENTRY_TYPE_IS_SEQUENCE</a><span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="GstToc.html#GST-TOC-REPEAT-COUNT-INFINITE:CAPS" title="GST_TOC_REPEAT_COUNT_INFINITE">GST_TOC_REPEAT_COUNT_INFINITE</a></td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -317,12 +337,16 @@
 <td class="datatype_keyword">enum</td>
 <td class="function_name"><a class="link" href="GstToc.html#GstTocEntryType" title="enum GstTocEntryType">GstTocEntryType</a></td>
 </tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="GstToc.html#GstTocLoopType" title="enum GstTocLoopType">GstTocLoopType</a></td>
+</tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect1">
 <a name="GstToc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">├──</span> GstToc
     <span class="lineart">╰──</span> GstTocEntry
 </pre>
@@ -438,9 +462,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.5.6"></a><h4>Returns</h4>
-<p> newly allocated <a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> in case of success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise;
-free it when done with <a class="link" href="GstToc.html#gst-toc-unref" title="gst_toc_unref()"><code class="function">gst_toc_unref()</code></a>.</p>
-<p></p>
+<p> newly allocated <a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> in case of success,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise; free it when done with <a class="link" href="GstToc.html#gst-toc-unref" title="gst_toc_unref()"><code class="function">gst_toc_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -479,7 +503,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-toc-get-entries"></a><h3>gst_toc_get_entries ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_toc_get_entries (<em class="parameter"><code>const <a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> *toc</code></em>);</pre>
 <p>Gets the list of <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> of <em class="parameter"><code>toc</code></em>
 .</p>
@@ -500,7 +524,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.8.6"></a><h4>Returns</h4>
-<p> A <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> for <em class="parameter"><code>entry</code></em>
+<p> A <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> for <em class="parameter"><code>entry</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.TocEntry]</span></p>
 </div>
@@ -593,8 +617,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>tags</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
@@ -629,8 +653,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>tags</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -647,7 +671,7 @@
 <a name="gst-toc-entry-new"></a><h3>gst_toc_entry_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstToc.html#GstTocEntry"><span class="returnvalue">GstTocEntry</span></a> *
 gst_toc_entry_new (<em class="parameter"><code><a class="link" href="GstToc.html#GstTocEntryType" title="enum GstTocEntryType"><span class="type">GstTocEntryType</span></a> type</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uid</code></em>);</pre>
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uid</code></em>);</pre>
 <p>Create new <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> structure.</p>
 <div class="refsect3">
 <a name="id-1.3.51.9.14.5"></a><h4>Parameters</h4>
@@ -712,9 +736,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.17.6"></a><h4>Returns</h4>
-<p> newly allocated <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> in case of success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise;
-free it when done with <a class="link" href="GstToc.html#gst-toc-entry-unref" title="gst_toc_entry_unref()"><code class="function">gst_toc_entry_unref()</code></a>.</p>
-<p></p>
+<p> newly allocated <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> in case of
+success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise; free it when done with
+<a class="link" href="GstToc.html#gst-toc-entry-unref" title="gst_toc_entry_unref()"><code class="function">gst_toc_entry_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -728,7 +753,7 @@
 <a name="gst-toc-find-entry"></a><h3>gst_toc_find_entry ()</h3>
 <pre class="programlisting"><a class="link" href="GstToc.html#GstTocEntry"><span class="returnvalue">GstTocEntry</span></a> *
 gst_toc_find_entry (<em class="parameter"><code>const <a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> *toc</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uid</code></em>);</pre>
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uid</code></em>);</pre>
 <p>Find <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> with given <em class="parameter"><code>uid</code></em>
  in the <em class="parameter"><code>toc</code></em>
 .</p>
@@ -756,10 +781,11 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.19.6"></a><h4>Returns</h4>
-<p> <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> with specified <em class="parameter"><code>uid</code></em>
+<p> <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> with specified
+<em class="parameter"><code>uid</code></em>
 from the <em class="parameter"><code>toc</code></em>
-, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -794,7 +820,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-toc-entry-get-uid"></a><h3>gst_toc_entry_get_uid ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_toc_entry_get_uid (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
 <p>Gets the UID of <em class="parameter"><code>entry</code></em>
 .</p>
@@ -852,7 +878,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-toc-entry-get-sub-entries"></a><h3>gst_toc_entry_get_sub_entries ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_toc_entry_get_sub_entries (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
 <p>Gets the sub-entries of <em class="parameter"><code>entry</code></em>
 .</p>
@@ -873,7 +899,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.23.6"></a><h4>Returns</h4>
-<p> A <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> of <em class="parameter"><code>entry</code></em>
+<p> A <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> of <em class="parameter"><code>entry</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.TocEntry]</span></p>
 </div>
@@ -912,16 +938,18 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-toc-entry-get-start-stop-times"></a><h3>gst_toc_entry_get_start_stop_times ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_toc_entry_get_start_stop_times (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>,
-                                    <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
-                                    <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>);</pre>
-<p>Get <em class="parameter"><code>start</code></em>
- and <em class="parameter"><code>stop</code></em>
+<a name="gst-toc-entry-get-loop"></a><h3>gst_toc_entry_get_loop ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_toc_entry_get_loop (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>,
+                        <em class="parameter"><code><a class="link" href="GstToc.html#GstTocLoopType" title="enum GstTocLoopType"><span class="type">GstTocLoopType</span></a> *loop_type</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *repeat_count</code></em>);</pre>
+<p>Get <em class="parameter"><code>loop_type</code></em>
+ and <em class="parameter"><code>repeat_count</code></em>
  values from the <em class="parameter"><code>entry</code></em>
- and write them into appropriate
-storages.</p>
+ and write them into
+appropriate storages. Loops are e.g. used by sampled instruments. GStreamer
+is not automatically applying the loop. The application can process this
+meta data and use it e.g. to send a seek-event to loop a section.</p>
 <div class="refsect3">
 <a name="id-1.3.51.9.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -937,22 +965,113 @@
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>start</p></td>
-<td class="parameter_description"><p> the storage for the start value, leave <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not need. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_name"><p>loop_type</p></td>
+<td class="parameter_description"><p> the storage for the loop_type
+value, leave <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not need. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
-<td class="parameter_name"><p>stop</p></td>
-<td class="parameter_description"><p> the storage for the stop value, leave <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not need. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_name"><p>repeat_count</p></td>
+<td class="parameter_description"><p> the storage for the repeat_count
+value, leave <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not need. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.25.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> storage pointers were filled with appropriate
-values, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> storage pointers were filled with appropriate
+values, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-toc-entry-set-loop"></a><h3>gst_toc_entry_set_loop ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_toc_entry_set_loop (<em class="parameter"><code><a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>,
+                        <em class="parameter"><code><a class="link" href="GstToc.html#GstTocLoopType" title="enum GstTocLoopType"><span class="type">GstTocLoopType</span></a> loop_type</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> repeat_count</code></em>);</pre>
+<p>Set <em class="parameter"><code>loop_type</code></em>
+ and <em class="parameter"><code>repeat_count</code></em>
+ values for the <em class="parameter"><code>entry</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.51.9.26.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>entry</p></td>
+<td class="parameter_description"><p><a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> to set values.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>loop_type</p></td>
+<td class="parameter_description"><p>loop_type value to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>repeat_count</p></td>
+<td class="parameter_description"><p>repeat_count value to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-toc-entry-get-start-stop-times"></a><h3>gst_toc_entry_get_start_stop_times ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_toc_entry_get_start_stop_times (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>,
+                                    <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
+                                    <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>);</pre>
+<p>Get <em class="parameter"><code>start</code></em>
+ and <em class="parameter"><code>stop</code></em>
+ values from the <em class="parameter"><code>entry</code></em>
+ and write them into appropriate
+storages.</p>
+<div class="refsect3">
+<a name="id-1.3.51.9.27.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>entry</p></td>
+<td class="parameter_description"><p><a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> to get values from.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>start</p></td>
+<td class="parameter_description"><p> the storage for the start value, leave
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not need. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>stop</p></td>
+<td class="parameter_description"><p> the storage for the stop value, leave
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not need. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.51.9.27.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all non-<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> storage pointers were filled with appropriate
+values, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -968,7 +1087,7 @@
  values for the <em class="parameter"><code>entry</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.51.9.26.5"></a><h4>Parameters</h4>
+<a name="id-1.3.51.9.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1003,7 +1122,7 @@
 <p>Gets the tags for <em class="parameter"><code>entry</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.51.9.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.51.9.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1018,7 +1137,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.51.9.27.6"></a><h4>Returns</h4>
+<a name="id-1.3.51.9.29.6"></a><h4>Returns</h4>
 <p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> for <em class="parameter"><code>entry</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
@@ -1036,7 +1155,7 @@
  using <em class="parameter"><code>mode</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.51.9.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.51.9.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1051,8 +1170,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>tags</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>mode</p></td>
@@ -1072,7 +1191,7 @@
 <p>Set a <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> with tags for the complete <em class="parameter"><code>entry</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.51.9.29.5"></a><h4>Parameters</h4>
+<a name="id-1.3.51.9.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1087,8 +1206,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>tags</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> A <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1097,12 +1216,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-toc-entry-type-get-nick"></a><h3>gst_toc_entry_type_get_nick ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_toc_entry_type_get_nick (<em class="parameter"><code><a class="link" href="GstToc.html#GstTocEntryType" title="enum GstTocEntryType"><span class="type">GstTocEntryType</span></a> type</code></em>);</pre>
 <p>Converts <em class="parameter"><code>type</code></em>
  to a string representation.</p>
 <div class="refsect3">
-<a name="id-1.3.51.9.30.5"></a><h4>Parameters</h4>
+<a name="id-1.3.51.9.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1117,7 +1236,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.51.9.30.6"></a><h4>Returns</h4>
+<a name="id-1.3.51.9.32.6"></a><h4>Returns</h4>
 <p> Returns a human-readable string for <em class="parameter"><code>type</code></em>
 . This string is
 only for debugging purpose and should not be displayed in a user
@@ -1131,60 +1250,6 @@
 <pre class="programlisting"><a class="link" href="GstToc.html#GstTocEntryType" title="enum GstTocEntryType"><span class="returnvalue">GstTocEntryType</span></a>
 gst_toc_entry_get_entry_type (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.3.51.9.31.4"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>entry</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.51.9.31.5"></a><h4>Returns</h4>
-<p> <em class="parameter"><code>entry</code></em>
-'s entry type</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-toc-entry-is-alternative"></a><h3>gst_toc_entry_is_alternative ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_toc_entry_is_alternative (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
-<div class="refsect3">
-<a name="id-1.3.51.9.32.4"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>entry</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.3.51.9.32.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>entry</code></em>
-'s type is an alternative type, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-toc-entry-is-sequence"></a><h3>gst_toc_entry_is_sequence ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_toc_entry_is_sequence (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
-<div class="refsect3">
 <a name="id-1.3.51.9.33.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -1201,8 +1266,62 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.51.9.33.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>entry</code></em>
-'s type is a sequence type, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <em class="parameter"><code>entry</code></em>
+'s entry type</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-toc-entry-is-alternative"></a><h3>gst_toc_entry_is_alternative ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_toc_entry_is_alternative (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.3.51.9.34.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>entry</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.51.9.34.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>entry</code></em>
+'s type is an alternative type, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-toc-entry-is-sequence"></a><h3>gst_toc_entry_is_sequence ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_toc_entry_is_sequence (<em class="parameter"><code>const <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> *entry</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.3.51.9.35.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>entry</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.51.9.35.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>entry</code></em>
+'s type is a sequence type, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
@@ -1211,12 +1330,55 @@
 <a name="GST-TOC-ENTRY-TYPE-IS-ALTERNATIVE:CAPS"></a><h3>GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE()</h3>
 <pre class="programlisting">#define GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE(entry_type)  (entry_type &lt; 0)
 </pre>
+<p>Checks if <em class="parameter"><code>entry_type</code></em>
+ indicates that its <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> is an alternative.</p>
+<div class="refsect3">
+<a name="id-1.3.51.9.36.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>entry_type</p></td>
+<td class="parameter_description"><p>The <a class="link" href="GstToc.html#GstTocEntryType" title="enum GstTocEntryType"><span class="type">GstTocEntryType</span></a> from a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GST-TOC-ENTRY-TYPE-IS-SEQUENCE:CAPS"></a><h3>GST_TOC_ENTRY_TYPE_IS_SEQUENCE()</h3>
 <pre class="programlisting">#define GST_TOC_ENTRY_TYPE_IS_SEQUENCE(entry_type)     (entry_type &gt; 0)
 </pre>
+<p>Checks if <em class="parameter"><code>entry_type</code></em>
+ indicates that its <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> is a sequence.</p>
+<div class="refsect3">
+<a name="id-1.3.51.9.37.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>entry_type</p></td>
+<td class="parameter_description"><p>The <a class="link" href="GstToc.html#GstTocEntryType" title="enum GstTocEntryType"><span class="type">GstTocEntryType</span></a> from a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-TOC-REPEAT-COUNT-INFINITE:CAPS"></a><h3>GST_TOC_REPEAT_COUNT_INFINITE</h3>
+<pre class="programlisting">#define GST_TOC_REPEAT_COUNT_INFINITE (-1)
+</pre>
+<p>Special value for the repeat_count set in <a class="link" href="GstToc.html#gst-toc-entry-set-loop" title="gst_toc_entry_set_loop ()"><code class="function">gst_toc_entry_set_loop()</code></a> or
+returned by <a class="link" href="GstToc.html#gst-toc-entry-set-loop" title="gst_toc_entry_set_loop ()"><code class="function">gst_toc_entry_set_loop()</code></a> to indicate infinite looping.</p>
+<p class="since">Since 1.4</p>
 </div>
 </div>
 <div class="refsect1">
@@ -1334,6 +1496,53 @@
 </table></div>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GstTocLoopType"></a><h3>enum GstTocLoopType</h3>
+<p>How a <a class="link" href="GstToc.html#GstTocEntry"><span class="type">GstTocEntry</span></a> should be repeated. By default, entries are played a
+single time.</p>
+<div class="refsect3">
+<a name="id-1.3.51.10.6.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-TOC-LOOP-NONE:CAPS"></a>GST_TOC_LOOP_NONE</p></td>
+<td class="enum_member_description">
+<p>single forward playback</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-TOC-LOOP-FORWARD:CAPS"></a>GST_TOC_LOOP_FORWARD</p></td>
+<td class="enum_member_description">
+<p>repeat forward</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-TOC-LOOP-REVERSE:CAPS"></a>GST_TOC_LOOP_REVERSE</p></td>
+<td class="enum_member_description">
+<p>repeat backward</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-TOC-LOOP-PING-PONG:CAPS"></a>GST_TOC_LOOP_PING_PONG</p></td>
+<td class="enum_member_description">
+<p>repeat forward and backward</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
 </div>
 <div class="refsect1">
 <a name="GstToc.see-also"></a><h2>See Also</h2>
@@ -1342,6 +1551,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/GstTypeFindFactory.html b/docs/gst/html/GstTypeFindFactory.html
index 48d636a..c315f22 100644
--- a/docs/gst/html/GstTypeFindFactory.html
+++ b/docs/gst/html/GstTypeFindFactory.html
@@ -7,21 +7,21 @@
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstTypeFind.html" title="GstTypeFind">
-<link rel="next" href="gstreamer-GstUriHandler.html" title="GstUriHandler">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="next" href="gstreamer-GstUri.html" title="GstUri">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTypeFindFactory.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTypeFindFactory.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstTypeFindFactory.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
 <td><a accesskey="p" href="gstreamer-GstTypeFind.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gstreamer-GstUriHandler.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gstreamer-GstUri.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="GstTypeFindFactory"></a><div class="titlepage"></div>
@@ -42,14 +42,14 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTypeFindFactory.html#gst-type-find-factory-get-list" title="gst_type_find_factory_get_list ()">gst_type_find_factory_get_list</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
 </td>
 <td class="function_name">
 <a class="link" href="GstTypeFindFactory.html#gst-type-find-factory-get-extensions" title="gst_type_find_factory_get_extensions ()">gst_type_find_factory_get_extensions</a> <span class="c_punctuation">()</span>
@@ -65,7 +65,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTypeFindFactory.html#gst-type-find-factory-has-function" title="gst_type_find_factory_has_function ()">gst_type_find_factory_has_function</a> <span class="c_punctuation">()</span>
@@ -97,8 +97,8 @@
 </div>
 <div class="refsect1">
 <a name="GstTypeFindFactory.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">╰──</span> <a class="link" href="GstPluginFeature.html" title="GstPluginFeature">GstPluginFeature</a>
                 <span class="lineart">╰──</span> GstTypeFindFactory
@@ -194,10 +194,10 @@
   walk <span class="gtkdoc opt">=</span> type_list <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstTypeFindFactory.html#gst-type-find-factory-get-list">gst_type_find_factory_get_list</a></span> <span class="gtkdoc opt">();</span>
   <span class="keyword">while</span> <span class="gtkdoc opt">(</span>walk<span class="gtkdoc opt">) {</span>
     GstTypeFindFactory <span class="gtkdoc opt">*</span>factory <span class="gtkdoc opt">=</span> <span class="function">GST_TYPE_FIND_FACTORY</span> <span class="gtkdoc opt">(</span>walk<span class="gtkdoc opt">-&gt;</span>data<span class="gtkdoc opt">);</span>
-    walk <span class="gtkdoc opt">=</span> <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#g-list-next">g_list_next</a></span> <span class="gtkdoc opt">(</span>walk<span class="gtkdoc opt">)</span>
+    walk <span class="gtkdoc opt">=</span> <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#g-list-next">g_list_next</a></span> <span class="gtkdoc opt">(</span>walk<span class="gtkdoc opt">)</span>
     <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstTypeFindFactory.html#gst-type-find-factory-call-function">gst_type_find_factory_call_function</a></span> <span class="gtkdoc opt">(</span>factory<span class="gtkdoc opt">, &amp;</span>gst_find<span class="gtkdoc opt">);</span>
   <span class="gtkdoc opt">}</span>
-  <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#g-list-free">g_list_free</a></span> <span class="gtkdoc opt">(</span>type_list<span class="gtkdoc opt">);</span>
+  <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#g-list-free">g_list_free</a></span> <span class="gtkdoc opt">(</span>type_list<span class="gtkdoc opt">);</span>
   <span class="keyword">return</span> find<span class="gtkdoc opt">.</span>caps<span class="gtkdoc opt">;</span>
 <span class="gtkdoc opt">};</span></pre></td>
       </tr>
@@ -211,7 +211,7 @@
 <a name="GstTypeFindFactory.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-type-find-factory-get-list"></a><h3>gst_type_find_factory_get_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_type_find_factory_get_list (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the list of all registered typefind factories. You must free the
 list using <a class="link" href="GstPluginFeature.html#gst-plugin-feature-list-free" title="gst_plugin_feature_list_free ()"><code class="function">gst_plugin_feature_list_free()</code></a>.</p>
@@ -228,11 +228,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-type-find-factory-get-extensions"></a><h3>gst_type_find_factory_get_extensions ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
 gst_type_find_factory_get_extensions (<em class="parameter"><code><a class="link" href="GstTypeFindFactory.html" title="GstTypeFindFactory"><span class="type">GstTypeFindFactory</span></a> *factory</code></em>);</pre>
 <p>Gets the extensions associated with a <a class="link" href="GstTypeFindFactory.html" title="GstTypeFindFactory"><span class="type">GstTypeFindFactory</span></a>. The returned
 array should not be changed. If you need to change stuff in it, you should
-copy it using <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strdupv"><code class="function">g_strdupv()</code></a>.  This function may return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to indicate
+copy it using <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strdupv"><code class="function">g_strdupv()</code></a>.  This function may return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to indicate
 a 0-length list.</p>
 <div class="refsect3">
 <a name="id-1.3.54.8.3.5"></a><h4>Parameters</h4>
@@ -251,9 +251,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.54.8.3.6"></a><h4>Returns</h4>
-<p> a
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of extensions associated with this factory. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8]</span></p>
+<p>    a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of extensions associated with this factory. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -286,7 +285,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-type-find-factory-has-function"></a><h3>gst_type_find_factory_has_function ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_type_find_factory_has_function (<em class="parameter"><code><a class="link" href="GstTypeFindFactory.html" title="GstTypeFindFactory"><span class="type">GstTypeFindFactory</span></a> *factory</code></em>);</pre>
 <p>Check whether the factory has a typefind function. Typefind factories
 without typefind functions are a last-effort fallback mechanism to
@@ -308,7 +307,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.54.8.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the factory has a typefind functions set, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the factory has a typefind functions set, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
 <p></p>
 </div>
 </div>
@@ -355,6 +354,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/annotation-glossary.html b/docs/gst/html/annotation-glossary.html
index 774b6ce..ced462a 100644
--- a/docs/gst/html/annotation-glossary.html
+++ b/docs/gst/html/annotation-glossary.html
@@ -7,11 +7,11 @@
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="api-index-deprecated.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"><span id="nav_glossary"><a class="shortcut" href="#glsA">A</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#glsC">C</a>
@@ -20,6 +20,8 @@
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#glsI">I</a>
                      <span class="dim">|</span> 
+                  <a class="shortcut" href="#glsN">N</a>
+                     <span class="dim">|</span> 
                   <a class="shortcut" href="#glsO">O</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#glsS">S</a>
@@ -35,7 +37,7 @@
 <a name="annotation-glossary"></a>Annotation Glossary</h1></div></div></div>
 <a name="glsA"></a><h3 class="title">A</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
-<dd class="glossdef"><p>NULL is ok, both for passing and for returning.</p></dd>
+<dd class="glossdef"><p>NULL is OK, both for passing and for returning.</p></dd>
 <dt><span class="glossterm"><a name="annotation-glossterm-array"></a>array</span></dt>
 <dd class="glossdef"><p>Parameter points to an array of items.</p></dd>
 <a name="glsC"></a><h3 class="title">C</h3>
@@ -49,6 +51,9 @@
 <dd class="glossdef"><p>Parameter for input. Default is <acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>.</p></dd>
 <dt><span class="glossterm"><a name="annotation-glossterm-inout"></a>inout</span></dt>
 <dd class="glossdef"><p>Parameter for input and for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
+<a name="glsN"></a><h3 class="title">N</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-nullable"></a>nullable</span></dt>
+<dd class="glossdef"><p>NULL may be passed as the value in, out, in-out; or as a return value.</p></dd>
 <a name="glsO"></a><h3 class="title">O</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-out"></a>out</span></dt>
 <dd class="glossdef"><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
@@ -77,6 +82,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/api-index-deprecated.html b/docs/gst/html/api-index-deprecated.html
index c1cb90e..e4a7c38 100644
--- a/docs/gst/html/api-index-deprecated.html
+++ b/docs/gst/html/api-index-deprecated.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="api-index-full.html" title="API Index">
 <link rel="next" href="annotation-glossary.html" title="Annotation Glossary">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxM">M</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#idxT">T</a></span></td>
@@ -37,6 +37,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/api-index-full.html b/docs/gst/html/api-index-full.html
index f7bb4a7..20fce26 100644
--- a/docs/gst/html/api-index-full.html
+++ b/docs/gst/html/api-index-full.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="gstreamer-hierarchy.html" title="Object Hierarchy">
 <link rel="next" href="api-index-deprecated.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxA">A</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#idxB">B</a>
@@ -259,6 +259,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstBin.html#gst-bin-sync-children-states" title="gst_bin_sync_children_states ()">gst_bin_sync_children_states</a>, function in <a class="link" href="GstBin.html" title="GstBin">GstBin</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstBuffer.html#GstBuffer-struct" title="struct GstBuffer">GstBuffer</a>, struct in <a class="link" href="GstBuffer.html" title="GstBuffer">GstBuffer</a>
 </dt>
 <dd></dd>
@@ -807,6 +811,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstBus.html#gst-bus-remove-watch" title="gst_bus_remove_watch ()">gst_bus_remove_watch</a>, function in <a class="link" href="GstBus.html" title="GstBus">GstBus</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstBus.html#gst-bus-set-flushing" title="gst_bus_set_flushing ()">gst_bus_set_flushing</a>, function in <a class="link" href="GstBus.html" title="GstBus">GstBus</a>
 </dt>
 <dd></dd>
@@ -844,14 +852,26 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstCaps.html#GstCapsFilterMapFunc" title="GstCapsFilterMapFunc ()">GstCapsFilterMapFunc</a>, user_function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstCaps.html#GstCapsFlags" title="enum GstCapsFlags">GstCapsFlags</a>, enum in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstCaps.html#GstCapsForeachFunc" title="GstCapsForeachFunc ()">GstCapsForeachFunc</a>, user_function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstCaps.html#GstCapsIntersectMode" title="enum GstCapsIntersectMode">GstCapsIntersectMode</a>, enum in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstCaps.html#GstCapsMapFunc" title="GstCapsMapFunc ()">GstCapsMapFunc</a>, user_function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstCaps.html#GST-CAPS-ANY:CAPS" title="GST_CAPS_ANY">GST_CAPS_ANY</a>, macro in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
 </dt>
 <dd></dd>
@@ -980,6 +1000,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstCaps.html#gst-caps-filter-and-map-in-place" title="gst_caps_filter_and_map_in_place ()">gst_caps_filter_and_map_in_place</a>, function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstCaps.html#gst-caps-fixate" title="gst_caps_fixate ()">gst_caps_fixate</a>, function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
 </dt>
 <dd></dd>
@@ -1000,6 +1024,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstCaps.html#gst-caps-foreach" title="gst_caps_foreach ()">gst_caps_foreach</a>, function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstCaps.html#gst-caps-from-string" title="gst_caps_from_string ()">gst_caps_from_string</a>, function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
 </dt>
 <dd></dd>
@@ -1076,6 +1104,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstCaps.html#gst-caps-map-in-place" title="gst_caps_map_in_place ()">gst_caps_map_in_place</a>, function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstCaps.html#gst-caps-merge" title="gst_caps_merge ()">gst_caps_merge</a>, function in <a class="link" href="GstCaps.html" title="GstCaps">GstCaps</a>
 </dt>
 <dd></dd>
@@ -1192,6 +1224,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstInfo.html#GST-CAT-DEFAULT:CAPS" title="GST_CAT_DEFAULT">GST_CAT_DEFAULT</a>, variable in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstInfo.html#GST-CAT-ERROR:CAPS" title="GST_CAT_ERROR()">GST_CAT_ERROR</a>, macro in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
 </dt>
 <dd></dd>
@@ -1781,11 +1817,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstInfo.html#gst-debug-bin-to-dot-file" title="gst_debug_bin_to_dot_file ()">gst_debug_bin_to_dot_file</a>, function in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
+<a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-BIN-TO-DOT-FILE:CAPS" title="GST_DEBUG_BIN_TO_DOT_FILE()">GST_DEBUG_BIN_TO_DOT_FILE</a>, macro in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-BIN-TO-DOT-FILE:CAPS" title="GST_DEBUG_BIN_TO_DOT_FILE()">GST_DEBUG_BIN_TO_DOT_FILE</a>, macro in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
+<a class="link" href="gstreamer-GstInfo.html#gst-debug-bin-to-dot-file" title="gst_debug_bin_to_dot_file ()">gst_debug_bin_to_dot_file</a>, function in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
 </dt>
 <dd></dd>
 <dt>
@@ -1981,11 +2017,19 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstDeviceMonitorFactory.html#GstDeviceMonitorFactory-struct" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>, struct in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider">GstDeviceProvider</a>, struct in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstDeviceMonitorFactory.html#GstDeviceMonitorFactoryClass" title="GstDeviceMonitorFactoryClass">GstDeviceMonitorFactoryClass</a>, struct in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass">GstDeviceProviderClass</a>, struct in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#GstDeviceProviderFactory-struct" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>, struct in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#GstDeviceProviderFactoryClass" title="GstDeviceProviderFactoryClass">GstDeviceProviderFactoryClass</a>, struct in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
 </dt>
 <dd></dd>
 <dt>
@@ -1997,6 +2041,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstDevice.html#gst-device-get-device-class" title="gst_device_get_device_class ()">gst_device_get_device_class</a>, function in <a class="link" href="gstreamer-GstDevice.html" title="GstDevice">GstDevice</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstDevice.html#gst-device-get-display-name" title="gst_device_get_display_name ()">gst_device_get_display_name</a>, function in <a class="link" href="gstreamer-GstDevice.html" title="GstDevice">GstDevice</a>
 </dt>
 <dd></dd>
@@ -2009,71 +2057,7 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-can-monitor" title="gst_device_monitor_can_monitor ()">gst_device_monitor_can_monitor</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-metadata" title="gst_device_monitor_class_add_metadata ()">gst_device_monitor_class_add_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-static-metadata" title="gst_device_monitor_class_add_static_metadata ()">gst_device_monitor_class_add_static_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-get-metadata" title="gst_device_monitor_class_get_metadata ()">gst_device_monitor_class_get_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-metadata" title="gst_device_monitor_class_set_metadata ()">gst_device_monitor_class_set_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-static-metadata" title="gst_device_monitor_class_set_static_metadata ()">gst_device_monitor_class_set_static_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-add" title="gst_device_monitor_device_add ()">gst_device_monitor_device_add</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-remove" title="gst_device_monitor_device_remove ()">gst_device_monitor_device_remove</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-find" title="gst_device_monitor_factory_find ()">gst_device_monitor_factory_find</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get" title="gst_device_monitor_factory_get ()">gst_device_monitor_factory_get</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-by-name" title="gst_device_monitor_factory_get_by_name ()">gst_device_monitor_factory_get_by_name</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-device-monitor-type" title="gst_device_monitor_factory_get_device_monitor_type ()">gst_device_monitor_factory_get_device_monitor_type</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata" title="gst_device_monitor_factory_get_metadata ()">gst_device_monitor_factory_get_metadata</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata-keys" title="gst_device_monitor_factory_get_metadata_keys ()">gst_device_monitor_factory_get_metadata_keys</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classes" title="gst_device_monitor_factory_has_classes ()">gst_device_monitor_factory_has_classes</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classesv" title="gst_device_monitor_factory_has_classesv ()">gst_device_monitor_factory_has_classesv</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstDeviceMonitorFactory.html#gst-device-monitor-factory-list-get-device-monitors" title="gst_device_monitor_factory_list_get_device_monitors ()">gst_device_monitor_factory_list_get_device_monitors</a>, function in <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter" title="gst_device_monitor_add_filter ()">gst_device_monitor_add_filter</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
 </dt>
 <dd></dd>
 <dt>
@@ -2085,11 +2069,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-factory" title="gst_device_monitor_get_factory ()">gst_device_monitor_get_factory</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-new" title="gst_device_monitor_new ()">gst_device_monitor_new</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-register" title="gst_device_monitor_register ()">gst_device_monitor_register</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-remove-filter" title="gst_device_monitor_remove_filter ()">gst_device_monitor_remove_filter</a>, function in <a class="link" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">GstDeviceMonitor</a>
 </dt>
 <dd></dd>
 <dt>
@@ -2101,6 +2085,98 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-can-monitor" title="gst_device_provider_can_monitor ()">gst_device_provider_can_monitor</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-metadata" title="gst_device_provider_class_add_metadata ()">gst_device_provider_class_add_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-static-metadata" title="gst_device_provider_class_add_static_metadata ()">gst_device_provider_class_add_static_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-get-metadata" title="gst_device_provider_class_get_metadata ()">gst_device_provider_class_get_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-metadata" title="gst_device_provider_class_set_metadata ()">gst_device_provider_class_set_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-static-metadata" title="gst_device_provider_class_set_static_metadata ()">gst_device_provider_class_set_static_metadata</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-device-add" title="gst_device_provider_device_add ()">gst_device_provider_device_add</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-device-remove" title="gst_device_provider_device_remove ()">gst_device_provider_device_remove</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-find" title="gst_device_provider_factory_find ()">gst_device_provider_factory_find</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get" title="gst_device_provider_factory_get ()">gst_device_provider_factory_get</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-by-name" title="gst_device_provider_factory_get_by_name ()">gst_device_provider_factory_get_by_name</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-device-provider-type" title="gst_device_provider_factory_get_device_provider_type ()">gst_device_provider_factory_get_device_provider_type</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata" title="gst_device_provider_factory_get_metadata ()">gst_device_provider_factory_get_metadata</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata-keys" title="gst_device_provider_factory_get_metadata_keys ()">gst_device_provider_factory_get_metadata_keys</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-has-classes" title="gst_device_provider_factory_has_classes ()">gst_device_provider_factory_has_classes</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-has-classesv" title="gst_device_provider_factory_has_classesv ()">gst_device_provider_factory_has_classesv</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstDeviceProviderFactory.html#gst-device-provider-factory-list-get-device-providers" title="gst_device_provider_factory_list_get_device_providers ()">gst_device_provider_factory_list_get_device_providers</a>, function in <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-get-bus" title="gst_device_provider_get_bus ()">gst_device_provider_get_bus</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-get-devices" title="gst_device_provider_get_devices ()">gst_device_provider_get_devices</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-get-factory" title="gst_device_provider_get_factory ()">gst_device_provider_get_factory</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-register" title="gst_device_provider_register ()">gst_device_provider_register</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-start" title="gst_device_provider_start ()">gst_device_provider_start</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-stop" title="gst_device_provider_stop ()">gst_device_provider_stop</a>, function in <a class="link" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">GstDeviceProvider</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstDevice.html#gst-device-reconfigure-element" title="gst_device_reconfigure_element ()">gst_device_reconfigure_element</a>, function in <a class="link" href="gstreamer-GstDevice.html" title="GstDevice">GstDevice</a>
 </dt>
 <dd></dd>
@@ -3120,50 +3196,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>, struct in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitorClass" title="struct GstGlobalDeviceMonitorClass">GstGlobalDeviceMonitorClass</a>, struct in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-bus" title="gst_global_device_monitor_get_bus ()">gst_global_device_monitor_get_bus</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-caps-filter" title="gst_global_device_monitor_get_caps_filter ()">gst_global_device_monitor_get_caps_filter</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-classes-filter" title="gst_global_device_monitor_get_classes_filter ()">gst_global_device_monitor_get_classes_filter</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-devices" title="gst_global_device_monitor_get_devices ()">gst_global_device_monitor_get_devices</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-new" title="gst_global_device_monitor_new ()">gst_global_device_monitor_new</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-caps-filter" title="gst_global_device_monitor_set_caps_filter ()">gst_global_device_monitor_set_caps_filter</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-classes-filter" title="gst_global_device_monitor_set_classes_filter ()">gst_global_device_monitor_set_classes_filter</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-start" title="gst_global_device_monitor_start ()">gst_global_device_monitor_start</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-stop" title="gst_global_device_monitor_stop ()">gst_global_device_monitor_stop</a>, function in <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gstreamer-GstUtils.html#gst-guint64-to-gdouble" title="gst_guint64_to_gdouble()">gst_guint64_to_gdouble</a>, macro in <a class="link" href="gstreamer-GstUtils.html" title="GstUtils">GstUtils</a>
 </dt>
 <dd></dd>
@@ -3302,6 +3334,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstInfo.html#GST-LEVEL-MAX:CAPS" title="GST_LEVEL_MAX">GST_LEVEL_MAX</a>, macro in <a class="link" href="gstreamer-GstInfo.html" title="GstInfo">GstInfo</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstGError.html#GstLibraryError" title="enum GstLibraryError">GstLibraryError</a>, enum in <a class="link" href="gstreamer-GstGError.html" title="GstGError">GstGError</a>
 </dt>
 <dd></dd>
@@ -3843,6 +3879,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstMessage.html#GST-MESSAGE-TYPE-IS-EXTENDED:CAPS" title="GST_MESSAGE_TYPE_IS_EXTENDED()">GST_MESSAGE_TYPE_IS_EXTENDED</a>, macro in <a class="link" href="GstMessage.html" title="GstMessage">GstMessage</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstMessage.html#GST-MESSAGE-TYPE-NAME:CAPS" title="GST_MESSAGE_TYPE_NAME()">GST_MESSAGE_TYPE_NAME</a>, macro in <a class="link" href="GstMessage.html" title="GstMessage">GstMessage</a>
 </dt>
 <dd></dd>
@@ -4161,6 +4201,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstObject.html#gst-object-has-parent" title="gst_object_has_parent ()">gst_object_has_parent</a>, function in <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstObject.html#GST-OBJECT-LOCK:CAPS" title="GST_OBJECT_LOCK()">GST_OBJECT_LOCK</a>, macro in <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
 </dt>
 <dd></dd>
@@ -4262,6 +4306,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstPad.html#GstPad--offset" title="The “offset” property">GstPad:offset</a>, object property in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstPad.html#GstPad--template" title="The “template” property">GstPad:template</a>, object property in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
@@ -4474,6 +4522,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstPad.html#gst-pad-get-last-flow-return" title="gst_pad_get_last_flow_return ()">gst_pad_get_last_flow_return</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstPad.html#gst-pad-get-name" title="gst_pad_get_name()">gst_pad_get_name</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
@@ -4538,15 +4590,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstPad.html#GST-PAD-IS-BLOCKED:CAPS" title="GST_PAD_IS_BLOCKED()">GST_PAD_IS_BLOCKED</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstPad.html#gst-pad-is-blocked" title="gst_pad_is_blocked ()">gst_pad_is_blocked</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstPad.html#GST-PAD-IS-BLOCKING:CAPS" title="GST_PAD_IS_BLOCKING()">GST_PAD_IS_BLOCKING</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+<a class="link" href="GstPad.html#GST-PAD-IS-BLOCKED:CAPS" title="GST_PAD_IS_BLOCKED()">GST_PAD_IS_BLOCKED</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
 <dt>
@@ -4554,6 +4602,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstPad.html#GST-PAD-IS-BLOCKING:CAPS" title="GST_PAD_IS_BLOCKING()">GST_PAD_IS_BLOCKING</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstPad.html#GST-PAD-IS-EOS:CAPS" title="GST_PAD_IS_EOS()">GST_PAD_IS_EOS</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
@@ -4606,6 +4658,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstPad.html#GST-PAD-LAST-FLOW-RETURN:CAPS" title="GST_PAD_LAST_FLOW_RETURN()">GST_PAD_LAST_FLOW_RETURN</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstPad.html#gst-pad-link" title="gst_pad_link ()">gst_pad_link</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
@@ -4650,11 +4706,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstPad.html#GST-PAD-NEEDS-RECONFIGURE:CAPS" title="GST_PAD_NEEDS_RECONFIGURE()">GST_PAD_NEEDS_RECONFIGURE</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+<a class="link" href="GstPad.html#gst-pad-needs-reconfigure" title="gst_pad_needs_reconfigure ()">gst_pad_needs_reconfigure</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstPad.html#gst-pad-needs-reconfigure" title="gst_pad_needs_reconfigure ()">gst_pad_needs_reconfigure</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+<a class="link" href="GstPad.html#GST-PAD-NEEDS-RECONFIGURE:CAPS" title="GST_PAD_NEEDS_RECONFIGURE()">GST_PAD_NEEDS_RECONFIGURE</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
 <dt>
@@ -5478,6 +5534,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstPreset.html#gst-preset-is-editable" title="gst_preset_is_editable ()">gst_preset_is_editable</a>, function in <a class="link" href="GstPreset.html" title="GstPreset">GstPreset</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstPreset.html#gst-preset-load-preset" title="gst_preset_load_preset ()">gst_preset_load_preset</a>, function in <a class="link" href="GstPreset.html" title="GstPreset">GstPreset</a>
 </dt>
 <dd></dd>
@@ -6277,11 +6337,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstElement.html#GST-STATE:CAPS" title="GST_STATE()">GST_STATE</a>, macro in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
+<a class="link" href="GstElement.html#GstState" title="enum GstState">GstState</a>, enum in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstElement.html#GstState" title="enum GstState">GstState</a>, enum in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
+<a class="link" href="GstElement.html#GST-STATE:CAPS" title="GST_STATE()">GST_STATE</a>, macro in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
 </dt>
 <dd></dd>
 <dt>
@@ -6397,6 +6457,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstStructure.html#GstStructureFilterMapFunc" title="GstStructureFilterMapFunc ()">GstStructureFilterMapFunc</a>, user_function in <a class="link" href="GstStructure.html" title="GstStructure">GstStructure</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstStructure.html#GstStructureForeachFunc" title="GstStructureForeachFunc ()">GstStructureForeachFunc</a>, user_function in <a class="link" href="GstStructure.html" title="GstStructure">GstStructure</a>
 </dt>
 <dd></dd>
@@ -6413,6 +6477,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstStructure.html#gst-structure-filter-and-map-in-place" title="gst_structure_filter_and_map_in_place ()">gst_structure_filter_and_map_in_place</a>, function in <a class="link" href="GstStructure.html" title="GstStructure">GstStructure</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstStructure.html#gst-structure-fixate" title="gst_structure_fixate ()">gst_structure_fixate</a>, function in <a class="link" href="GstStructure.html" title="GstStructure">GstStructure</a>
 </dt>
 <dd></dd>
@@ -7530,6 +7598,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstToc.html#GstTocLoopType" title="enum GstTocLoopType">GstTocLoopType</a>, enum in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstToc.html#GstTocScope" title="enum GstTocScope">GstTocScope</a>, enum in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
 </dt>
 <dd></dd>
@@ -7566,6 +7638,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstToc.html#gst-toc-entry-get-loop" title="gst_toc_entry_get_loop ()">gst_toc_entry_get_loop</a>, function in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstToc.html#gst-toc-entry-get-parent" title="gst_toc_entry_get_parent ()">gst_toc_entry_get_parent</a>, function in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
 </dt>
 <dd></dd>
@@ -7614,6 +7690,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstToc.html#gst-toc-entry-set-loop" title="gst_toc_entry_set_loop ()">gst_toc_entry_set_loop</a>, function in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstToc.html#gst-toc-entry-set-start-stop-times" title="gst_toc_entry_set_start_stop_times ()">gst_toc_entry_set_start_stop_times</a>, function in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
 </dt>
 <dd></dd>
@@ -7670,6 +7750,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstToc.html#GST-TOC-REPEAT-COUNT-INFINITE:CAPS" title="GST_TOC_REPEAT_COUNT_INFINITE">GST_TOC_REPEAT_COUNT_INFINITE</a>, macro in <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstTocSetter.html#gst-toc-setter-get-toc" title="gst_toc_setter_get_toc ()">gst_toc_setter_get_toc</a>, function in <a class="link" href="gstreamer-GstTocSetter.html" title="GstTocSetter">GstTocSetter</a>
 </dt>
 <dd></dd>
@@ -7795,6 +7879,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri">GstUri</a>, struct in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#GstURIError" title="enum GstURIError">GstURIError</a>, enum in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
@@ -7811,22 +7899,102 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-append-path" title="gst_uri_append_path ()">gst_uri_append_path</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-append-path-segment" title="gst_uri_append_path_segment ()">gst_uri_append_path_segment</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#GST-URI-CAST:CAPS" title="GST_URI_CAST()">GST_URI_CAST</a>, macro in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-construct" title="gst_uri_construct ()">gst_uri_construct</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#GST-URI-CONST-CAST:CAPS" title="GST_URI_CONST_CAST()">GST_URI_CONST_CAST</a>, macro in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-copy" title="gst_uri_copy ()">gst_uri_copy</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-equal" title="gst_uri_equal ()">gst_uri_equal</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-error-quark" title="gst_uri_error_quark ()">gst_uri_error_quark</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-from-string" title="gst_uri_from_string ()">gst_uri_from_string</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-from-string-with-base" title="gst_uri_from_string_with_base ()">gst_uri_from_string_with_base</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-fragment" title="gst_uri_get_fragment ()">gst_uri_get_fragment</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-host" title="gst_uri_get_host ()">gst_uri_get_host</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-get-location" title="gst_uri_get_location ()">gst_uri_get_location</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-path" title="gst_uri_get_path ()">gst_uri_get_path</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-path-segments" title="gst_uri_get_path_segments ()">gst_uri_get_path_segments</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-path-string" title="gst_uri_get_path_string ()">gst_uri_get_path_string</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-port" title="gst_uri_get_port ()">gst_uri_get_port</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-get-protocol" title="gst_uri_get_protocol ()">gst_uri_get_protocol</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-keys" title="gst_uri_get_query_keys ()">gst_uri_get_query_keys</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-string" title="gst_uri_get_query_string ()">gst_uri_get_query_string</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-table" title="gst_uri_get_query_table ()">gst_uri_get_query_table</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-value" title="gst_uri_get_query_value ()">gst_uri_get_query_value</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-scheme" title="gst_uri_get_scheme ()">gst_uri_get_scheme</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-userinfo" title="gst_uri_get_userinfo ()">gst_uri_get_userinfo</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-handler-get-protocols" title="gst_uri_handler_get_protocols ()">gst_uri_handler_get_protocols</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
@@ -7847,10 +8015,46 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-is-normalized" title="gst_uri_is_normalized ()">gst_uri_is_normalized</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-is-valid" title="gst_uri_is_valid ()">gst_uri_is_valid</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-is-writable" title="gst_uri_is_writable ()">gst_uri_is_writable</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-join" title="gst_uri_join ()">gst_uri_join</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-join-strings" title="gst_uri_join_strings ()">gst_uri_join_strings</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-make-writable" title="gst_uri_make_writable ()">gst_uri_make_writable</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-new" title="gst_uri_new ()">gst_uri_new</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-new-with-base" title="gst_uri_new_with_base ()">gst_uri_new_with_base</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-normalize" title="gst_uri_normalize ()">gst_uri_normalize</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT">GST_URI_NO_PORT</a>, macro in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-protocol-is-supported" title="gst_uri_protocol_is_supported ()">gst_uri_protocol_is_supported</a>, function in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
@@ -7859,10 +8063,74 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-query-has-key" title="gst_uri_query_has_key ()">gst_uri_query_has_key</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-ref" title="gst_uri_ref ()">gst_uri_ref</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-remove-query-key" title="gst_uri_remove_query_key ()">gst_uri_remove_query_key</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-fragment" title="gst_uri_set_fragment ()">gst_uri_set_fragment</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-host" title="gst_uri_set_host ()">gst_uri_set_host</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-path" title="gst_uri_set_path ()">gst_uri_set_path</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-path-segments" title="gst_uri_set_path_segments ()">gst_uri_set_path_segments</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-path-string" title="gst_uri_set_path_string ()">gst_uri_set_path_string</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-port" title="gst_uri_set_port ()">gst_uri_set_port</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-query-string" title="gst_uri_set_query_string ()">gst_uri_set_query_string</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-query-table" title="gst_uri_set_query_table ()">gst_uri_set_query_table</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-query-value" title="gst_uri_set_query_value ()">gst_uri_set_query_value</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-scheme" title="gst_uri_set_scheme ()">gst_uri_set_scheme</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-userinfo" title="gst_uri_set_userinfo ()">gst_uri_set_userinfo</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-to-string" title="gst_uri_to_string ()">gst_uri_to_string</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-TYPE-IS-VALID:CAPS" title="GST_URI_TYPE_IS_VALID()">GST_URI_TYPE_IS_VALID</a>, macro in <a class="link" href="gstreamer-GstUriHandler.html" title="GstUriHandler">GstUriHandler</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-GstUri.html#gst-uri-unref" title="gst_uri_unref ()">gst_uri_unref</a>, function in <a class="link" href="gstreamer-GstUri.html" title="GstUri">GstUri</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstClock.html#GST-USECOND:CAPS" title="GST_USECOND">GST_USECOND</a>, macro in <a class="link" href="GstClock.html" title="GstClock">GstClock</a>
 </dt>
 <dd></dd>
@@ -8383,6 +8651,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gst-building.html b/docs/gst/html/gst-building.html
index 4e3b0aa..5615141 100644
--- a/docs/gst/html/gst-building.html
+++ b/docs/gst/html/gst-building.html
@@ -8,11 +8,11 @@
 <link rel="up" href="gstreamer.html" title="GStreamer Overview">
 <link rel="prev" href="gstreamer.html" title="GStreamer Overview">
 <link rel="next" href="gst-running.html" title="Running GStreamer Applications">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -104,6 +104,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gst-running.html b/docs/gst/html/gst-running.html
index 3b515ad..41382df 100644
--- a/docs/gst/html/gst-running.html
+++ b/docs/gst/html/gst-running.html
@@ -8,11 +8,11 @@
 <link rel="up" href="gstreamer.html" title="GStreamer Overview">
 <link rel="prev" href="gst-building.html" title="Building GStreamer and GStreamer Applications">
 <link rel="next" href="libgstreamer.html" title="GStreamer Core Library">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -383,11 +383,23 @@
 Try this character encoding first for ID3v1 tag-related strings where the
 encoding does not look like UTF-8.
   </p>
+<p><a name="GST_GL_WINDOW"></a><b><code class="envar">GST_GL_WINDOW</code>. </b>
+Influences the window system to use by the GStreamer OpenGL library.
+Common values are 'x11', 'wayland', 'win32' or 'cocoa'.
+  </p>
+<p><a name="GST_GL_PLATFORM"></a><b><code class="envar">GST_GL_PLATFORM</code>. </b>
+Influences the OpenGL platform to use by the GStreamer OpenGL library.
+Common values are 'egl', 'glx', 'wgl' or 'cgl'.
+  </p>
+<p><a name="GST_GL_API"></a><b><code class="envar">GST_GL_API</code>. </b>
+Influences the OpenGL API requested by the OpenGL platform.
+Common values are 'opengl' or 'gles2'.
+  </p>
 </div>
 </div>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-1.0.devhelp2 b/docs/gst/html/gstreamer-1.0.devhelp2
index 04523e3..3b8534c 100644
--- a/docs/gst/html/gstreamer-1.0.devhelp2
+++ b/docs/gst/html/gstreamer-1.0.devhelp2
@@ -59,16 +59,17 @@
       <sub name="GstTocSetter" link="gstreamer-GstTocSetter.html"/>
       <sub name="GstTypeFind" link="gstreamer-GstTypeFind.html"/>
       <sub name="GstTypeFindFactory" link="GstTypeFindFactory.html"/>
+      <sub name="GstUri" link="gstreamer-GstUri.html"/>
       <sub name="GstUriHandler" link="gstreamer-GstUriHandler.html"/>
       <sub name="GstUtils" link="gstreamer-GstUtils.html"/>
       <sub name="GstValue" link="gstreamer-GstValue.html"/>
       <sub name="GstVersion" link="gstreamer-GstVersion.html"/>
     </sub>
     <sub name="GStreamer Device Discovery and Device Probing" link="gstreamer-device-probing.html">
-      <sub name="GstDevice" link="gstreamer-GstDevice.html"/>
       <sub name="GstDeviceMonitor" link="gstreamer-GstDeviceMonitor.html"/>
-      <sub name="GstDeviceMonitorFactory" link="GstDeviceMonitorFactory.html"/>
-      <sub name="GstGlobalDeviceMonitor" link="gstreamer-GstGlobalDeviceMonitor.html"/>
+      <sub name="GstDevice" link="gstreamer-GstDevice.html"/>
+      <sub name="GstDeviceProvider" link="gstreamer-GstDeviceProvider.html"/>
+      <sub name="GstDeviceProviderFactory" link="GstDeviceProviderFactory.html"/>
     </sub>
     <sub name="GStreamer Core Support" link="gstreamer-support.html">
       <sub name="GstInfo" link="gstreamer-GstInfo.html"/>
@@ -132,6 +133,7 @@
     <keyword type="function" name="gst_bin_add_many ()" link="GstBin.html#gst-bin-add-many"/>
     <keyword type="function" name="gst_bin_remove_many ()" link="GstBin.html#gst-bin-remove-many"/>
     <keyword type="function" name="gst_bin_find_unlinked_pad ()" link="GstBin.html#gst-bin-find-unlinked-pad"/>
+    <keyword type="function" name="gst_bin_sync_children_states ()" link="GstBin.html#gst-bin-sync-children-states" since="1.6"/>
     <keyword type="macro" name="GST_BIN_IS_NO_RESYNC()" link="GstBin.html#GST-BIN-IS-NO-RESYNC:CAPS" since="1.0.5"/>
     <keyword type="macro" name="GST_BIN_CHILDREN()" link="GstBin.html#GST-BIN-CHILDREN:CAPS"/>
     <keyword type="macro" name="GST_BIN_CHILDREN_COOKIE()" link="GstBin.html#GST-BIN-CHILDREN-COOKIE:CAPS"/>
@@ -272,6 +274,7 @@
     <keyword type="function" name="gst_bus_create_watch ()" link="GstBus.html#gst-bus-create-watch"/>
     <keyword type="function" name="gst_bus_add_watch_full ()" link="GstBus.html#gst-bus-add-watch-full"/>
     <keyword type="function" name="gst_bus_add_watch ()" link="GstBus.html#gst-bus-add-watch"/>
+    <keyword type="function" name="gst_bus_remove_watch ()" link="GstBus.html#gst-bus-remove-watch" since="1.6"/>
     <keyword type="function" name="gst_bus_disable_sync_message_emission ()" link="GstBus.html#gst-bus-disable-sync-message-emission"/>
     <keyword type="function" name="gst_bus_enable_sync_message_emission ()" link="GstBus.html#gst-bus-enable-sync-message-emission"/>
     <keyword type="function" name="gst_bus_async_signal_func ()" link="GstBus.html#gst-bus-async-signal-func"/>
@@ -293,6 +296,9 @@
     <keyword type="macro" name="GST_CAPS_FLAG_IS_SET()" link="GstCaps.html#GST-CAPS-FLAG-IS-SET:CAPS"/>
     <keyword type="macro" name="GST_CAPS_FLAG_SET()" link="GstCaps.html#GST-CAPS-FLAG-SET:CAPS"/>
     <keyword type="macro" name="GST_CAPS_FLAG_UNSET()" link="GstCaps.html#GST-CAPS-FLAG-UNSET:CAPS"/>
+    <keyword type="function" name="GstCapsForeachFunc ()" link="GstCaps.html#GstCapsForeachFunc" since="1.6"/>
+    <keyword type="function" name="GstCapsMapFunc ()" link="GstCaps.html#GstCapsMapFunc"/>
+    <keyword type="function" name="GstCapsFilterMapFunc ()" link="GstCaps.html#GstCapsFilterMapFunc"/>
     <keyword type="function" name="gst_caps_new_empty ()" link="GstCaps.html#gst-caps-new-empty"/>
     <keyword type="function" name="gst_caps_new_empty_simple ()" link="GstCaps.html#gst-caps-new-empty-simple"/>
     <keyword type="function" name="gst_caps_new_any ()" link="GstCaps.html#gst-caps-new-any"/>
@@ -319,6 +325,9 @@
     <keyword type="function" name="gst_caps_set_value ()" link="GstCaps.html#gst-caps-set-value"/>
     <keyword type="function" name="gst_caps_set_simple ()" link="GstCaps.html#gst-caps-set-simple"/>
     <keyword type="function" name="gst_caps_set_simple_valist ()" link="GstCaps.html#gst-caps-set-simple-valist"/>
+    <keyword type="function" name="gst_caps_foreach ()" link="GstCaps.html#gst-caps-foreach" since="1.6"/>
+    <keyword type="function" name="gst_caps_map_in_place ()" link="GstCaps.html#gst-caps-map-in-place" since="1.6"/>
+    <keyword type="function" name="gst_caps_filter_and_map_in_place ()" link="GstCaps.html#gst-caps-filter-and-map-in-place" since="1.6"/>
     <keyword type="function" name="gst_caps_is_any ()" link="GstCaps.html#gst-caps-is-any"/>
     <keyword type="function" name="gst_caps_is_empty ()" link="GstCaps.html#gst-caps-is-empty"/>
     <keyword type="function" name="gst_caps_is_fixed ()" link="GstCaps.html#gst-caps-is-fixed"/>
@@ -852,6 +861,7 @@
     <keyword type="macro" name="GST_MESSAGE_TIMESTAMP()" link="GstMessage.html#GST-MESSAGE-TIMESTAMP:CAPS"/>
     <keyword type="macro" name="GST_MESSAGE_SEQNUM()" link="GstMessage.html#GST-MESSAGE-SEQNUM:CAPS"/>
     <keyword type="macro" name="GST_MESSAGE_TYPE()" link="GstMessage.html#GST-MESSAGE-TYPE:CAPS"/>
+    <keyword type="macro" name="GST_MESSAGE_TYPE_IS_EXTENDED()" link="GstMessage.html#GST-MESSAGE-TYPE-IS-EXTENDED:CAPS"/>
     <keyword type="macro" name="GST_MESSAGE_TYPE_NAME()" link="GstMessage.html#GST-MESSAGE-TYPE-NAME:CAPS"/>
     <keyword type="function" name="gst_message_type_to_quark ()" link="GstMessage.html#gst-message-type-to-quark"/>
     <keyword type="function" name="gst_message_type_get_name ()" link="GstMessage.html#gst-message-type-get-name"/>
@@ -1008,6 +1018,7 @@
     <keyword type="function" name="gst_object_get_name ()" link="GstObject.html#gst-object-get-name"/>
     <keyword type="function" name="gst_object_set_parent ()" link="GstObject.html#gst-object-set-parent"/>
     <keyword type="function" name="gst_object_get_parent ()" link="GstObject.html#gst-object-get-parent"/>
+    <keyword type="function" name="gst_object_has_parent ()" link="GstObject.html#gst-object-has-parent" since="1.6"/>
     <keyword type="function" name="gst_object_unparent ()" link="GstObject.html#gst-object-unparent"/>
     <keyword type="function" name="gst_object_default_deep_notify ()" link="GstObject.html#gst-object-default-deep-notify"/>
     <keyword type="function" name="gst_object_default_error ()" link="GstObject.html#gst-object-default-error"/>
@@ -1064,6 +1075,7 @@
     <keyword type="function" name="GstPadStickyEventsForeachFunction ()" link="GstPad.html#GstPadStickyEventsForeachFunction"/>
     <keyword type="function" name="gst_pad_sticky_events_foreach ()" link="GstPad.html#gst-pad-sticky-events-foreach"/>
     <keyword type="function" name="gst_pad_is_active ()" link="GstPad.html#gst-pad-is-active"/>
+    <keyword type="function" name="gst_pad_get_last_flow_return ()" link="GstPad.html#gst-pad-get-last-flow-return" since="1.4"/>
     <keyword type="macro" name="GST_PAD_PROBE_INFO_TYPE()" link="GstPad.html#GST-PAD-PROBE-INFO-TYPE:CAPS"/>
     <keyword type="macro" name="GST_PAD_PROBE_INFO_ID()" link="GstPad.html#GST-PAD-PROBE-INFO-ID:CAPS"/>
     <keyword type="macro" name="GST_PAD_PROBE_INFO_DATA()" link="GstPad.html#GST-PAD-PROBE-INFO-DATA:CAPS"/>
@@ -1168,6 +1180,7 @@
     <keyword type="macro" name="GST_PAD_ELEMENT_PRIVATE()" link="GstPad.html#GST-PAD-ELEMENT-PRIVATE:CAPS"/>
     <keyword type="macro" name="GST_PAD_PAD_TEMPLATE()" link="GstPad.html#GST-PAD-PAD-TEMPLATE:CAPS"/>
     <keyword type="macro" name="GST_PAD_DIRECTION()" link="GstPad.html#GST-PAD-DIRECTION:CAPS"/>
+    <keyword type="macro" name="GST_PAD_LAST_FLOW_RETURN()" link="GstPad.html#GST-PAD-LAST-FLOW-RETURN:CAPS" since="1.4"/>
     <keyword type="macro" name="GST_PAD_TASK()" link="GstPad.html#GST-PAD-TASK:CAPS"/>
     <keyword type="macro" name="GST_PAD_MODE()" link="GstPad.html#GST-PAD-MODE:CAPS"/>
     <keyword type="macro" name="GST_PAD_ACTIVATEFUNC()" link="GstPad.html#GST-PAD-ACTIVATEFUNC:CAPS"/>
@@ -1219,6 +1232,7 @@
     <keyword type="struct" name="struct GstPadProbeInfo" link="GstPad.html#GstPadProbeInfo"/>
     <keyword type="property" name="The “caps” property" link="GstPad.html#GstPad--caps"/>
     <keyword type="property" name="The “direction” property" link="GstPad.html#GstPad--direction"/>
+    <keyword type="property" name="The “offset” property" link="GstPad.html#GstPad--offset"/>
     <keyword type="property" name="The “template” property" link="GstPad.html#GstPad--template"/>
     <keyword type="signal" name="The “linked” signal" link="GstPad.html#GstPad-linked"/>
     <keyword type="signal" name="The “unlinked” signal" link="GstPad.html#GstPad-unlinked"/>
@@ -1358,6 +1372,7 @@
     <keyword type="function" name="gst_preset_get_meta ()" link="GstPreset.html#gst-preset-get-meta"/>
     <keyword type="function" name="gst_preset_set_app_dir ()" link="GstPreset.html#gst-preset-set-app-dir"/>
     <keyword type="function" name="gst_preset_get_app_dir ()" link="GstPreset.html#gst-preset-get-app-dir"/>
+    <keyword type="function" name="gst_preset_is_editable ()" link="GstPreset.html#gst-preset-is-editable" since="1.6"/>
     <keyword type="struct" name="GstPreset" link="GstPreset.html#GstPreset-struct"/>
     <keyword type="struct" name="struct GstPresetInterface" link="GstPreset.html#GstPresetInterface"/>
     <keyword type="macro" name="GST_QUERY_MAKE_TYPE()" link="GstQuery.html#GST-QUERY-MAKE-TYPE:CAPS"/>
@@ -1500,6 +1515,7 @@
     <keyword type="enum" name="enum GstSegmentFlags" link="GstSegment.html#GstSegmentFlags"/>
     <keyword type="function" name="GstStructureForeachFunc ()" link="GstStructure.html#GstStructureForeachFunc"/>
     <keyword type="function" name="GstStructureMapFunc ()" link="GstStructure.html#GstStructureMapFunc"/>
+    <keyword type="function" name="GstStructureFilterMapFunc ()" link="GstStructure.html#GstStructureFilterMapFunc"/>
     <keyword type="function" name="gst_structure_new_empty ()" link="GstStructure.html#gst-structure-new-empty"/>
     <keyword type="function" name="gst_structure_new_id_empty ()" link="GstStructure.html#gst-structure-new-id-empty"/>
     <keyword type="function" name="gst_structure_new ()" link="GstStructure.html#gst-structure-new"/>
@@ -1531,7 +1547,6 @@
     <keyword type="function" name="gst_structure_remove_fields_valist ()" link="GstStructure.html#gst-structure-remove-fields-valist"/>
     <keyword type="function" name="gst_structure_remove_all_fields ()" link="GstStructure.html#gst-structure-remove-all-fields"/>
     <keyword type="function" name="gst_structure_get_field_type ()" link="GstStructure.html#gst-structure-get-field-type"/>
-    <keyword type="function" name="gst_structure_foreach ()" link="GstStructure.html#gst-structure-foreach"/>
     <keyword type="function" name="gst_structure_n_fields ()" link="GstStructure.html#gst-structure-n-fields"/>
     <keyword type="function" name="gst_structure_has_field ()" link="GstStructure.html#gst-structure-has-field"/>
     <keyword type="function" name="gst_structure_has_field_typed ()" link="GstStructure.html#gst-structure-has-field-typed"/>
@@ -1553,7 +1568,9 @@
     <keyword type="function" name="gst_structure_get_clock_time ()" link="GstStructure.html#gst-structure-get-clock-time"/>
     <keyword type="function" name="gst_structure_get_enum ()" link="GstStructure.html#gst-structure-get-enum"/>
     <keyword type="function" name="gst_structure_get_fraction ()" link="GstStructure.html#gst-structure-get-fraction"/>
+    <keyword type="function" name="gst_structure_foreach ()" link="GstStructure.html#gst-structure-foreach"/>
     <keyword type="function" name="gst_structure_map_in_place ()" link="GstStructure.html#gst-structure-map-in-place"/>
+    <keyword type="function" name="gst_structure_filter_and_map_in_place ()" link="GstStructure.html#gst-structure-filter-and-map-in-place" since="1.6"/>
     <keyword type="function" name="gst_structure_nth_field_name ()" link="GstStructure.html#gst-structure-nth-field-name"/>
     <keyword type="function" name="gst_structure_set_parent_refcount ()" link="GstStructure.html#gst-structure-set-parent-refcount"/>
     <keyword type="function" name="gst_structure_to_string ()" link="GstStructure.html#gst-structure-to-string"/>
@@ -1790,6 +1807,8 @@
     <keyword type="function" name="gst_toc_entry_get_parent ()" link="GstToc.html#gst-toc-entry-get-parent"/>
     <keyword type="function" name="gst_toc_entry_get_sub_entries ()" link="GstToc.html#gst-toc-entry-get-sub-entries"/>
     <keyword type="function" name="gst_toc_entry_append_sub_entry ()" link="GstToc.html#gst-toc-entry-append-sub-entry"/>
+    <keyword type="function" name="gst_toc_entry_get_loop ()" link="GstToc.html#gst-toc-entry-get-loop" since="1.4"/>
+    <keyword type="function" name="gst_toc_entry_set_loop ()" link="GstToc.html#gst-toc-entry-set-loop" since="1.4"/>
     <keyword type="function" name="gst_toc_entry_get_start_stop_times ()" link="GstToc.html#gst-toc-entry-get-start-stop-times"/>
     <keyword type="function" name="gst_toc_entry_set_start_stop_times ()" link="GstToc.html#gst-toc-entry-set-start-stop-times"/>
     <keyword type="function" name="gst_toc_entry_get_tags ()" link="GstToc.html#gst-toc-entry-get-tags"/>
@@ -1801,10 +1820,12 @@
     <keyword type="function" name="gst_toc_entry_is_sequence ()" link="GstToc.html#gst-toc-entry-is-sequence"/>
     <keyword type="macro" name="GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE()" link="GstToc.html#GST-TOC-ENTRY-TYPE-IS-ALTERNATIVE:CAPS"/>
     <keyword type="macro" name="GST_TOC_ENTRY_TYPE_IS_SEQUENCE()" link="GstToc.html#GST-TOC-ENTRY-TYPE-IS-SEQUENCE:CAPS"/>
+    <keyword type="macro" name="GST_TOC_REPEAT_COUNT_INFINITE" link="GstToc.html#GST-TOC-REPEAT-COUNT-INFINITE:CAPS" since="1.4"/>
     <keyword type="struct" name="GstToc" link="GstToc.html#GstToc-struct"/>
     <keyword type="enum" name="enum GstTocScope" link="GstToc.html#GstTocScope"/>
     <keyword type="struct" name="GstTocEntry" link="GstToc.html#GstTocEntry-struct"/>
     <keyword type="enum" name="enum GstTocEntryType" link="GstToc.html#GstTocEntryType"/>
+    <keyword type="enum" name="enum GstTocLoopType" link="GstToc.html#GstTocLoopType" since="1.4"/>
     <keyword type="function" name="gst_toc_setter_set_toc ()" link="gstreamer-GstTocSetter.html#gst-toc-setter-set-toc"/>
     <keyword type="function" name="gst_toc_setter_get_toc ()" link="gstreamer-GstTocSetter.html#gst-toc-setter-get-toc"/>
     <keyword type="function" name="gst_toc_setter_reset ()" link="gstreamer-GstTocSetter.html#gst-toc-setter-reset"/>
@@ -1824,6 +1845,51 @@
     <keyword type="function" name="gst_type_find_factory_has_function ()" link="GstTypeFindFactory.html#gst-type-find-factory-has-function"/>
     <keyword type="function" name="gst_type_find_factory_call_function ()" link="GstTypeFindFactory.html#gst-type-find-factory-call-function"/>
     <keyword type="struct" name="GstTypeFindFactory" link="GstTypeFindFactory.html#GstTypeFindFactory-struct"/>
+    <keyword type="macro" name="GST_URI_CAST()" link="gstreamer-GstUri.html#GST-URI-CAST:CAPS"/>
+    <keyword type="macro" name="GST_URI_CONST_CAST()" link="gstreamer-GstUri.html#GST-URI-CONST-CAST:CAPS"/>
+    <keyword type="function" name="gst_uri_new ()" link="gstreamer-GstUri.html#gst-uri-new" since="1.6"/>
+    <keyword type="function" name="gst_uri_new_with_base ()" link="gstreamer-GstUri.html#gst-uri-new-with-base" since="1.6"/>
+    <keyword type="function" name="gst_uri_from_string ()" link="gstreamer-GstUri.html#gst-uri-from-string" since="1.6"/>
+    <keyword type="function" name="gst_uri_from_string_with_base ()" link="gstreamer-GstUri.html#gst-uri-from-string-with-base" since="1.6"/>
+    <keyword type="function" name="gst_uri_copy ()" link="gstreamer-GstUri.html#gst-uri-copy"/>
+    <keyword type="function" name="gst_uri_equal ()" link="gstreamer-GstUri.html#gst-uri-equal" since="1.6"/>
+    <keyword type="function" name="gst_uri_join ()" link="gstreamer-GstUri.html#gst-uri-join" since="1.6"/>
+    <keyword type="function" name="gst_uri_join_strings ()" link="gstreamer-GstUri.html#gst-uri-join-strings" since="1.6"/>
+    <keyword type="function" name="gst_uri_is_writable ()" link="gstreamer-GstUri.html#gst-uri-is-writable" since="1.6"/>
+    <keyword type="function" name="gst_uri_make_writable ()" link="gstreamer-GstUri.html#gst-uri-make-writable" since="1.6"/>
+    <keyword type="function" name="gst_uri_to_string ()" link="gstreamer-GstUri.html#gst-uri-to-string" since="1.6"/>
+    <keyword type="function" name="gst_uri_ref ()" link="gstreamer-GstUri.html#gst-uri-ref"/>
+    <keyword type="function" name="gst_uri_unref ()" link="gstreamer-GstUri.html#gst-uri-unref"/>
+    <keyword type="function" name="gst_uri_is_normalized ()" link="gstreamer-GstUri.html#gst-uri-is-normalized" since="1.6"/>
+    <keyword type="function" name="gst_uri_normalize ()" link="gstreamer-GstUri.html#gst-uri-normalize" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_scheme ()" link="gstreamer-GstUri.html#gst-uri-get-scheme"/>
+    <keyword type="function" name="gst_uri_set_scheme ()" link="gstreamer-GstUri.html#gst-uri-set-scheme" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_userinfo ()" link="gstreamer-GstUri.html#gst-uri-get-userinfo" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_userinfo ()" link="gstreamer-GstUri.html#gst-uri-set-userinfo" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_host ()" link="gstreamer-GstUri.html#gst-uri-get-host" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_host ()" link="gstreamer-GstUri.html#gst-uri-set-host" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_port ()" link="gstreamer-GstUri.html#gst-uri-get-port" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_port ()" link="gstreamer-GstUri.html#gst-uri-set-port" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_path ()" link="gstreamer-GstUri.html#gst-uri-get-path" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_path ()" link="gstreamer-GstUri.html#gst-uri-set-path" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_path_string ()" link="gstreamer-GstUri.html#gst-uri-get-path-string" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_path_string ()" link="gstreamer-GstUri.html#gst-uri-set-path-string" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_path_segments ()" link="gstreamer-GstUri.html#gst-uri-get-path-segments" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_path_segments ()" link="gstreamer-GstUri.html#gst-uri-set-path-segments" since="1.6"/>
+    <keyword type="function" name="gst_uri_append_path ()" link="gstreamer-GstUri.html#gst-uri-append-path" since="1.6"/>
+    <keyword type="function" name="gst_uri_append_path_segment ()" link="gstreamer-GstUri.html#gst-uri-append-path-segment" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_query_string ()" link="gstreamer-GstUri.html#gst-uri-get-query-string" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_query_string ()" link="gstreamer-GstUri.html#gst-uri-set-query-string" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_query_table ()" link="gstreamer-GstUri.html#gst-uri-get-query-table" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_query_table ()" link="gstreamer-GstUri.html#gst-uri-set-query-table" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_query_value ()" link="gstreamer-GstUri.html#gst-uri-get-query-value" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_query_value ()" link="gstreamer-GstUri.html#gst-uri-set-query-value" since="1.6"/>
+    <keyword type="function" name="gst_uri_remove_query_key ()" link="gstreamer-GstUri.html#gst-uri-remove-query-key" since="1.6"/>
+    <keyword type="function" name="gst_uri_query_has_key ()" link="gstreamer-GstUri.html#gst-uri-query-has-key" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_query_keys ()" link="gstreamer-GstUri.html#gst-uri-get-query-keys" since="1.6"/>
+    <keyword type="function" name="gst_uri_get_fragment ()" link="gstreamer-GstUri.html#gst-uri-get-fragment" since="1.6"/>
+    <keyword type="function" name="gst_uri_set_fragment ()" link="gstreamer-GstUri.html#gst-uri-set-fragment" since="1.6"/>
+    <keyword type="struct" name="GstUri" link="gstreamer-GstUri.html#GstUri"/>
     <keyword type="function" name="gst_uri_error_quark ()" link="gstreamer-GstUriHandler.html#gst-uri-error-quark"/>
     <keyword type="macro" name="GST_URI_TYPE_IS_VALID()" link="gstreamer-GstUriHandler.html#GST-URI-TYPE-IS-VALID:CAPS"/>
     <keyword type="function" name="gst_uri_protocol_is_valid ()" link="gstreamer-GstUriHandler.html#gst-uri-protocol-is-valid"/>
@@ -1843,6 +1909,7 @@
     <keyword type="struct" name="struct GstURIHandlerInterface" link="gstreamer-GstUriHandler.html#GstURIHandlerInterface"/>
     <keyword type="enum" name="enum GstURIType" link="gstreamer-GstUriHandler.html#GstURIType"/>
     <keyword type="enum" name="enum GstURIError" link="gstreamer-GstUriHandler.html#GstURIError"/>
+    <keyword type="macro" name="GST_URI_NO_PORT" link="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS"/>
     <keyword type="macro" name="GST_CALL_PARENT()" link="gstreamer-GstUtils.html#GST-CALL-PARENT:CAPS"/>
     <keyword type="macro" name="GST_CALL_PARENT_WITH_DEFAULT()" link="gstreamer-GstUtils.html#GST-CALL-PARENT-WITH-DEFAULT:CAPS"/>
     <keyword type="macro" name="GST_READ_UINT8()" link="gstreamer-GstUtils.html#GST-READ-UINT8:CAPS"/>
@@ -2023,52 +2090,51 @@
     <keyword type="macro" name="GST_VERSION_MICRO" link="gstreamer-GstVersion.html#GST-VERSION-MICRO:CAPS"/>
     <keyword type="macro" name="GST_VERSION_NANO" link="gstreamer-GstVersion.html#GST-VERSION-NANO:CAPS"/>
     <keyword type="macro" name="GST_CHECK_VERSION()" link="gstreamer-GstVersion.html#GST-CHECK-VERSION:CAPS"/>
+    <keyword type="function" name="gst_device_monitor_new ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-new" since="1.4"/>
+    <keyword type="function" name="gst_device_monitor_get_bus ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-bus" since="1.4"/>
+    <keyword type="function" name="gst_device_monitor_add_filter ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter" since="1.4"/>
+    <keyword type="function" name="gst_device_monitor_remove_filter ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-remove-filter" since="1.4"/>
+    <keyword type="function" name="gst_device_monitor_start ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-start" since="1.4"/>
+    <keyword type="function" name="gst_device_monitor_stop ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-stop" since="1.4"/>
+    <keyword type="function" name="gst_device_monitor_get_devices ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-devices" since="1.4"/>
+    <keyword type="struct" name="struct GstDeviceMonitor" link="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" since="1.4"/>
+    <keyword type="struct" name="struct GstDeviceMonitorClass" link="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" since="1.4"/>
     <keyword type="function" name="gst_device_create_element ()" link="gstreamer-GstDevice.html#gst-device-create-element" since="1.4"/>
     <keyword type="function" name="gst_device_get_caps ()" link="gstreamer-GstDevice.html#gst-device-get-caps" since="1.4"/>
+    <keyword type="function" name="gst_device_get_device_class ()" link="gstreamer-GstDevice.html#gst-device-get-device-class" since="1.4"/>
     <keyword type="function" name="gst_device_get_display_name ()" link="gstreamer-GstDevice.html#gst-device-get-display-name" since="1.4"/>
     <keyword type="function" name="gst_device_has_classes ()" link="gstreamer-GstDevice.html#gst-device-has-classes" since="1.4"/>
     <keyword type="function" name="gst_device_has_classesv ()" link="gstreamer-GstDevice.html#gst-device-has-classesv" since="1.4"/>
     <keyword type="function" name="gst_device_reconfigure_element ()" link="gstreamer-GstDevice.html#gst-device-reconfigure-element" since="1.4"/>
     <keyword type="struct" name="struct GstDevice" link="gstreamer-GstDevice.html#GstDevice" since="1.4"/>
     <keyword type="struct" name="struct GstDeviceClass" link="gstreamer-GstDevice.html#GstDeviceClass" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_can_monitor ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-can-monitor"/>
-    <keyword type="function" name="gst_device_monitor_class_add_metadata ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-metadata"/>
-    <keyword type="function" name="gst_device_monitor_class_add_static_metadata ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-static-metadata" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_class_get_metadata ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-get-metadata" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_class_set_metadata ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-metadata" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_class_set_static_metadata ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-static-metadata" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_device_add ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-add" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_device_remove ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-remove" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_get_bus ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-bus" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_get_devices ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-devices" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_get_factory ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-factory" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_register ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-register" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_start ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-start" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_stop ()" link="gstreamer-GstDeviceMonitor.html#gst-device-monitor-stop" since="1.4"/>
-    <keyword type="struct" name="struct GstDeviceMonitor" link="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" since="1.4"/>
-    <keyword type="struct" name="struct GstDeviceMonitorClass" link="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_find ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-find" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_get ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_get_by_name ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-by-name" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_get_device_monitor_type ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-device-monitor-type" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_get_metadata ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_get_metadata_keys ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata-keys" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_has_classes ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classes" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_has_classesv ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classesv" since="1.4"/>
-    <keyword type="function" name="gst_device_monitor_factory_list_get_device_monitors ()" link="GstDeviceMonitorFactory.html#gst-device-monitor-factory-list-get-device-monitors" since="1.4"/>
-    <keyword type="struct" name="GstDeviceMonitorFactory" link="GstDeviceMonitorFactory.html#GstDeviceMonitorFactory-struct"/>
-    <keyword type="struct" name="GstDeviceMonitorFactoryClass" link="GstDeviceMonitorFactory.html#GstDeviceMonitorFactoryClass" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_get_bus ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-bus" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_get_caps_filter ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-caps-filter" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_get_classes_filter ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-classes-filter" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_get_devices ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-devices" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_new ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-new" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_set_caps_filter ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-caps-filter" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_set_classes_filter ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-classes-filter" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_start ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-start" since="1.4"/>
-    <keyword type="function" name="gst_global_device_monitor_stop ()" link="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-stop" since="1.4"/>
-    <keyword type="struct" name="struct GstGlobalDeviceMonitor" link="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" since="1.4"/>
-    <keyword type="struct" name="struct GstGlobalDeviceMonitorClass" link="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitorClass" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_can_monitor ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-can-monitor"/>
+    <keyword type="function" name="gst_device_provider_class_add_metadata ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-metadata" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_class_add_static_metadata ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-static-metadata" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_class_get_metadata ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-class-get-metadata" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_class_set_metadata ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-metadata" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_class_set_static_metadata ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-static-metadata" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_device_add ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-device-add" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_device_remove ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-device-remove" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_get_bus ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-get-bus" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_get_devices ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-get-devices" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_get_factory ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-get-factory" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_register ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-register" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_start ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-start" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_stop ()" link="gstreamer-GstDeviceProvider.html#gst-device-provider-stop" since="1.4"/>
+    <keyword type="struct" name="struct GstDeviceProvider" link="gstreamer-GstDeviceProvider.html#GstDeviceProvider" since="1.4"/>
+    <keyword type="struct" name="struct GstDeviceProviderClass" link="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_find ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-find" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_get ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-get" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_get_by_name ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-get-by-name" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_get_device_provider_type ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-get-device-provider-type" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_get_metadata ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_get_metadata_keys ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata-keys" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_has_classes ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-has-classes" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_has_classesv ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-has-classesv" since="1.4"/>
+    <keyword type="function" name="gst_device_provider_factory_list_get_device_providers ()" link="GstDeviceProviderFactory.html#gst-device-provider-factory-list-get-device-providers" since="1.4"/>
+    <keyword type="struct" name="GstDeviceProviderFactory" link="GstDeviceProviderFactory.html#GstDeviceProviderFactory-struct"/>
+    <keyword type="struct" name="GstDeviceProviderFactoryClass" link="GstDeviceProviderFactory.html#GstDeviceProviderFactoryClass" since="1.4"/>
     <keyword type="macro" name="GST_STR_NULL()" link="gstreamer-GstInfo.html#GST-STR-NULL:CAPS"/>
     <keyword type="macro" name="GST_DEBUG_PAD_NAME()" link="gstreamer-GstInfo.html#GST-DEBUG-PAD-NAME:CAPS"/>
     <keyword type="macro" name="GST_FUNCTION" link="gstreamer-GstInfo.html#GST-FUNCTION:CAPS"/>
@@ -2152,10 +2218,12 @@
     <keyword type="function" name="gst_debug_bin_to_dot_file_with_ts ()" link="gstreamer-GstInfo.html#gst-debug-bin-to-dot-file-with-ts"/>
     <keyword type="enum" name="enum GstDebugLevel" link="gstreamer-GstInfo.html#GstDebugLevel"/>
     <keyword type="macro" name="GST_LEVEL_DEFAULT" link="gstreamer-GstInfo.html#GST-LEVEL-DEFAULT:CAPS"/>
+    <keyword type="macro" name="GST_LEVEL_MAX" link="gstreamer-GstInfo.html#GST-LEVEL-MAX:CAPS" since="1.6"/>
     <keyword type="enum" name="enum GstDebugColorFlags" link="gstreamer-GstInfo.html#GstDebugColorFlags"/>
     <keyword type="enum" name="enum GstDebugColorMode" link="gstreamer-GstInfo.html#GstDebugColorMode"/>
     <keyword type="struct" name="struct GstDebugCategory" link="gstreamer-GstInfo.html#GstDebugCategory"/>
     <keyword type="enum" name="enum GstDebugGraphDetails" link="gstreamer-GstInfo.html#GstDebugGraphDetails"/>
+    <keyword type="variable" name="GST_CAT_DEFAULT" link="gstreamer-GstInfo.html#GST-CAT-DEFAULT:CAPS"/>
     <keyword type="macro" name="GST_TIME_FORMAT" link="gstreamer-GstInfo.html#GST-TIME-FORMAT:CAPS"/>
   </functions>
 </book>
diff --git a/docs/gst/html/gstreamer-Gst.html b/docs/gst/html/gstreamer-Gst.html
index 22c8907..c3aca13 100644
--- a/docs/gst/html/gstreamer-Gst.html
+++ b/docs/gst/html/gstreamer-Gst.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="next" href="GstAllocator.html" title="GstAllocator">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-Gst.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-Gst.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-Gst.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -51,7 +50,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-init-check" title="gst_init_check ()">gst_init_check</a> <span class="c_punctuation">()</span>
@@ -59,7 +58,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#GOptionGroup"><span class="returnvalue">GOptionGroup</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#GOptionGroup"><span class="returnvalue">GOptionGroup</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-init-get-option-group" title="gst_init_get_option_group ()">gst_init_get_option_group</a> <span class="c_punctuation">()</span>
@@ -67,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-is-initialized" title="gst_is_initialized ()">gst_is_initialized</a> <span class="c_punctuation">()</span>
@@ -91,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-version-string" title="gst_version_string ()">gst_version_string</a> <span class="c_punctuation">()</span>
@@ -99,7 +98,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-segtrap-is-enabled" title="gst_segtrap_is_enabled ()">gst_segtrap_is_enabled</a> <span class="c_punctuation">()</span>
@@ -115,7 +114,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-registry-fork-is-enabled" title="gst_registry_fork_is_enabled ()">gst_registry_fork_is_enabled</a> <span class="c_punctuation">()</span>
@@ -131,7 +130,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-Gst.html#gst-update-registry" title="gst_update_registry ()">gst_update_registry</a> <span class="c_punctuation">()</span>
@@ -141,11 +140,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-Gst.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-Gst.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -153,7 +147,7 @@
 <div class="refsect1">
 <a name="gstreamer-Gst.description"></a><h2>Description</h2>
 <p>GStreamer is a framework for constructing graphs of various filters
-(termed elements here) that will handle streaming media.  Any discreet
+(termed elements here) that will handle streaming media.  Any discrete
 (packetizable) media type is supported, with provisions for automatically
 determining source type.  Formatting/framing information is provided with
 a powerful negotiation framework.  Plugins are heavily used to provide for
@@ -166,7 +160,7 @@
 and argv variables so that GStreamer can process its own command line
 options, as shown in the following example.</p>
 <div class="example">
-<a name="id-1.3.3.6.4"></a><p class="title"><b>Example 1. Initializing the gstreamer library</b></p>
+<a name="id-1.3.3.5.4"></a><p class="title"><b>Example 1. Initializing the gstreamer library</b></p>
 <div class="example-contents">
   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
     <tbody>
@@ -191,12 +185,12 @@
 </div>
 
 </div>
-<br class="example-break"><p>It's allowed to pass two <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> pointers to <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a> in case you don't want
+<br class="example-break"><p>It's allowed to pass two <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> pointers to <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a> in case you don't want
 to pass the command line args to GStreamer.</p>
 <p>You can also use GOption to initialize your own parameters as shown in
 the next code fragment:</p>
 <div class="example">
-<a name="id-1.3.3.6.7"></a><p class="title"><b>Example 2. Initializing own parameters when initializing gstreamer</b></p>
+<a name="id-1.3.3.5.7"></a><p class="title"><b>Example 2. Initializing own parameters when initializing gstreamer</b></p>
 <div class="example-contents">
   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
     <tbody>
@@ -228,17 +222,17 @@
 <span class="gtkdoc opt">{</span>
  GOptionEntry options<span class="gtkdoc opt">[] = {</span>
   <span class="gtkdoc opt">{</span><span class="string">&quot;tags&quot;</span><span class="gtkdoc opt">,</span> <span class="string">'t'</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> G_OPTION_ARG_NONE<span class="gtkdoc opt">, &amp;</span>tags<span class="gtkdoc opt">,</span>
-      <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-I18N.html#N-:CAPS">N_</a></span><span class="gtkdoc opt">(</span><span class="string">&quot;Output tags (also known as metadata)&quot;</span><span class="gtkdoc opt">),</span> NULL<span class="gtkdoc opt">},</span>
+      <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-I18N.html#N-:CAPS">N_</a></span><span class="gtkdoc opt">(</span><span class="string">&quot;Output tags (also known as metadata)&quot;</span><span class="gtkdoc opt">),</span> NULL<span class="gtkdoc opt">},</span>
   <span class="gtkdoc opt">{</span>NULL<span class="gtkdoc opt">}</span>
  <span class="gtkdoc opt">};</span>
- ctx <span class="gtkdoc opt">=</span> <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#g-option-context-new">g_option_context_new</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;[ADDITIONAL ARGUMENTS]&quot;</span><span class="gtkdoc opt">);</span>
- <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#g-option-context-add-main-entries">g_option_context_add_main_entries</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">,</span> options<span class="gtkdoc opt">,</span> GETTEXT_PACKAGE<span class="gtkdoc opt">);</span>
- <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#g-option-context-add-group">g_option_context_add_group</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-Gst.html#gst-init-get-option-group">gst_init_get_option_group</a></span> <span class="gtkdoc opt">());</span>
- <span class="keyword">if</span> <span class="gtkdoc opt">(!</span><span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#g-option-context-parse">g_option_context_parse</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">, &amp;</span>argc<span class="gtkdoc opt">, &amp;</span>argv<span class="gtkdoc opt">, &amp;</span>err<span class="gtkdoc opt">)) {</span>
-   <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Error initializing: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-STR-NULL:CAPS">GST_STR_NULL</a></span> <span class="gtkdoc opt">(</span>err<span class="gtkdoc opt">-&gt;</span>message<span class="gtkdoc opt">));</span>
+ ctx <span class="gtkdoc opt">=</span> <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#g-option-context-new">g_option_context_new</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;[ADDITIONAL ARGUMENTS]&quot;</span><span class="gtkdoc opt">);</span>
+ <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#g-option-context-add-main-entries">g_option_context_add_main_entries</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">,</span> options<span class="gtkdoc opt">,</span> GETTEXT_PACKAGE<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#g-option-context-add-group">g_option_context_add_group</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-Gst.html#gst-init-get-option-group">gst_init_get_option_group</a></span> <span class="gtkdoc opt">());</span>
+ <span class="keyword">if</span> <span class="gtkdoc opt">(!</span><span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#g-option-context-parse">g_option_context_parse</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">, &amp;</span>argc<span class="gtkdoc opt">, &amp;</span>argv<span class="gtkdoc opt">, &amp;</span>err<span class="gtkdoc opt">)) {</span>
+   <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Error initializing: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-STR-NULL:CAPS">GST_STR_NULL</a></span> <span class="gtkdoc opt">(</span>err<span class="gtkdoc opt">-&gt;</span>message<span class="gtkdoc opt">));</span>
    <span class="function">exit</span> <span class="gtkdoc opt">(</span><span class="number">1</span><span class="gtkdoc opt">);</span>
  <span class="gtkdoc opt">}</span>
- <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#g-option-context-free">g_option_context_free</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#g-option-context-free">g_option_context_free</a></span> <span class="gtkdoc opt">(</span>ctx<span class="gtkdoc opt">);</span>
 <span class="gtkdoc opt">...</span>
 <span class="gtkdoc opt">}</span></pre></td>
       </tr>
@@ -278,7 +272,7 @@
 particular, unknown command line options cause this function to
 abort program execution.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.2.10"></a><h4>Parameters</h4>
+<a name="id-1.3.3.6.2.10"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -289,12 +283,12 @@
 <tr>
 <td class="parameter_name"><p>argc</p></td>
 <td class="parameter_description"><p> pointer to application's argc. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>argv</p></td>
 <td class="parameter_description"><p> pointer to application's argv. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=argc][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=argc][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -303,17 +297,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-init-check"></a><h3>gst_init_check ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_init_check (<em class="parameter"><code><span class="type">int</span> *argc</code></em>,
                 <em class="parameter"><code><span class="type">char</span> **argv[]</code></em>,
-                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
+                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
 <p>Initializes the GStreamer library, setting up internal path lists,
 registering built-in elements, and loading standard plugins.</p>
-<p>This function will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if GStreamer could not be initialized
+<p>This function will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if GStreamer could not be initialized
 for some reason.  If you want your program to fail fatally,
 use <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.3.6"></a><h4>Parameters</h4>
+<a name="id-1.3.3.6.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -324,43 +318,43 @@
 <tr>
 <td class="parameter_name"><p>argc</p></td>
 <td class="parameter_description"><p> pointer to application's argc. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>argv</p></td>
 <td class="parameter_description"><p> pointer to application's argv. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=argc][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=argc][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>err</p></td>
-<td class="parameter_description"><p>pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> to which a message will be posted on error</p></td>
+<td class="parameter_description"><p>pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> to which a message will be posted on error</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.3.7.3.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if GStreamer could be initialized.</p>
+<a name="id-1.3.3.6.3.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if GStreamer could be initialized.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-init-get-option-group"></a><h3>gst_init_get_option_group ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#GOptionGroup"><span class="returnvalue">GOptionGroup</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#GOptionGroup"><span class="returnvalue">GOptionGroup</span></a> *
 gst_init_get_option_group (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Returns a <a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#GOptionGroup"><span class="type">GOptionGroup</span></a> with GStreamer's argument specifications. The
+<p>Returns a <a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#GOptionGroup"><span class="type">GOptionGroup</span></a> with GStreamer's argument specifications. The
 group is set up to use standard GOption callbacks, so when using this
 group in combination with GOption parsing methods, all argument parsing
 and initialization is automated.</p>
 <p>This function is useful if you want to integrate GStreamer with other
-libraries that use GOption (see <a href="http://library.gnome.org/devel/glib/unstable/glib-Commandline-option-parser.html#g-option-context-add-group"><code class="function">g_option_context_add_group()</code></a> ).</p>
+libraries that use GOption (see <a href="https://developer.gnome.org/glib/unstable/glib-Commandline-option-parser.html#g-option-context-add-group"><code class="function">g_option_context_add_group()</code></a> ).</p>
 <p>If you use this function, you should make sure you initialise the GLib
 threading system as one of the very first things in your program
 (see the example at the beginning of this section).</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.4.7"></a><h4>Returns</h4>
+<a name="id-1.3.3.6.4.7"></a><h4>Returns</h4>
 <p> a pointer to GStreamer's option group. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -368,13 +362,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-is-initialized"></a><h3>gst_is_initialized ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_is_initialized (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Use this function to check if GStreamer has been initialized with <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a>
 or <a class="link" href="gstreamer-Gst.html#gst-init-check" title="gst_init_check ()"><code class="function">gst_init_check()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.5.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if initialization has been done, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.3.3.6.5.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if initialization has been done, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -394,13 +388,13 @@
 <div class="refsect2">
 <a name="gst-version"></a><h3>gst_version ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_version (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *major</code></em>,
-             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *minor</code></em>,
-             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *micro</code></em>,
-             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *nano</code></em>);</pre>
+gst_version (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *major</code></em>,
+             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *minor</code></em>,
+             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *micro</code></em>,
+             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *nano</code></em>);</pre>
 <p>Gets the version number of the GStreamer library.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.6.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -435,12 +429,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-version-string"></a><h3>gst_version_string ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_version_string (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>This function returns a string that is useful for describing this version
 of GStreamer to the outside world: user agent strings, logging, ...</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.8.5"></a><h4>Returns</h4>
+<a name="id-1.3.3.6.8.5"></a><h4>Returns</h4>
 <p> a newly allocated string describing this version
 of GStreamer. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -449,7 +443,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-segtrap-is-enabled"></a><h3>gst_segtrap_is_enabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_segtrap_is_enabled (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Some functions in the GStreamer core might install a custom SIGSEGV handler
 to better catch and report errors to the application. Currently this feature
@@ -458,8 +452,8 @@
 <a class="link" href="gstreamer-Gst.html#gst-segtrap-set-enabled" title="gst_segtrap_set_enabled ()"><code class="function">gst_segtrap_set_enabled()</code></a> function. This is typically done if the application
 wants to install its own handler without GStreamer interfering.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if GStreamer is allowed to install a custom SIGSEGV handler.</p>
+<a name="id-1.3.3.6.9.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if GStreamer is allowed to install a custom SIGSEGV handler.</p>
 <p></p>
 </div>
 </div>
@@ -467,11 +461,11 @@
 <div class="refsect2">
 <a name="gst-segtrap-set-enabled"></a><h3>gst_segtrap_set_enabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_segtrap_set_enabled (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
+gst_segtrap_set_enabled (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
 <p>Applications might want to disable/enable the SIGSEGV handling of
 the GStreamer core. See <a class="link" href="gstreamer-Gst.html#gst-segtrap-is-enabled" title="gst_segtrap_is_enabled ()"><code class="function">gst_segtrap_is_enabled()</code></a> for more information.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.6.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -489,7 +483,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-registry-fork-is-enabled"></a><h3>gst_registry_fork_is_enabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_registry_fork_is_enabled (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>By default GStreamer will perform scanning and rebuilding of the
 registry file using a helper child process.</p>
@@ -497,8 +491,8 @@
 <a class="link" href="gstreamer-Gst.html#gst-registry-fork-set-enabled" title="gst_registry_fork_set_enabled ()"><code class="function">gst_registry_fork_set_enabled()</code></a> function, in which case new plugins
 are scanned (and loaded) into the application process.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.11.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if GStreamer will use the child helper process when
+<a name="id-1.3.3.6.11.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if GStreamer will use the child helper process when
 rebuilding the registry.</p>
 <p></p>
 </div>
@@ -507,12 +501,12 @@
 <div class="refsect2">
 <a name="gst-registry-fork-set-enabled"></a><h3>gst_registry_fork_set_enabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_registry_fork_set_enabled (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
+gst_registry_fork_set_enabled (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
 <p>Applications might want to disable/enable spawning of a child helper process
 when rebuilding the registry. See <a class="link" href="gstreamer-Gst.html#gst-registry-fork-is-enabled" title="gst_registry_fork_is_enabled ()"><code class="function">gst_registry_fork_is_enabled()</code></a> for more
 information.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.6.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -530,7 +524,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-update-registry"></a><h3>gst_update_registry ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_update_registry (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Forces GStreamer to re-scan its plugin paths and update the default
 plugin registry.</p>
@@ -546,9 +540,9 @@
 progress.</p>
 <p>Note that this function may block for a significant amount of time.</p>
 <div class="refsect3">
-<a name="id-1.3.3.7.13.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the registry has been updated successfully (does not
-imply that there were changes), otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a name="id-1.3.3.6.13.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the registry has been updated successfully (does not
+imply that there were changes), otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
@@ -559,6 +553,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstAtomicQueue.html b/docs/gst/html/gstreamer-GstAtomicQueue.html
index 5226a8f..d8c8eba 100644
--- a/docs/gst/html/gstreamer-GstAtomicQueue.html
+++ b/docs/gst/html/gstreamer-GstAtomicQueue.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstAllocator.html" title="GstAllocator">
 <link rel="next" href="GstBin.html" title="GstBin">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstAtomicQueue.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstAtomicQueue.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstAtomicQueue.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -74,7 +73,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstAtomicQueue.html#gst-atomic-queue-peek" title="gst_atomic_queue_peek ()">gst_atomic_queue_peek</a> <span class="c_punctuation">()</span>
@@ -82,7 +81,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstAtomicQueue.html#gst-atomic-queue-pop" title="gst_atomic_queue_pop ()">gst_atomic_queue_pop</a> <span class="c_punctuation">()</span>
@@ -90,7 +89,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstAtomicQueue.html#gst-atomic-queue-length" title="gst_atomic_queue_length ()">gst_atomic_queue_length</a> <span class="c_punctuation">()</span>
@@ -113,11 +112,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstAtomicQueue.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstAtomicQueue.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -132,12 +126,12 @@
 <div class="refsect2">
 <a name="gst-atomic-queue-new"></a><h3>gst_atomic_queue_new ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstAtomicQueue.html#GstAtomicQueue" title="GstAtomicQueue"><span class="returnvalue">GstAtomicQueue</span></a> *
-gst_atomic_queue_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> initial_size</code></em>);</pre>
+gst_atomic_queue_new (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> initial_size</code></em>);</pre>
 <p>Create a new atomic queue instance. <em class="parameter"><code>initial_size</code></em>
  will be rounded up to the
 nearest power of 2 and used as the initial size of the queue.</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -152,7 +146,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.5.8.2.6"></a><h4>Returns</h4>
+<a name="id-1.3.5.7.2.6"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-GstAtomicQueue.html#GstAtomicQueue" title="GstAtomicQueue"><span class="type">GstAtomicQueue</span></a></p>
 <p></p>
 </div>
@@ -165,7 +159,7 @@
 <p>Increase the refcount of <em class="parameter"><code>queue</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -188,7 +182,7 @@
 <p>Unref <em class="parameter"><code>queue</code></em>
  and free the memory when the refcount reaches 0.</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -208,11 +202,11 @@
 <a name="gst-atomic-queue-push"></a><h3>gst_atomic_queue_push ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_atomic_queue_push (<em class="parameter"><code><a class="link" href="gstreamer-GstAtomicQueue.html#GstAtomicQueue" title="GstAtomicQueue"><span class="type">GstAtomicQueue</span></a> *queue</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Append <em class="parameter"><code>data</code></em>
  to the tail of the queue.</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -237,11 +231,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-atomic-queue-peek"></a><h3>gst_atomic_queue_peek ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_atomic_queue_peek (<em class="parameter"><code><a class="link" href="gstreamer-GstAtomicQueue.html#GstAtomicQueue" title="GstAtomicQueue"><span class="type">GstAtomicQueue</span></a> *queue</code></em>);</pre>
 <p>Peek the head element of the queue without removing it from the queue.</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -256,21 +250,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.5.8.6.6"></a><h4>Returns</h4>
+<a name="id-1.3.5.7.6.6"></a><h4>Returns</h4>
 <p> the head element of <em class="parameter"><code>queue</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when
-the queue is empty. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the queue is empty. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-atomic-queue-pop"></a><h3>gst_atomic_queue_pop ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_atomic_queue_pop (<em class="parameter"><code><a class="link" href="gstreamer-GstAtomicQueue.html#GstAtomicQueue" title="GstAtomicQueue"><span class="type">GstAtomicQueue</span></a> *queue</code></em>);</pre>
 <p>Get the head element of the queue.</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -285,9 +279,9 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.5.8.7.6"></a><h4>Returns</h4>
+<a name="id-1.3.5.7.7.6"></a><h4>Returns</h4>
 <p> the head element of <em class="parameter"><code>queue</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when
 the queue is empty. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -295,11 +289,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-atomic-queue-length"></a><h3>gst_atomic_queue_length ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_atomic_queue_length (<em class="parameter"><code><a class="link" href="gstreamer-GstAtomicQueue.html#GstAtomicQueue" title="GstAtomicQueue"><span class="type">GstAtomicQueue</span></a> *queue</code></em>);</pre>
 <p>Get the amount of items in the queue.</p>
 <div class="refsect3">
-<a name="id-1.3.5.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.5.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -314,7 +308,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.5.8.8.6"></a><h4>Returns</h4>
+<a name="id-1.3.5.7.8.6"></a><h4>Returns</h4>
 <p> the number of elements in the queue.</p>
 <p></p>
 </div>
@@ -332,6 +326,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstDevice.html b/docs/gst/html/gstreamer-GstDevice.html
index a212aed..1014ec9 100644
--- a/docs/gst/html/gstreamer-GstDevice.html
+++ b/docs/gst/html/gstreamer-GstDevice.html
@@ -6,22 +6,21 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
-<link rel="prev" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
-<link rel="next" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="prev" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">
+<link rel="next" href="gstreamer-GstDeviceProvider.html" title="GstDeviceProvider">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstDevice.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstDevice.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstDevice.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-device-probing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gstreamer-device-probing.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gstreamer-GstDeviceMonitor.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="p" href="gstreamer-GstDeviceMonitor.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gstreamer-GstDeviceProvider.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="gstreamer-GstDevice"></a><div class="titlepage"></div>
@@ -58,7 +57,15 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDevice.html#gst-device-get-device-class" title="gst_device_get_device_class ()">gst_device_get_device_class</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstDevice.html#gst-device-get-display-name" title="gst_device_get_display_name ()">gst_device_get_display_name</a> <span class="c_punctuation">()</span>
@@ -66,7 +73,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstDevice.html#gst-device-has-classes" title="gst_device_has_classes ()">gst_device_has_classes</a> <span class="c_punctuation">()</span>
@@ -74,7 +81,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstDevice.html#gst-device-has-classesv" title="gst_device_has_classesv ()">gst_device_has_classesv</a> <span class="c_punctuation">()</span>
@@ -82,7 +89,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstDevice.html#gst-device-reconfigure-element" title="gst_device_reconfigure_element ()">gst_device_reconfigure_element</a> <span class="c_punctuation">()</span>
@@ -111,11 +118,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstDevice.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstDevice.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -125,8 +127,8 @@
 <p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> are objects representing a device, they contain
 relevant metadata about the device, such as its class and the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>
 representing the media types it can produce or handle.</p>
-<p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> are created by <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> objects which can be
-aggregated by <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> objects.</p>
+<p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> are created by <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> objects which can be
+aggregated by <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> objects.</p>
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstDevice.functions_details"></a><h2>Functions</h2>
@@ -134,11 +136,11 @@
 <a name="gst-device-create-element"></a><h3>gst_device_create_element ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
 gst_device_create_element (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Creates the element with all of the required paramaters set to use
 this device.</p>
 <div class="refsect3">
-<a name="id-1.4.2.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.4.3.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -153,15 +155,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> name of new element, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to automatically
+<td class="parameter_description"><p> name of new element, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to automatically
 create a unique name. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.2.8.2.6"></a><h4>Returns</h4>
+<a name="id-1.4.3.7.2.6"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> configured to use this device. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -174,7 +176,7 @@
 gst_device_get_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
 <p>Getter for the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> that this device supports.</p>
 <div class="refsect3">
-<a name="id-1.4.2.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.4.3.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -189,7 +191,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.2.8.3.6"></a><h4>Returns</h4>
+<a name="id-1.4.3.7.3.6"></a><h4>Returns</h4>
 <p> The <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> supported by this device. Unref with
 <a class="link" href="GstCaps.html#gst-caps-unref" title="gst_caps_unref ()"><code class="function">gst_caps_unref()</code></a> when done.</p>
 <p></p>
@@ -198,12 +200,14 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-device-get-display-name"></a><h3>gst_device_get_display_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_device_get_display_name (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
-<p>Gets the user-friendly name of the device.</p>
+<a name="gst-device-get-device-class"></a><h3>gst_device_get_device_class ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_device_get_device_class (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
+<p>Gets the "class" of a device. This is a "/" separated list of
+classes that represent this device. They are a subset of the
+classes of the <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> that produced this device.</p>
 <div class="refsect3">
-<a name="id-1.4.2.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.4.3.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -218,8 +222,36 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.2.8.4.6"></a><h4>Returns</h4>
-<p> The device name. Free with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after use.</p>
+<a name="id-1.4.3.7.4.6"></a><h4>Returns</h4>
+<p> The device class. Free with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after use.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-get-display-name"></a><h3>gst_device_get_display_name ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_device_get_display_name (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
+<p>Gets the user-friendly name of the device.</p>
+<div class="refsect3">
+<a name="id-1.4.3.7.5.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>device</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.3.7.5.6"></a><h4>Returns</h4>
+<p> The device name. Free with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after use.</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -227,13 +259,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-device-has-classes"></a><h3>gst_device_has_classes ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_device_has_classes (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>);</pre>
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>);</pre>
 <p>Check if <em class="parameter"><code>device</code></em>
  matches all of the given classes</p>
 <div class="refsect3">
-<a name="id-1.4.2.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.4.3.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -256,8 +288,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.2.8.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>device</code></em>
+<a name="id-1.4.3.7.6.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>device</code></em>
 matches.</p>
 <p></p>
 </div>
@@ -266,13 +298,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-device-has-classesv"></a><h3>gst_device_has_classesv ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_device_has_classesv (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **classes</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **classes</code></em>);</pre>
 <p>Check if <em class="parameter"><code>factory</code></em>
  matches all of the given classes</p>
 <div class="refsect3">
-<a name="id-1.4.2.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.4.3.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -287,7 +319,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>classes</p></td>
-<td class="parameter_description"><p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of klasses to match, only match if all
+<td class="parameter_description"><p> a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of classes to match, only match if all
 classes are matched. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
 </tr>
@@ -295,8 +327,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.2.8.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>device</code></em>
+<a name="id-1.4.3.7.7.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>device</code></em>
 matches.</p>
 <p></p>
 </div>
@@ -305,7 +337,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-device-reconfigure-element"></a><h3>gst_device_reconfigure_element ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_device_reconfigure_element (<em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre>
 <p>Tries to reconfigure an existing element to use the device. If this
@@ -314,7 +346,7 @@
 <p>Note: This should only be implemented for elements can change their
 device in the PLAYING state.</p>
 <div class="refsect3">
-<a name="id-1.4.2.8.7.6"></a><h4>Parameters</h4>
+<a name="id-1.4.3.7.8.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -336,9 +368,9 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.2.8.7.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element could be reconfigured to use this device,
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.4.3.7.8.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element could be reconfigured to use this device,
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -354,7 +386,7 @@
 </pre>
 <p>A device object.</p>
 <div class="refsect3">
-<a name="id-1.4.2.9.2.5"></a><h4>Members</h4>
+<a name="id-1.4.3.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -382,7 +414,7 @@
 </pre>
 <p>The class structure for a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> object.</p>
 <div class="refsect3">
-<a name="id-1.4.2.9.3.5"></a><h4>Members</h4>
+<a name="id-1.4.3.8.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -416,11 +448,11 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstDevice.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p>
+<p><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p>
 </div>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstDeviceMonitor.html b/docs/gst/html/gstreamer-GstDeviceMonitor.html
index eff937b..948cf09 100644
--- a/docs/gst/html/gstreamer-GstDeviceMonitor.html
+++ b/docs/gst/html/gstreamer-GstDeviceMonitor.html
@@ -6,22 +6,21 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
-<link rel="prev" href="gstreamer-GstDevice.html" title="GstDevice">
-<link rel="next" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="prev" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
+<link rel="next" href="gstreamer-GstDevice.html" title="GstDevice">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstDeviceMonitor.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstDeviceMonitor.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstDeviceMonitor.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-device-probing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gstreamer-GstDevice.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="GstDeviceMonitorFactory.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="p" href="gstreamer-device-probing.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gstreamer-GstDevice.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="gstreamer-GstDeviceMonitor"></a><div class="titlepage"></div>
@@ -42,65 +41,10 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="returnvalue">GstDeviceMonitor</span></a> *
 </td>
 <td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-can-monitor" title="gst_device_monitor_can_monitor ()">gst_device_monitor_can_monitor</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-metadata" title="gst_device_monitor_class_add_metadata ()">gst_device_monitor_class_add_metadata</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-static-metadata" title="gst_device_monitor_class_add_static_metadata ()">gst_device_monitor_class_add_static_metadata</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-get-metadata" title="gst_device_monitor_class_get_metadata ()">gst_device_monitor_class_get_metadata</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-metadata" title="gst_device_monitor_class_set_metadata ()">gst_device_monitor_class_set_metadata</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-static-metadata" title="gst_device_monitor_class_set_static_metadata ()">gst_device_monitor_class_set_static_metadata</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-add" title="gst_device_monitor_device_add ()">gst_device_monitor_device_add</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-remove" title="gst_device_monitor_device_remove ()">gst_device_monitor_device_remove</a> <span class="c_punctuation">()</span>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-new" title="gst_device_monitor_new ()">gst_device_monitor_new</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
@@ -113,31 +57,23 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-devices" title="gst_device_monitor_get_devices ()">gst_device_monitor_get_devices</a> <span class="c_punctuation">()</span>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter" title="gst_device_monitor_add_filter ()">gst_device_monitor_add_filter</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="returnvalue">GstDeviceMonitorFactory</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-factory" title="gst_device_monitor_get_factory ()">gst_device_monitor_get_factory</a> <span class="c_punctuation">()</span>
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-remove-filter" title="gst_device_monitor_remove_filter ()">gst_device_monitor_remove_filter</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-register" title="gst_device_monitor_register ()">gst_device_monitor_register</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-start" title="gst_device_monitor_start ()">gst_device_monitor_start</a> <span class="c_punctuation">()</span>
@@ -151,6 +87,14 @@
 <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-stop" title="gst_device_monitor_stop ()">gst_device_monitor_stop</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-devices" title="gst_device_monitor_get_devices ()">gst_device_monitor_get_devices</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -174,358 +118,135 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstDeviceMonitor.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstDeviceMonitor.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstDeviceMonitor.description"></a><h2>Description</h2>
-<p>A <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> subclass is provided by a plugin that handles devices
-if there is a way to programatically list connected devices. It can also
-optionally provide updates to the list of connected devices.</p>
-<p>Each <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> subclass is a singleton, a plugin should
-normally provide a single subclass for all devices.</p>
-<p>Applications would normally use a <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> to monitor devices
-from all revelant monitors.</p>
+<p>Applications should create a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> when they want
+to probe, list and monitor devices of a specific type. The
+<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> will create the appropriate
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> objects and manage them. It will then post
+messages on its <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> for devices that have been added and
+removed.</p>
+<p>The device monitor will monitor all devices matching the filters that
+the application has set.</p>
+<p>The basic use pattern of a device monitor is as follows:</p>
+<div class="informalexample">
+  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
+    <tbody>
+      <tr>
+        <td class="listing_lines" align="right"><pre>1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46</pre></td>
+        <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">static</span> gboolean
+<span class="function">my_bus_func</span> <span class="gtkdoc opt">(</span>GstBus <span class="gtkdoc opt">*</span> bus<span class="gtkdoc opt">,</span> GstMessage <span class="gtkdoc opt">*</span> message<span class="gtkdoc opt">,</span> gpointer user_data<span class="gtkdoc opt">)</span>
+<span class="gtkdoc opt">{</span>
+   GstDevice <span class="gtkdoc opt">*</span>device<span class="gtkdoc opt">;</span>
+   gchar <span class="gtkdoc opt">*</span>name<span class="gtkdoc opt">;</span>
+
+   <span class="keyword">switch</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#GST-MESSAGE-TYPE:CAPS">GST_MESSAGE_TYPE</a></span> <span class="gtkdoc opt">(</span>message<span class="gtkdoc opt">)) {</span>
+     <span class="keyword">case</span> GST_MESSAGE_DEVICE_ADDED<span class="gtkdoc opt">:</span>
+       <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-parse-device-added">gst_message_parse_device_added</a></span> <span class="gtkdoc opt">(</span>message<span class="gtkdoc opt">, &amp;</span>device<span class="gtkdoc opt">);</span>
+       name <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDevice.html#gst-device-get-display-name">gst_device_get_display_name</a></span> <span class="gtkdoc opt">(</span>device<span class="gtkdoc opt">);</span>
+       <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="gtkdoc opt">(</span><span class="string">&quot;Device added: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> name<span class="gtkdoc opt">);</span>
+       <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>name<span class="gtkdoc opt">);</span>
+       <span class="keyword">break</span><span class="gtkdoc opt">;</span>
+     <span class="keyword">case</span> GST_MESSAGE_DEVICE_REMOVED<span class="gtkdoc opt">:</span>
+       <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-parse-device-removed">gst_message_parse_device_removed</a></span> <span class="gtkdoc opt">(</span>message<span class="gtkdoc opt">, &amp;</span>device<span class="gtkdoc opt">);</span>
+       name <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDevice.html#gst-device-get-display-name">gst_device_get_display_name</a></span> <span class="gtkdoc opt">(</span>device<span class="gtkdoc opt">);</span>
+       <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="gtkdoc opt">(</span><span class="string">&quot;Device removed: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> name<span class="gtkdoc opt">);</span>
+       <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>name<span class="gtkdoc opt">);</span>
+       <span class="keyword">break</span><span class="gtkdoc opt">;</span>
+     <span class="keyword">default</span><span class="gtkdoc opt">:</span>
+       <span class="keyword">break</span><span class="gtkdoc opt">;</span>
+   <span class="gtkdoc opt">}</span>
+
+   <span class="keyword">return</span> G_SOURCE_CONTINUE<span class="gtkdoc opt">;</span>
+<span class="gtkdoc opt">}</span>
+
+GstDeviceMonitor <span class="gtkdoc opt">*</span>
+<span class="function">setup_raw_video_source_device_monitor</span> <span class="gtkdoc opt">(</span><span class="gtkdoc kwb">void</span><span class="gtkdoc opt">) {</span>
+   GstDeviceMonitor <span class="gtkdoc opt">*</span>monitor<span class="gtkdoc opt">;</span>
+   GstBus <span class="gtkdoc opt">*</span>bus<span class="gtkdoc opt">;</span>
+   GstCaps <span class="gtkdoc opt">*</span>caps<span class="gtkdoc opt">;</span>
+
+   monitor <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDeviceMonitor.html#gst-device-monitor-new">gst_device_monitor_new</a></span> <span class="gtkdoc opt">();</span>
+
+   bus <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-bus">gst_device_monitor_get_bus</a></span> <span class="gtkdoc opt">(</span>monitor<span class="gtkdoc opt">);</span>
+   <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBus.html#gst-bus-add-watch">gst_bus_add_watch</a></span> <span class="gtkdoc opt">(</span>bus<span class="gtkdoc opt">,</span> my_bus_func<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
+   <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#gst-object-unref">gst_object_unref</a></span> <span class="gtkdoc opt">(</span>bus<span class="gtkdoc opt">);</span>
+
+   caps <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-new-empty-simple">gst_caps_new_empty_simple</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;video/x-raw&quot;</span><span class="gtkdoc opt">);</span>
+   <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter">gst_device_monitor_add_filter</a></span> <span class="gtkdoc opt">(</span>monitor<span class="gtkdoc opt">,</span> <span class="string">&quot;Video/Source&quot;</span><span class="gtkdoc opt">,</span> caps<span class="gtkdoc opt">);</span>
+   <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref">gst_caps_unref</a></span> <span class="gtkdoc opt">(</span>caps<span class="gtkdoc opt">);</span>
+
+   <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDeviceMonitor.html#gst-device-monitor-start">gst_device_monitor_start</a></span> <span class="gtkdoc opt">(</span>monitor<span class="gtkdoc opt">);</span>
+
+   <span class="keyword">return</span> monitor<span class="gtkdoc opt">;</span>
+<span class="gtkdoc opt">}</span></pre></td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+<p></p>
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstDeviceMonitor.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
-<a name="gst-device-monitor-can-monitor"></a><h3>gst_device_monitor_can_monitor ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_device_monitor_can_monitor (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>If this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, then the device monitor can monitor if
-devices are added or removed. Otherwise, it can only do static probing.</p>
+<a name="gst-device-monitor-new"></a><h3>gst_device_monitor_new ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="returnvalue">GstDeviceMonitor</span></a> *
+gst_device_monitor_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Create a new <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p>
 <div class="refsect3">
-<a name="id-1.4.3.8.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> support monitoring, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-class-add-metadata"></a><h3>gst_device_monitor_class_add_metadata ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_device_monitor_class_add_metadata (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a> *klass</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
-<p>Set <em class="parameter"><code>key</code></em>
- with <em class="parameter"><code>value</code></em>
- as metadata in <em class="parameter"><code>klass</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>klass</p></td>
-<td class="parameter_description"><p>class to set metadata for</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>key</p></td>
-<td class="parameter_description"><p>the key to set</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the value to set</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-class-add-static-metadata"></a><h3>gst_device_monitor_class_add_static_metadata ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_device_monitor_class_add_static_metadata
-                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a> *klass</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
-<p>Set <em class="parameter"><code>key</code></em>
- with <em class="parameter"><code>value</code></em>
- as metadata in <em class="parameter"><code>klass</code></em>
-.</p>
-<p>Same as <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-metadata" title="gst_device_monitor_class_add_metadata ()"><code class="function">gst_device_monitor_class_add_metadata()</code></a>, but <em class="parameter"><code>value</code></em>
- must be a static string
-or an inlined string, as it will not be copied. (GStreamer plugins will
-be made resident once loaded, so this function can be used even from
-dynamically loaded plugins.)</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.4.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>klass</p></td>
-<td class="parameter_description"><p>class to set metadata for</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>key</p></td>
-<td class="parameter_description"><p>the key to set</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the value to set</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-class-get-metadata"></a><h3>gst_device_monitor_class_get_metadata ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_device_monitor_class_get_metadata (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a> *klass</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
-<p>Get metadata with <em class="parameter"><code>key</code></em>
- in <em class="parameter"><code>klass</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>klass</p></td>
-<td class="parameter_description"><p>class to get metadata for</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>key</p></td>
-<td class="parameter_description"><p>the key to get</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.8.5.6"></a><h4>Returns</h4>
-<p> the metadata for <em class="parameter"><code>key</code></em>
-.</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-class-set-metadata"></a><h3>gst_device_monitor_class_set_metadata ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_device_monitor_class_set_metadata (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a> *klass</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
-<p>Sets the detailed information for a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a>.</p>
-<div class="note">This function is for use in _class_init functions only.</div>
-<div class="refsect3">
-<a name="id-1.4.3.8.6.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>klass</p></td>
-<td class="parameter_description"><p>class to set metadata for</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>longname</p></td>
-<td class="parameter_description"><p>The long English name of the device monitor. E.g. "File Sink"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>classification</p></td>
-<td class="parameter_description"><p>String describing the type of device monitor, as an unordered list
-separated with slashes ('/'). See draft-klass.txt of the design docs
-for more details and common types. E.g: "Sink/File"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>description</p></td>
-<td class="parameter_description"><p>Sentence describing the purpose of the device monitor.
-E.g: "Write stream to a file"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>author</p></td>
-<td class="parameter_description"><p>Name and contact details of the author(s). Use \n to separate
-multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-class-set-static-metadata"></a><h3>gst_device_monitor_class_set_static_metadata ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_device_monitor_class_set_static_metadata
-                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a> *klass</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
-<p>Sets the detailed information for a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a>.</p>
-<div class="note">This function is for use in _class_init functions only.</div>
-<p>Same as <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-metadata" title="gst_device_monitor_class_set_metadata ()"><code class="function">gst_device_monitor_class_set_metadata()</code></a>, but <em class="parameter"><code>longname</code></em>
-, <em class="parameter"><code>classification</code></em>
-,
-<em class="parameter"><code>description</code></em>
-, and <em class="parameter"><code>author</code></em>
- must be static strings or inlined strings, as
-they will not be copied. (GStreamer plugins will be made resident once
-loaded, so this function can be used even from dynamically loaded plugins.)</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.7.7"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>klass</p></td>
-<td class="parameter_description"><p>class to set metadata for</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>longname</p></td>
-<td class="parameter_description"><p>The long English name of the element. E.g. "File Sink"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>classification</p></td>
-<td class="parameter_description"><p>String describing the type of element, as an unordered list
-separated with slashes ('/'). See draft-klass.txt of the design docs
-for more details and common types. E.g: "Sink/File"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>description</p></td>
-<td class="parameter_description"><p>Sentence describing the purpose of the element.
-E.g: "Write stream to a file"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>author</p></td>
-<td class="parameter_description"><p>Name and contact details of the author(s). Use \n to separate
-multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;"</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-device-add"></a><h3>gst_device_monitor_device_add ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_device_monitor_device_add (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>,
-                               <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
-<p>Posts a message on the monitor's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> to inform applications that
-a new device has been added.</p>
-<p>This is for use by subclasses.</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.8.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>device</p></td>
-<td class="parameter_description"><p> a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> that has been added. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-device-remove"></a><h3>gst_device_monitor_device_remove ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_device_monitor_device_remove (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>,
-                                  <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
-<p>Posts a message on the monitor's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> to inform applications that
-a device has been removed.</p>
-<p>This is for use by subclasses.</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.9.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>device</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> that has been removed</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
+<a name="id-1.4.2.7.2.5"></a><h4>Returns</h4>
+<p> a new device monitor. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.4</p>
 </div>
@@ -536,7 +257,7 @@
 gst_device_monitor_get_bus (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
 <p>Gets the <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> of this <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p>
 <div class="refsect3">
-<a name="id-1.4.3.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.4.2.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -545,13 +266,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.3.8.10.6"></a><h4>Returns</h4>
+<a name="id-1.4.2.7.3.6"></a><h4>Returns</h4>
 <p> a <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -559,77 +280,16 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-device-monitor-get-devices"></a><h3>gst_device_monitor_get_devices ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-gst_device_monitor_get_devices (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Gets a list of devices that this monitor understands. This may actually
-probe the hardware if the monitor is not currently started.</p>
+<a name="gst-device-monitor-add-filter"></a><h3>gst_device_monitor_add_filter ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_device_monitor_add_filter (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>,
+                               <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
+<p>Adds a filter for which <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> will be monitored, any device that matches
+all classes and the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> will be returned.</p>
+<p>Filters must be added before the <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> is started.</p>
 <div class="refsect3">
-<a name="id-1.4.3.8.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.8.11.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
-<a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstDevice]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-get-factory"></a><h3>gst_device_monitor_get_factory ()</h3>
-<pre class="programlisting"><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="returnvalue">GstDeviceMonitorFactory</span></a> *
-gst_device_monitor_get_factory (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Retrieves the factory that was used to create this device monitor.</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> to request the device monitor factory of.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.8.12.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> used for creating this
-device monitor. no refcounting is needed. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-device-monitor-register"></a><h3>gst_device_monitor_register ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_device_monitor_register (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
-<p>Create a new device monitorfactory capable of instantiating objects of the
-<em class="parameter"><code>type</code></em>
- and add the factory to <em class="parameter"><code>plugin</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.3.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.4.2.7.4.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -638,32 +298,64 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>plugin</p></td>
-<td class="parameter_description"><p> <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> to register the device monitor with, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for
-a static device monitor. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name of device monitors of this type</p></td>
+<td class="parameter_name"><p>monitor</p></td>
+<td class="parameter_description"><p>a device monitor</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>rank</p></td>
-<td class="parameter_description"><p>rank of device monitor (higher rank means more importance when autoplugging)</p></td>
+<td class="parameter_name"><p>classes</p></td>
+<td class="parameter_description"><p> device classes to use as filter or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for any class. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p> the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> to filter or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for ANY. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.2.7.4.7"></a><h4>Returns</h4>
+<p> The id of the new filter or <code class="literal">0</code> if no provider matched the filter's
+classes.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-monitor-remove-filter"></a><h3>gst_device_monitor_remove_filter ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_device_monitor_remove_filter (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> filter_id</code></em>);</pre>
+<p>Removes a filter from the <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> using the id that was returned
+by <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter" title="gst_device_monitor_add_filter ()"><code class="function">gst_device_monitor_add_filter()</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.4.2.7.5.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>monitor</p></td>
+<td class="parameter_description"><p>a device monitor</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>GType of device monitor to register</p></td>
+<td class="parameter_name"><p>filter_id</p></td>
+<td class="parameter_description"><p>the id of the filter</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.3.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the registering succeeded, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error</p>
+<a name="id-1.4.2.7.5.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> of the filter id was valid, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -671,17 +363,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-device-monitor-start"></a><h3>gst_device_monitor_start ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_device_monitor_start (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Starts monitoring the devices. This will cause <span class="type">GST_MESSAGE_DEVICE</span> messages
-to be posted on the monitor's bus when devices are added or removed from
-the system.</p>
-<p>Since the <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> is a singleton,
-<a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-start" title="gst_device_monitor_start ()"><code class="function">gst_device_monitor_start()</code></a> may already have been called by another
-user of the object, <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-stop" title="gst_device_monitor_stop ()"><code class="function">gst_device_monitor_stop()</code></a> needs to be called the same
-number of times.</p>
+<p>Starts monitoring the devices, one this has succeeded, the
+<a class="link" href="GstMessage.html#GST-MESSAGE-DEVICE-ADDED:CAPS"><code class="literal">GST_MESSAGE_DEVICE_ADDED</code></a> and <a class="link" href="GstMessage.html#GST-MESSAGE-DEVICE-REMOVED:CAPS"><code class="literal">GST_MESSAGE_DEVICE_REMOVED</code></a> messages
+will be emitted on the bus when the list of devices changes.</p>
 <div class="refsect3">
-<a name="id-1.4.3.8.14.6"></a><h4>Parameters</h4>
+<a name="id-1.4.2.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -696,8 +384,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.4.3.8.14.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device monitoring could be started</p>
+<a name="id-1.4.2.7.6.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device monitoring could be started</p>
 <p></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -707,11 +395,9 @@
 <a name="gst-device-monitor-stop"></a><h3>gst_device_monitor_stop ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_device_monitor_stop (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Decreases the use-count by one. If the use count reaches zero, this
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> will stop monitoring the devices. This needs to be
-called the same number of times that <a class="link" href="gstreamer-GstDeviceMonitor.html#gst-device-monitor-start" title="gst_device_monitor_start ()"><code class="function">gst_device_monitor_start()</code></a> was called.</p>
+<p>Stops monitoring the devices.</p>
 <div class="refsect3">
-<a name="id-1.4.3.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.4.2.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -720,46 +406,66 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
+<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <p class="since">Since 1.4</p>
 </div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-monitor-get-devices"></a><h3>gst_device_monitor_get_devices ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_device_monitor_get_devices (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> *monitor</code></em>);</pre>
+<p>Gets a list of devices from all of the relevant monitors. This may actually
+probe the hardware if the monitor is not currently started.</p>
+<div class="refsect3">
+<a name="id-1.4.2.7.8.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>monitor</p></td>
+<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.2.7.8.6"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstDevice]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstDeviceMonitor.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
 <a name="GstDeviceMonitor"></a><h3>struct GstDeviceMonitor</h3>
 <pre class="programlisting">struct GstDeviceMonitor {
-  GstObject         parent;
-
-  /* Protected by the Object lock */
-  GList *devices;
+  GstObject                parent;
 };
 </pre>
-<p>The structure of the base <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p>
+<p>Opaque device monitor object structure.</p>
 <div class="refsect3">
-<a name="id-1.4.3.9.2.5"></a><h4>Members</h4>
+<a name="id-1.4.2.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
 <col class="struct_members_description">
 <col width="200px" class="struct_members_annotations">
 </colgroup>
-<tbody>
-<tr>
+<tbody><tr>
 <td class="struct_member_name"><p><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> <em class="structfield"><code><a name="GstDeviceMonitor.parent"></a>parent</code></em>;</p></td>
-<td class="struct_member_description"><p>The parent <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a></p></td>
+<td class="struct_member_description"><p>the parent <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> structure</p></td>
 <td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstDeviceMonitor.devices"></a>devices</code></em>;</p></td>
-<td class="struct_member_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of the <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> objects</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-</tbody>
+</tr></tbody>
 </table></div>
 </div>
 <p class="since">Since 1.4</p>
@@ -768,56 +474,23 @@
 <div class="refsect2">
 <a name="GstDeviceMonitorClass"></a><h3>struct GstDeviceMonitorClass</h3>
 <pre class="programlisting">struct GstDeviceMonitorClass {
-  GstObjectClass    parent_class;
-
-  GstDeviceMonitorFactory     *factory;
-
-  GList*      (*probe) (GstDeviceMonitor * monitor);
-
-  gboolean    (*start) (GstDeviceMonitor * monitor);
-  void        (*stop)  (GstDeviceMonitor * monitor);
+  GstObjectClass           parent_class;
 };
 </pre>
-<p>The structure of the base <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass" title="struct GstDeviceMonitorClass"><span class="type">GstDeviceMonitorClass</span></a></p>
+<p>Opaque device monitor class structure.</p>
 <div class="refsect3">
-<a name="id-1.4.3.9.3.5"></a><h4>Members</h4>
+<a name="id-1.4.2.8.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
 <col class="struct_members_description">
 <col width="200px" class="struct_members_annotations">
 </colgroup>
-<tbody>
-<tr>
+<tbody><tr>
 <td class="struct_member_name"><p><a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> <em class="structfield"><code><a name="GstDeviceMonitorClass.parent-class"></a>parent_class</code></em>;</p></td>
 <td class="struct_member_description"><p>the parent <a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> structure</p></td>
 <td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> *<em class="structfield"><code><a name="GstDeviceMonitorClass.factory"></a>factory</code></em>;</p></td>
-<td class="struct_member_description"><p>a pointer to the <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory"><span class="type">GstDeviceMonitorFactory</span></a> that creates this
-monitor</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><em class="structfield"><code><a name="GstDeviceMonitorClass.probe"></a>probe</code></em> ()</p></td>
-<td class="struct_member_description"><p>Returns a list of devices that are currently available.
-This should never block.</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><em class="structfield"><code><a name="GstDeviceMonitorClass.start"></a>start</code></em> ()</p></td>
-<td class="struct_member_description"><p>Starts monitoring for new devices. Only subclasses that can know
-that devices have been added or remove need to implement this method.</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><em class="structfield"><code><a name="GstDeviceMonitorClass.stop"></a>stop</code></em> ()</p></td>
-<td class="struct_member_description"><p>Stops monitoring for new devices. Only subclasses that implement
-the <code class="function">start()</code> method need to implement this method.</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-</tbody>
+</tr></tbody>
 </table></div>
 </div>
 <p class="since">Since 1.4</p>
@@ -825,11 +498,11 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstDeviceMonitor.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a></p>
+<p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p>
 </div>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstDeviceProvider.html b/docs/gst/html/gstreamer-GstDeviceProvider.html
new file mode 100644
index 0000000..037e927
--- /dev/null
+++ b/docs/gst/html/gstreamer-GstDeviceProvider.html
@@ -0,0 +1,813 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer 1.0 Core Reference Manual: GstDeviceProvider</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
+<link rel="up" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
+<link rel="prev" href="gstreamer-GstDevice.html" title="GstDevice">
+<link rel="next" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstDeviceProvider.description" class="shortcut">Description</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="gstreamer-device-probing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gstreamer-GstDevice.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="GstDeviceProviderFactory.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="gstreamer-GstDeviceProvider"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="gstreamer-GstDeviceProvider.top_of_page"></a>GstDeviceProvider</span></h2>
+<p>GstDeviceProvider — A device provider</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-can-monitor" title="gst_device_provider_can_monitor ()">gst_device_provider_can_monitor</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-metadata" title="gst_device_provider_class_add_metadata ()">gst_device_provider_class_add_metadata</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-static-metadata" title="gst_device_provider_class_add_static_metadata ()">gst_device_provider_class_add_static_metadata</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-get-metadata" title="gst_device_provider_class_get_metadata ()">gst_device_provider_class_get_metadata</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-metadata" title="gst_device_provider_class_set_metadata ()">gst_device_provider_class_set_metadata</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-static-metadata" title="gst_device_provider_class_set_static_metadata ()">gst_device_provider_class_set_static_metadata</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-device-add" title="gst_device_provider_device_add ()">gst_device_provider_device_add</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-device-remove" title="gst_device_provider_device_remove ()">gst_device_provider_device_remove</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="GstBus.html" title="GstBus"><span class="returnvalue">GstBus</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-get-bus" title="gst_device_provider_get_bus ()">gst_device_provider_get_bus</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-get-devices" title="gst_device_provider_get_devices ()">gst_device_provider_get_devices</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="returnvalue">GstDeviceProviderFactory</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-get-factory" title="gst_device_provider_get_factory ()">gst_device_provider_get_factory</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-register" title="gst_device_provider_register ()">gst_device_provider_register</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-start" title="gst_device_provider_start ()">gst_device_provider_start</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-stop" title="gst_device_provider_stop ()">gst_device_provider_stop</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider">GstDeviceProvider</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass">GstDeviceProviderClass</a></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;gst/gst.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.description"></a><h2>Description</h2>
+<p>A <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> subclass is provided by a plugin that handles devices
+if there is a way to programatically list connected devices. It can also
+optionally provide updates to the list of connected devices.</p>
+<p>Each <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> subclass is a singleton, a plugin should
+normally provide a single subclass for all devices.</p>
+<p>Applications would normally use a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> to monitor devices
+from all relevant providers.</p>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="gst-device-provider-can-monitor"></a><h3>gst_device_provider_can_monitor ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_device_provider_can_monitor (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-class-add-metadata"></a><h3>gst_device_provider_class_add_metadata ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_class_add_metadata
+                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a> *klass</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
+<p>Set <em class="parameter"><code>key</code></em>
+ with <em class="parameter"><code>value</code></em>
+ as metadata in <em class="parameter"><code>klass</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.3.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>class to set metadata for</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key to set</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p>the value to set</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-class-add-static-metadata"></a><h3>gst_device_provider_class_add_static_metadata ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_class_add_static_metadata
+                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a> *klass</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
+<p>Set <em class="parameter"><code>key</code></em>
+ with <em class="parameter"><code>value</code></em>
+ as metadata in <em class="parameter"><code>klass</code></em>
+.</p>
+<p>Same as <a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-metadata" title="gst_device_provider_class_add_metadata ()"><code class="function">gst_device_provider_class_add_metadata()</code></a>, but <em class="parameter"><code>value</code></em>
+ must be a static string
+or an inlined string, as it will not be copied. (GStreamer plugins will
+be made resident once loaded, so this function can be used even from
+dynamically loaded plugins.)</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.4.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>class to set metadata for</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key to set</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p> the value to set. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-class-get-metadata"></a><h3>gst_device_provider_class_get_metadata ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_device_provider_class_get_metadata
+                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a> *klass</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
+<p>Get metadata with <em class="parameter"><code>key</code></em>
+ in <em class="parameter"><code>klass</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.5.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>class to get metadata for</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key to get</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.5.6"></a><h4>Returns</h4>
+<p> the metadata for <em class="parameter"><code>key</code></em>
+.</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-class-set-metadata"></a><h3>gst_device_provider_class_set_metadata ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_class_set_metadata
+                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a> *klass</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
+<p>Sets the detailed information for a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a>.</p>
+<div class="note">This function is for use in _class_init functions only.</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.6.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>class to set metadata for</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>longname</p></td>
+<td class="parameter_description"><p>The long English name of the device provider. E.g. "File Sink"</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>classification</p></td>
+<td class="parameter_description"><p>String describing the type of device provider, as an
+unordered list separated with slashes ('/'). See draft-klass.txt of the
+design docs
+for more details and common types. E.g: "Sink/File"</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>description</p></td>
+<td class="parameter_description"><p>Sentence describing the purpose of the device provider.
+E.g: "Write stream to a file"</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>author</p></td>
+<td class="parameter_description"><p>Name and contact details of the author(s). Use \n to separate
+multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;"</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-class-set-static-metadata"></a><h3>gst_device_provider_class_set_static_metadata ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_class_set_static_metadata
+                               (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a> *klass</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre>
+<p>Sets the detailed information for a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a>.</p>
+<div class="note">This function is for use in _class_init functions only.</div>
+<p>Same as <a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-metadata" title="gst_device_provider_class_set_metadata ()"><code class="function">gst_device_provider_class_set_metadata()</code></a>, but <em class="parameter"><code>longname</code></em>
+, <em class="parameter"><code>classification</code></em>
+,
+<em class="parameter"><code>description</code></em>
+, and <em class="parameter"><code>author</code></em>
+ must be static strings or inlined strings, as
+they will not be copied. (GStreamer plugins will be made resident once
+loaded, so this function can be used even from dynamically loaded plugins.)</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.7.7"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>class to set metadata for</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>longname</p></td>
+<td class="parameter_description"><p> The long English name of the element. E.g. "File Sink". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>classification</p></td>
+<td class="parameter_description"><p> String describing the type of element, as
+an unordered list separated with slashes ('/'). See draft-klass.txt of the
+design docs for more details and common types. E.g: "Sink/File". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>description</p></td>
+<td class="parameter_description"><p> Sentence describing the purpose of the
+element.  E.g: "Write stream to a file". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>author</p></td>
+<td class="parameter_description"><p> Name and contact details of the author(s). Use \n
+to separate multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at
+foo.com&gt;". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-device-add"></a><h3>gst_device_provider_device_add ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_device_add (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>,
+                                <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
+<p>Posts a message on the provider's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> to inform applications that
+a new device has been added.</p>
+<p>This is for use by subclasses.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.8.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>device</p></td>
+<td class="parameter_description"><p> a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> that has been added. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-device-remove"></a><h3>gst_device_provider_device_remove ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_device_remove (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>,
+                                   <em class="parameter"><code><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> *device</code></em>);</pre>
+<p>Posts a message on the provider's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> to inform applications that
+a device has been removed.</p>
+<p>This is for use by subclasses.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.9.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>device</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> that has been removed</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-get-bus"></a><h3>gst_device_provider_get_bus ()</h3>
+<pre class="programlisting"><a class="link" href="GstBus.html" title="GstBus"><span class="returnvalue">GstBus</span></a> *
+gst_device_provider_get_bus (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>);</pre>
+<p>Gets the <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> of this <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p>
+<div class="refsect3">
+<a name="id-1.4.4.7.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.10.6"></a><h4>Returns</h4>
+<p> a <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-get-devices"></a><h3>gst_device_provider_get_devices ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_device_provider_get_devices (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>);</pre>
+<p>Gets a list of devices that this provider understands. This may actually
+probe the hardware if the provider is not currently started.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.11.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.11.6"></a><h4>Returns</h4>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+<a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstDevice]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-get-factory"></a><h3>gst_device_provider_get_factory ()</h3>
+<pre class="programlisting"><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="returnvalue">GstDeviceProviderFactory</span></a> *
+gst_device_provider_get_factory (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>);</pre>
+<p>Retrieves the factory that was used to create this device provider.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.12.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> to request the device provider factory of.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.12.6"></a><h4>Returns</h4>
+<p> the <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> used for
+creating this device provider. no refcounting is needed. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-register"></a><h3>gst_device_provider_register ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_device_provider_register (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+<p>Create a new device providerfactory capable of instantiating objects of the
+<em class="parameter"><code>type</code></em>
+ and add the factory to <em class="parameter"><code>plugin</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.13.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>plugin</p></td>
+<td class="parameter_description"><p> <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> to register the device provider with, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for
+a static device provider. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>name of device providers of this type</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>rank</p></td>
+<td class="parameter_description"><p>rank of device provider (higher rank means more importance when autoplugging)</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>GType of device provider to register</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.13.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the registering succeeded, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-start"></a><h3>gst_device_provider_start ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_device_provider_start (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>);</pre>
+<p>Starts providering the devices. This will cause <a class="link" href="GstMessage.html#GST-MESSAGE-DEVICE-ADDED:CAPS"><span class="type">GST_MESSAGE_DEVICE_ADDED</span></a>
+and <a class="link" href="GstMessage.html#GST-MESSAGE-DEVICE-REMOVED:CAPS"><span class="type">GST_MESSAGE_DEVICE_REMOVED</span></a> messages to be posted on the provider's bus
+when devices are added or removed from the system.</p>
+<p>Since the <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> is a singleton,
+<a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-start" title="gst_device_provider_start ()"><code class="function">gst_device_provider_start()</code></a> may already have been called by another
+user of the object, <a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-stop" title="gst_device_provider_stop ()"><code class="function">gst_device_provider_stop()</code></a> needs to be called the same
+number of times.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.14.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.4.4.7.14.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device providering could be started</p>
+<p></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-device-provider-stop"></a><h3>gst_device_provider_stop ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_device_provider_stop (<em class="parameter"><code><a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> *provider</code></em>);</pre>
+<p>Decreases the use-count by one. If the use count reaches zero, this
+<a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a> will stop providering the devices. This needs to be
+called the same number of times that <a class="link" href="gstreamer-GstDeviceProvider.html#gst-device-provider-start" title="gst_device_provider_start ()"><code class="function">gst_device_provider_start()</code></a> was called.</p>
+<div class="refsect3">
+<a name="id-1.4.4.7.15.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>provider</p></td>
+<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstDeviceProvider"></a><h3>struct GstDeviceProvider</h3>
+<pre class="programlisting">struct GstDeviceProvider {
+  GstObject         parent;
+
+  /* Protected by the Object lock */
+  GList *devices;
+};
+</pre>
+<p>The structure of the base <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProvider" title="struct GstDeviceProvider"><span class="type">GstDeviceProvider</span></a></p>
+<div class="refsect3">
+<a name="id-1.4.4.8.2.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> <em class="structfield"><code><a name="GstDeviceProvider.parent"></a>parent</code></em>;</p></td>
+<td class="struct_member_description"><p>The parent <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a></p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstDeviceProvider.devices"></a>devices</code></em>;</p></td>
+<td class="struct_member_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of the <a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a> objects</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstDeviceProviderClass"></a><h3>struct GstDeviceProviderClass</h3>
+<pre class="programlisting">struct GstDeviceProviderClass {
+  GstObjectClass    parent_class;
+
+  GstDeviceProviderFactory     *factory;
+
+  GList*      (*probe) (GstDeviceProvider * provider);
+
+  gboolean    (*start) (GstDeviceProvider * provider);
+  void        (*stop)  (GstDeviceProvider * provider);
+};
+</pre>
+<p>The structure of the base <a class="link" href="gstreamer-GstDeviceProvider.html#GstDeviceProviderClass" title="struct GstDeviceProviderClass"><span class="type">GstDeviceProviderClass</span></a></p>
+<div class="refsect3">
+<a name="id-1.4.4.8.3.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> <em class="structfield"><code><a name="GstDeviceProviderClass.parent-class"></a>parent_class</code></em>;</p></td>
+<td class="struct_member_description"><p>the parent <a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> structure</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> *<em class="structfield"><code><a name="GstDeviceProviderClass.factory"></a>factory</code></em>;</p></td>
+<td class="struct_member_description"><p>a pointer to the <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory"><span class="type">GstDeviceProviderFactory</span></a> that creates this
+provider</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><em class="structfield"><code><a name="GstDeviceProviderClass.probe"></a>probe</code></em> ()</p></td>
+<td class="struct_member_description"><p>Returns a list of devices that are currently available.
+This should never block.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><em class="structfield"><code><a name="GstDeviceProviderClass.start"></a>start</code></em> ()</p></td>
+<td class="struct_member_description"><p>Starts monitoring for new devices. Only subclasses that can know
+that devices have been added or remove need to implement this method.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><em class="structfield"><code><a name="GstDeviceProviderClass.stop"></a>stop</code></em> ()</p></td>
+<td class="struct_member_description"><p>Stops monitoring for new devices. Only subclasses that implement
+the <code class="function">start()</code> method need to implement this method.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstDeviceProvider.see-also"></a><h2>See Also</h2>
+<p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p>
+</div>
+</div>
+<div class="footer">
+<hr>
+          Generated by GTK-Doc V1.21</div>
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstFormat.html b/docs/gst/html/gstreamer-GstFormat.html
index 29b6001..9dc401a 100644
--- a/docs/gst/html/gstreamer-GstFormat.html
+++ b/docs/gst/html/gstreamer-GstFormat.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstEvent.html" title="GstEvent">
 <link rel="next" href="GstGhostPad.html" title="GstGhostPad">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstFormat.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstFormat.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstFormat.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -41,7 +40,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstFormat.html#gst-format-get-name" title="gst_format_get_name ()">gst_format_get_name</a> <span class="c_punctuation">()</span>
@@ -49,7 +48,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstFormat.html#gst-format-to-quark" title="gst_format_to_quark ()">gst_format_to_quark</a> <span class="c_punctuation">()</span>
@@ -73,7 +72,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstFormat.html#gst-formats-contains" title="gst_formats_contains ()">gst_formats_contains</a> <span class="c_punctuation">()</span>
@@ -125,11 +124,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstFormat.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstFormat.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -144,11 +138,11 @@
 <a name="gstreamer-GstFormat.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-format-get-name"></a><h3>gst_format_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_format_get_name (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);</pre>
 <p>Get a printable name for the given format. Do not modify or free.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.25.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -163,20 +157,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.25.8.2.6"></a><h4>Returns</h4>
-<p> a reference to the static name of the format or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
-the format is unknown.</p>
-<p></p>
+<a name="id-1.3.25.7.2.6"></a><h4>Returns</h4>
+<p> a reference to the static name of the format
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the format is unknown. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-format-to-quark"></a><h3>gst_format_to_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_format_to_quark (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);</pre>
 <p>Get the unique quark for the given format.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.25.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -191,7 +185,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.25.8.3.6"></a><h4>Returns</h4>
+<a name="id-1.3.25.7.3.6"></a><h4>Returns</h4>
 <p> the quark associated with the format or 0 if the format
 is unknown.</p>
 <p></p>
@@ -201,12 +195,12 @@
 <div class="refsect2">
 <a name="gst-format-register"></a><h3>gst_format_register ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="returnvalue">GstFormat</span></a>
-gst_format_register (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>);</pre>
+gst_format_register (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>);</pre>
 <p>Create a new GstFormat based on the nick or return an
 already registered format with that nick.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.25.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -228,7 +222,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.25.8.4.6"></a><h4>Returns</h4>
+<a name="id-1.3.25.7.4.6"></a><h4>Returns</h4>
 <p> A new GstFormat or an already registered format
 with the same nick.</p>
 <p>MT safe.</p>
@@ -239,10 +233,10 @@
 <div class="refsect2">
 <a name="gst-format-get-by-nick"></a><h3>gst_format_get_by_nick ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="returnvalue">GstFormat</span></a>
-gst_format_get_by_nick (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>);</pre>
+gst_format_get_by_nick (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>);</pre>
 <p>Return the format registered with the given nick.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.25.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -257,7 +251,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.25.8.5.6"></a><h4>Returns</h4>
+<a name="id-1.3.25.7.5.6"></a><h4>Returns</h4>
 <p> The format with <em class="parameter"><code>nick</code></em>
 or GST_FORMAT_UNDEFINED
 if the format was not registered.</p>
@@ -267,12 +261,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-formats-contains"></a><h3>gst_formats_contains ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_formats_contains (<em class="parameter"><code>const <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *formats</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);</pre>
 <p>See if the given format is inside the format array.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.25.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -294,8 +288,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.25.8.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the format is found inside the array</p>
+<a name="id-1.3.25.7.6.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the format is found inside the array</p>
 <p></p>
 </div>
 </div>
@@ -306,7 +300,7 @@
 gst_format_get_details (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);</pre>
 <p>Get details about the given format.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.25.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -321,11 +315,12 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.25.8.7.6"></a><h4>Returns</h4>
+<a name="id-1.3.25.7.7.6"></a><h4>Returns</h4>
 <p> The <a class="link" href="gstreamer-GstFormat.html#GstFormatDefinition" title="struct GstFormatDefinition"><span class="type">GstFormatDefinition</span></a> for <em class="parameter"><code>format</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure.</p>
-<p>MT safe.</p>
-<p></p>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+on failure.</p>
+<p>MT safe. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -336,7 +331,7 @@
 <p>Iterate all the registered formats. The format definition is read
 only.</p>
 <div class="refsect3">
-<a name="id-1.3.25.8.8.5"></a><h4>Returns</h4>
+<a name="id-1.3.25.7.8.5"></a><h4>Returns</h4>
 <p> a GstIterator of <a class="link" href="gstreamer-GstFormat.html#GstFormatDefinition" title="struct GstFormatDefinition"><span class="type">GstFormatDefinition</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -348,7 +343,7 @@
 <a name="GstFormat"></a><h3>enum GstFormat</h3>
 <p>Standard predefined formats</p>
 <div class="refsect3">
-<a name="id-1.3.25.9.2.4"></a><h4>Members</h4>
+<a name="id-1.3.25.8.2.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -435,7 +430,7 @@
 </pre>
 <p>A format definition</p>
 <div class="refsect3">
-<a name="id-1.3.25.9.5.5"></a><h4>Members</h4>
+<a name="id-1.3.25.8.5.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -449,17 +444,17 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstFormatDefinition.nick"></a>nick</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstFormatDefinition.nick"></a>nick</code></em>;</p></td>
 <td class="struct_member_description"><p>A short nick of the format</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstFormatDefinition.description"></a>description</code></em>;</p></td>
+<td class="struct_member_name"><p>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstFormatDefinition.description"></a>description</code></em>;</p></td>
 <td class="struct_member_description"><p>A longer description of the format</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> <em class="structfield"><code><a name="GstFormatDefinition.quark"></a>quark</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> <em class="structfield"><code><a name="GstFormatDefinition.quark"></a>quark</code></em>;</p></td>
 <td class="struct_member_description"><p>A quark for the nick</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -475,6 +470,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstGError.html b/docs/gst/html/gstreamer-GstGError.html
index 5681d4a..0de5808 100644
--- a/docs/gst/html/gstreamer-GstGError.html
+++ b/docs/gst/html/gstreamer-GstGError.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstElementFactory.html" title="GstElementFactory">
 <link rel="next" href="GstEvent.html" title="GstEvent">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstGError.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstGError.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstGError.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -46,7 +45,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstGError.html#gst-error-get-message" title="gst_error_get_message ()">gst_error_get_message</a> <span class="c_punctuation">()</span>
@@ -99,11 +98,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstGError.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstGError.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -117,8 +111,8 @@
 <p>The rest of this section will use the term <span class="quote">“<span class="quote">error</span>”</span>
 to mean both (non-fatal) warnings and (fatal) errors; they are treated
 similarly.</p>
-<p>Errors from elements are the combination of a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> and a debug string.
-The <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> contains:</p>
+<p>Errors from elements are the combination of a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> and a debug string.
+The <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> contains:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
 <li class="listitem"><p>a domain type: CORE, LIBRARY, RESOURCE or STREAM</p></li>
 <li class="listitem"><p>a code: an enum value specific to the domain</p></li>
@@ -148,7 +142,7 @@
 to use another sink instead.</p>
 <p>Elements throw errors using the <a class="link" href="GstElement.html#GST-ELEMENT-ERROR:CAPS" title="GST_ELEMENT_ERROR()"><span class="type">GST_ELEMENT_ERROR</span></a> convenience macro:</p>
 <div class="example">
-<a name="id-1.3.23.7.12"></a><p class="title"><b>Example 5. Throwing an error</b></p>
+<a name="id-1.3.23.6.12"></a><p class="title"><b>Example 5. Throwing an error</b></p>
 <div class="example-contents">
   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
     <tbody>
@@ -156,7 +150,7 @@
         <td class="listing_lines" align="right"><pre>1
 2</pre></td>
         <td class="listing_code"><pre class="programlisting"><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-ELEMENT-ERROR:CAPS">GST_ELEMENT_ERROR</a></span> <span class="gtkdoc opt">(</span>src<span class="gtkdoc opt">,</span> RESOURCE<span class="gtkdoc opt">,</span> NOT_FOUND<span class="gtkdoc opt">,</span>
-  <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-I18N.html#gettext-macro">_</a></span><span class="gtkdoc opt">(</span><span class="string">&quot;No file name specified for reading.&quot;</span><span class="gtkdoc opt">)), (</span>NULL<span class="gtkdoc opt">));</span></pre></td>
+  <span class="gtkdoc opt">(</span><span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-I18N.html#gettext-macro">_</a></span><span class="gtkdoc opt">(</span><span class="string">&quot;No file name specified for reading.&quot;</span><span class="gtkdoc opt">)), (</span>NULL<span class="gtkdoc opt">));</span></pre></td>
       </tr>
     </tbody>
   </table>
@@ -169,7 +163,7 @@
     currently provided should be enough.  If you find your type of error
     does not fit the current codes, you should use FAILED.</p></li>
 <li class="listitem"><p>Don't provide a message if the default one suffices.
-    this keeps messages more uniform.  Use (<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>) - not forgetting the
+    this keeps messages more uniform.  Use (<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>) - not forgetting the
     parentheses.</p></li>
 <li class="listitem"><p>If you do supply a custom message, it should be
     marked for translation.  The message should start with a capital
@@ -178,7 +172,7 @@
     A user interface will present this message as the first thing a user
     sees.  Details, technical info, ... should go in the debug string.
   </p></li>
-<li class="listitem"><p>The debug string can be as you like.  Again, use (<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>)
+<li class="listitem"><p>The debug string can be as you like.  Again, use (<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>)
     if there's nothing to add - file and line number will still be
     passed.  <a class="link" href="gstreamer-GstGError.html#GST-ERROR-SYSTEM:CAPS" title="GST_ERROR_SYSTEM"><span class="type">GST_ERROR_SYSTEM</span></a> can be used as a shortcut to give
     debug information on a system call error.</p></li>
@@ -196,12 +190,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-error-get-message"></a><h3>gst_error_get_message ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_error_get_message (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_error_get_message (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>);</pre>
 <p>Get a string describing the error message in the current locale.</p>
 <div class="refsect3">
-<a name="id-1.3.23.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.23.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -223,7 +217,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.23.8.3.6"></a><h4>Returns</h4>
+<a name="id-1.3.23.7.3.6"></a><h4>Returns</h4>
 <p> a newly allocated string describing
 the error message (in UTF-8 encoding). </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -236,7 +230,7 @@
 <a name="GstCoreError"></a><h3>enum GstCoreError</h3>
 <p>Core errors are errors inside the core GStreamer library.</p>
 <div class="refsect3">
-<a name="id-1.3.23.9.2.4"></a><h4>Members</h4>
+<a name="id-1.3.23.8.2.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -363,7 +357,7 @@
 <p>Library errors are for errors from the library being used by elements
 (initializing, finalizing, settings, ...)</p>
 <div class="refsect3">
-<a name="id-1.3.23.9.3.4"></a><h4>Members</h4>
+<a name="id-1.3.23.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -433,7 +427,7 @@
 memory, files, network connections, process space, ...
 They're typically used by source and sink elements.</p>
 <div class="refsect3">
-<a name="id-1.3.23.9.4.4"></a><h4>Members</h4>
+<a name="id-1.3.23.8.4.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -569,7 +563,7 @@
 format errors, media type errors, ...
 They're typically used by decoders, demuxers, converters, ...</p>
 <div class="refsect3">
-<a name="id-1.3.23.9.5.4"></a><h4>Members</h4>
+<a name="id-1.3.23.8.5.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -695,7 +689,7 @@
 </pre>
 <p>Error domain for core system. Errors in this domain will
 be from the <a class="link" href="gstreamer-GstGError.html#GstCoreError" title="enum GstCoreError"><span class="type">GstCoreError</span></a> enumeration.
-See <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
+See <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
 </div>
 <hr>
 <div class="refsect2">
@@ -704,7 +698,7 @@
 </pre>
 <p>Error domain for library loading. Errors in this domain will
 be from the <a class="link" href="gstreamer-GstGError.html#GstLibraryError" title="enum GstLibraryError"><span class="type">GstLibraryError</span></a> enumeration.
-See <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
+See <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
 </div>
 <hr>
 <div class="refsect2">
@@ -713,7 +707,7 @@
 </pre>
 <p>Error domain for resource handling. Errors in this domain will
 be from the <a class="link" href="gstreamer-GstGError.html#GstResourceError" title="enum GstResourceError"><span class="type">GstResourceError</span></a> enumeration.
-See <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
+See <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
 </div>
 <hr>
 <div class="refsect2">
@@ -722,7 +716,7 @@
 </pre>
 <p>Error domain for media stream processing. Errors in this domain will
 be from the <a class="link" href="gstreamer-GstGError.html#GstStreamError" title="enum GstStreamError"><span class="type">GstStreamError</span></a> enumeration.
-See <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
+See <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for information on error domains.</p>
 </div>
 </div>
 <div class="refsect1">
@@ -732,6 +726,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstGlobalDeviceMonitor.html b/docs/gst/html/gstreamer-GstGlobalDeviceMonitor.html
deleted file mode 100644
index 4647794..0000000
--- a/docs/gst/html/gstreamer-GstGlobalDeviceMonitor.html
+++ /dev/null
@@ -1,468 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GStreamer 1.0 Core Reference Manual: GstGlobalDeviceMonitor</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
-<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
-<link rel="up" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
-<link rel="prev" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">
-<link rel="next" href="gstreamer-support.html" title="GStreamer Core Support">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstGlobalDeviceMonitor.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstGlobalDeviceMonitor.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gstreamer-device-probing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="GstDeviceMonitorFactory.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gstreamer-support.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="gstreamer-GstGlobalDeviceMonitor"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="gstreamer-GstGlobalDeviceMonitor.top_of_page"></a>GstGlobalDeviceMonitor</span></h2>
-<p>GstGlobalDeviceMonitor — A global device monitor and prober</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="GstBus.html" title="GstBus"><span class="returnvalue">GstBus</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-bus" title="gst_global_device_monitor_get_bus ()">gst_global_device_monitor_get_bus</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-caps-filter" title="gst_global_device_monitor_get_caps_filter ()">gst_global_device_monitor_get_caps_filter</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-classes-filter" title="gst_global_device_monitor_get_classes_filter ()">gst_global_device_monitor_get_classes_filter</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-devices" title="gst_global_device_monitor_get_devices ()">gst_global_device_monitor_get_devices</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="returnvalue">GstGlobalDeviceMonitor</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-new" title="gst_global_device_monitor_new ()">gst_global_device_monitor_new</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-caps-filter" title="gst_global_device_monitor_set_caps_filter ()">gst_global_device_monitor_set_caps_filter</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-classes-filter" title="gst_global_device_monitor_set_classes_filter ()">gst_global_device_monitor_set_classes_filter</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-start" title="gst_global_device_monitor_start ()">gst_global_device_monitor_start</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-stop" title="gst_global_device_monitor_stop ()">gst_global_device_monitor_stop</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor">GstGlobalDeviceMonitor</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitorClass" title="struct GstGlobalDeviceMonitorClass">GstGlobalDeviceMonitorClass</a></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.includes"></a><h2>Includes</h2>
-<pre class="synopsis">#include &lt;gst/gst.h&gt;
-</pre>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.description"></a><h2>Description</h2>
-<p>Applications should create a <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> when they want
-to probe, list and monitor devices of a specific type. The
-<a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> will create the appropriate
-<a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a> objects and manage them. It will then post
-messages on its <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> for devices that have been added and
-removed.</p>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="gst-global-device-monitor-get-bus"></a><h3>gst_global_device_monitor_get_bus ()</h3>
-<pre class="programlisting"><a class="link" href="GstBus.html" title="GstBus"><span class="returnvalue">GstBus</span></a> *
-gst_global_device_monitor_get_bus (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Gets the <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> of this <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a></p>
-<div class="refsect3">
-<a name="id-1.4.5.8.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.5.8.2.6"></a><h4>Returns</h4>
-<p> a <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-get-caps-filter"></a><h3>gst_global_device_monitor_get_caps_filter ()</h3>
-<pre class="programlisting"><a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
-gst_global_device_monitor_get_caps_filter
-                               (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Get the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> filter set by <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-caps-filter" title="gst_global_device_monitor_set_caps_filter ()"><code class="function">gst_global_device_monitor_set_caps_filter()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>a global device monitor</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.5.8.3.6"></a><h4>Returns</h4>
-<p> the filter caps that are active (or ANY caps). </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-get-classes-filter"></a><h3>gst_global_device_monitor_get_classes_filter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_global_device_monitor_get_classes_filter
-                               (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Return the type (device classes) filter active for device filtering.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>the global device monitor</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.5.8.4.6"></a><h4>Returns</h4>
-<p> string of device classes that are being filtered.</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-get-devices"></a><h3>gst_global_device_monitor_get_devices ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
-gst_global_device_monitor_get_devices (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Gets a list of devices from all of the relevant monitors. This may actually
-probe the hardware if the global monitor is not currently started.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.5.8.5.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
-<a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstDevice]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-new"></a><h3>gst_global_device_monitor_new ()</h3>
-<pre class="programlisting"><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="returnvalue">GstGlobalDeviceMonitor</span></a> *
-gst_global_device_monitor_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Create a new <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a></p>
-<div class="refsect3">
-<a name="id-1.4.5.8.6.5"></a><h4>Returns</h4>
-<p> a new global device monitor. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-set-caps-filter"></a><h3>gst_global_device_monitor_set_caps_filter ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_global_device_monitor_set_caps_filter
-                               (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>,
-                                <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
-<p>Set caps to use as filter for devices. By default ANY caps are used,
-meaning no caps filter is active.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>the global device monitor</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>caps</p></td>
-<td class="parameter_description"><p>caps to filter</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-set-classes-filter"></a><h3>gst_global_device_monitor_set_classes_filter ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_global_device_monitor_set_classes_filter
-                               (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classes</code></em>);</pre>
-<p>Filter devices monitored by device class, e.g. in case you are only
-interested in a certain type of device like audio devices or
-video sources.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>the global device monitor</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>classes</p></td>
-<td class="parameter_description"><p>device classes to use as filter</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-start"></a><h3>gst_global_device_monitor_start ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_global_device_monitor_start (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Starts monitoring the devices, one this has succeeded, the
-<a class="link" href="GstMessage.html#GST-MESSAGE-DEVICE-ADDED:CAPS"><code class="literal">GST_MESSAGE_DEVICE_ADDED</code></a> and <a class="link" href="GstMessage.html#GST-MESSAGE-DEVICE-REMOVED:CAPS"><code class="literal">GST_MESSAGE_DEVICE_REMOVED</code></a> messages
-will be emitted on the bus when the list of devices changes.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.5.8.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device monitoring could be started</p>
-<p></p>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-global-device-monitor-stop"></a><h3>gst_global_device_monitor_stop ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_global_device_monitor_stop (<em class="parameter"><code><a class="link" href="gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor" title="struct GstGlobalDeviceMonitor"><span class="type">GstGlobalDeviceMonitor</span></a> *monitor</code></em>);</pre>
-<p>Stops monitoring the devices.</p>
-<div class="refsect3">
-<a name="id-1.4.5.8.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>monitor</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GstGlobalDeviceMonitor"></a><h3>struct GstGlobalDeviceMonitor</h3>
-<pre class="programlisting">struct GstGlobalDeviceMonitor {
-  GstObject                parent;
-};
-</pre>
-<p>Opaque global device monitor object structure.</p>
-<div class="refsect3">
-<a name="id-1.4.5.9.2.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
-</colgroup>
-<tbody><tr>
-<td class="struct_member_name"><p><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> <em class="structfield"><code><a name="GstGlobalDeviceMonitor.parent"></a>parent</code></em>;</p></td>
-<td class="struct_member_description"><p>the parent <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> structure</p></td>
-<td class="struct_member_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GstGlobalDeviceMonitorClass"></a><h3>struct GstGlobalDeviceMonitorClass</h3>
-<pre class="programlisting">struct GstGlobalDeviceMonitorClass {
-  GstObjectClass           parent_class;
-};
-</pre>
-<p>Opaque global device monitor class structure.</p>
-<div class="refsect3">
-<a name="id-1.4.5.9.3.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
-</colgroup>
-<tbody><tr>
-<td class="struct_member_name"><p><a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> <em class="structfield"><code><a name="GstGlobalDeviceMonitorClass.parent-class"></a>parent_class</code></em>;</p></td>
-<td class="struct_member_description"><p>the parent <a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> structure</p></td>
-<td class="struct_member_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.4</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="gstreamer-GstGlobalDeviceMonitor.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="gstreamer-GstDevice.html#GstDevice" title="struct GstDevice"><span class="type">GstDevice</span></a>, <a class="link" href="gstreamer-GstDeviceMonitor.html#GstDeviceMonitor" title="struct GstDeviceMonitor"><span class="type">GstDeviceMonitor</span></a></p>
-</div>
-</div>
-<div class="footer">
-<hr>
-          Generated by GTK-Doc V1.20</div>
-</body>
-</html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstInfo.html b/docs/gst/html/gstreamer-GstInfo.html
index 870d8cf..c36dac7 100644
--- a/docs/gst/html/gstreamer-GstInfo.html
+++ b/docs/gst/html/gstreamer-GstInfo.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-support.html" title="GStreamer Core Support">
 <link rel="prev" href="gstreamer-support.html" title="GStreamer Core Support">
 <link rel="next" href="gstreamer-hierarchy.html" title="Object Hierarchy">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstInfo.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstInfo.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstInfo.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-support.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -81,7 +80,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-message-get" title="gst_debug_message_get ()">gst_debug_message_get</a> <span class="c_punctuation">()</span>
@@ -96,7 +95,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-level-get-name" title="gst_debug_level_get_name ()">gst_debug_level_get_name</a> <span class="c_punctuation">()</span>
@@ -112,7 +111,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-remove-log-function" title="gst_debug_remove_log_function ()">gst_debug_remove_log_function</a> <span class="c_punctuation">()</span>
@@ -120,7 +119,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-remove-log-function-by-data" title="gst_debug_remove_log_function_by_data ()">gst_debug_remove_log_function_by_data</a> <span class="c_punctuation">()</span>
@@ -136,7 +135,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-is-active" title="gst_debug_is_active ()">gst_debug_is_active</a> <span class="c_punctuation">()</span>
@@ -168,7 +167,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-is-colored" title="gst_debug_is_colored ()">gst_debug_is_colored</a> <span class="c_punctuation">()</span>
@@ -285,7 +284,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-category-get-name" title="gst_debug_category_get_name ()">gst_debug_category_get_name</a> <span class="c_punctuation">()</span>
@@ -293,14 +292,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-category-get-color" title="gst_debug_category_get_color ()">gst_debug_category_get_color</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-category-get-description" title="gst_debug_category_get_description ()">gst_debug_category_get_description</a> <span class="c_punctuation">()</span>
@@ -308,7 +307,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-get-all-categories" title="gst_debug_get_all_categories ()">gst_debug_get_all_categories</a> <span class="c_punctuation">()</span>
@@ -316,7 +315,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-construct-term-color" title="gst_debug_construct_term_color ()">gst_debug_construct_term_color</a> <span class="c_punctuation">()</span>
@@ -324,7 +323,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-construct-win-color" title="gst_debug_construct_win_color ()">gst_debug_construct_win_color</a> <span class="c_punctuation">()</span>
@@ -608,6 +607,10 @@
 <td class="function_name"><a class="link" href="gstreamer-GstInfo.html#GST-LEVEL-DEFAULT:CAPS" title="GST_LEVEL_DEFAULT">GST_LEVEL_DEFAULT</a></td>
 </tr>
 <tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gstreamer-GstInfo.html#GST-LEVEL-MAX:CAPS" title="GST_LEVEL_MAX">GST_LEVEL_MAX</a></td>
+</tr>
+<tr>
 <td class="datatype_keyword">enum</td>
 <td class="function_name"><a class="link" href="gstreamer-GstInfo.html#GstDebugColorFlags" title="enum GstDebugColorFlags">GstDebugColorFlags</a></td>
 </tr>
@@ -624,6 +627,10 @@
 <td class="function_name"><a class="link" href="gstreamer-GstInfo.html#GstDebugGraphDetails" title="enum GstDebugGraphDetails">GstDebugGraphDetails</a></td>
 </tr>
 <tr>
+<td class="variable_type">extern</td>
+<td class="function_name"><a class="link" href="gstreamer-GstInfo.html#GST-CAT-DEFAULT:CAPS" title="GST_CAT_DEFAULT">GST_CAT_DEFAULT</a></td>
+</tr>
+<tr>
 <td class="define_keyword">#define</td>
 <td class="function_name"><a class="link" href="gstreamer-GstInfo.html#GST-TIME-FORMAT:CAPS" title="GST_TIME_FORMAT">GST_TIME_FORMAT</a></td>
 </tr>
@@ -631,11 +638,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstInfo.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstInfo.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -650,7 +652,7 @@
 <p>The debugging subsystem is used to log informational messages while the
 application runs.  Each messages has some properties attached to it. Among
 these properties are the debugging category, the severity (called "level"
-here) and an optional <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> it belongs to. Each of these messages is sent
+here) and an optional <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> it belongs to. Each of these messages is sent
 to all registered debugging handlers, which then handle the messages.
 GStreamer attaches a default handler on startup, which outputs requested
 messages to stderr.</p>
@@ -716,13 +718,13 @@
 <a name="GST-STR-NULL:CAPS"></a><h3>GST_STR_NULL()</h3>
 <pre class="programlisting">#define GST_STR_NULL(str) ((str) ? (str) : "(NULL)")
 </pre>
-<p>Macro to use when a string must not be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, but may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. If the string
-is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, "(NULL)" is printed instead.
-In GStreamer printf string arguments may not be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, because on some
+<p>Macro to use when a string must not be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, but may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. If the string
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, "(NULL)" is printed instead.
+In GStreamer printf string arguments may not be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, because on some
 platforms (ie Solaris) the libc crashes in that case. This includes debugging
 strings.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -731,8 +733,8 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>str</p></td>
-<td class="parameter_description"><p>The string to check.</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> The string to check. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -744,7 +746,7 @@
 <p>Evaluates to 2 strings, that describe the pad. Often used in debugging
 statements.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -777,17 +779,17 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstLogFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>,
                    <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> level</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
                    <em class="parameter"><code><span class="type">GstDebugMessage</span> *message</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Function prototype for a logging function that can be registered with
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-add-log-function" title="gst_debug_add_log_function ()"><code class="function">gst_debug_add_log_function()</code></a>.
 Use G_GNUC_NO_INSTRUMENT on that function.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -822,7 +824,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -845,15 +847,15 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_debug_log (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>,
                <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> level</code></em>,
-               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
-               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
-               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
-               <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
-               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *format</code></em>,
+               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
+               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
+               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
+               <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
+               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *format</code></em>,
                <em class="parameter"><code>...</code></em>);</pre>
 <p>Logs the given message using the currently registered debugging handlers.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -889,8 +891,8 @@
 <tr>
 <td class="parameter_name"><p>object</p></td>
 <td class="parameter_description"><p> the object this message relates to,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
@@ -912,15 +914,15 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_debug_log_valist (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> level</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *format</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *format</code></em>,
                       <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
 <p>Logs the given message using the currently registered debugging handlers.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -956,8 +958,8 @@
 <tr>
 <td class="parameter_name"><p>object</p></td>
 <td class="parameter_description"><p> the object this message relates to,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
@@ -976,12 +978,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-message-get"></a><h3>gst_debug_message_get ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_debug_message_get (<em class="parameter"><code><span class="type">GstDebugMessage</span> *message</code></em>);</pre>
 <p>Gets the string representation of a <span class="type">GstDebugMessage</span>. This function is used
 in debug handlers to extract the message.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -996,7 +998,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.8.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.8.6"></a><h4>Returns</h4>
 <p> the string representation of a <span class="type">GstDebugMessage</span>.</p>
 <p></p>
 </div>
@@ -1007,21 +1009,23 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_debug_log_default (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> level</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
                        <em class="parameter"><code><span class="type">GstDebugMessage</span> *message</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> unused</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>The default logging handler used by GStreamer. Logging functions get called
-whenever a macro like GST_DEBUG or similar is used. This function outputs the
-message and additional info to stderr (or the log file specified via the
-GST_DEBUG_FILE environment variable).</p>
+whenever a macro like GST_DEBUG or similar is used. By default this function
+is setup to output the message and additional info to stderr (or the log file
+specified via the GST_DEBUG_FILE environment variable) as received via
+<em class="parameter"><code>user_data</code></em>
+.</p>
 <p>You can add other handlers by using <a class="link" href="gstreamer-GstInfo.html#gst-debug-add-log-function" title="gst_debug_add_log_function ()"><code class="function">gst_debug_add_log_function()</code></a>.
 And you can remove this handler by calling
 gst_debug_remove_log_function(gst_debug_log_default);</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.9.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.9.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1062,12 +1066,12 @@
 <tr>
 <td class="parameter_name"><p>object</p></td>
 <td class="parameter_description"><p> the object this message relates to,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
-<td class="parameter_name"><p>unused</p></td>
-<td class="parameter_description"><p>an unused variable, reserved for some user_data.</p></td>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>the FILE* to log to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1077,11 +1081,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-level-get-name"></a><h3>gst_debug_level_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_debug_level_get_name (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> level</code></em>);</pre>
 <p>Get the string representation of a debugging level</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1096,7 +1100,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.10.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.10.6"></a><h4>Returns</h4>
 <p> the name</p>
 <p></p>
 </div>
@@ -1106,12 +1110,12 @@
 <a name="gst-debug-add-log-function"></a><h3>gst_debug_add_log_function ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_debug_add_log_function (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstLogFunction" title="GstLogFunction ()"><span class="type">GstLogFunction</span></a> func</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre>
 <p>Adds the logging function to the list of logging functions.
-Be sure to use <a href="http://library.gnome.org/devel/glib/unstable/glib-Miscellaneous-Macros.html#G-GNUC-NO-INSTRUMENT:CAPS"><span class="type">G_GNUC_NO_INSTRUMENT</span></a> on that function, it is needed.</p>
+Be sure to use <a href="https://developer.gnome.org/glib/unstable/glib-Miscellaneous-Macros.html#G-GNUC-NO-INSTRUMENT:CAPS"><span class="type">G_GNUC_NO_INSTRUMENT</span></a> on that function, it is needed.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1142,11 +1146,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-remove-log-function"></a><h3>gst_debug_remove_log_function ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_debug_remove_log_function (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstLogFunction" title="GstLogFunction ()"><span class="type">GstLogFunction</span></a> func</code></em>);</pre>
 <p>Removes all registered instances of the given logging functions.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1161,7 +1165,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.12.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.12.6"></a><h4>Returns</h4>
 <p> How many instances of the function were removed</p>
 <p></p>
 </div>
@@ -1169,11 +1173,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-remove-log-function-by-data"></a><h3>gst_debug_remove_log_function_by_data ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
-gst_debug_remove_log_function_by_data (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_debug_remove_log_function_by_data (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Removes all registered instances of log functions with the given user data.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1188,7 +1192,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.13.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.13.6"></a><h4>Returns</h4>
 <p> How many instances of the function were removed</p>
 <p></p>
 </div>
@@ -1197,14 +1201,14 @@
 <div class="refsect2">
 <a name="gst-debug-set-active"></a><h3>gst_debug_set_active ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_debug_set_active (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+gst_debug_set_active (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>If activated, debugging messages are sent to the debugging
 handlers.
 It makes sense to deactivate it for speed issues.</p>
 <div class="note"><p>This function is not threadsafe. It makes sense to only call it
 during initialization.</p></div>
 <div class="refsect3">
-<a name="id-1.5.3.8.14.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.14.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1222,12 +1226,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-is-active"></a><h3>gst_debug_is_active ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_debug_is_active (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Checks if debugging output is activated.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.15.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if debugging is activated</p>
+<a name="id-1.5.3.7.15.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if debugging is activated</p>
 <p></p>
 </div>
 </div>
@@ -1235,13 +1239,13 @@
 <div class="refsect2">
 <a name="gst-debug-set-colored"></a><h3>gst_debug_set_colored ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_debug_set_colored (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> colored</code></em>);</pre>
+gst_debug_set_colored (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> colored</code></em>);</pre>
 <p>Sets or unsets the use of coloured debugging output.
 Same as <a class="link" href="gstreamer-GstInfo.html#gst-debug-set-color-mode" title="gst_debug_set_color_mode ()"><code class="function">gst_debug_set_color_mode()</code></a> with the argument being
 being GST_DEBUG_COLOR_MODE_ON or GST_DEBUG_COLOR_MODE_OFF.</p>
 <p>This function may be called before <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.16.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.16.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1264,7 +1268,7 @@
 <p>Changes the coloring mode for debug output.</p>
 <p>This function may be called before <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.17.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.17.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1285,11 +1289,11 @@
 <div class="refsect2">
 <a name="gst-debug-set-color-mode-from-string"></a><h3>gst_debug_set_color_mode_from_string ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_debug_set_color_mode_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mode</code></em>);</pre>
+gst_debug_set_color_mode_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mode</code></em>);</pre>
 <p>Changes the coloring mode for debug output.</p>
 <p>This function may be called before <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.18.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.18.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1309,12 +1313,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-is-colored"></a><h3>gst_debug_is_colored ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_debug_is_colored (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Checks if the debugging output should be colored.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.19.5"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the debug output should be colored.</p>
+<a name="id-1.5.3.7.19.5"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, if the debug output should be colored.</p>
 <p></p>
 </div>
 </div>
@@ -1325,7 +1329,7 @@
 gst_debug_get_color_mode (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Changes the coloring mode for debug output.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.20.5"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.20.5"></a><h4>Returns</h4>
 <p> see <em class="parameter"><code>GstDebugColorMode</code></em>
 for possible values.</p>
 <p></p>
@@ -1341,7 +1345,7 @@
 use this threshold.</p>
 <p>This function may be called before <a class="link" href="gstreamer-Gst.html#gst-init" title="gst_init ()"><code class="function">gst_init()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.21.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.21.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1360,14 +1364,14 @@
 <div class="refsect2">
 <a name="gst-debug-set-threshold-from-string"></a><h3>gst_debug_set_threshold_from_string ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_debug_set_threshold_from_string (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *list</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> reset</code></em>);</pre>
+gst_debug_set_threshold_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *list</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> reset</code></em>);</pre>
 <p>Sets the debug logging wanted in the same form as with the GST_DEBUG
 environment variable. You can use wildcards such as '*', but note that
 the order matters when you use wild cards, e.g. "foosrc:6,*src:3,*:2" sets
 everything to log level 2.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1383,9 +1387,9 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>reset</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to clear all previously-set debug levels before setting
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to clear all previously-set debug levels before setting
 new thresholds
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if adding the threshold described by <em class="parameter"><code>list</code></em>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if adding the threshold described by <em class="parameter"><code>list</code></em>
 to the one already set.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
@@ -1401,7 +1405,7 @@
 gst_debug_get_default_threshold (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Returns the default threshold that is used for new categories.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.23.5"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.23.5"></a><h4>Returns</h4>
 <p> the default threshold level</p>
 <p></p>
 </div>
@@ -1410,12 +1414,12 @@
 <div class="refsect2">
 <a name="gst-debug-set-threshold-for-name"></a><h3>gst_debug_set_threshold_for_name ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_debug_set_threshold_for_name (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+gst_debug_set_threshold_for_name (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                   <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> level</code></em>);</pre>
 <p>Sets all categories which match the given glob style pattern to the given
 level.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1441,10 +1445,10 @@
 <div class="refsect2">
 <a name="gst-debug-unset-threshold-for-name"></a><h3>gst_debug_unset_threshold_for_name ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_debug_unset_threshold_for_name (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+gst_debug_unset_threshold_for_name (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 <p>Resets all categories with the given name back to the default level.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1467,7 +1471,7 @@
 <p>Defines a GstDebugCategory variable.
 This macro expands to nothing if debugging is disabled.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1490,7 +1494,7 @@
 <p>Declares a GstDebugCategory variable as extern. Use in header files.
 This macro expands to nothing if debugging is disabled.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1513,7 +1517,7 @@
 <p>Defines a static GstDebugCategory variable.
 This macro expands to nothing if debugging is disabled.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1559,7 +1563,7 @@
 </p>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.29.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.29.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1601,7 +1605,7 @@
 category is not found, but GST_CAT_DEFAULT is defined, that is assigned to
 <em class="parameter"><code>cat</code></em>
 . Otherwise <em class="parameter"><code>cat</code></em>
- will be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ will be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="informalexample">
   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
     <tbody>
@@ -1625,7 +1629,7 @@
 
 <p></p>
 <div class="refsect3">
-<a name="id-1.5.3.8.30.7"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.30.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1654,7 +1658,7 @@
 gst_debug_category_free (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>);</pre>
 <p>Removes and frees the category and all associated resources.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.31.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1684,7 +1688,7 @@
 function to use when debugging (even from gdb).
 </p></div>
 <div class="refsect3">
-<a name="id-1.5.3.8.32.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.32.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1717,7 +1721,7 @@
 Use this function to set the threshold back to where it was after using
 <a class="link" href="gstreamer-GstInfo.html#gst-debug-category-set-threshold" title="gst_debug_category_set_threshold ()"><code class="function">gst_debug_category_set_threshold()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1739,7 +1743,7 @@
 gst_debug_category_get_threshold (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>);</pre>
 <p>Returns the threshold of a <a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1754,7 +1758,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.34.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.34.6"></a><h4>Returns</h4>
 <p> the <a class="link" href="gstreamer-GstInfo.html#GstDebugLevel" title="enum GstDebugLevel"><span class="type">GstDebugLevel</span></a> that is used as threshold.</p>
 <p></p>
 </div>
@@ -1762,11 +1766,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-category-get-name"></a><h3>gst_debug_category_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_debug_category_get_name (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>);</pre>
 <p>Returns the name of a debug category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1781,7 +1785,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.35.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.35.6"></a><h4>Returns</h4>
 <p> the name of the category.</p>
 <p></p>
 </div>
@@ -1789,12 +1793,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-category-get-color"></a><h3>gst_debug_category_get_color ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_debug_category_get_color (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>);</pre>
 <p>Returns the color of a debug category used when printing output in this
 category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.36.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1809,7 +1813,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.36.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.36.6"></a><h4>Returns</h4>
 <p> the color of the category.</p>
 <p></p>
 </div>
@@ -1817,11 +1821,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-category-get-description"></a><h3>gst_debug_category_get_description ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_debug_category_get_description (<em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugCategory" title="struct GstDebugCategory"><span class="type">GstDebugCategory</span></a> *category</code></em>);</pre>
 <p>Returns the description of a debug category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.37.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1836,7 +1840,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.37.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.37.6"></a><h4>Returns</h4>
 <p> the description of the category.</p>
 <p></p>
 </div>
@@ -1844,13 +1848,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-get-all-categories"></a><h3>gst_debug_get_all_categories ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
 gst_debug_get_all_categories (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Returns a snapshot of a all categories that are currently in use . This list
 may change anytime.
 The caller has to free the list after use.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.38.5"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.38.5"></a><h4>Returns</h4>
 <p> the list of
 debug categories. </p>
 <p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.DebugCategory]</span></p>
@@ -1859,13 +1863,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-construct-term-color"></a><h3>gst_debug_construct_term_color ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_debug_construct_term_color (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> colorinfo</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_debug_construct_term_color (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> colorinfo</code></em>);</pre>
 <p>Constructs a string that can be used for getting the desired color in color
 terminals.
 You need to free the string after use.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.39.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.39.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1880,7 +1884,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.39.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.39.6"></a><h4>Returns</h4>
 <p> a string containing the color
 definition. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> gchar*]</span></p>
@@ -1889,14 +1893,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-debug-construct-win-color"></a><h3>gst_debug_construct_win_color ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_debug_construct_win_color (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> colorinfo</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_debug_construct_win_color (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> colorinfo</code></em>);</pre>
 <p>Constructs an integer that can be used for getting the desired color in
 windows' terminals (cmd.exe). As there is no mean to underline, we simply
 ignore this attribute.</p>
 <p>This function returns 0 on non-windows machines.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.40.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.40.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1911,7 +1915,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.40.7"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.40.7"></a><h4>Returns</h4>
 <p> an integer containing the color definition</p>
 <p></p>
 </div>
@@ -1924,7 +1928,7 @@
 debugging messages. You will probably want to use one of the ones described
 below.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.41.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.41.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1944,8 +1948,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
@@ -1963,7 +1967,7 @@
 </pre>
 <p>Output an error message belonging to the given object in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.42.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1978,7 +1982,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1997,7 +2001,7 @@
 </pre>
 <p>Output a warning message belonging to the given object in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2012,7 +2016,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2032,7 +2036,7 @@
 <p>Output an informational message belonging to the given object in the given
 category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2047,7 +2051,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2066,7 +2070,7 @@
 </pre>
 <p>Output an debugging message belonging to the given object in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2081,7 +2085,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2100,7 +2104,7 @@
 </pre>
 <p>Output an logging message belonging to the given object in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2115,7 +2119,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2134,7 +2138,7 @@
 </pre>
 <p>Output a fixme message belonging to the given object in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.47.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.47.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2149,7 +2153,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2169,7 +2173,7 @@
 <p>Output a tracing message belonging to the given object in the given
 category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.48.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2184,7 +2188,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2204,7 +2208,7 @@
  relating to the given object in the given
 category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.49.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2219,7 +2223,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2248,7 +2252,7 @@
 </pre>
 <p>Output an error message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.50.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2277,7 +2281,7 @@
 </pre>
 <p>Output an warning message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.51.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2306,7 +2310,7 @@
 </pre>
 <p>Output an informational message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.52.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2335,7 +2339,7 @@
 </pre>
 <p>Output an debugging message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.53.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2364,7 +2368,7 @@
 </pre>
 <p>Output an logging message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.54.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2393,7 +2397,7 @@
 </pre>
 <p>Output an fixme message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.55.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.55.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2422,7 +2426,7 @@
 </pre>
 <p>Output a tracing message in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.56.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.56.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2451,7 +2455,7 @@
 <p>Output a hexdump of <em class="parameter"><code>data</code></em>
  in the given category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.57.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2490,7 +2494,7 @@
 </pre>
 <p>Output an error message belonging to the given object in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.58.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2500,7 +2504,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2519,7 +2523,7 @@
 </pre>
 <p>Output a warning message belonging to the given object in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.59.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.59.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2529,7 +2533,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2549,7 +2553,7 @@
 <p>Output an informational message belonging to the given object in the default
 category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.60.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.60.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2559,7 +2563,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2579,7 +2583,7 @@
 <p>Output a debugging message belonging to the given object in the default
 category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.61.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.61.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2589,7 +2593,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2608,7 +2612,7 @@
 </pre>
 <p>Output a logging message belonging to the given object in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.62.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.62.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2618,7 +2622,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2637,7 +2641,7 @@
 </pre>
 <p>Output a fixme message belonging to the given object in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.63.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.63.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2647,7 +2651,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2666,7 +2670,7 @@
 </pre>
 <p>Output a tracing message belonging to the given object in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.64.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2676,7 +2680,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2694,7 +2698,7 @@
 <pre class="programlisting">#define             GST_MEMDUMP_OBJECT(obj,msg,data,length)</pre>
 <p>Output a logging message belonging to the given object in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.65.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2704,7 +2708,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> the message belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2733,7 +2737,7 @@
 </pre>
 <p>Output an error message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.66.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2755,7 +2759,7 @@
 </pre>
 <p>Output a warning message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.67.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.67.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2777,7 +2781,7 @@
 </pre>
 <p>Output an informational message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.68.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.68.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2799,7 +2803,7 @@
 </pre>
 <p>Output a debugging message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.69.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2821,7 +2825,7 @@
 </pre>
 <p>Output a logging message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.70.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.70.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2843,7 +2847,7 @@
 </pre>
 <p>Output a fixme message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.71.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.71.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2865,7 +2869,7 @@
 </pre>
 <p>Output a tracing message in the default category.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.72.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.72.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2887,7 +2891,7 @@
 <p>Output a hexdump of <em class="parameter"><code>data</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.73.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.73.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2923,7 +2927,7 @@
 <p>Use this variant of <a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-FUNCPTR:CAPS" title="GST_DEBUG_FUNCPTR()"><span class="type">GST_DEBUG_FUNCPTR</span></a> if you do not need to use <em class="parameter"><code>ptr</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.74.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.74.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2945,7 +2949,7 @@
 <p>Register a pointer to a function with its name, so it can later be used by
 <a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-FUNCPTR-NAME:CAPS" title="GST_DEBUG_FUNCPTR_NAME()"><code class="function">GST_DEBUG_FUNCPTR_NAME()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.75.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.75.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2960,7 +2964,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.5.3.8.75.6"></a><h4>Returns</h4>
+<a name="id-1.5.3.7.75.6"></a><h4>Returns</h4>
 <p> the value passed to <em class="parameter"><code>ptr</code></em>
 .</p>
 <p></p>
@@ -2975,7 +2979,7 @@
 <p>This macro returns a constant string which must not be modified or
 freed by the caller.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.76.6"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.76.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3013,7 +3017,7 @@
 "--gst-enable-gst-debug" and the environment variable
 GST_DEBUG_DUMP_DOT_DIR is set to a basepath (e.g. /tmp).</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.77.7"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.77.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3049,7 +3053,7 @@
 <p>This works like <a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-BIN-TO-DOT-FILE:CAPS" title="GST_DEBUG_BIN_TO_DOT_FILE()"><code class="function">GST_DEBUG_BIN_TO_DOT_FILE()</code></a>, but adds the current timestamp
 to the filename, so that it can be used to take multiple snapshots.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.78.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.78.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3094,7 +3098,7 @@
  will be
 evaluated more than once.</p>
 <div class="refsect3">
-<a name="id-1.5.3.8.80.5"></a><h4>Parameters</h4>
+<a name="id-1.5.3.7.80.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3115,7 +3119,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_debug_bin_to_dot_file (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
                            <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugGraphDetails" title="enum GstDebugGraphDetails"><span class="type">GstDebugGraphDetails</span></a> details</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file_name</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file_name</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
@@ -3123,7 +3127,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_debug_bin_to_dot_file_with_ts (<em class="parameter"><code><a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> *bin</code></em>,
                                    <em class="parameter"><code><a class="link" href="gstreamer-GstInfo.html#GstDebugGraphDetails" title="enum GstDebugGraphDetails"><span class="type">GstDebugGraphDetails</span></a> details</code></em>,
-                                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file_name</code></em>);</pre>
+                                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file_name</code></em>);</pre>
 </div>
 </div>
 <div class="refsect1">
@@ -3133,7 +3137,7 @@
 <p>The level defines the importance of a debugging message. The more important a
 message is, the greater the probability that the debugging system outputs it.</p>
 <div class="refsect3">
-<a name="id-1.5.3.9.2.4"></a><h4>Members</h4>
+<a name="id-1.5.3.8.2.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -3256,11 +3260,23 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="GST-LEVEL-MAX:CAPS"></a><h3>GST_LEVEL_MAX</h3>
+<pre class="programlisting">#define GST_LEVEL_MAX GST_LEVEL_COUNT
+</pre>
+<p>Defines the maximum debugging level to be enabled at compilation time. By default
+it is set such that all debugging statements will be enabled.</p>
+<p>If you wish to compile GStreamer and plugins with only some debugging statements
+(Such as just warnings and errors), you can define it at compile time to the
+maximum debug level. Any debug statements above that level will be compiled out.</p>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GstDebugColorFlags"></a><h3>enum GstDebugColorFlags</h3>
 <p>These are some terminal style flags you can use when creating your
 debugging categories to make them stand out in debugging output.</p>
 <div class="refsect3">
-<a name="id-1.5.3.9.4.4"></a><h4>Members</h4>
+<a name="id-1.5.3.8.5.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -3402,7 +3418,7 @@
 <div class="refsect2">
 <a name="GstDebugColorMode"></a><h3>enum GstDebugColorMode</h3>
 <div class="refsect3">
-<a name="id-1.5.3.9.5.3"></a><h4>Members</h4>
+<a name="id-1.5.3.8.6.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -3451,7 +3467,7 @@
 <p>Available details for pipeline graphs produced by <a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-BIN-TO-DOT-FILE:CAPS" title="GST_DEBUG_BIN_TO_DOT_FILE()"><code class="function">GST_DEBUG_BIN_TO_DOT_FILE()</code></a>
 and <a class="link" href="gstreamer-GstInfo.html#GST-DEBUG-BIN-TO-DOT-FILE-WITH-TS:CAPS" title="GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS()"><code class="function">GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.5.3.9.7.4"></a><h4>Members</h4>
+<a name="id-1.5.3.8.8.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -3476,7 +3492,8 @@
 <tr>
 <td class="enum_member_name"><p><a name="GST-DEBUG-GRAPH-SHOW-NON-DEFAULT-PARAMS:CAPS"></a>GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS</p></td>
 <td class="enum_member_description">
-<p>show modified parameters on elements</p>
+<p>show modified parameters on
+                                          elements</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -3488,9 +3505,25 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
+<td class="enum_member_name"><p><a name="GST-DEBUG-GRAPH-SHOW-FULL-PARAMS:CAPS"></a>GST_DEBUG_GRAPH_SHOW_FULL_PARAMS</p></td>
+<td class="enum_member_description">
+<p>show full element parameter values even
+                                   if they are very long</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
 <td class="enum_member_name"><p><a name="GST-DEBUG-GRAPH-SHOW-ALL:CAPS"></a>GST_DEBUG_GRAPH_SHOW_ALL</p></td>
 <td class="enum_member_description">
-<p>show all details</p>
+<p>show all the typical details that one might want</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-DEBUG-GRAPH-SHOW-VERBOSE:CAPS"></a>GST_DEBUG_GRAPH_SHOW_VERBOSE</p></td>
+<td class="enum_member_description">
+<p>show all details regardless of how large or
+                               verbose they make the resulting output</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
@@ -3500,6 +3533,13 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="GST-CAT-DEFAULT:CAPS"></a><h3>GST_CAT_DEFAULT</h3>
+<pre class="programlisting">GST_EXPORT GstDebugCategory * GST_CAT_DEFAULT;
+</pre>
+<p>Default gstreamer core debug log category. Please define your own.</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GST-TIME-FORMAT:CAPS"></a><h3>GST_TIME_FORMAT</h3>
 <pre class="programlisting">#define GST_TIME_FORMAT "u:%02u:%02u.%09u"
 </pre>
@@ -3529,6 +3569,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstIterator.html b/docs/gst/html/gstreamer-GstIterator.html
index c4a2fa2..57fb62a 100644
--- a/docs/gst/html/gstreamer-GstIterator.html
+++ b/docs/gst/html/gstreamer-GstIterator.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstGhostPad.html" title="GstGhostPad">
 <link rel="next" href="GstMemory.html" title="GstMemory">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstIterator.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstIterator.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstIterator.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -91,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstIterator.html#GstIteratorFoldFunction" title="GstIteratorFoldFunction ()">*GstIteratorFoldFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -211,7 +210,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstIterator.html#gst-iterator-find-custom" title="gst_iterator_find_custom ()">gst_iterator_find_custom</a> <span class="c_punctuation">()</span>
@@ -244,11 +243,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstIterator.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstIterator.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -259,9 +253,10 @@
 a threadsafe way.</p>
 <p>Various GStreamer objects provide access to their internal structures using
 an iterator.</p>
-<p>In general, whenever calling a GstIterator function results in your code
-receiving a refcounted object, the refcount for that object will have been
-increased.  Your code is responsible for unreffing that object after use.</p>
+<p>Note that if calling a GstIterator function results in your code receiving
+a refcounted object (with, say, <a href="https://developer.gnome.org/gobject/unstable/gobject-Standard-Parameter-and-Value-Types.html#g-value-get-object"><code class="function">g_value_get_object()</code></a>), the refcount for that
+object will not be increased. Your code is responsible for taking a reference
+if it wants to continue using it later.</p>
 <p>The basic use pattern of an iterator is as follows:</p>
 <div class="informalexample">
   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
@@ -289,14 +284,16 @@
 20
 21
 22
-23</pre></td>
+23
+24</pre></td>
         <td class="listing_code"><pre class="programlisting">GstIterator <span class="gtkdoc opt">*</span>it <span class="gtkdoc opt">=</span> <span class="function">_get_iterator</span><span class="gtkdoc opt">(</span>object<span class="gtkdoc opt">);</span>
+GValue item <span class="gtkdoc opt">=</span> G_VALUE_INIT<span class="gtkdoc opt">;</span>
 done <span class="gtkdoc opt">=</span> FALSE<span class="gtkdoc opt">;</span>
 <span class="keyword">while</span> <span class="gtkdoc opt">(!</span>done<span class="gtkdoc opt">) {</span>
   <span class="keyword">switch</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstIterator.html#gst-iterator-next">gst_iterator_next</a></span> <span class="gtkdoc opt">(</span>it<span class="gtkdoc opt">, &amp;</span>item<span class="gtkdoc opt">)) {</span>
     <span class="keyword">case</span> GST_ITERATOR_OK<span class="gtkdoc opt">:</span>
-      <span class="gtkdoc opt">...</span> use<span class="gtkdoc opt">/</span>change item here<span class="gtkdoc opt">...</span>
-      <span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-reset">g_value_reset</a></span> <span class="gtkdoc opt">(&amp;</span>item<span class="gtkdoc opt">);</span>
+      <span class="gtkdoc opt">...</span>get<span class="gtkdoc opt">/</span>use<span class="gtkdoc opt">/</span>change item here<span class="gtkdoc opt">...</span>
+      <span class="function"><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-reset">g_value_reset</a></span> <span class="gtkdoc opt">(&amp;</span>item<span class="gtkdoc opt">);</span>
       <span class="keyword">break</span><span class="gtkdoc opt">;</span>
     <span class="keyword">case</span> GST_ITERATOR_RESYNC<span class="gtkdoc opt">:</span>
       <span class="gtkdoc opt">...</span>rollback changes to items<span class="gtkdoc opt">...</span>
@@ -311,7 +308,7 @@
       <span class="keyword">break</span><span class="gtkdoc opt">;</span>
   <span class="gtkdoc opt">}</span>
 <span class="gtkdoc opt">}</span>
-<span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset">g_value_unset</a></span> <span class="gtkdoc opt">(&amp;</span>item<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-unset">g_value_unset</a></span> <span class="gtkdoc opt">(&amp;</span>item<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstIterator.html#gst-iterator-free">gst_iterator_free</a></span> <span class="gtkdoc opt">(</span>it<span class="gtkdoc opt">);</span></pre></td>
       </tr>
     </tbody>
@@ -332,7 +329,7 @@
 create a copy of all custom iterator fields or increase their
 reference counts.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -359,14 +356,14 @@
 <a name="GstIteratorNextFunction"></a><h3>GstIteratorNextFunction ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIteratorResult" title="enum GstIteratorResult"><span class="returnvalue">GstIteratorResult</span></a>
 <span class="c_punctuation">(</span>*GstIteratorNextFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *result</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *result</code></em>);</pre>
 <p>The function that will be called when the next element of the iterator
 should be retrieved.</p>
 <p>Implementors of a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> should implement this
 function and pass it to the constructor of the custom iterator.
 The function will be called with the iterator lock held.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.3.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -388,7 +385,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.3.7"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.3.7"></a><h4>Returns</h4>
 <p> the result of the operation.</p>
 <p></p>
 </div>
@@ -398,13 +395,13 @@
 <a name="GstIteratorItemFunction"></a><h3>GstIteratorItemFunction ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIteratorItem" title="enum GstIteratorItem"><span class="returnvalue">GstIteratorItem</span></a>
 <span class="c_punctuation">(</span>*GstIteratorItemFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *item</code></em>);</pre>
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *item</code></em>);</pre>
 <p>The function that will be called after the next item of the iterator
 has been retrieved. This function can be used to skip items or stop
 the iterator.</p>
 <p>The function will be called with the iterator lock held.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.4.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.4.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -426,7 +423,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.4.7"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.4.7"></a><h4>Returns</h4>
 <p> the result of the operation.</p>
 <p></p>
 </div>
@@ -444,7 +441,7 @@
 function and pass it to the constructor of the custom iterator.
 The function will be called with the iterator lock held.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.5.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.5.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -469,7 +466,7 @@
 function and pass it to the constructor of the custom iterator.
 The function will be called with the iterator lock held.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.6.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.6.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -488,11 +485,11 @@
 <div class="refsect2">
 <a name="GstIteratorForeachFunction"></a><h3>GstIteratorForeachFunction ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GstIteratorForeachFunction<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *item</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<span class="c_punctuation">(</span>*GstIteratorForeachFunction<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *item</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that is called by <a class="link" href="gstreamer-GstIterator.html#gst-iterator-foreach" title="gst_iterator_foreach ()"><code class="function">gst_iterator_foreach()</code></a> for every element.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -517,13 +514,13 @@
 <hr>
 <div class="refsect2">
 <a name="GstIteratorFoldFunction"></a><h3>GstIteratorFoldFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-<span class="c_punctuation">(</span>*GstIteratorFoldFunction<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *item</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *ret</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstIteratorFoldFunction<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *item</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *ret</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function to be passed to <a class="link" href="gstreamer-GstIterator.html#gst-iterator-fold" title="gst_iterator_fold ()"><code class="function">gst_iterator_fold()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -538,7 +535,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>ret</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> collecting the result</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> collecting the result</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -550,8 +547,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the fold should continue, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it should stop.</p>
+<a name="id-1.3.27.7.8.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the fold should continue, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it should stop.</p>
 <p></p>
 </div>
 </div>
@@ -562,7 +559,7 @@
 </pre>
 <p>Macro to cast to a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a></p>
 <div class="refsect3">
-<a name="id-1.3.27.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -584,7 +581,7 @@
 </pre>
 <p>Macro to get the lock protecting the datastructure being iterated.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -611,7 +608,7 @@
 value of the master cookie. If they are different, a concurrent
 modification happened to the iterator and a resync is needed.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -635,7 +632,7 @@
 master cookie protects the structure being iterated and gets updated
 whenever the datastructure changes.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -654,9 +651,9 @@
 <div class="refsect2">
 <a name="gst-iterator-new"></a><h3>gst_iterator_new ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> *
-gst_iterator_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                  <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
-                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> *lock</code></em>,
+gst_iterator_new (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> *lock</code></em>,
                   <em class="parameter"><code><span class="type">guint32</span> *master_cookie</code></em>,
                   <em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIteratorCopyFunction" title="GstIteratorCopyFunction ()"><span class="type">GstIteratorCopyFunction</span></a> copy</code></em>,
                   <em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIteratorNextFunction" title="GstIteratorNextFunction ()"><span class="type">GstIteratorNextFunction</span></a> next</code></em>,
@@ -670,7 +667,7 @@
 held. The <em class="parameter"><code>free</code></em>
  function is called when the iterator is freed.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.13.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.13.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -685,12 +682,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of children</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of children</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>lock</p></td>
-<td class="parameter_description"><p>pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a>.</p></td>
+<td class="parameter_description"><p>pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a>.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -728,7 +725,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.13.7"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.13.7"></a><h4>Returns</h4>
 <p> the new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a>.</p>
 <p>MT safe.</p>
 <p></p>
@@ -738,11 +735,11 @@
 <div class="refsect2">
 <a name="gst-iterator-new-list"></a><h3>gst_iterator_new_list ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> *
-gst_iterator_new_list (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> *lock</code></em>,
+gst_iterator_new_list (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> *lock</code></em>,
                        <em class="parameter"><code><span class="type">guint32</span> *master_cookie</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> **list</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *owner</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> **list</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *owner</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIteratorItemFunction" title="GstIteratorItemFunction ()"><span class="type">GstIteratorItemFunction</span></a> item</code></em>);</pre>
 <p>Create a new iterator designed for iterating <em class="parameter"><code>list</code></em>
 .</p>
@@ -763,7 +760,7 @@
 will notice the update of the cookie and will return <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-RESYNC:CAPS"><code class="literal">GST_ITERATOR_RESYNC</code></a> to
 the user of the iterator in the next call to <a class="link" href="gstreamer-GstIterator.html#gst-iterator-next" title="gst_iterator_next ()"><code class="function">gst_iterator_next()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.14.8"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.14.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -773,12 +770,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of elements</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of elements</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>lock</p></td>
-<td class="parameter_description"><p>pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> protecting the list.</p></td>
+<td class="parameter_description"><p>pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> protecting the list.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -806,7 +803,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.14.9"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.14.9"></a><h4>Returns</h4>
 <p> the new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> for <em class="parameter"><code>list</code></em>
 .</p>
 <p>MT safe.</p>
@@ -817,14 +814,14 @@
 <div class="refsect2">
 <a name="gst-iterator-new-single"></a><h3>gst_iterator_new_single ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> *
-gst_iterator_new_single (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *object</code></em>);</pre>
+gst_iterator_new_single (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *object</code></em>);</pre>
 <p>This <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> is a convenient iterator for the common
 case where a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> needs to be returned but only
 a single object has to be considered. This happens often
 for the <a class="link" href="GstPad.html#GstPadIterIntLinkFunction" title="GstPadIterIntLinkFunction ()"><span class="type">GstPadIterIntLinkFunction</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -834,7 +831,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the passed object</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the passed object</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -846,7 +843,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.15.6"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.15.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> for <em class="parameter"><code>object</code></em>
 .</p>
 <p></p>
@@ -859,7 +856,7 @@
 gst_iterator_copy (<em class="parameter"><code>const <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>);</pre>
 <p>Copy the iterator and its state.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -874,7 +871,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.16.6"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.16.6"></a><h4>Returns</h4>
 <p> a new copy of <em class="parameter"><code>it</code></em>
 .</p>
 <p></p>
@@ -888,7 +885,7 @@
 <p>Free the iterator.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.17.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.17.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -908,16 +905,16 @@
 <a name="gst-iterator-next"></a><h3>gst_iterator_next ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIteratorResult" title="enum GstIteratorResult"><span class="returnvalue">GstIteratorResult</span></a>
 gst_iterator_next (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *elem</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *elem</code></em>);</pre>
 <p>Get the next item from the iterator in <em class="parameter"><code>elem</code></em>
 . </p>
 <p>Only when this function returns <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-OK:CAPS"><code class="literal">GST_ITERATOR_OK</code></a>, <em class="parameter"><code>elem</code></em>
  will contain a valid
 value. <em class="parameter"><code>elem</code></em>
  must have been initialized to the type of the iterator or
-initialized to zeroes with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>. The caller is responsible for
+initialized to zeroes with <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>. The caller is responsible for
 unsetting or resetting <em class="parameter"><code>elem</code></em>
- with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a> or <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-reset"><code class="function">g_value_reset()</code></a>
+ with <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a> or <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#g-value-reset"><code class="function">g_value_reset()</code></a>
 after usage.</p>
 <p>When this function returns <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-DONE:CAPS"><code class="literal">GST_ITERATOR_DONE</code></a>, no more elements can be
 retrieved from <em class="parameter"><code>it</code></em>
@@ -928,7 +925,7 @@
 get the newly updated list. </p>
 <p>A return value of <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-ERROR:CAPS"><code class="literal">GST_ITERATOR_ERROR</code></a> indicates an unrecoverable fatal error.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.18.9"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.18.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -950,7 +947,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.18.10"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.18.10"></a><h4>Returns</h4>
 <p> The result of the iteration. Unset <em class="parameter"><code>elem</code></em>
 after usage.</p>
 <p>MT safe.</p>
@@ -969,7 +966,7 @@
 with this function.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.19.7"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.19.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1007,7 +1004,7 @@
 popped.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.20.8"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.20.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1034,13 +1031,13 @@
 <a name="gst-iterator-filter"></a><h3>gst_iterator_filter ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> *
 gst_iterator_filter (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> func</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *user_data</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> func</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *user_data</code></em>);</pre>
 <p>Create a new iterator from an existing iterator. The new iterator
 will only return those elements that match the given compare function <em class="parameter"><code>func</code></em>
 .
 The first parameter that is passed to <em class="parameter"><code>func</code></em>
- is the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the current
+ is the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of the current
 iterator element and the second parameter is <em class="parameter"><code>user_data</code></em>
 . <em class="parameter"><code>func</code></em>
  should
@@ -1048,7 +1045,7 @@
 <p>When this iterator is freed, <em class="parameter"><code>it</code></em>
  will also be freed.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.21.6"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.21.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1075,7 +1072,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.21.7"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.21.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a>.</p>
 <p>MT safe. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1087,8 +1084,8 @@
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIteratorResult" title="enum GstIteratorResult"><span class="returnvalue">GstIteratorResult</span></a>
 gst_iterator_fold (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
                    <em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIteratorFoldFunction" title="GstIteratorFoldFunction ()"><span class="type">GstIteratorFoldFunction</span></a> func</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *ret</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                   <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *ret</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Folds <em class="parameter"><code>func</code></em>
  over the elements of <em class="parameter"><code>iter</code></em>
 . That is to say, <em class="parameter"><code>func</code></em>
@@ -1104,15 +1101,15 @@
 <p>This procedure can be used (and is used internally) to implement the
 <a class="link" href="gstreamer-GstIterator.html#gst-iterator-foreach" title="gst_iterator_foreach ()"><code class="function">gst_iterator_foreach()</code></a> and <a class="link" href="gstreamer-GstIterator.html#gst-iterator-find-custom" title="gst_iterator_find_custom ()"><code class="function">gst_iterator_find_custom()</code></a> operations.</p>
 <p>The fold will proceed as long as <em class="parameter"><code>func</code></em>
- returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. When the iterator has no
+ returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. When the iterator has no
 more arguments, <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-DONE:CAPS"><code class="literal">GST_ITERATOR_DONE</code></a> will be returned. If <em class="parameter"><code>func</code></em>
- returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>,
+ returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>,
 the fold will stop, and <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-OK:CAPS"><code class="literal">GST_ITERATOR_OK</code></a> will be returned. Errors or resyncs
 will cause fold to return <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-ERROR:CAPS"><code class="literal">GST_ITERATOR_ERROR</code></a> or <a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR-RESYNC:CAPS"><code class="literal">GST_ITERATOR_RESYNC</code></a> as
 appropriate.</p>
 <p>The iterator will not be freed.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.22.8"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.22.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1144,7 +1141,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.22.9"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.22.9"></a><h4>Returns</h4>
 <p> A <a class="link" href="gstreamer-GstIterator.html#GstIteratorResult" title="enum GstIteratorResult"><span class="type">GstIteratorResult</span></a>, as described above.</p>
 <p>MT safe.</p>
 <p></p>
@@ -1156,13 +1153,13 @@
 <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIteratorResult" title="enum GstIteratorResult"><span class="returnvalue">GstIteratorResult</span></a>
 gst_iterator_foreach (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIteratorForeachFunction" title="GstIteratorForeachFunction ()"><span class="type">GstIteratorForeachFunction</span></a> func</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Iterate over all element of <em class="parameter"><code>it</code></em>
  and call the given function <em class="parameter"><code>func</code></em>
  for
 each element.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1189,7 +1186,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.23.6"></a><h4>Returns</h4>
+<a name="id-1.3.27.7.23.6"></a><h4>Returns</h4>
 <p> the result call to <a class="link" href="gstreamer-GstIterator.html#gst-iterator-fold" title="gst_iterator_fold ()"><code class="function">gst_iterator_fold()</code></a>. The iterator will not be
 freed.</p>
 <p>MT safe.</p>
@@ -1199,11 +1196,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-iterator-find-custom"></a><h3>gst_iterator_find_custom ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_iterator_find_custom (<em class="parameter"><code><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> *it</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> func</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *elem</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> func</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *elem</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Find the first element in <em class="parameter"><code>it</code></em>
  that matches the compare function <em class="parameter"><code>func</code></em>
 .
@@ -1216,10 +1213,10 @@
 The result will be stored in <em class="parameter"><code>elem</code></em>
  if a result is found.</p>
 <p>The iterator will not be freed.</p>
-<p>This function will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if an error happened to the iterator
+<p>This function will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if an error happened to the iterator
 or if the element wasn't found.</p>
 <div class="refsect3">
-<a name="id-1.3.27.8.24.7"></a><h4>Parameters</h4>
+<a name="id-1.3.27.7.24.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1239,7 +1236,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>elem</p></td>
-<td class="parameter_description"><p> pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> where to store the result. </p></td>
+<td class="parameter_description"><p> pointer to a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> where to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 <tr>
@@ -1251,8 +1248,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.27.8.24.8"></a><h4>Returns</h4>
-<p> Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element was found, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a name="id-1.3.27.7.24.8"></a><h4>Returns</h4>
+<p> Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the element was found, else <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -1268,7 +1265,7 @@
 <p><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> base structure. The values of this structure are
 protected for subclasses, use the methods to use the <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.27.9.2.5"></a><h4>Members</h4>
+<a name="id-1.3.27.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -1284,7 +1281,7 @@
 <a name="GstIteratorItem"></a><h3>enum GstIteratorItem</h3>
 <p>The result of a <a class="link" href="gstreamer-GstIterator.html#GstIteratorItemFunction" title="GstIteratorItemFunction ()"><span class="type">GstIteratorItemFunction</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.27.9.3.4"></a><h4>Members</h4>
+<a name="id-1.3.27.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -1322,7 +1319,7 @@
 <a name="GstIteratorResult"></a><h3>enum GstIteratorResult</h3>
 <p>The result of <a class="link" href="gstreamer-GstIterator.html#gst-iterator-next" title="gst_iterator_next ()"><code class="function">gst_iterator_next()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.27.9.4.4"></a><h4>Members</h4>
+<a name="id-1.3.27.8.4.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -1370,6 +1367,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstMeta.html b/docs/gst/html/gstreamer-GstMeta.html
index 08771dd..0b62c58 100644
--- a/docs/gst/html/gstreamer-GstMeta.html
+++ b/docs/gst/html/gstreamer-GstMeta.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstMessage.html" title="GstMessage">
 <link rel="next" href="gstreamer-GstMiniObject.html" title="GstMiniObject">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstMeta.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstMeta.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstMeta.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -66,7 +65,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstMeta.html#GstMetaInitFunction" title="GstMetaInitFunction ()">*GstMetaInitFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -82,7 +81,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstMeta.html#GstMetaTransformFunction" title="GstMetaTransformFunction ()">*GstMetaTransformFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -96,7 +95,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMeta.html#gst-meta-api-type-register" title="gst_meta_api_type_register ()">gst_meta_api_type_register</a> <span class="c_punctuation">()</span>
@@ -104,14 +103,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMeta.html#gst-meta-api-type-has-tag" title="gst_meta_api_type_has_tag ()">gst_meta_api_type_has_tag</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const*
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const*
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMeta.html#gst-meta-api-type-get-tags" title="gst_meta_api_type_get_tags ()">gst_meta_api_type_get_tags</a> <span class="c_punctuation">()</span>
@@ -170,11 +169,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstMeta.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstMeta.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -206,7 +200,7 @@
 <p>A flags word containing <a class="link" href="gstreamer-GstMeta.html#GstMetaFlags" title="enum GstMetaFlags"><span class="type">GstMetaFlags</span></a> flags set on <em class="parameter"><code>meta</code></em>
 </p>
 <div class="refsect3">
-<a name="id-1.3.30.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -228,7 +222,7 @@
 </pre>
 <p>Gives the status of a specific flag on a metadata.</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -257,7 +251,7 @@
 </pre>
 <p>Sets a metadata flag on a metadata.</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -286,7 +280,7 @@
 </pre>
 <p>Clears a metadata flag.</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -311,15 +305,15 @@
 <hr>
 <div class="refsect2">
 <a name="GstMetaInitFunction"></a><h3>GstMetaInitFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstMetaInitFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> *meta</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> params</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> params</code></em>,
                         <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre>
 <p>Function called when <em class="parameter"><code>meta</code></em>
  is initialized in <em class="parameter"><code>buffer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -356,7 +350,7 @@
  is freed in <em class="parameter"><code>buffer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -381,12 +375,12 @@
 <hr>
 <div class="refsect2">
 <a name="GstMetaTransformFunction"></a><h3>GstMetaTransformFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstMetaTransformFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *transbuf</code></em>,
                              <em class="parameter"><code><a class="link" href="gstreamer-GstMeta.html#GstMeta" title="struct GstMeta"><span class="type">GstMeta</span></a> *meta</code></em>,
                              <em class="parameter"><code><a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> type</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> type</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Function called for each <em class="parameter"><code>meta</code></em>
  in <em class="parameter"><code>buffer</code></em>
  as a result of performing a
@@ -402,7 +396,7 @@
 the metadata on <em class="parameter"><code>transbuf</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.8.6"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.8.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -439,8 +433,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.30.8.8.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the transform could be performed</p>
+<a name="id-1.3.30.7.8.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the transform could be performed</p>
 <p></p>
 </div>
 </div>
@@ -451,7 +445,7 @@
 </pre>
 <p>Check if the transform type is a copy transform</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -469,15 +463,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-meta-api-type-register"></a><h3>gst_meta_api_type_register ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
-gst_meta_api_type_register (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *api</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **tags</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
+gst_meta_api_type_register (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *api</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **tags</code></em>);</pre>
 <p>Register and return a GType for the <em class="parameter"><code>api</code></em>
  and associate it with
 <em class="parameter"><code>tags</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -500,7 +494,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.30.8.10.6"></a><h4>Returns</h4>
+<a name="id-1.3.30.7.10.6"></a><h4>Returns</h4>
 <p> a unique GType for <em class="parameter"><code>api</code></em>
 .</p>
 <p></p>
@@ -509,14 +503,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-meta-api-type-has-tag"></a><h3>gst_meta_api_type_has_tag ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_meta_api_type_has_tag (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> tag</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_meta_api_type_has_tag (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> tag</code></em>);</pre>
 <p>Check if <em class="parameter"><code>api</code></em>
  was registered with <em class="parameter"><code>tag</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -538,8 +532,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.30.8.11.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>api</code></em>
+<a name="id-1.3.30.7.11.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>api</code></em>
 was registered with <em class="parameter"><code>tag</code></em>
 .</p>
 <p></p>
@@ -548,10 +542,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-meta-api-type-get-tags"></a><h3>gst_meta_api_type_get_tags ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const*
-gst_meta_api_type_get_tags (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const*
+gst_meta_api_type_get_tags (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.3.30.8.12.4"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.12.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -566,7 +560,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.30.8.12.5"></a><h4>Returns</h4>
+<a name="id-1.3.30.7.12.5"></a><h4>Returns</h4>
 <p> an array of tags as strings. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8]</span></p>
 </div>
@@ -589,8 +583,8 @@
 <div class="refsect2">
 <a name="gst-meta-register"></a><h3>gst_meta_register ()</h3>
 <pre class="programlisting">const <a class="link" href="gstreamer-GstMeta.html#GstMetaInfo" title="struct GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> *
-gst_meta_register (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *impl</code></em>,
+gst_meta_register (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *impl</code></em>,
                    <em class="parameter"><code><span class="type">gsize</span> size</code></em>,
                    <em class="parameter"><code><a class="link" href="gstreamer-GstMeta.html#GstMetaInitFunction" title="GstMetaInitFunction ()"><span class="type">GstMetaInitFunction</span></a> init_func</code></em>,
                    <em class="parameter"><code><a class="link" href="gstreamer-GstMeta.html#GstMetaFreeFunction" title="GstMetaFreeFunction ()"><span class="type">GstMetaFreeFunction</span></a> free_func</code></em>,
@@ -601,7 +595,7 @@
 <em class="parameter"><code>impl</code></em>
  as the key.</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.14.6"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.14.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -643,7 +637,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.30.8.14.7"></a><h4>Returns</h4>
+<a name="id-1.3.30.7.14.7"></a><h4>Returns</h4>
 <p> a <a class="link" href="gstreamer-GstMeta.html#GstMetaInfo" title="struct GstMetaInfo"><span class="type">GstMetaInfo</span></a> that can be used to access metadata. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -652,12 +646,12 @@
 <div class="refsect2">
 <a name="gst-meta-get-info"></a><h3>gst_meta_get_info ()</h3>
 <pre class="programlisting">const <a class="link" href="gstreamer-GstMeta.html#GstMetaInfo" title="struct GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> *
-gst_meta_get_info (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *impl</code></em>);</pre>
+gst_meta_get_info (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *impl</code></em>);</pre>
 <p>Lookup a previously registered meta info structure by its implementation name
 <em class="parameter"><code>impl</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.30.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.30.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -672,11 +666,11 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.30.8.15.6"></a><h4>Returns</h4>
+<a name="id-1.3.30.7.15.6"></a><h4>Returns</h4>
 <p> a <a class="link" href="gstreamer-GstMeta.html#GstMetaInfo" title="struct GstMetaInfo"><span class="type">GstMetaInfo</span></a> with <em class="parameter"><code>impl</code></em>
-, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when no such
-metainfo exists. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+, or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when no such metainfo exists. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 </div>
@@ -692,7 +686,7 @@
 <p>Base structure for metadata. Custom metadata will put this structure
 as the first member of their structure.</p>
 <div class="refsect3">
-<a name="id-1.3.30.9.2.5"></a><h4>Members</h4>
+<a name="id-1.3.30.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -719,7 +713,7 @@
 <a name="GstMetaFlags"></a><h3>enum GstMetaFlags</h3>
 <p>Extra metadata flags.</p>
 <div class="refsect3">
-<a name="id-1.3.30.9.3.4"></a><h4>Members</h4>
+<a name="id-1.3.30.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -782,7 +776,7 @@
 <p>The <a class="link" href="gstreamer-GstMeta.html#GstMetaInfo" title="struct GstMetaInfo"><span class="type">GstMetaInfo</span></a> provides information about a specific metadata
 structure.</p>
 <div class="refsect3">
-<a name="id-1.3.30.9.4.5"></a><h4>Members</h4>
+<a name="id-1.3.30.8.4.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -791,12 +785,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstMetaInfo.api"></a>api</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstMetaInfo.api"></a>api</code></em>;</p></td>
 <td class="struct_member_description"><p>tag identifying the metadata structure and api</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstMetaInfo.type"></a>type</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstMetaInfo.type"></a>type</code></em>;</p></td>
 <td class="struct_member_description"><p>type identifying the implementor of the api</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -835,7 +829,7 @@
 </pre>
 <p>Extra data passed to a "gst-copy" transform <a class="link" href="gstreamer-GstMeta.html#GstMetaTransformFunction" title="GstMetaTransformFunction ()"><span class="type">GstMetaTransformFunction</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.30.9.5.5"></a><h4>Members</h4>
+<a name="id-1.3.30.8.5.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -844,20 +838,20 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMetaTransformCopy.region"></a>region</code></em>;</p></td>
-<td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if only region is copied</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMetaTransformCopy.region"></a>region</code></em>;</p></td>
+<td class="struct_member_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if only region is copied</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
 <td class="struct_member_name"><p><span class="type">gsize</span> <em class="structfield"><code><a name="GstMetaTransformCopy.offset"></a>offset</code></em>;</p></td>
 <td class="struct_member_description"><p>the offset to copy, 0 if <em class="parameter"><code>region</code></em>
-is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, otherwise &gt; 0</p></td>
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, otherwise &gt; 0</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
 <td class="struct_member_name"><p><span class="type">gsize</span> <em class="structfield"><code><a name="GstMetaTransformCopy.size"></a>size</code></em>;</p></td>
 <td class="struct_member_description"><p>the size to copy, -1 or the buffer size when <em class="parameter"><code>region</code></em>
-is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p></td>
+is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
@@ -876,6 +870,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstMiniObject.html b/docs/gst/html/gstreamer-GstMiniObject.html
index c0dc9dd..bdd6b4e 100644
--- a/docs/gst/html/gstreamer-GstMiniObject.html
+++ b/docs/gst/html/gstreamer-GstMiniObject.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstMeta.html" title="GstMeta">
 <link rel="next" href="GstObject.html" title="GstObject">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstMiniObject.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstMiniObject.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstMiniObject.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -50,7 +49,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectDisposeFunction" title="GstMiniObjectDisposeFunction ()">*GstMiniObjectDisposeFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -172,7 +171,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-lock" title="gst_mini_object_lock ()">gst_mini_object_lock</a> <span class="c_punctuation">()</span>
@@ -188,7 +187,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-is-writable" title="gst_mini_object_is_writable ()">gst_mini_object_is_writable</a> <span class="c_punctuation">()</span>
@@ -220,7 +219,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-get-qdata" title="gst_mini_object_get_qdata ()">gst_mini_object_get_qdata</a> <span class="c_punctuation">()</span>
@@ -228,7 +227,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-steal-qdata" title="gst_mini_object_steal_qdata ()">gst_mini_object_steal_qdata</a> <span class="c_punctuation">()</span>
@@ -236,7 +235,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-replace" title="gst_mini_object_replace ()">gst_mini_object_replace</a> <span class="c_punctuation">()</span>
@@ -244,7 +243,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-take" title="gst_mini_object_take ()">gst_mini_object_take</a> <span class="c_punctuation">()</span>
@@ -285,11 +284,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstMiniObject.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstMiniObject.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -302,10 +296,10 @@
 and then call <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-init" title="gst_mini_object_init ()"><code class="function">gst_mini_object_init()</code></a> to initialize the <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> fields.</p>
 <p>gst_mini_object_ref() and <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-unref" title="gst_mini_object_unref ()"><code class="function">gst_mini_object_unref()</code></a> increment and decrement the
 refcount respectively. When the refcount of a mini-object reaches 0, the
-dispose function is called first and when this returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the free
+dispose function is called first and when this returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the free
 function of the miniobject is called.</p>
 <p>A copy can be made with <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-copy" title="gst_mini_object_copy ()"><code class="function">gst_mini_object_copy()</code></a>.</p>
-<p>gst_mini_object_is_writable() will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the refcount of the
+<p>gst_mini_object_is_writable() will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the refcount of the
 object is exactly 1, meaning the current caller has the only reference to the
 object. <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-make-writable" title="gst_mini_object_make_writable ()"><code class="function">gst_mini_object_make_writable()</code></a> will return a writable version of the
 object, which might be a new copy when the refcount was not 1.</p>
@@ -324,7 +318,7 @@
 <span class="c_punctuation">(</span>*GstMiniObjectCopyFunction<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>);</pre>
 <p>Function prototype for methods to create copies of instances.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -339,7 +333,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.2.6"></a><h4>Returns</h4>
+<a name="id-1.3.31.7.2.6"></a><h4>Returns</h4>
 <p> reference to cloned instance.</p>
 <p></p>
 </div>
@@ -347,15 +341,15 @@
 <hr>
 <div class="refsect2">
 <a name="GstMiniObjectDisposeFunction"></a><h3>GstMiniObjectDisposeFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstMiniObjectDisposeFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>);</pre>
 <p>Function prototype for when a miniobject has lost its last refcount.
 Implementation of the mini object are allowed to revive the
 passed object by doing a <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-ref" title="gst_mini_object_ref ()"><code class="function">gst_mini_object_ref()</code></a>. If the object is not
-revived after the dispose function, the function should return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
+revived after the dispose function, the function should return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
 and the memory associated with the object is freed.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -370,8 +364,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.3.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the object should be cleaned up.</p>
+<a name="id-1.3.31.7.3.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the object should be cleaned up.</p>
 <p></p>
 </div>
 </div>
@@ -383,7 +377,7 @@
 <p>Virtual function prototype for methods to free resources used by
 mini-objects.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -402,14 +396,14 @@
 <div class="refsect2">
 <a name="GstMiniObjectNotify"></a><h3>GstMiniObjectNotify ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GstMiniObjectNotify<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
+<span class="c_punctuation">(</span>*GstMiniObjectNotify<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>);</pre>
 <p>A <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectNotify" title="GstMiniObjectNotify ()"><span class="type">GstMiniObjectNotify</span></a> function can be added to a mini object as a
 callback that gets triggered when <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-unref" title="gst_mini_object_unref ()"><code class="function">gst_mini_object_unref()</code></a> drops the
 last ref and <em class="parameter"><code>obj</code></em>
  is about to be freed.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -438,7 +432,7 @@
 </pre>
 <p>This macro returns the type of the mini-object.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -460,7 +454,7 @@
 </pre>
 <p>This macro returns the entire set of flags for the mini-object.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -482,7 +476,7 @@
 </pre>
 <p>This macro checks to see if the given flag is set.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -511,7 +505,7 @@
 </pre>
 <p>This macro sets the given bits.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -540,7 +534,7 @@
 </pre>
 <p>This macro unsets the given bits.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -571,7 +565,7 @@
  is lockable. A lockable object can be locked and unlocked with
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-lock" title="gst_mini_object_lock ()"><code class="function">gst_mini_object_lock()</code></a> and <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-unlock" title="gst_mini_object_unlock ()"><code class="function">gst_mini_object_unlock()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -600,7 +594,7 @@
 </pre>
 <p>Get access to the reference count field of the mini-object.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -622,7 +616,7 @@
 </pre>
 <p>Get the reference count value of the mini-object.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -643,7 +637,7 @@
 <pre class="programlisting">#define             GST_DEFINE_MINI_OBJECT_TYPE(TypeName,type_name)</pre>
 <p>Define a new mini-object type with the given name</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -670,15 +664,15 @@
 <a name="gst-mini-object-init"></a><h3>gst_mini_object_init ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_mini_object_init (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> flags</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> flags</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectCopyFunction" title="GstMiniObjectCopyFunction ()"><span class="type">GstMiniObjectCopyFunction</span></a> copy_func</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectDisposeFunction" title="GstMiniObjectDisposeFunction ()"><span class="type">GstMiniObjectDisposeFunction</span></a> dispose_func</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectFreeFunction" title="GstMiniObjectFreeFunction ()"><span class="type">GstMiniObjectFreeFunction</span></a> free_func</code></em>);</pre>
 <p>Initializes a mini-object with the desired type and copy/dispose/free
 functions.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -698,23 +692,23 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the mini-object to create</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the mini-object to create</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>copy_func</p></td>
-<td class="parameter_description"><p> the copy function, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the copy function, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dispose_func</p></td>
-<td class="parameter_description"><p> the dispose function, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the dispose function, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>free_func</p></td>
-<td class="parameter_description"><p> the free function or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the free function or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -734,7 +728,7 @@
 of memcpy operations in a pipeline, especially if the miniobject
 is a <a class="link" href="GstBuffer.html" title="GstBuffer"><span class="type">GstBuffer</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.17.6"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.17.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -749,7 +743,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.17.7"></a><h4>Returns</h4>
+<a name="id-1.3.31.7.17.7"></a><h4>Returns</h4>
 <p> the mini-object. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -762,7 +756,7 @@
 <p>Decreases the reference count of the mini-object, possibly freeing
 the mini-object.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -783,7 +777,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_mini_object_weak_ref (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *object</code></em>,
                           <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectNotify" title="GstMiniObjectNotify ()"><span class="type">GstMiniObjectNotify</span></a> notify</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Adds a weak reference callback to a mini object. Weak references are
 used for notification when a mini object is finalized. They are called
 "weak references" because they allow you to safely hold a pointer
@@ -791,7 +785,7 @@
 (<a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-ref" title="gst_mini_object_ref ()"><code class="function">gst_mini_object_ref()</code></a> adds a strong reference, that is, forces the object
 to stay alive).</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -824,10 +818,10 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_mini_object_weak_unref (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *object</code></em>,
                             <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObjectNotify" title="GstMiniObjectNotify ()"><span class="type">GstMiniObjectNotify</span></a> notify</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Removes a weak reference callback from a mini object.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -857,13 +851,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mini-object-lock"></a><h3>gst_mini_object_lock ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mini_object_lock (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *object</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstLockFlags" title="enum GstLockFlags"><span class="type">GstLockFlags</span></a> flags</code></em>);</pre>
 <p>Lock the mini-object with the specified access mode in <em class="parameter"><code>flags</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -885,8 +879,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.21.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>object</code></em>
+<a name="id-1.3.31.7.21.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>object</code></em>
 could be locked.</p>
 <p></p>
 </div>
@@ -900,7 +894,7 @@
 <p>Unlock the mini-object with the specified access mode in <em class="parameter"><code>flags</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -925,7 +919,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mini-object-is-writable"></a><h3>gst_mini_object_is_writable ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mini_object_is_writable (<em class="parameter"><code>const <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>);</pre>
 <p>If <em class="parameter"><code>mini_object</code></em>
  has the LOCKABLE flag set, check if the current EXCLUSIVE
@@ -939,7 +933,7 @@
 <p>Modification of a mini-object should only be done after verifying that it
 is writable.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.23.7"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.23.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -954,8 +948,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.23.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the object is writable.</p>
+<a name="id-1.3.31.7.23.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the object is writable.</p>
 <p></p>
 </div>
 </div>
@@ -969,7 +963,7 @@
 and returns a reference to the new object.</p>
 <p>MT safe</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.24.6"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.24.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -984,7 +978,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.24.7"></a><h4>Returns</h4>
+<a name="id-1.3.31.7.24.7"></a><h4>Returns</h4>
 <p> a mini-object (possibly the same pointer) that
 is writable. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -998,7 +992,7 @@
 <p>Creates a copy of the mini-object.</p>
 <p>MT safe</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.25.6"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.25.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1013,7 +1007,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.25.7"></a><h4>Returns</h4>
+<a name="id-1.3.31.7.25.7"></a><h4>Returns</h4>
 <p> the new mini-object. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1023,18 +1017,18 @@
 <a name="gst-mini-object-set-qdata"></a><h3>gst_mini_object_set_qdata ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_mini_object_set_qdata (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *object</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);</pre>
 <p>This sets an opaque, named pointer on a miniobject.
-The name is specified through a <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> (retrieved e.g. via
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#g-quark-from-static-string"><code class="function">g_quark_from_static_string()</code></a>), and the pointer
+The name is specified through a <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> (retrieved e.g. via
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#g-quark-from-static-string"><code class="function">g_quark_from_static_string()</code></a>), and the pointer
 can be gotten back from the <em class="parameter"><code>object</code></em>
  with <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-get-qdata" title="gst_mini_object_get_qdata ()"><code class="function">gst_mini_object_get_qdata()</code></a>
 until the <em class="parameter"><code>object</code></em>
  is disposed.
 Setting a previously set user data pointer, overrides (frees)
-the old pointer set, using <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> as pointer essentially
+the old pointer set, using <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> as pointer essentially
 removes the data stored.</p>
 <p><em class="parameter"><code>destroy</code></em>
  may be specified which is called with <em class="parameter"><code>data</code></em>
@@ -1044,7 +1038,7 @@
 a call to <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-set-qdata" title="gst_mini_object_set_qdata ()"><code class="function">gst_mini_object_set_qdata()</code></a> with the same <em class="parameter"><code>quark</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.26.6"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.26.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1059,7 +1053,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>quark</p></td>
-<td class="parameter_description"><p>A <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer</p></td>
+<td class="parameter_description"><p>A <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1081,13 +1075,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mini-object-get-qdata"></a><h3>gst_mini_object_get_qdata ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_mini_object_get_qdata (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *object</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
 <p>This function gets back user data pointers stored via
 <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-set-qdata" title="gst_mini_object_set_qdata ()"><code class="function">gst_mini_object_set_qdata()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1102,30 +1096,31 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>quark</p></td>
-<td class="parameter_description"><p>A <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer</p></td>
+<td class="parameter_description"><p>A <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.27.6"></a><h4>Returns</h4>
-<p> The user data pointer set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<a name="id-1.3.31.7.27.6"></a><h4>Returns</h4>
+<p> The user data pointer set, or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mini-object-steal-qdata"></a><h3>gst_mini_object_steal_qdata ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_mini_object_steal_qdata (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *object</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
 <p>This function gets back user data pointers stored via <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-set-qdata" title="gst_mini_object_set_qdata ()"><code class="function">gst_mini_object_set_qdata()</code></a>
 and removes the data from <em class="parameter"><code>object</code></em>
  without invoking its <code class="function">destroy()</code> function (if
 any was set).</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1140,22 +1135,23 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>quark</p></td>
-<td class="parameter_description"><p>A <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer</p></td>
+<td class="parameter_description"><p>A <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.28.6"></a><h4>Returns</h4>
-<p> The user data pointer set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.31.7.28.6"></a><h4>Returns</h4>
+<p> The user data pointer set, or
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mini-object-replace"></a><h3>gst_mini_object_replace ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mini_object_replace (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> **olddata</code></em>,
                          <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *newdata</code></em>);</pre>
 <p>Atomically modifies a pointer to point to a new mini-object.
@@ -1165,9 +1161,9 @@
  is increased.</p>
 <p>Either <em class="parameter"><code>newdata</code></em>
  and the value pointed to by <em class="parameter"><code>olddata</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.29.6"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.29.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1177,21 +1173,21 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>olddata</p></td>
-<td class="parameter_description"><p> pointer to a pointer to a mini-object to
-be replaced. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to a pointer to a
+mini-object to be replaced. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>newdata</p></td>
-<td class="parameter_description"><p>pointer to new mini-object</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> pointer to new mini-object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.29.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>newdata</code></em>
+<a name="id-1.3.31.7.29.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>newdata</code></em>
 was different from <em class="parameter"><code>olddata</code></em>
 </p>
 <p></p>
@@ -1200,7 +1196,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mini-object-take"></a><h3>gst_mini_object_take ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mini_object_take (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> **olddata</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *newdata</code></em>);</pre>
 <p>Modifies a pointer to point to a new mini-object. The modification
@@ -1211,9 +1207,9 @@
 .</p>
 <p>Either <em class="parameter"><code>newdata</code></em>
  and the value pointed to by <em class="parameter"><code>olddata</code></em>
- may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+ may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.30.6"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.30.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1236,8 +1232,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.30.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>newdata</code></em>
+<a name="id-1.3.31.7.30.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>newdata</code></em>
 was different from <em class="parameter"><code>olddata</code></em>
 </p>
 <p></p>
@@ -1249,10 +1245,10 @@
 <pre class="programlisting"><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="returnvalue">GstMiniObject</span></a> *
 gst_mini_object_steal (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> **olddata</code></em>);</pre>
 <p>Replace the current <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> pointer to by <em class="parameter"><code>olddata</code></em>
- with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and
+ with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and
 return the old value.</p>
 <div class="refsect3">
-<a name="id-1.3.31.8.31.5"></a><h4>Parameters</h4>
+<a name="id-1.3.31.7.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1268,7 +1264,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.31.8.31.6"></a><h4>Returns</h4>
+<a name="id-1.3.31.7.31.6"></a><h4>Returns</h4>
 <p> the <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> at <em class="parameter"><code>oldata</code></em>
 </p>
 <p></p>
@@ -1297,7 +1293,7 @@
 Set Value Func: g_value_set_boxed
 Get Value Func: g_value_get_boxed</p>
 <div class="refsect3">
-<a name="id-1.3.31.9.2.5"></a><h4>Members</h4>
+<a name="id-1.3.31.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -1306,22 +1302,22 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstMiniObject.type"></a>type</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstMiniObject.type"></a>type</code></em>;</p></td>
 <td class="struct_member_description"><p>the GType of the object</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstMiniObject.refcount"></a>refcount</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstMiniObject.refcount"></a>refcount</code></em>;</p></td>
 <td class="struct_member_description"><p>atomic refcount</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstMiniObject.lockstate"></a>lockstate</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstMiniObject.lockstate"></a>lockstate</code></em>;</p></td>
 <td class="struct_member_description"><p>atomic state of the locks</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstMiniObject.flags"></a>flags</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstMiniObject.flags"></a>flags</code></em>;</p></td>
 <td class="struct_member_description"><p>extra flags.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1349,7 +1345,7 @@
 <a name="GstMiniObjectFlags"></a><h3>enum GstMiniObjectFlags</h3>
 <p>Flags for the mini object</p>
 <div class="refsect3">
-<a name="id-1.3.31.9.3.4"></a><h4>Members</h4>
+<a name="id-1.3.31.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -1389,7 +1385,7 @@
 <a name="GstLockFlags"></a><h3>enum GstLockFlags</h3>
 <p>Flags used when locking miniobjects</p>
 <div class="refsect3">
-<a name="id-1.3.31.9.4.4"></a><h4>Members</h4>
+<a name="id-1.3.31.8.4.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -1433,6 +1429,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstParamSpec.html b/docs/gst/html/gstreamer-GstParamSpec.html
index fbea600..acb5827 100644
--- a/docs/gst/html/gstreamer-GstParamSpec.html
+++ b/docs/gst/html/gstreamer-GstParamSpec.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstPadTemplate.html" title="GstPadTemplate">
 <link rel="next" href="gstreamer-GstParse.html" title="GstParse">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstParamSpec.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstParamSpec.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstParamSpec.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -55,7 +54,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="returnvalue">GParamSpec</span></a> *
+<a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="returnvalue">GParamSpec</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstParamSpec.html#gst-param-spec-fraction" title="gst_param_spec_fraction ()">gst_param_spec_fraction</a> <span class="c_punctuation">()</span>
@@ -88,11 +87,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstParamSpec.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstParamSpec.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -131,23 +125,23 @@
 <hr>
 <div class="refsect2">
 <a name="gst-param-spec-fraction"></a><h3>gst_param_spec_fraction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="returnvalue">GParamSpec</span></a> *
-gst_param_spec_fraction (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *blurb</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> min_num</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> min_denom</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> max_num</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> max_denom</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> default_num</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> default_denom</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamFlags"><span class="type">GParamFlags</span></a> flags</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="returnvalue">GParamSpec</span></a> *
+gst_param_spec_fraction (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *blurb</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> min_num</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> min_denom</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> max_num</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> max_denom</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> default_num</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> default_denom</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamFlags"><span class="type">GParamFlags</span></a> flags</code></em>);</pre>
 <p>This function creates a fraction GParamSpec for use by objects/elements
 that want to expose properties of fraction type. This function is typically
-used in connection with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-class-install-property"><code class="function">g_object_class_install_property()</code></a> in a GObjects's
+used in connection with <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-class-install-property"><code class="function">g_object_class_install_property()</code></a> in a GObjects's
 instance_init function.</p>
 <div class="refsect3">
-<a name="id-1.3.35.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.35.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -209,7 +203,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.35.8.5.6"></a><h4>Returns</h4>
+<a name="id-1.3.35.7.5.6"></a><h4>Returns</h4>
 <p> a newly created parameter specification. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -245,7 +239,7 @@
 <p>A GParamSpec derived structure that contains the meta data for fractional
 properties.</p>
 <div class="refsect3">
-<a name="id-1.3.35.9.4.5"></a><h4>Members</h4>
+<a name="id-1.3.35.8.4.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -254,37 +248,37 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.parent-instance"></a>parent_instance</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.parent-instance"></a>parent_instance</code></em>;</p></td>
 <td class="struct_member_description"><p>super class</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.min-num"></a>min_num</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.min-num"></a>min_num</code></em>;</p></td>
 <td class="struct_member_description"><p>minimal numerator</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.min-den"></a>min_den</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.min-den"></a>min_den</code></em>;</p></td>
 <td class="struct_member_description"><p>minimal denominator</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.max-num"></a>max_num</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.max-num"></a>max_num</code></em>;</p></td>
 <td class="struct_member_description"><p>maximal numerator</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.max-den"></a>max_den</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.max-den"></a>max_den</code></em>;</p></td>
 <td class="struct_member_description"><p>maximal denominator</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.def-num"></a>def_num</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.def-num"></a>def_num</code></em>;</p></td>
 <td class="struct_member_description"><p>default numerator</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.def-den"></a>def_den</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstParamSpecFraction.def-den"></a>def_den</code></em>;</p></td>
 <td class="struct_member_description"><p>default denominator</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -296,6 +290,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstParse.html b/docs/gst/html/gstreamer-GstParse.html
index 82dc026..c2f9f92 100644
--- a/docs/gst/html/gstreamer-GstParse.html
+++ b/docs/gst/html/gstreamer-GstParse.html
@@ -8,14 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstParamSpec.html" title="GstParamSpec">
 <link rel="next" href="GstPipeline.html" title="GstPipeline">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstParse.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstParse.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#gstreamer-GstParse.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstParse.html#gst-parse-error-quark" title="gst_parse_error_quark ()">gst_parse_error_quark</a> <span class="c_punctuation">()</span>
@@ -114,7 +114,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstParse.html#gst-parse-context-get-missing-elements" title="gst_parse_context_get_missing_elements ()">gst_parse_context_get_missing_elements</a> <span class="c_punctuation">()</span>
@@ -152,7 +152,7 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstParse.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GBoxed
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">╰──</span> GstParseContext
 </pre>
 </div>
@@ -173,7 +173,7 @@
 <a name="gstreamer-GstParse.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-parse-error-quark"></a><h3>gst_parse_error_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_parse_error_quark (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Get the error quark used by the parsing subsystem.</p>
 <div class="refsect3">
@@ -186,10 +186,10 @@
 <div class="refsect2">
 <a name="gst-parse-launch"></a><h3>gst_parse_launch ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_parse_launch (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *pipeline_description</code></em>,
-                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+gst_parse_launch (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *pipeline_description</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Create a new pipeline based on command line syntax.
-Please note that you might get a return value that is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> even though
+Please note that you might get a return value that is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> even though
 the <em class="parameter"><code>error</code></em>
  is set. In this case there was a recoverable parsing error and you
 can try to play the pipeline.</p>
@@ -217,7 +217,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.36.9.3.6"></a><h4>Returns</h4>
-<p> a new element on success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure. If
+<p> a new element on success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure. If
 more than one toplevel element is specified by the <em class="parameter"><code>pipeline_description</code></em>
 ,
 all elements are put into a <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a>, which than is returned. </p>
@@ -228,12 +228,12 @@
 <div class="refsect2">
 <a name="gst-parse-launch-full"></a><h3>gst_parse_launch_full ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_parse_launch_full (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *pipeline_description</code></em>,
+gst_parse_launch_full (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *pipeline_description</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseContext"><span class="type">GstParseContext</span></a> *context</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseFlags" title="enum GstParseFlags"><span class="type">GstParseFlags</span></a> flags</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Create a new pipeline based on command line syntax.
-Please note that you might get a return value that is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> even though
+Please note that you might get a return value that is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> even though
 the <em class="parameter"><code>error</code></em>
  is set. In this case there was a recoverable parsing error and you
 can try to play the pipeline.</p>
@@ -254,8 +254,8 @@
 <tr>
 <td class="parameter_name"><p>context</p></td>
 <td class="parameter_description"><p> a parse context allocated with
-<a class="link" href="gstreamer-GstParse.html#gst-parse-context-new" title="gst_parse_context_new ()"><code class="function">gst_parse_context_new()</code></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<a class="link" href="gstreamer-GstParse.html#gst-parse-context-new" title="gst_parse_context_new ()"><code class="function">gst_parse_context_new()</code></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flags</p></td>
@@ -272,7 +272,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.36.9.4.6"></a><h4>Returns</h4>
-<p> a new element on success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure. If
+<p> a new element on success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure. If
 more than one toplevel element is specified by the <em class="parameter"><code>pipeline_description</code></em>
 ,
 all elements are put into a <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a>, which then is returned. </p>
@@ -283,8 +283,8 @@
 <div class="refsect2">
 <a name="gst-parse-launchv"></a><h3>gst_parse_launchv ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_parse_launchv (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **argv</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+gst_parse_launchv (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **argv</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Create a new element based on command line syntax.
 <em class="parameter"><code>error</code></em>
  will contain an error message if an erroneous pipeline is specified.
@@ -305,7 +305,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a></p></td>
+<td class="parameter_description"><p>pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -313,7 +313,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.36.9.5.6"></a><h4>Returns</h4>
-<p> a new element on success and <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure. </p>
+<p> a new element on success and <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure. </p>
 <p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
 </div>
 </div>
@@ -321,10 +321,10 @@
 <div class="refsect2">
 <a name="gst-parse-launchv-full"></a><h3>gst_parse_launchv_full ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_parse_launchv_full (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **argv</code></em>,
+gst_parse_launchv_full (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **argv</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseContext"><span class="type">GstParseContext</span></a> *context</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseFlags" title="enum GstParseFlags"><span class="type">GstParseFlags</span></a> flags</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Create a new element based on command line syntax.
 <em class="parameter"><code>error</code></em>
  will contain an error message if an erroneous pipeline is specified.
@@ -346,8 +346,8 @@
 <tr>
 <td class="parameter_name"><p>context</p></td>
 <td class="parameter_description"><p> a parse context allocated with
-<a class="link" href="gstreamer-GstParse.html#gst-parse-context-new" title="gst_parse_context_new ()"><code class="function">gst_parse_context_new()</code></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<a class="link" href="gstreamer-GstParse.html#gst-parse-context-new" title="gst_parse_context_new ()"><code class="function">gst_parse_context_new()</code></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flags</p></td>
@@ -356,7 +356,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> (which must be initialised to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>)</p></td>
+<td class="parameter_description"><p>pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> (which must be initialised to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>)</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -364,12 +364,12 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.36.9.6.6"></a><h4>Returns</h4>
-<p> a new element on success; on failure, either <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<p> a new element on success; on failure, either <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 or a partially-constructed bin or element will be returned and <em class="parameter"><code>error</code></em>
 will
 be set (unless you passed <a class="link" href="gstreamer-GstParse.html#GST-PARSE-FLAG-FATAL-ERRORS:CAPS"><span class="type">GST_PARSE_FLAG_FATAL_ERRORS</span></a> in <em class="parameter"><code>flags</code></em>
 , then
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> will always be returned on failure). </p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> will always be returned on failure). </p>
 <p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
 </div>
 </div>
@@ -377,9 +377,9 @@
 <div class="refsect2">
 <a name="gst-parse-bin-from-description"></a><h3>gst_parse_bin_from_description ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_parse_bin_from_description (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *bin_description</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ghost_unlinked_pads</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
+gst_parse_bin_from_description (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *bin_description</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ghost_unlinked_pads</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
 <p>This is a convenience wrapper around <a class="link" href="gstreamer-GstParse.html#gst-parse-launch" title="gst_parse_launch ()"><code class="function">gst_parse_launch()</code></a> to create a
 <a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> from a gst-launch-style pipeline description. See
 <a class="link" href="gstreamer-GstParse.html#gst-parse-launch" title="gst_parse_launch ()"><code class="function">gst_parse_launch()</code></a> and the gst-launch man page for details about the
@@ -411,7 +411,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>err</p></td>
-<td class="parameter_description"><p>where to store the error message in case of an error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>where to store the error message in case of an error, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -419,20 +419,20 @@
 </div>
 <div class="refsect3">
 <a name="id-1.3.36.9.7.6"></a><h4>Returns</h4>
-<p> a newly-created bin,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error occurred. </p>
-<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gst.Bin]</span></p>
+<p> a
+newly-created bin, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error occurred. </p>
+<p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gst.Bin][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-parse-bin-from-description-full"></a><h3>gst_parse_bin_from_description_full ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
-gst_parse_bin_from_description_full (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *bin_description</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ghost_unlinked_pads</code></em>,
+gst_parse_bin_from_description_full (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *bin_description</code></em>,
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ghost_unlinked_pads</code></em>,
                                      <em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseContext"><span class="type">GstParseContext</span></a> *context</code></em>,
                                      <em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseFlags" title="enum GstParseFlags"><span class="type">GstParseFlags</span></a> flags</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
 <p>This is a convenience wrapper around <a class="link" href="gstreamer-GstParse.html#gst-parse-launch" title="gst_parse_launch ()"><code class="function">gst_parse_launch()</code></a> to create a
 <a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> from a gst-launch-style pipeline description. See
 <a class="link" href="gstreamer-GstParse.html#gst-parse-launch" title="gst_parse_launch ()"><code class="function">gst_parse_launch()</code></a> and the gst-launch man page for details about the
@@ -465,8 +465,8 @@
 <tr>
 <td class="parameter_name"><p>context</p></td>
 <td class="parameter_description"><p> a parse context allocated with
-<a class="link" href="gstreamer-GstParse.html#gst-parse-context-new" title="gst_parse_context_new ()"><code class="function">gst_parse_context_new()</code></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<a class="link" href="gstreamer-GstParse.html#gst-parse-context-new" title="gst_parse_context_new ()"><code class="function">gst_parse_context_new()</code></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>flags</p></td>
@@ -475,7 +475,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>err</p></td>
-<td class="parameter_description"><p>where to store the error message in case of an error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>where to store the error message in case of an error, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -485,7 +485,7 @@
 <a name="id-1.3.36.9.8.6"></a><h4>Returns</h4>
 <p> a newly-created
 element, which is guaranteed to be a bin unless
-GST_FLAG_NO_SINGLE_ELEMENT_BINS was passed, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+GST_FLAG_NO_SINGLE_ELEMENT_BINS was passed, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 occurred. </p>
 <p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gst.Element]</span></p>
 </div>
@@ -530,7 +530,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-parse-context-get-missing-elements"></a><h3>gst_parse_context_get_missing_elements ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> **
 gst_parse_context_get_missing_elements
                                (<em class="parameter"><code><a class="link" href="gstreamer-GstParse.html#GstParseContext"><span class="type">GstParseContext</span></a> *context</code></em>);</pre>
 <p>Retrieve missing elements from a previous run of <a class="link" href="gstreamer-GstParse.html#gst-parse-launch-full" title="gst_parse_launch_full ()"><code class="function">gst_parse_launch_full()</code></a>
@@ -554,8 +554,8 @@
 <div class="refsect3">
 <a name="id-1.3.36.9.11.6"></a><h4>Returns</h4>
 <p> a
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of element factory name strings of missing
-elements. Free with <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> when no longer needed. </p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated array of element factory name strings of missing
+elements. Free with <a href="https://developer.gnome.org/glib/unstable/glib-String-Utility-Functions.html#g-strfreev"><code class="function">g_strfreev()</code></a> when no longer needed. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*]</span></p>
 </div>
 </div>
@@ -663,7 +663,7 @@
 <tr>
 <td class="enum_member_name"><p><a name="GST-PARSE-FLAG-FATAL-ERRORS:CAPS"></a>GST_PARSE_FLAG_FATAL_ERRORS</p></td>
 <td class="enum_member_description">
-<p>Always return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when an error occurs
+<p>Always return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when an error occurs
     (default behaviour is to return partially constructed bins or elements
      in some cases)</p>
 </td>
@@ -685,6 +685,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstPoll.html b/docs/gst/html/gstreamer-GstPoll.html
index 6d7981d..ce16a52 100644
--- a/docs/gst/html/gstreamer-GstPoll.html
+++ b/docs/gst/html/gstreamer-GstPoll.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstPluginFeature.html" title="GstPluginFeature">
 <link rel="next" href="GstPreset.html" title="GstPreset">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstPoll.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstPoll.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstPoll.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -43,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-add-fd" title="gst_poll_add_fd ()">gst_poll_add_fd</a> <span class="c_punctuation">()</span>
@@ -51,7 +50,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-can-read" title="gst_poll_fd_can_read ()">gst_poll_fd_can_read</a> <span class="c_punctuation">()</span>
@@ -59,7 +58,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-can-write" title="gst_poll_fd_can_write ()">gst_poll_fd_can_write</a> <span class="c_punctuation">()</span>
@@ -67,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-ctl-read" title="gst_poll_fd_ctl_read ()">gst_poll_fd_ctl_read</a> <span class="c_punctuation">()</span>
@@ -75,7 +74,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-ctl-write" title="gst_poll_fd_ctl_write ()">gst_poll_fd_ctl_write</a> <span class="c_punctuation">()</span>
@@ -83,7 +82,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-has-closed" title="gst_poll_fd_has_closed ()">gst_poll_fd_has_closed</a> <span class="c_punctuation">()</span>
@@ -91,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-has-error" title="gst_poll_fd_has_error ()">gst_poll_fd_has_error</a> <span class="c_punctuation">()</span>
@@ -147,7 +146,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-remove-fd" title="gst_poll_remove_fd ()">gst_poll_remove_fd</a> <span class="c_punctuation">()</span>
@@ -163,7 +162,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-set-controllable" title="gst_poll_set_controllable ()">gst_poll_set_controllable</a> <span class="c_punctuation">()</span>
@@ -179,7 +178,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-wait" title="gst_poll_wait ()">gst_poll_wait</a> <span class="c_punctuation">()</span>
@@ -187,7 +186,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-read-control" title="gst_poll_read_control ()">gst_poll_read_control</a> <span class="c_punctuation">()</span>
@@ -195,7 +194,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-write-control" title="gst_poll_write_control ()">gst_poll_write_control</a> <span class="c_punctuation">()</span>
@@ -228,11 +227,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstPoll.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstPoll.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -243,7 +237,7 @@
 <code class="function">select()</code>) or a struct pollfd array (used with <code class="function">poll()</code>). Once created with
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-new" title="gst_poll_new ()"><code class="function">gst_poll_new()</code></a>, the set can be used to wait for file descriptors to be
 readable and/or writable. It is possible to make this wait be controlled
-by specifying <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for the <em class="parameter"><code>controllable</code></em>
+by specifying <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for the <em class="parameter"><code>controllable</code></em>
  flag when creating the set (or
 later calling <a class="link" href="gstreamer-GstPoll.html#gst-poll-set-controllable" title="gst_poll_set_controllable ()"><code class="function">gst_poll_set_controllable()</code></a>).</p>
 <p>New file descriptors are added to the set using <a class="link" href="gstreamer-GstPoll.html#gst-poll-add-fd" title="gst_poll_add_fd ()"><code class="function">gst_poll_add_fd()</code></a>, and
@@ -265,12 +259,12 @@
 <a name="gstreamer-GstPoll.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-poll-add-fd"></a><h3>gst_poll_add_fd ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_add_fd (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                  <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>);</pre>
 <p>Add a file descriptor to the file descriptor set.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -292,22 +286,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file descriptor was successfully added to the set.</p>
+<a name="id-1.3.40.7.2.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file descriptor was successfully added to the set.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-poll-fd-can-read"></a><h3>gst_poll_fd_can_read ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_fd_can_read (<em class="parameter"><code>const <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>);</pre>
 <p>Check if <em class="parameter"><code>fd</code></em>
  in <em class="parameter"><code>set</code></em>
  has data to be read.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -329,22 +323,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.3.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor has data to be read.</p>
+<a name="id-1.3.40.7.3.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor has data to be read.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-poll-fd-can-write"></a><h3>gst_poll_fd_can_write ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_fd_can_write (<em class="parameter"><code>const <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>);</pre>
 <p>Check if <em class="parameter"><code>fd</code></em>
  in <em class="parameter"><code>set</code></em>
  can be used for writing.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -366,24 +360,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor can be used for writing.</p>
+<a name="id-1.3.40.7.4.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor can be used for writing.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-poll-fd-ctl-read"></a><h3>gst_poll_fd_ctl_read ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_fd_ctl_read (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                       <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Control whether the descriptor <em class="parameter"><code>fd</code></em>
  in <em class="parameter"><code>set</code></em>
  will be monitored for
 readability.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -410,24 +404,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor was successfully updated.</p>
+<a name="id-1.3.40.7.5.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor was successfully updated.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-poll-fd-ctl-write"></a><h3>gst_poll_fd_ctl_write ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_fd_ctl_write (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
 <p>Control whether the descriptor <em class="parameter"><code>fd</code></em>
  in <em class="parameter"><code>set</code></em>
  will be monitored for
 writability.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -454,22 +448,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor was successfully updated.</p>
+<a name="id-1.3.40.7.6.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor was successfully updated.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-poll-fd-has-closed"></a><h3>gst_poll_fd_has_closed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_fd_has_closed (<em class="parameter"><code>const <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>);</pre>
 <p>Check if <em class="parameter"><code>fd</code></em>
  in <em class="parameter"><code>set</code></em>
  has closed the connection.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -491,22 +485,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the connection was closed.</p>
+<a name="id-1.3.40.7.7.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the connection was closed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-poll-fd-has-error"></a><h3>gst_poll_fd_has_error ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_fd_has_error (<em class="parameter"><code>const <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                        <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>);</pre>
 <p>Check if <em class="parameter"><code>fd</code></em>
  in <em class="parameter"><code>set</code></em>
  has an error.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -528,8 +522,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor has an error.</p>
+<a name="id-1.3.40.7.8.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the descriptor has an error.</p>
 <p></p>
 </div>
 </div>
@@ -550,7 +544,7 @@
 might not allow querying the fd more than once between calls to one of
 the re-enabling operations.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.9.6"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.9.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -581,7 +575,7 @@
 . Alternatively you can initialize it with
 <a class="link" href="gstreamer-GstPoll.html#GST-POLL-FD-INIT:CAPS" title="GST_POLL_FD_INIT"><span class="type">GST_POLL_FD_INIT</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -603,7 +597,7 @@
 gst_poll_free (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>);</pre>
 <p>Free a file descriptor set.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -622,14 +616,14 @@
 <div class="refsect2">
 <a name="gst-poll-new"></a><h3>gst_poll_new ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="returnvalue">GstPoll</span></a> *
-gst_poll_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> controllable</code></em>);</pre>
+gst_poll_new (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> controllable</code></em>);</pre>
 <p>Create a new file descriptor set. If <em class="parameter"><code>controllable</code></em>
 , it
 is possible to restart or flush a call to <a class="link" href="gstreamer-GstPoll.html#gst-poll-wait" title="gst_poll_wait ()"><code class="function">gst_poll_wait()</code></a> with
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-restart" title="gst_poll_restart ()"><code class="function">gst_poll_restart()</code></a> and <a class="link" href="gstreamer-GstPoll.html#gst-poll-set-flushing" title="gst_poll_set_flushing ()"><code class="function">gst_poll_set_flushing()</code></a> respectively.</p>
 <p>Free-function: gst_poll_free</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.12.6"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.12.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -644,10 +638,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.12.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error.
-Free with <a class="link" href="gstreamer-GstPoll.html#gst-poll-free" title="gst_poll_free ()"><code class="function">gst_poll_free()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.40.7.12.7"></a><h4>Returns</h4>
+<p> a new <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error.  Free with <a class="link" href="gstreamer-GstPoll.html#gst-poll-free" title="gst_poll_free ()"><code class="function">gst_poll_free()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -661,10 +655,10 @@
 performed from different threads. </p>
 <p>Free-function: gst_poll_free</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.13.7"></a><h4>Returns</h4>
-<p> a new <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error.
-Free with <a class="link" href="gstreamer-GstPoll.html#gst-poll-free" title="gst_poll_free ()"><code class="function">gst_poll_free()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.40.7.13.7"></a><h4>Returns</h4>
+<p> a new <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in
+case of an error.  Free with <a class="link" href="gstreamer-GstPoll.html#gst-poll-free" title="gst_poll_free ()"><code class="function">gst_poll_free()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -672,11 +666,11 @@
 <a name="gst-poll-get-read-gpollfd"></a><h3>gst_poll_get_read_gpollfd ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_poll_get_read_gpollfd (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GPollFD"><span class="type">GPollFD</span></a> *fd</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GPollFD"><span class="type">GPollFD</span></a> *fd</code></em>);</pre>
 <p>Get a GPollFD for the reading part of the control socket. This is useful when
 integrating with a GSource and GMainLoop.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -691,7 +685,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>fd</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GPollFD"><span class="type">GPollFD</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-The-Main-Event-Loop.html#GPollFD"><span class="type">GPollFD</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -701,12 +695,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-poll-remove-fd"></a><h3>gst_poll_remove_fd ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_remove_fd (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                     <em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> *fd</code></em>);</pre>
 <p>Remove a file descriptor from the file descriptor set.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -728,8 +722,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file descriptor was successfully removed from the set.</p>
+<a name="id-1.3.40.7.15.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file descriptor was successfully removed from the set.</p>
 <p></p>
 </div>
 </div>
@@ -744,7 +738,7 @@
 <p>If <em class="parameter"><code>set</code></em>
  is not controllable, then this call will have no effect.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.16.6"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.16.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -762,15 +756,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-poll-set-controllable"></a><h3>gst_poll_set_controllable ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_set_controllable (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> controllable</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> controllable</code></em>);</pre>
 <p>When <em class="parameter"><code>controllable</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function ensures that future calls to
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function ensures that future calls to
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-wait" title="gst_poll_wait ()"><code class="function">gst_poll_wait()</code></a> will be affected by <a class="link" href="gstreamer-GstPoll.html#gst-poll-restart" title="gst_poll_restart ()"><code class="function">gst_poll_restart()</code></a> and
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-set-flushing" title="gst_poll_set_flushing ()"><code class="function">gst_poll_set_flushing()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -792,8 +786,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the controllability of <em class="parameter"><code>set</code></em>
+<a name="id-1.3.40.7.17.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the controllability of <em class="parameter"><code>set</code></em>
 could be updated.</p>
 <p></p>
 </div>
@@ -803,14 +797,14 @@
 <a name="gst-poll-set-flushing"></a><h3>gst_poll_set_flushing ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_poll_set_flushing (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
 <p>When <em class="parameter"><code>flushing</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function ensures that current and future calls
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function ensures that current and future calls
 to <a class="link" href="gstreamer-GstPoll.html#gst-poll-wait" title="gst_poll_wait ()"><code class="function">gst_poll_wait()</code></a> will return -1, with errno set to EBUSY.</p>
 <p>Unsetting the flushing state will restore normal operation of <em class="parameter"><code>set</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.18.6"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.18.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -835,7 +829,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-poll-wait"></a><h3>gst_poll_wait ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_poll_wait (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>,
                <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timeout</code></em>);</pre>
 <p>Wait for activity on the file descriptors in <em class="parameter"><code>set</code></em>
@@ -849,7 +843,7 @@
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-new-timer" title="gst_poll_new_timer ()"><code class="function">gst_poll_new_timer()</code></a>, where it is allowed to have multiple threads waiting
 simultaneously.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.19.7"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.19.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -871,7 +865,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.19.8"></a><h4>Returns</h4>
+<a name="id-1.3.40.7.19.8"></a><h4>Returns</h4>
 <p> The number of <a class="link" href="gstreamer-GstPoll.html#GstPollFD" title="GstPollFD"><span class="type">GstPollFD</span></a> in <em class="parameter"><code>set</code></em>
 that have activity or 0 when no
 activity was detected after <em class="parameter"><code>timeout</code></em>
@@ -883,14 +877,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-poll-read-control"></a><h3>gst_poll_read_control ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_read_control (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>);</pre>
 <p>Read a byte from the control socket of the controllable <em class="parameter"><code>set</code></em>
 .
 This function is mostly useful for timer <a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> objects created with
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-new-timer" title="gst_poll_new_timer ()"><code class="function">gst_poll_new_timer()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -905,8 +899,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.20.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>set</code></em>
+<a name="id-1.3.40.7.20.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success. <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>set</code></em>
 is not controllable or when there
 was no byte to read.</p>
 <p></p>
@@ -915,7 +909,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-poll-write-control"></a><h3>gst_poll_write_control ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_poll_write_control (<em class="parameter"><code><a class="link" href="gstreamer-GstPoll.html#GstPoll" title="GstPoll"><span class="type">GstPoll</span></a> *set</code></em>);</pre>
 <p>Write a byte to the control socket of the controllable <em class="parameter"><code>set</code></em>
 .
@@ -926,7 +920,7 @@
 <a class="link" href="gstreamer-GstPoll.html#gst-poll-read-control" title="gst_poll_read_control ()"><code class="function">gst_poll_read_control()</code></a> have been performed, calls to <a class="link" href="gstreamer-GstPoll.html#gst-poll-wait" title="gst_poll_wait ()"><code class="function">gst_poll_wait()</code></a> will
 block again until their timeout expired.</p>
 <div class="refsect3">
-<a name="id-1.3.40.8.21.6"></a><h4>Parameters</h4>
+<a name="id-1.3.40.7.21.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -941,8 +935,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.40.8.21.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>set</code></em>
+<a name="id-1.3.40.7.21.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success. <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when <em class="parameter"><code>set</code></em>
 is not controllable or when the
 byte could not be written.</p>
 <p></p>
@@ -965,7 +959,7 @@
 </pre>
 <p>A file descriptor object.</p>
 <div class="refsect3">
-<a name="id-1.3.40.9.3.5"></a><h4>Members</h4>
+<a name="id-1.3.40.8.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -994,6 +988,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstTocSetter.html b/docs/gst/html/gstreamer-GstTocSetter.html
index ba9eb04..f8eff75 100644
--- a/docs/gst/html/gstreamer-GstTocSetter.html
+++ b/docs/gst/html/gstreamer-GstTocSetter.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstToc.html" title="GstToc">
 <link rel="next" href="gstreamer-GstTypeFind.html" title="GstTypeFind">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstTocSetter.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstTocSetter.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstTocSetter.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -88,11 +87,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstTocSetter.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstTocSetter.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -121,7 +115,7 @@
 <p>Set the given TOC on the setter. Previously set TOC will be
 unreffed before setting a new one.</p>
 <div class="refsect3">
-<a name="id-1.3.52.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.52.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -137,7 +131,7 @@
 <tr>
 <td class="parameter_name"><p>toc</p></td>
 <td class="parameter_description"><p> a <a class="link" href="GstToc.html" title="GstToc"><span class="type">GstToc</span></a> to set. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -151,7 +145,7 @@
 <p>Return current TOC the setter uses. The TOC should not be
 modified without making it writable first.</p>
 <div class="refsect3">
-<a name="id-1.3.52.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.52.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -166,10 +160,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.52.8.3.6"></a><h4>Returns</h4>
-<p> TOC set, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Unref with <a class="link" href="GstToc.html#gst-toc-unref" title="gst_toc_unref()"><code class="function">gst_toc_unref()</code></a>
-when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.52.7.3.6"></a><h4>Returns</h4>
+<p> TOC set, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Unref with
+<a class="link" href="GstToc.html#gst-toc-unref" title="gst_toc_unref()"><code class="function">gst_toc_unref()</code></a> when no longer needed. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -180,7 +174,7 @@
 <p>Reset the internal TOC. Elements should call this from within the
 state-change handler.</p>
 <div class="refsect3">
-<a name="id-1.3.52.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.52.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -216,7 +210,7 @@
 </pre>
 <p><a class="link" href="gstreamer-GstTocSetter.html#GstTocSetterInterface" title="struct GstTocSetterInterface"><span class="type">GstTocSetterInterface</span></a> interface.</p>
 <div class="refsect3">
-<a name="id-1.3.52.9.3.5"></a><h4>Members</h4>
+<a name="id-1.3.52.8.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -224,7 +218,7 @@
 <col width="200px" class="struct_members_annotations">
 </colgroup>
 <tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstTocSetterInterface.g-iface"></a>g_iface</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstTocSetterInterface.g-iface"></a>g_iface</code></em>;</p></td>
 <td class="struct_member_description"><p>parent interface type.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr></tbody>
@@ -235,6 +229,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstTypeFind.html b/docs/gst/html/gstreamer-GstTypeFind.html
index 4a6d6d1..30f1ed3 100644
--- a/docs/gst/html/gstreamer-GstTypeFind.html
+++ b/docs/gst/html/gstreamer-GstTypeFind.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstTocSetter.html" title="GstTocSetter">
 <link rel="next" href="GstTypeFindFactory.html" title="GstTypeFindFactory">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstTypeFind.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstTypeFind.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstTypeFind.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -81,7 +80,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstTypeFind.html#gst-type-find-register" title="gst_type_find_register ()">gst_type_find_register</a> <span class="c_punctuation">()</span>
@@ -110,11 +109,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstTypeFind.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstTypeFind.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -130,10 +124,10 @@
 <a name="GstTypeFindFunction"></a><h3>GstTypeFindFunction ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstTypeFindFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-GstTypeFind.html#GstTypeFind" title="struct GstTypeFind"><span class="type">GstTypeFind</span></a> *find</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called by typefinding.</p>
 <div class="refsect3">
-<a name="id-1.3.53.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.53.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -161,10 +155,15 @@
 <pre class="programlisting">const <span class="returnvalue">guint8</span> *
 gst_type_find_peek (<em class="parameter"><code><a class="link" href="gstreamer-GstTypeFind.html#GstTypeFind" title="struct GstTypeFind"><span class="type">GstTypeFind</span></a> *find</code></em>,
                     <em class="parameter"><code><span class="type">gint64</span> offset</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
-<p>returns and must not be freed.</p>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+<p>Returns the <em class="parameter"><code>size</code></em>
+ bytes of the stream to identify beginning at offset. If
+offset is a positive number, the offset is relative to the beginning of the
+stream, if offset is a negative number the offset is relative to the end of
+the stream. The returned memory is valid until the typefinding function
+returns and must not be freed.</p>
 <div class="refsect3">
-<a name="id-1.3.53.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.53.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -191,10 +190,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.53.8.3.6"></a><h4>Returns</h4>
-<p> the requested data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if that data is not available. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></p>
+<a name="id-1.3.53.7.3.6"></a><h4>Returns</h4>
+<p> the
+requested data, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if that data is not available. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -202,14 +201,14 @@
 <a name="gst-type-find-suggest"></a><h3>gst_type_find_suggest ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_type_find_suggest (<em class="parameter"><code><a class="link" href="gstreamer-GstTypeFind.html#GstTypeFind" title="struct GstTypeFind"><span class="type">GstTypeFind</span></a> *find</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> probability</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> probability</code></em>,
                        <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>If a <a class="link" href="gstreamer-GstTypeFind.html#GstTypeFindFunction" title="GstTypeFindFunction ()"><span class="type">GstTypeFindFunction</span></a> calls this function it suggests the caps with the
 given probability. A <a class="link" href="gstreamer-GstTypeFind.html#GstTypeFindFunction" title="GstTypeFindFunction ()"><span class="type">GstTypeFindFunction</span></a> may supply different suggestions
 in one call.
 It is up to the caller of the <a class="link" href="gstreamer-GstTypeFind.html#GstTypeFindFunction" title="GstTypeFindFunction ()"><span class="type">GstTypeFindFunction</span></a> to interpret these values.</p>
 <div class="refsect3">
-<a name="id-1.3.53.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.53.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -241,7 +240,7 @@
 <a name="gst-type-find-suggest-simple"></a><h3>gst_type_find_suggest_simple ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_type_find_suggest_simple (<em class="parameter"><code><a class="link" href="gstreamer-GstTypeFind.html#GstTypeFind" title="struct GstTypeFind"><span class="type">GstTypeFind</span></a> *find</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> probability</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> probability</code></em>,
                               <em class="parameter"><code>const <span class="type">char</span> *media_type</code></em>,
                               <em class="parameter"><code>const <span class="type">char</span> *fieldname</code></em>,
                               <em class="parameter"><code>...</code></em>);</pre>
@@ -252,12 +251,12 @@
 <p>This function is similar to <a class="link" href="gstreamer-GstTypeFind.html#gst-type-find-suggest" title="gst_type_find_suggest ()"><code class="function">gst_type_find_suggest()</code></a>, only that instead of
 passing a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> argument you can create the caps on the fly in the same
 way as you can with <a class="link" href="GstCaps.html#gst-caps-new-simple" title="gst_caps_new_simple ()"><code class="function">gst_caps_new_simple()</code></a>.</p>
-<p>Make sure you terminate the list of arguments with a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> argument and that
+<p>Make sure you terminate the list of arguments with a <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> argument and that
 the values passed have the correct type (in terms of width in bytes when
 passed to the vararg function - this applies particularly to gdouble and
 guint64 arguments).</p>
 <div class="refsect3">
-<a name="id-1.3.53.8.5.7"></a><h4>Parameters</h4>
+<a name="id-1.3.53.7.5.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -282,8 +281,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>fieldname</p></td>
-<td class="parameter_description"><p> first field of the suggested caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> first field of the suggested caps, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>...</p></td>
@@ -303,7 +302,7 @@
 gst_type_find_get_length (<em class="parameter"><code><a class="link" href="gstreamer-GstTypeFind.html#GstTypeFind" title="struct GstTypeFind"><span class="type">GstTypeFind</span></a> *find</code></em>);</pre>
 <p>Get the length of the data stream.</p>
 <div class="refsect3">
-<a name="id-1.3.53.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.53.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -318,7 +317,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.53.8.6.6"></a><h4>Returns</h4>
+<a name="id-1.3.53.7.6.6"></a><h4>Returns</h4>
 <p> The length of the data stream, or 0 if it is not available.</p>
 <p></p>
 </div>
@@ -326,20 +325,20 @@
 <hr>
 <div class="refsect2">
 <a name="gst-type-find-register"></a><h3>gst_type_find_register ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_type_find_register (<em class="parameter"><code><a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a> *plugin</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>,
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> rank</code></em>,
                         <em class="parameter"><code><a class="link" href="gstreamer-GstTypeFind.html#GstTypeFindFunction" title="GstTypeFindFunction ()"><span class="type">GstTypeFindFunction</span></a> func</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extensions</code></em>,
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extensions</code></em>,
                         <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *possible_caps</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> data_notify</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> data_notify</code></em>);</pre>
 <p>Registers a new typefind function to be used for typefinding. After
 registering this function will be available for typefinding.
 This function is typically called during an element's plugin initialization.</p>
 <div class="refsect3">
-<a name="id-1.3.53.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.53.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -349,8 +348,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>plugin</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for a static typefind function. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> A <a class="link" href="GstPlugin.html" title="GstPlugin"><span class="type">GstPlugin</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for a static typefind function. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
@@ -371,7 +370,7 @@
 <td class="parameter_name"><p>extensions</p></td>
 <td class="parameter_description"><p> Optional comma-separated list of extensions
 that could belong to this type. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>possible_caps</p></td>
@@ -387,7 +386,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>data_notify</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> that will be called on <em class="parameter"><code>data</code></em>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> that will be called on <em class="parameter"><code>data</code></em>
 when the plugin
 is unloaded.</p></td>
 <td class="parameter_annotations"> </td>
@@ -396,8 +395,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.53.8.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
+<a name="id-1.3.53.7.7.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
 <p></p>
 </div>
 </div>
@@ -424,7 +423,7 @@
 </pre>
 <p>Object that stores typefind callbacks. To use with <a class="link" href="GstTypeFindFactory.html" title="GstTypeFindFactory"><span class="type">GstTypeFindFactory</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.53.9.2.5"></a><h4>Members</h4>
+<a name="id-1.3.53.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -443,7 +442,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstTypeFind.data"></a>data</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstTypeFind.data"></a>data</code></em>;</p></td>
 <td class="struct_member_description"><p>The data used by the caller of the typefinding function.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -462,7 +461,7 @@
 <p>The probability of the typefind function. Higher values have more certainty
 in doing a reliable typefind.</p>
 <div class="refsect3">
-<a name="id-1.3.53.9.3.4"></a><h4>Members</h4>
+<a name="id-1.3.53.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -520,6 +519,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstUri.html b/docs/gst/html/gstreamer-GstUri.html
new file mode 100644
index 0000000..1e357df
--- /dev/null
+++ b/docs/gst/html/gstreamer-GstUri.html
@@ -0,0 +1,1945 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer 1.0 Core Reference Manual: GstUri</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
+<link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
+<link rel="prev" href="GstTypeFindFactory.html" title="GstTypeFindFactory">
+<link rel="next" href="gstreamer-GstUriHandler.html" title="GstUriHandler">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstUri.description" class="shortcut">Description</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="GstTypeFindFactory.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gstreamer-GstUriHandler.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="gstreamer-GstUri"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="gstreamer-GstUri.top_of_page"></a>GstUri</span></h2>
+<p>GstUri — URI parsing and manipulation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="gstreamer-GstUri.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#GST-URI-CAST:CAPS" title="GST_URI_CAST()">GST_URI_CAST</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#GST-URI-CONST-CAST:CAPS" title="GST_URI_CONST_CAST()">GST_URI_CONST_CAST</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-new" title="gst_uri_new ()">gst_uri_new</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-new-with-base" title="gst_uri_new_with_base ()">gst_uri_new_with_base</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-from-string" title="gst_uri_from_string ()">gst_uri_from_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-from-string-with-base" title="gst_uri_from_string_with_base ()">gst_uri_from_string_with_base</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-copy" title="gst_uri_copy ()">gst_uri_copy</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-equal" title="gst_uri_equal ()">gst_uri_equal</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-join" title="gst_uri_join ()">gst_uri_join</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-join-strings" title="gst_uri_join_strings ()">gst_uri_join_strings</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-is-writable" title="gst_uri_is_writable ()">gst_uri_is_writable</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-make-writable" title="gst_uri_make_writable ()">gst_uri_make_writable</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-to-string" title="gst_uri_to_string ()">gst_uri_to_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-ref" title="gst_uri_ref ()">gst_uri_ref</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-unref" title="gst_uri_unref ()">gst_uri_unref</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-is-normalized" title="gst_uri_is_normalized ()">gst_uri_is_normalized</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-normalize" title="gst_uri_normalize ()">gst_uri_normalize</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-scheme" title="gst_uri_get_scheme ()">gst_uri_get_scheme</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-scheme" title="gst_uri_set_scheme ()">gst_uri_set_scheme</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-userinfo" title="gst_uri_get_userinfo ()">gst_uri_get_userinfo</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-userinfo" title="gst_uri_set_userinfo ()">gst_uri_set_userinfo</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-host" title="gst_uri_get_host ()">gst_uri_get_host</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-host" title="gst_uri_set_host ()">gst_uri_set_host</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-port" title="gst_uri_get_port ()">gst_uri_get_port</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-port" title="gst_uri_set_port ()">gst_uri_set_port</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-path" title="gst_uri_get_path ()">gst_uri_get_path</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-path" title="gst_uri_set_path ()">gst_uri_set_path</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-path-string" title="gst_uri_get_path_string ()">gst_uri_get_path_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-path-string" title="gst_uri_set_path_string ()">gst_uri_set_path_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-path-segments" title="gst_uri_get_path_segments ()">gst_uri_get_path_segments</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-path-segments" title="gst_uri_set_path_segments ()">gst_uri_set_path_segments</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-append-path" title="gst_uri_append_path ()">gst_uri_append_path</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-append-path-segment" title="gst_uri_append_path_segment ()">gst_uri_append_path_segment</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-string" title="gst_uri_get_query_string ()">gst_uri_get_query_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-query-string" title="gst_uri_set_query_string ()">gst_uri_set_query_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-table" title="gst_uri_get_query_table ()">gst_uri_get_query_table</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-query-table" title="gst_uri_set_query_table ()">gst_uri_set_query_table</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-value" title="gst_uri_get_query_value ()">gst_uri_get_query_value</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-query-value" title="gst_uri_set_query_value ()">gst_uri_set_query_value</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-remove-query-key" title="gst_uri_remove_query_key ()">gst_uri_remove_query_key</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-query-has-key" title="gst_uri_query_has_key ()">gst_uri_query_has_key</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-query-keys" title="gst_uri_get_query_keys ()">gst_uri_get_query_keys</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-get-fragment" title="gst_uri_get_fragment ()">gst_uri_get_fragment</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-GstUri.html#gst-uri-set-fragment" title="gst_uri_set_fragment ()">gst_uri_set_fragment</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstUri.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody><tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri">GstUri</a></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstUri.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;gst/gst.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstUri.description"></a><h2>Description</h2>
+<p>A <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object can be used to parse and split a URI string into its
+constituant parts. Two <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> objects can be joined to make a new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a>
+using the algorithm described in RFC3986.</p>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstUri.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="GST-URI-CAST:CAPS"></a><h3>GST_URI_CAST()</h3>
+<pre class="programlisting">#define GST_URI_CAST(obj)   ((GstUri *)(obj))
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-URI-CONST-CAST:CAPS"></a><h3>GST_URI_CONST_CAST()</h3>
+<pre class="programlisting">#define GST_URI_CONST_CAST(obj) ((const GstUri *)(obj))
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-new"></a><h3>gst_uri_new ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *scheme</code></em>,
+             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *userinfo</code></em>,
+             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *host</code></em>,
+             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> port</code></em>,
+             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>,
+             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query</code></em>,
+             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fragment</code></em>);</pre>
+<p>Creates a new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object with the given URI parts. The path and query
+strings will be broken down into their elements. All strings should not be
+escaped except where indicated.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.4.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>scheme</p></td>
+<td class="parameter_description"><p> The scheme for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>userinfo</p></td>
+<td class="parameter_description"><p> The user-info for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>host</p></td>
+<td class="parameter_description"><p> The host name for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>port</p></td>
+<td class="parameter_description"><p>The port number for the new URI or <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT"><code class="literal">GST_URI_NO_PORT</code></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p> The path for the new URI with '/' separating path
+elements. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p> The query string for the new URI with '&amp;' separating
+query elements. Elements containing '&amp;' characters
+should encode them as "<code class="literal">26</code>". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>fragment</p></td>
+<td class="parameter_description"><p> The fragment name for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.4.6"></a><h4>Returns</h4>
+<p> A new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-new-with-base"></a><h3>gst_uri_new_with_base ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_new_with_base (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *base</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *scheme</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *userinfo</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *host</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> port</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fragment</code></em>);</pre>
+<p>Like <a class="link" href="gstreamer-GstUri.html#gst-uri-new" title="gst_uri_new ()"><code class="function">gst_uri_new()</code></a>, but joins the new URI onto a base URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.5.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>base</p></td>
+<td class="parameter_description"><p> The base URI to join the new URI to. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>scheme</p></td>
+<td class="parameter_description"><p> The scheme for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>userinfo</p></td>
+<td class="parameter_description"><p> The user-info for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>host</p></td>
+<td class="parameter_description"><p> The host name for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>port</p></td>
+<td class="parameter_description"><p>The port number for the new URI or <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT"><code class="literal">GST_URI_NO_PORT</code></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p> The path for the new URI with '/' separating path
+elements. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p> The query string for the new URI with '&amp;' separating
+query elements. Elements containing '&amp;' characters
+should encode them as "<code class="literal">26</code>". </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>fragment</p></td>
+<td class="parameter_description"><p> The fragment name for the new URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.5.6"></a><h4>Returns</h4>
+<p> The new URI joined onto <em class="parameter"><code>base</code></em>
+. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-from-string"></a><h3>gst_uri_from_string ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_from_string (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+<p>Parses a URI string into a new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. Will return NULL if the URI
+cannot be parsed.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.6.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>The URI string to parse.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.6.6"></a><h4>Returns</h4>
+<p> A new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object, or NULL. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-from-string-with-base"></a><h3>gst_uri_from_string_with_base ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_from_string_with_base (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *base</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+<p>Like <a class="link" href="gstreamer-GstUri.html#gst-uri-from-string" title="gst_uri_from_string ()"><code class="function">gst_uri_from_string()</code></a> but also joins with a base URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.7.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>base</p></td>
+<td class="parameter_description"><p> The base URI to join the new URI with. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>The URI string to parse.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.7.6"></a><h4>Returns</h4>
+<p> A new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-copy"></a><h3>gst_uri_copy ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_copy (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Create a new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object with the same data as this <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object.
+If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.8.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.8.6"></a><h4>Returns</h4>
+<p> A new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object which is a copy of this
+<a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-equal"></a><h3>gst_uri_equal ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_equal (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *first</code></em>,
+               <em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *second</code></em>);</pre>
+<p>Compares two <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> objects to see if they represent the same normalized
+URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.9.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>first</p></td>
+<td class="parameter_description"><p>First <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to compare.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>second</p></td>
+<td class="parameter_description"><p>Second <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to compare.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.9.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the normalized versions of the two URI's would be equal.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-join"></a><h3>gst_uri_join ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_join (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *base_uri</code></em>,
+              <em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *ref_uri</code></em>);</pre>
+<p>Join a reference URI onto a base URI using the method from RFC 3986.
+If either URI is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then the other URI will be returned with the ref count
+increased.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>base_uri</p></td>
+<td class="parameter_description"><p> The base URI to join another to. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>ref_uri</p></td>
+<td class="parameter_description"><p> The reference URI to join onto the
+base URI. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.10.6"></a><h4>Returns</h4>
+<p> A <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> which represents the base with the
+reference URI joined on. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-join-strings"></a><h3>gst_uri_join_strings ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_join_strings (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *base_uri</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *ref_uri</code></em>);</pre>
+<p>This is a convenience function to join two URI strings and return the result.
+The returned string should be <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>'d after use.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.11.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>base_uri</p></td>
+<td class="parameter_description"><p>The percent-encoded base URI.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>ref_uri</p></td>
+<td class="parameter_description"><p>The percent-encoded reference URI to join to the <em class="parameter"><code>base_uri</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.11.6"></a><h4>Returns</h4>
+<p> A string representing the percent-encoded join of
+the two URIs. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-is-writable"></a><h3>gst_uri_is_writable ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_is_writable (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Check if it is safe to write to this <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a>.</p>
+<p>Check if the refcount of <em class="parameter"><code>uri</code></em>
+ is exactly 1, meaning that no other
+reference exists to the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> and that the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> is therefore writable.</p>
+<p>Modification of a <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> should only be done after verifying that it is
+writable.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.12.7"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object to test.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.12.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if it is safe to write to the object.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-make-writable"></a><h3>gst_uri_make_writable ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_make_writable (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Make the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> writable.</p>
+<p>Checks if <em class="parameter"><code>uri</code></em>
+ is writable, and if so the original object is returned. If
+not, then a writable copy is made and returned. This gives away the
+reference to <em class="parameter"><code>uri</code></em>
+ and returns a reference to the new <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a>.
+If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.13.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object to make writable. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.13.7"></a><h4>Returns</h4>
+<p> A writable version of <em class="parameter"><code>uri</code></em>
+. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-to-string"></a><h3>gst_uri_to_string ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_to_string (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Convert the URI to a string.</p>
+<p>Returns the URI as held in this object as a gchar* <code class="literal">NUL</code> terminated string.
+The caller should <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the string once they are finished with it.
+The string is put together as described in RFC 3986.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.14.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to convert to a string.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.14.7"></a><h4>Returns</h4>
+<p> The string version of the URI. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-ref"></a><h3>gst_uri_ref ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="returnvalue">GstUri</span></a> *
+gst_uri_ref (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Add a reference to this <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. See <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-ref" title="gst_mini_object_ref ()"><code class="function">gst_mini_object_ref()</code></a> for further
+info.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.15.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.15.6"></a><h4>Returns</h4>
+<p> This object with the reference count incremented.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-unref"></a><h3>gst_uri_unref ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_uri_unref (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Decrement the reference count to this <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object.</p>
+<p>If the reference count drops to 0 then finalize this object.</p>
+<p>See <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-unref" title="gst_mini_object_unref ()"><code class="function">gst_mini_object_unref()</code></a> for further info.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.16.7"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-is-normalized"></a><h3>gst_uri_is_normalized ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_is_normalized (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Tests the <em class="parameter"><code>uri</code></em>
+ to see if it is normalized. A <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>uri</code></em>
+ is considered to be
+normalized.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.17.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to test to see if it is normalized.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.17.6"></a><h4>Returns</h4>
+<p> TRUE if the URI is normalized or is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-normalize"></a><h3>gst_uri_normalize ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_normalize (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Normalization will remove extra path segments ("." and "..") from the URI. It
+will also convert the scheme and host name to lower case and any
+percent-encoded values to uppercase.</p>
+<p>The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object must be writable. Check with <a class="link" href="gstreamer-GstUri.html#gst-uri-is-writable" title="gst_uri_is_writable ()"><code class="function">gst_uri_is_writable()</code></a> or use
+<a class="link" href="gstreamer-GstUri.html#gst-uri-make-writable" title="gst_uri_make_writable ()"><code class="function">gst_uri_make_writable()</code></a> first.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.18.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to normalize. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.18.7"></a><h4>Returns</h4>
+<p> TRUE if the URI was modified.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-scheme"></a><h3>gst_uri_get_scheme ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_scheme (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get the scheme name from the URI or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if it doesn't exist.
+If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.19.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.19.6"></a><h4>Returns</h4>
+<p> The scheme from the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-scheme"></a><h3>gst_uri_set_scheme ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_scheme (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *scheme</code></em>);</pre>
+<p>Set or unset the scheme for the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.20.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>scheme</p></td>
+<td class="parameter_description"><p>The new scheme to set or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to unset the scheme.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.20.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the scheme was set/unset successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-userinfo"></a><h3>gst_uri_get_userinfo ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_userinfo (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get the userinfo (usually in the form "username:password") from the URI
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if it doesn't exist. If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.21.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.21.6"></a><h4>Returns</h4>
+<p> The userinfo from the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-userinfo"></a><h3>gst_uri_set_userinfo ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_userinfo (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *userinfo</code></em>);</pre>
+<p>Set or unset the user information for the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.22.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>userinfo</p></td>
+<td class="parameter_description"><p>The new user-information string to set or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to unset.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.22.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the user information was set/unset successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-host"></a><h3>gst_uri_get_host ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_host (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get the host name from the URI or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if it doesn't exist.
+If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.23.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.23.6"></a><h4>Returns</h4>
+<p> The host name from the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-host"></a><h3>gst_uri_set_host ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_host (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *host</code></em>);</pre>
+<p>Set or unset the host for the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.24.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>host</p></td>
+<td class="parameter_description"><p>The new host string to set or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to unset.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.24.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the host was set/unset successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-port"></a><h3>gst_uri_get_port ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_uri_get_port (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get the port number from the URI or <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT"><code class="literal">GST_URI_NO_PORT</code></a> if it doesn't exist.
+If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then returns <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT"><code class="literal">GST_URI_NO_PORT</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.25.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.25.6"></a><h4>Returns</h4>
+<p> The port number from the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object or <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT"><code class="literal">GST_URI_NO_PORT</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-port"></a><h3>gst_uri_set_port ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_port (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> port</code></em>);</pre>
+<p>Set or unset the port number for the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.26.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>port</p></td>
+<td class="parameter_description"><p>The new port number to set or <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT"><code class="literal">GST_URI_NO_PORT</code></a> to unset.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.26.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the port number was set/unset successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-path"></a><h3>gst_uri_get_path ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_path (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Extract the path string from the URI object.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.27.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to get the path from.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.27.6"></a><h4>Returns</h4>
+<p> The path from the URI. Once finished with the
+string should be <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>'d. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-path"></a><h3>gst_uri_set_path ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_path (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>);</pre>
+<p>Sets or unsets the path in the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.28.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p>The new path to set with path segments separated by '/', or use <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+to unset the path.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.28.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the path was set successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-path-string"></a><h3>gst_uri_get_path_string ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_path_string (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Extract the path string from the URI object as a percent encoded URI path.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.29.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to get the path from.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.29.6"></a><h4>Returns</h4>
+<p> The path from the URI. Once finished with the
+string should be <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>'d. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-path-string"></a><h3>gst_uri_set_path_string ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_path_string (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>);</pre>
+<p>Sets or unsets the path in the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.30.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p>The new percent encoded path to set with path segments separated by
+'/', or use <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to unset the path.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.30.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the path was set successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-path-segments"></a><h3>gst_uri_get_path_segments ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_uri_get_path_segments (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get a list of path segments from the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.31.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to get the path from. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.31.6"></a><h4>Returns</h4>
+<p> A <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of path segment
+strings or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no path segments are available. Free the list
+when no longer needed with g_list_free_full(list, g_free). </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-path-segments"></a><h3>gst_uri_set_path_segments ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_path_segments (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *path_segments</code></em>);</pre>
+<p>Replace the path segments list in the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.32.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>path_segments</p></td>
+<td class="parameter_description"><p> The new
+path list to set. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.32.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the path segments were set successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-append-path"></a><h3>gst_uri_append_path ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_append_path (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *relative_path</code></em>);</pre>
+<p>Append a path onto the end of the path in the URI. The path is not
+normalized, call <a class="link" href="gstreamer-GstUri.html#gst-uri-normalize" title="gst_uri_normalize ()"><code class="function">gst_uri_normalize()</code></a> to normalize the path.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.33.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>relative_path</p></td>
+<td class="parameter_description"><p>Relative path to append to the end of the current path.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.33.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the path was appended successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-append-path-segment"></a><h3>gst_uri_append_path_segment ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_append_path_segment (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path_segment</code></em>);</pre>
+<p>Append a single path segment onto the end of the URI path.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.34.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>path_segment</p></td>
+<td class="parameter_description"><p>The path segment string to append to the URI path.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.34.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the path was appended successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-query-string"></a><h3>gst_uri_get_query_string ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_query_string (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get a percent encoded URI query string from the <em class="parameter"><code>uri</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.35.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to get the query string from. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.35.6"></a><h4>Returns</h4>
+<p> A percent encoded query string. Use <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when
+no longer needed. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-query-string"></a><h3>gst_uri_set_query_string ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_query_string (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query</code></em>);</pre>
+<p>Sets or unsets the query table in the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.36.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>The new percent encoded query string to use to populate the query
+table, or use <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to unset the query table.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.36.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query table was set successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-query-table"></a><h3>gst_uri_get_query_table ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
+gst_uri_get_query_table (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get the query table from the URI. Keys and values in the table are freed
+with g_free when they are deleted. A value may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to indicate that
+the key should appear in the query string in the URI, but does not have a
+value. Free the returned <a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> with <a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#g-hash-table-unref"><code class="function"><GTKDOCLINK HREF="g-hash-table-unref"><code class="function">g_hash_table_unref()</code></a></code></GTKDOCLINK> when it is
+no longer required. Modifying this hash table will modify the query in the
+URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.37.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to get the query table from. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.37.6"></a><h4>Returns</h4>
+<p> The query hash table
+from the URI. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar* gchar*]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-query-table"></a><h3>gst_uri_set_query_table ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_query_table (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *query_table</code></em>);</pre>
+<p>Set the query table to use in the URI. The old table is unreferenced and a
+reference to the new one is used instead. A value if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for <em class="parameter"><code>query_table</code></em>
+
+will remove the query string from the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.38.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query_table</p></td>
+<td class="parameter_description"><p> The new
+query table to use. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar* gchar*]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.38.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the new table was sucessfully used for the query table.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-query-value"></a><h3>gst_uri_get_query_value ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_query_value (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query_key</code></em>);</pre>
+<p>Get the value associated with the <em class="parameter"><code>query_key</code></em>
+ key. Will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
+key has no value or if the key does not exist in the URI query table. Because
+<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned for both missing keys and keys with no value, you should
+use <a class="link" href="gstreamer-GstUri.html#gst-uri-query-has-key" title="gst_uri_query_has_key ()"><code class="function">gst_uri_query_has_key()</code></a> to determine if a key is present in the URI
+query.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.39.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to examine. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query_key</p></td>
+<td class="parameter_description"><p>The key to lookup.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.39.6"></a><h4>Returns</h4>
+<p> The value for the given key, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-query-value"></a><h3>gst_uri_set_query_value ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_query_value (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query_key</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query_value</code></em>);</pre>
+<p>This inserts or replaces a key in the query table. A <em class="parameter"><code>query_value</code></em>
+ of <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+indicates that the key has no associated value, but will still be present in
+the query string.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.40.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query_key</p></td>
+<td class="parameter_description"><p> The key for the query entry. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query_value</p></td>
+<td class="parameter_description"><p> The value for the key. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.40.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query table was sucessfully updated.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-remove-query-key"></a><h3>gst_uri_remove_query_key ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_remove_query_key (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query_key</code></em>);</pre>
+<p>Remove an entry from the query table by key.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.41.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query_key</p></td>
+<td class="parameter_description"><p>The key to remove.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.41.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the key existed in the table and was removed.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-query-has-key"></a><h3>gst_uri_query_has_key ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_query_has_key (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *query_key</code></em>);</pre>
+<p>Check if there is a query table entry for the <em class="parameter"><code>query_key</code></em>
+ key.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.42.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to examine. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>query_key</p></td>
+<td class="parameter_description"><p>The key to lookup.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.42.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>query_key</code></em>
+exists in the URI query table.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-query-keys"></a><h3>gst_uri_get_query_keys ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+gst_uri_get_query_keys (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get a list of the query keys from the URI.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.43.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to examine. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.43.6"></a><h4>Returns</h4>
+<p> A list of keys from
+the URI query. Free the list with <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#g-list-free"><code class="function">g_list_free()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> gchar*]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-get-fragment"></a><h3>gst_uri_get_fragment ()</h3>
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_fragment (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>);</pre>
+<p>Get the fragment name from the URI or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if it doesn't exist.
+If <em class="parameter"><code>uri</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.44.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> This <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.44.6"></a><h4>Returns</h4>
+<p> The host name from the <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> object or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-uri-set-fragment"></a><h3>gst_uri_set_fragment ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_set_fragment (<em class="parameter"><code><a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> *uri</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fragment</code></em>);</pre>
+<p>Sets the fragment string in the URI. Use a value of <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in <em class="parameter"><code>fragment</code></em>
+ to
+unset the fragment string.</p>
+<div class="refsect3">
+<a name="id-1.3.55.7.45.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p> The <a class="link" href="gstreamer-GstUri.html#GstUri" title="GstUri"><span class="type">GstUri</span></a> to modify. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>fragment</p></td>
+<td class="parameter_description"><p> The fragment string to set. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.55.7.45.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the fragment was set/unset successfully.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-GstUri.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstUri"></a><h3>GstUri</h3>
+<pre class="programlisting">typedef struct _GstUri GstUri;</pre>
+<p>This is a private structure that holds the various parts of a parsed URI.</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+          Generated by GTK-Doc V1.21</div>
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstUriHandler.html b/docs/gst/html/gstreamer-GstUriHandler.html
index 2dd0b09..fd5dad9 100644
--- a/docs/gst/html/gstreamer-GstUriHandler.html
+++ b/docs/gst/html/gstreamer-GstUriHandler.html
@@ -6,21 +6,21 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
-<link rel="prev" href="GstTypeFindFactory.html" title="GstTypeFindFactory">
+<link rel="prev" href="gstreamer-GstUri.html" title="GstUri">
 <link rel="next" href="gstreamer-GstUtils.html" title="GstUtils">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstUriHandler.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstUriHandler.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#gstreamer-GstUriHandler.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="GstTypeFindFactory.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="gstreamer-GstUri.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="gstreamer-GstUtils.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
@@ -42,7 +42,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-error-quark" title="gst_uri_error_quark ()">gst_uri_error_quark</a> <span class="c_punctuation">()</span>
@@ -56,7 +56,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-protocol-is-valid" title="gst_uri_protocol_is_valid ()">gst_uri_protocol_is_valid</a> <span class="c_punctuation">()</span>
@@ -64,7 +64,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-protocol-is-supported" title="gst_uri_protocol_is_supported ()">gst_uri_protocol_is_supported</a> <span class="c_punctuation">()</span>
@@ -72,7 +72,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-is-valid" title="gst_uri_is_valid ()">gst_uri_is_valid</a> <span class="c_punctuation">()</span>
@@ -80,7 +80,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-has-protocol" title="gst_uri_has_protocol ()">gst_uri_has_protocol</a> <span class="c_punctuation">()</span>
@@ -88,7 +88,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-get-protocol" title="gst_uri_get_protocol ()">gst_uri_get_protocol</a> <span class="c_punctuation">()</span>
@@ -96,7 +96,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-get-location" title="gst_uri_get_location ()">gst_uri_get_location</a> <span class="c_punctuation">()</span>
@@ -104,7 +104,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-construct" title="gst_uri_construct ()">gst_uri_construct</a> <span class="c_punctuation">()</span>
@@ -112,7 +112,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-filename-to-uri" title="gst_filename_to_uri ()">gst_filename_to_uri</a> <span class="c_punctuation">()</span>
@@ -135,7 +135,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-handler-get-protocols" title="gst_uri_handler_get_protocols ()">gst_uri_handler_get_protocols</a> <span class="c_punctuation">()</span>
@@ -143,7 +143,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-handler-get-uri" title="gst_uri_handler_get_uri ()">gst_uri_handler_get_uri</a> <span class="c_punctuation">()</span>
@@ -151,7 +151,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUriHandler.html#gst-uri-handler-set-uri" title="gst_uri_handler_set_uri ()">gst_uri_handler_set_uri</a> <span class="c_punctuation">()</span>
@@ -184,12 +184,16 @@
 <td class="datatype_keyword">enum</td>
 <td class="function_name"><a class="link" href="gstreamer-GstUriHandler.html#GstURIError" title="enum GstURIError">GstURIError</a></td>
 </tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS" title="GST_URI_NO_PORT">GST_URI_NO_PORT</a></td>
+</tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect1">
 <a name="gstreamer-GstUriHandler.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GInterface
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/GTypeModule.html">GInterface</a>
     <span class="lineart">╰──</span> GstURIHandler
 </pre>
 </div>
@@ -211,7 +215,7 @@
 <a name="gstreamer-GstUriHandler.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-uri-error-quark"></a><h3>gst_uri_error_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
 gst_uri_error_quark (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 </div>
 <hr>
@@ -221,7 +225,7 @@
 </pre>
 <p>Tests if the type direction is valid.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -239,13 +243,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-uri-protocol-is-valid"></a><h3>gst_uri_protocol_is_valid ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_uri_protocol_is_valid (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_protocol_is_valid (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>);</pre>
 <p>Tests if the given string is a valid protocol identifier. Protocols
 must consist of alphanumeric characters, '+', '-' and '.' and must
 start with a alphabetic character. See RFC 3986 Section 3.1.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -260,22 +264,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the string is a valid protocol identifier, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.3.56.9.4.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the string is a valid protocol identifier, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-uri-protocol-is-supported"></a><h3>gst_uri_protocol_is_supported ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_uri_protocol_is_supported (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUriHandler.html#GstURIType" title="enum GstURIType"><span class="type">GstURIType</span></a> type</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>);</pre>
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>);</pre>
 <p>Checks if an element exists that supports the given URI protocol. Note
 that a positive return value does not imply that a subsequent call to
 <a class="link" href="gstreamer-GstUriHandler.html#gst-element-make-from-uri" title="gst_element_make_from_uri ()"><code class="function">gst_element_make_from_uri()</code></a> is guaranteed to work.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -297,20 +301,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a></p>
+<a name="id-1.3.56.9.5.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-uri-is-valid"></a><h3>gst_uri_is_valid ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_uri_is_valid (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_is_valid (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
 <p>Tests if the given string is a valid URI identifier. URIs start with a valid
 scheme followed by ":" and maybe a string identifying the location.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -325,21 +329,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the string is a valid URI</p>
+<a name="id-1.3.56.9.6.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the string is a valid URI</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-uri-has-protocol"></a><h3>gst_uri_has_protocol ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_uri_has_protocol (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_uri_has_protocol (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>);</pre>
 <p>Checks if the protocol of a given valid URI matches <em class="parameter"><code>protocol</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -361,20 +365,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the protocol matches.</p>
+<a name="id-1.3.56.9.7.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the protocol matches.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-uri-get-protocol"></a><h3>gst_uri_get_protocol ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_uri_get_protocol (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_protocol (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
 <p>Extracts the protocol out of a given valid URI. The returned string must be
-freed using <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.</p>
+freed using <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -389,7 +393,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.8.6"></a><h4>Returns</h4>
+<a name="id-1.3.56.9.8.6"></a><h4>Returns</h4>
 <p> The protocol for this URI.</p>
 <p></p>
 </div>
@@ -397,15 +401,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-uri-get-location"></a><h3>gst_uri_get_location ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_uri_get_location (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_get_location (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
 <p>Extracts the location out of a given valid URI, ie. the protocol and "://"
 are stripped from the URI, which means that the location returned includes
 the hostname if one is specified. The returned string must be freed using
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.</p>
+<a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.9.6"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.9.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -420,8 +424,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.9.7"></a><h4>Returns</h4>
-<p> the location for this URI. Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
+<a name="id-1.3.56.9.9.7"></a><h4>Returns</h4>
+<p> the location for this URI. Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
 URI isn't valid. If the URI does not contain a location, an empty
 string is returned. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -430,13 +434,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-uri-construct"></a><h3>gst_uri_construct ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_uri_construct (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *location</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_uri_construct (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *protocol</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *location</code></em>);</pre>
 <p>Constructs a URI for a given valid protocol and location.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.10.6"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.10.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -458,26 +462,26 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.10.7"></a><h4>Returns</h4>
-<p> a new string for this URI. Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
-given URI protocol is not valid, or the given location is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<a name="id-1.3.56.9.10.7"></a><h4>Returns</h4>
+<p> a new string for this URI. Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the
+given URI protocol is not valid, or the given location is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-filename-to-uri"></a><h3>gst_filename_to_uri ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_filename_to_uri (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *filename</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
-<p>Similar to <a href="http://library.gnome.org/devel/glib/unstable/glib-URI-Functions.html#g-filename-to-uri"><code class="function">g_filename_to_uri()</code></a>, but attempts to handle relative file paths
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_filename_to_uri (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *filename</code></em>,
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+<p>Similar to <a href="https://developer.gnome.org/glib/unstable/glib-URI-Functions.html#g-filename-to-uri"><code class="function">g_filename_to_uri()</code></a>, but attempts to handle relative file paths
 as well. Before converting <em class="parameter"><code>filename</code></em>
  into an URI, it will be prefixed by
 the current working directory if it is a relative path, and then the path
 will be canonicalised so that it doesn't contain any './' or '../' segments.</p>
 <p>On Windows <span class="type">filename</span> should be in UTF-8 encoding.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.11.6"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.11.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -492,7 +496,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>pointer to error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>pointer to error, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -504,12 +508,12 @@
 <a name="gst-element-make-from-uri"></a><h3>gst_element_make_from_uri ()</h3>
 <pre class="programlisting"><a class="link" href="GstElement.html" title="GstElement"><span class="returnvalue">GstElement</span></a> *
 gst_element_make_from_uri (<em class="parameter"><code>const <a class="link" href="gstreamer-GstUriHandler.html#GstURIType" title="enum GstURIType"><span class="type">GstURIType</span></a> type</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *elementname</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *elementname</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Creates an element for handling the given URI.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -529,20 +533,20 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>elementname</p></td>
-<td class="parameter_description"><p> Name of created element, can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> Name of created element, can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p> address where to store error information, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> address where to store error information, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.12.6"></a><h4>Returns</h4>
-<p> a new element or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none could be created. </p>
+<a name="id-1.3.56.9.12.6"></a><h4>Returns</h4>
+<p> a new element or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none could be created. </p>
 <p><span class="annotation">[<acronym title="Alias for transfer none, used for objects with floating refs."><span class="acronym">transfer floating</span></acronym>]</span></p>
 </div>
 </div>
@@ -553,7 +557,7 @@
 gst_uri_handler_get_uri_type (<em class="parameter"><code><a class="link" href="gstreamer-GstUriHandler.html#GstURIHandler"><span class="type">GstURIHandler</span></a> *handler</code></em>);</pre>
 <p>Gets the type of the given URI handler</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.13.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -568,7 +572,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.13.6"></a><h4>Returns</h4>
+<a name="id-1.3.56.9.13.6"></a><h4>Returns</h4>
 <p> the <a class="link" href="gstreamer-GstUriHandler.html#GstURIType" title="enum GstURIType"><span class="type">GstURIType</span></a> of the URI handler.
 Returns <a class="link" href="gstreamer-GstUriHandler.html#GST-URI-UNKNOWN:CAPS"><span class="type">GST_URI_UNKNOWN</span></a> if the <em class="parameter"><code>handler</code></em>
 isn't implemented correctly.</p>
@@ -578,13 +582,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-uri-handler-get-protocols"></a><h3>gst_uri_handler_get_protocols ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
 gst_uri_handler_get_protocols (<em class="parameter"><code><a class="link" href="gstreamer-GstUriHandler.html#GstURIHandler"><span class="type">GstURIHandler</span></a> *handler</code></em>);</pre>
 <p>Gets the list of protocols supported by <em class="parameter"><code>handler</code></em>
 . This list may not be
 modified.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -599,22 +603,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.14.6"></a><h4>Returns</h4>
-<p> the supported protocols.
-Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the <em class="parameter"><code>handler</code></em>
-isn't implemented properly, or the <em class="parameter"><code>handler</code></em>
-doesn't support any protocols. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8]</span></p>
+<a name="id-1.3.56.9.14.6"></a><h4>Returns</h4>
+<p> the
+supported protocols.  Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the <em class="parameter"><code>handler</code></em>
+isn't
+implemented properly, or the <em class="parameter"><code>handler</code></em>
+doesn't support any
+protocols. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-uri-handler-get-uri"></a><h3>gst_uri_handler_get_uri ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 gst_uri_handler_get_uri (<em class="parameter"><code><a class="link" href="gstreamer-GstUriHandler.html#GstURIHandler"><span class="type">GstURIHandler</span></a> *handler</code></em>);</pre>
 <p>Gets the currently handled URI.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -629,24 +635,25 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.15.6"></a><h4>Returns</h4>
-<p> the URI currently handled by the <em class="parameter"><code>handler</code></em>
-.
-Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there are no URI currently handled. The
-returned string must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.3.56.9.15.6"></a><h4>Returns</h4>
+<p> the URI currently handled by
+the <em class="parameter"><code>handler</code></em>
+.  Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there are no URI currently
+handled. The returned string must be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no
+longer needed. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-uri-handler-set-uri"></a><h3>gst_uri_handler_set_uri ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_uri_handler_set_uri (<em class="parameter"><code><a class="link" href="gstreamer-GstUriHandler.html#GstURIHandler"><span class="type">GstURIHandler</span></a> *handler</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Tries to set the URI of the given handler.</p>
 <div class="refsect3">
-<a name="id-1.3.55.9.16.5"></a><h4>Parameters</h4>
+<a name="id-1.3.56.9.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -666,16 +673,16 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p> address where to store a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> in case of
-an error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> address where to store a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> in case of
+an error, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.55.9.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the URI was set successfully, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a name="id-1.3.56.9.16.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the URI was set successfully, else <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
@@ -707,7 +714,7 @@
 </pre>
 <p>Any <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> using this interface should implement these methods.</p>
 <div class="refsect3">
-<a name="id-1.3.55.10.3.5"></a><h4>Members</h4>
+<a name="id-1.3.56.10.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -716,7 +723,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstURIHandlerInterface.parent"></a>parent</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstURIHandlerInterface.parent"></a>parent</code></em>;</p></td>
 <td class="struct_member_description"><p>The parent interface type</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -749,7 +756,7 @@
 <a name="GstURIType"></a><h3>enum GstURIType</h3>
 <p>The different types of URI direction.</p>
 <div class="refsect3">
-<a name="id-1.3.55.10.4.4"></a><h4>Members</h4>
+<a name="id-1.3.56.10.4.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -787,7 +794,7 @@
 <a name="GstURIError"></a><h3>enum GstURIError</h3>
 <p>Different URI-related errors that can occur.</p>
 <div class="refsect3">
-<a name="id-1.3.55.10.5.4"></a><h4>Members</h4>
+<a name="id-1.3.56.10.5.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -829,10 +836,17 @@
 </table></div>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GST-URI-NO-PORT:CAPS"></a><h3>GST_URI_NO_PORT</h3>
+<pre class="programlisting">#define GST_URI_NO_PORT 0
+</pre>
+<p>Value for <span class="type">GstUri.port</span> to indicate no port number.</p>
+</div>
 </div>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstUtils.html b/docs/gst/html/gstreamer-GstUtils.html
index cf6545f..3346f79 100644
--- a/docs/gst/html/gstreamer-GstUtils.html
+++ b/docs/gst/html/gstreamer-GstUtils.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstUriHandler.html" title="GstUriHandler">
 <link rel="next" href="gstreamer-GstValue.html" title="GstValue">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstUtils.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstUtils.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstUtils.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -108,7 +107,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#GST-READ-FLOAT-LE:CAPS" title="GST_READ_FLOAT_LE ()">GST_READ_FLOAT_LE</a> <span class="c_punctuation">()</span>
@@ -116,7 +115,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#GST-READ-FLOAT-BE:CAPS" title="GST_READ_FLOAT_BE ()">GST_READ_FLOAT_BE</a> <span class="c_punctuation">()</span>
@@ -124,7 +123,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#GST-READ-DOUBLE-LE:CAPS" title="GST_READ_DOUBLE_LE ()">GST_READ_DOUBLE_LE</a> <span class="c_punctuation">()</span>
@@ -132,7 +131,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#GST-READ-DOUBLE-BE:CAPS" title="GST_READ_DOUBLE_BE ()">GST_READ_DOUBLE_BE</a> <span class="c_punctuation">()</span>
@@ -334,7 +333,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#GDOUBLE-SWAP-LE-BE:CAPS" title="GDOUBLE_SWAP_LE_BE ()">GDOUBLE_SWAP_LE_BE</a> <span class="c_punctuation">()</span>
@@ -366,7 +365,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#GFLOAT-SWAP-LE-BE:CAPS" title="GFLOAT_SWAP_LE_BE ()">GFLOAT_SWAP_LE_BE</a> <span class="c_punctuation">()</span>
@@ -454,7 +453,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#gst-util-greatest-common-divisor" title="gst_util_greatest_common_divisor ()">gst_util_greatest_common_divisor</a> <span class="c_punctuation">()</span>
@@ -486,7 +485,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-multiply" title="gst_util_fraction_multiply ()">gst_util_fraction_multiply</a> <span class="c_punctuation">()</span>
@@ -494,7 +493,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-add" title="gst_util_fraction_add ()">gst_util_fraction_add</a> <span class="c_punctuation">()</span>
@@ -502,7 +501,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#gst-util-fraction-compare" title="gst_util_fraction_compare ()">gst_util_fraction_compare</a> <span class="c_punctuation">()</span>
@@ -526,7 +525,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#gst-util-group-id-next" title="gst_util_group_id_next ()">gst_util_group_id_next</a> <span class="c_punctuation">()</span>
@@ -558,7 +557,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstUtils.html#gst-util-array-binary-search" title="gst_util_array_binary_search ()">gst_util_array_binary_search</a> <span class="c_punctuation">()</span>
@@ -581,11 +580,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstUtils.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstUtils.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -603,7 +597,7 @@
 this macro is not to be used with things that return something, use
 the _WITH_DEFAULT version for that</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -638,7 +632,7 @@
 evaluates to <em class="parameter"><code>def_return</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -677,7 +671,7 @@
 </pre>
 <p>Read an 8 bit unsigned integer value from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -699,7 +693,7 @@
 </pre>
 <p>Read a 16 bit unsigned integer value in little endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -721,7 +715,7 @@
 </pre>
 <p>Read a 16 bit unsigned integer value in big endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -743,7 +737,7 @@
 </pre>
 <p>Read a 24 bit unsigned integer value in little endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -765,7 +759,7 @@
 </pre>
 <p>Read a 24 bit unsigned integer value in big endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -787,7 +781,7 @@
 </pre>
 <p>Read a 32 bit unsigned integer value in little endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -809,7 +803,7 @@
 </pre>
 <p>Read a 32 bit unsigned integer value in big endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -831,7 +825,7 @@
 </pre>
 <p>Read a 64 bit unsigned integer value in little endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -853,7 +847,7 @@
 </pre>
 <p>Read a 64 bit unsigned integer value in big endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -871,11 +865,11 @@
 <hr>
 <div class="refsect2">
 <a name="GST-READ-FLOAT-LE:CAPS"></a><h3>GST_READ_FLOAT_LE ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 GST_READ_FLOAT_LE (<em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>);</pre>
 <p>Read a 32 bit float value in little endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -890,7 +884,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.13.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.13.6"></a><h4>Returns</h4>
 <p> The floating point value read from <em class="parameter"><code>data</code></em>
 </p>
 <p></p>
@@ -899,11 +893,11 @@
 <hr>
 <div class="refsect2">
 <a name="GST-READ-FLOAT-BE:CAPS"></a><h3>GST_READ_FLOAT_BE ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 GST_READ_FLOAT_BE (<em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>);</pre>
 <p>Read a 32 bit float value in big endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -918,7 +912,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.14.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.14.6"></a><h4>Returns</h4>
 <p> The floating point value read from <em class="parameter"><code>data</code></em>
 </p>
 <p></p>
@@ -927,11 +921,11 @@
 <hr>
 <div class="refsect2">
 <a name="GST-READ-DOUBLE-LE:CAPS"></a><h3>GST_READ_DOUBLE_LE ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 GST_READ_DOUBLE_LE (<em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>);</pre>
 <p>Read a 64 bit double value in little endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -946,7 +940,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.15.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.15.6"></a><h4>Returns</h4>
 <p> The double-precision floating point value read from <em class="parameter"><code>data</code></em>
 </p>
 <p></p>
@@ -955,11 +949,11 @@
 <hr>
 <div class="refsect2">
 <a name="GST-READ-DOUBLE-BE:CAPS"></a><h3>GST_READ_DOUBLE_BE ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 GST_READ_DOUBLE_BE (<em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>);</pre>
 <p>Read a 64 bit double value in big endian format from the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -974,7 +968,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.16.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.16.6"></a><h4>Returns</h4>
 <p> The double-precision floating point value read from <em class="parameter"><code>data</code></em>
 </p>
 <p></p>
@@ -986,7 +980,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT8(data, num)</pre>
 <p>Store an 8 bit unsigned integer value into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1014,7 +1008,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT16_LE(data, num)</pre>
 <p>Store a 16 bit unsigned integer value in little endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1042,7 +1036,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT16_BE(data, num)</pre>
 <p>Store a 16 bit unsigned integer value in big endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1070,7 +1064,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT24_LE(data, num)</pre>
 <p>Store a 24 bit unsigned integer value in little endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1098,7 +1092,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT24_BE(data, num)</pre>
 <p>Store a 24 bit unsigned integer value in big endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1126,7 +1120,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT32_LE(data, num)</pre>
 <p>Store a 32 bit unsigned integer value in little endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1154,7 +1148,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT32_BE(data, num)</pre>
 <p>Store a 32 bit unsigned integer value in big endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1182,7 +1176,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT64_LE(data, num)</pre>
 <p>Store a 64 bit unsigned integer value in little endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1210,7 +1204,7 @@
 <pre class="programlisting">#define             GST_WRITE_UINT64_BE(data, num)</pre>
 <p>Store a 64 bit unsigned integer value in big endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1237,10 +1231,10 @@
 <a name="GST-WRITE-FLOAT-LE:CAPS"></a><h3>GST_WRITE_FLOAT_LE ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 GST_WRITE_FLOAT_LE (<em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> num</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> num</code></em>);</pre>
 <p>Store a 32 bit float value in little endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1267,10 +1261,10 @@
 <a name="GST-WRITE-FLOAT-BE:CAPS"></a><h3>GST_WRITE_FLOAT_BE ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 GST_WRITE_FLOAT_BE (<em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> num</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> num</code></em>);</pre>
 <p>Store a 32 bit float value in big endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1297,10 +1291,10 @@
 <a name="GST-WRITE-DOUBLE-LE:CAPS"></a><h3>GST_WRITE_DOUBLE_LE ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 GST_WRITE_DOUBLE_LE (<em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> num</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> num</code></em>);</pre>
 <p>Store a 64 bit double value in little endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1327,10 +1321,10 @@
 <a name="GST-WRITE-DOUBLE-BE:CAPS"></a><h3>GST_WRITE_DOUBLE_BE ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 GST_WRITE_DOUBLE_BE (<em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> num</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> num</code></em>);</pre>
 <p>Store a 64 bit double value in big endian format into the memory buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1359,7 +1353,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 2.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.30.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1381,7 +1375,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 4.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.31.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1403,7 +1397,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 8.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.32.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1425,7 +1419,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 16.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1447,7 +1441,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 32.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1469,7 +1463,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 64.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1491,7 +1485,7 @@
 </pre>
 <p>Rounds an integer value up to the next multiple of 128.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.36.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1517,7 +1511,7 @@
  MUST be a
 power of two.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.37.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1546,7 +1540,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 2.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.38.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.38.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1568,7 +1562,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 4.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.39.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.39.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1590,7 +1584,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 8.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.40.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.40.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1612,7 +1606,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 16.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.41.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.41.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1634,7 +1628,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 32.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.42.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1656,7 +1650,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 64.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1678,7 +1672,7 @@
 </pre>
 <p>Rounds an integer value down to the next multiple of 128.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1704,7 +1698,7 @@
  MUST be a
 power of two.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1734,7 +1728,7 @@
 <p>Convert 64-bit floating point value (double) from big endian byte order
 into native byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1757,7 +1751,7 @@
 <p>Convert 64-bit floating point value (double) from little endian byte order
 into native byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.47.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.47.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1775,11 +1769,11 @@
 <hr>
 <div class="refsect2">
 <a name="GDOUBLE-SWAP-LE-BE:CAPS"></a><h3>GDOUBLE_SWAP_LE_BE ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
-GDOUBLE_SWAP_LE_BE (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> in</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+GDOUBLE_SWAP_LE_BE (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> in</code></em>);</pre>
 <p>Swap byte order of a 64-bit floating point value (double).</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.48.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1794,7 +1788,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.48.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.48.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>in</code></em>
 byte-swapped.</p>
 <p></p>
@@ -1808,7 +1802,7 @@
 <p>Convert 64-bit floating point value (double) from native byte order into
 big endian byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.49.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1831,7 +1825,7 @@
 <p>Convert 64-bit floating point value (double) from native byte order into
 little endian byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.50.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1854,7 +1848,7 @@
 <p>Convert 32-bit floating point value (float) from big endian byte order
 into native byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.51.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1877,7 +1871,7 @@
 <p>Convert 32-bit floating point value (float) from little endian byte order
 into native byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.52.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1895,11 +1889,11 @@
 <hr>
 <div class="refsect2">
 <a name="GFLOAT-SWAP-LE-BE:CAPS"></a><h3>GFLOAT_SWAP_LE_BE ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
-GFLOAT_SWAP_LE_BE (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> in</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+GFLOAT_SWAP_LE_BE (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> in</code></em>);</pre>
 <p>Swap byte order of a 32-bit floating point value (float).</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.53.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1914,7 +1908,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.53.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.53.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>in</code></em>
 byte-swapped.</p>
 <p></p>
@@ -1928,7 +1922,7 @@
 <p>Convert 32-bit floating point value (float) from native byte order into
 big endian byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.54.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1951,7 +1945,7 @@
 <p>Convert 32-bit floating point value (float) from native byte order into
 little endian byte order.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.55.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.55.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1974,7 +1968,7 @@
 <p>Convert <em class="parameter"><code>value</code></em>
  to a gdouble.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.56.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.56.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1989,9 +1983,9 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.56.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.56.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>value</code></em>
-converted to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>.</p>
+converted to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>.</p>
 <p></p>
 </div>
 </div>
@@ -2003,7 +1997,7 @@
 <p>Convert <em class="parameter"><code>value</code></em>
  to a guint64.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.57.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2012,13 +2006,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value to convert</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value to convert</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.57.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.57.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>value</code></em>
 converted to a <span class="type">guint64</span>.</p>
 <p></p>
@@ -2028,11 +2022,11 @@
 <div class="refsect2">
 <a name="gst-util-dump-mem"></a><h3>gst_util_dump_mem ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_util_dump_mem (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *mem</code></em>,
-                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+gst_util_dump_mem (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *mem</code></em>,
+                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Dumps the memory block into a hex representation. Useful for debugging.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.58.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2069,7 +2063,7 @@
 <p>This function can potentially be very slow if val and num are both
 greater than G_MAXUINT32.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.59.6"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.59.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2096,7 +2090,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.59.7"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.59.7"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>val</code></em>
 * <em class="parameter"><code>num</code></em>
 / <em class="parameter"><code>denom</code></em>
@@ -2124,7 +2118,7 @@
 <p>This function can potentially be very slow if val and num are both
 greater than G_MAXUINT32.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.60.6"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.60.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2151,7 +2145,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.60.7"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.60.7"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>val</code></em>
 * <em class="parameter"><code>num</code></em>
 / <em class="parameter"><code>denom</code></em>
@@ -2179,7 +2173,7 @@
 <p>This function can potentially be very slow if val and num are both
 greater than G_MAXUINT32.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.61.6"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.61.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2206,7 +2200,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.61.7"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.61.7"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>val</code></em>
 * <em class="parameter"><code>num</code></em>
 / <em class="parameter"><code>denom</code></em>
@@ -2224,8 +2218,8 @@
 <a name="gst-util-uint64-scale-int"></a><h3>gst_util_uint64_scale_int ()</h3>
 <pre class="programlisting"><span class="returnvalue">guint64</span>
 gst_util_uint64_scale_int (<em class="parameter"><code><span class="type">guint64</span> val</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre>
 <p>Scale <em class="parameter"><code>val</code></em>
  by the rational number <em class="parameter"><code>num</code></em>
  / <em class="parameter"><code>denom</code></em>
@@ -2235,7 +2229,7 @@
 <em class="parameter"><code>denom</code></em>
  must be positive.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.62.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.62.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2262,7 +2256,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.62.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.62.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>val</code></em>
 * <em class="parameter"><code>num</code></em>
 / <em class="parameter"><code>denom</code></em>
@@ -2280,8 +2274,8 @@
 <a name="gst-util-uint64-scale-int-round"></a><h3>gst_util_uint64_scale_int_round ()</h3>
 <pre class="programlisting"><span class="returnvalue">guint64</span>
 gst_util_uint64_scale_int_round (<em class="parameter"><code><span class="type">guint64</span> val</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre>
 <p>Scale <em class="parameter"><code>val</code></em>
  by the rational number <em class="parameter"><code>num</code></em>
  / <em class="parameter"><code>denom</code></em>
@@ -2291,7 +2285,7 @@
 <em class="parameter"><code>denom</code></em>
  must be positive.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.63.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.63.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2318,7 +2312,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.63.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.63.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>val</code></em>
 * <em class="parameter"><code>num</code></em>
 / <em class="parameter"><code>denom</code></em>
@@ -2336,8 +2330,8 @@
 <a name="gst-util-uint64-scale-int-ceil"></a><h3>gst_util_uint64_scale_int_ceil ()</h3>
 <pre class="programlisting"><span class="returnvalue">guint64</span>
 gst_util_uint64_scale_int_ceil (<em class="parameter"><code><span class="type">guint64</span> val</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denom</code></em>);</pre>
 <p>Scale <em class="parameter"><code>val</code></em>
  by the rational number <em class="parameter"><code>num</code></em>
  / <em class="parameter"><code>denom</code></em>
@@ -2347,7 +2341,7 @@
 <em class="parameter"><code>denom</code></em>
  must be positive.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.64.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2374,7 +2368,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.64.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.64.6"></a><h4>Returns</h4>
 <p> <em class="parameter"><code>val</code></em>
 * <em class="parameter"><code>num</code></em>
 / <em class="parameter"><code>denom</code></em>
@@ -2390,15 +2384,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-util-greatest-common-divisor"></a><h3>gst_util_greatest_common_divisor ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_util_greatest_common_divisor (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_util_greatest_common_divisor (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b</code></em>);</pre>
 <p>Calculates the greatest common divisor of <em class="parameter"><code>a</code></em>
 
 and <em class="parameter"><code>b</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.65.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2408,19 +2402,19 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>First value as <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
+<td class="parameter_description"><p>First value as <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>Second value as <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
+<td class="parameter_description"><p>Second value as <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.65.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.65.6"></a><h4>Returns</h4>
 <p> Greatest common divisor of <em class="parameter"><code>a</code></em>
 and <em class="parameter"><code>b</code></em>
 </p>
@@ -2439,7 +2433,7 @@
 and <em class="parameter"><code>b</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.66.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2461,7 +2455,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.66.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.66.6"></a><h4>Returns</h4>
 <p> Greatest common divisor of <em class="parameter"><code>a</code></em>
 and <em class="parameter"><code>b</code></em>
 </p>
@@ -2472,12 +2466,12 @@
 <div class="refsect2">
 <a name="gst-util-fraction-to-double"></a><h3>gst_util_fraction_to_double ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_util_fraction_to_double (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> src_n</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> src_d</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *dest</code></em>);</pre>
-<p>Transforms a fraction to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>.</p>
+gst_util_fraction_to_double (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> src_n</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> src_d</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *dest</code></em>);</pre>
+<p>Transforms a fraction to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.67.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.67.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2487,17 +2481,17 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>src_n</p></td>
-<td class="parameter_description"><p>Fraction numerator as <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
+<td class="parameter_description"><p>Fraction numerator as <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>src_d</p></td>
-<td class="parameter_description"><p>Fraction denominator <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
+<td class="parameter_description"><p>Fraction denominator <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> for the result. </p></td>
+<td class="parameter_description"><p> pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> for the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -2508,13 +2502,13 @@
 <div class="refsect2">
 <a name="gst-util-double-to-fraction"></a><h3>gst_util_double_to_fraction ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_util_double_to_fraction (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> src</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *dest_n</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *dest_d</code></em>);</pre>
-<p>Transforms a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to a fraction and simplifies
+gst_util_double_to_fraction (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> src</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *dest_n</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *dest_d</code></em>);</pre>
+<p>Transforms a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to a fraction and simplifies
 the result.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.68.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.68.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2524,17 +2518,17 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>src</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to transform</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to transform</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest_n</p></td>
-<td class="parameter_description"><p> pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td>
+<td class="parameter_description"><p> pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>dest_d</p></td>
-<td class="parameter_description"><p> pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td>
+<td class="parameter_description"><p> pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -2544,13 +2538,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-util-fraction-multiply"></a><h3>gst_util_fraction_multiply ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_util_fraction_multiply (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_n</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_d</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_util_fraction_multiply (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_n</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_d</code></em>);</pre>
 <p>Multiplies the fractions <em class="parameter"><code>a_n</code></em>
 /<em class="parameter"><code>a_d</code></em>
  and <em class="parameter"><code>b_n</code></em>
@@ -2560,7 +2554,7 @@
  and <em class="parameter"><code>res_d</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.69.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2590,33 +2584,33 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>res_n</p></td>
-<td class="parameter_description"><p> Pointer to <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td>
+<td class="parameter_description"><p> Pointer to <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res_d</p></td>
-<td class="parameter_description"><p> Pointer to <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td>
+<td class="parameter_description"><p> Pointer to <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.69.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on overflow, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
+<a name="id-1.3.57.7.69.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on overflow, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-util-fraction-add"></a><h3>gst_util_fraction_add ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_util_fraction_add (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_n</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_d</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_util_fraction_add (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_n</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *res_d</code></em>);</pre>
 <p>Adds the fractions <em class="parameter"><code>a_n</code></em>
 /<em class="parameter"><code>a_d</code></em>
  and <em class="parameter"><code>b_n</code></em>
@@ -2626,7 +2620,7 @@
  and <em class="parameter"><code>res_d</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.70.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.70.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2656,31 +2650,31 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>res_n</p></td>
-<td class="parameter_description"><p> Pointer to <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td>
+<td class="parameter_description"><p> Pointer to <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result numerator. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res_d</p></td>
-<td class="parameter_description"><p> Pointer to <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td>
+<td class="parameter_description"><p> Pointer to <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> to hold the result denominator. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.70.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on overflow, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
+<a name="id-1.3.57.7.70.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on overflow, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-util-fraction-compare"></a><h3>gst_util_fraction_compare ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_util_fraction_compare (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_util_fraction_compare (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_n</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> a_d</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_n</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> b_d</code></em>);</pre>
 <p>Compares the fractions <em class="parameter"><code>a_n</code></em>
 /<em class="parameter"><code>a_d</code></em>
  and <em class="parameter"><code>b_n</code></em>
@@ -2688,7 +2682,7 @@
  and returns
 -1 if a &lt; b, 0 if a = b and 1 if a &gt; b.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.71.5"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.71.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2720,7 +2714,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.71.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.71.6"></a><h4>Returns</h4>
 <p> -1 if a &lt; b; 0 if a = b; 1 if a &gt; b.</p>
 <p></p>
 </div>
@@ -2736,7 +2730,7 @@
 on a segment-done message to be the same as that of the last seek event, to
 indicate that event and the message correspond to the same segment.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.72.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.72.6"></a><h4>Returns</h4>
 <p> A constantly incrementing 32-bit unsigned integer, which might
 overflow back to 0 at some point. Use <a class="link" href="gstreamer-GstUtils.html#gst-util-seqnum-compare" title="gst_util_seqnum_compare ()"><code class="function">gst_util_seqnum_compare()</code></a> to make sure
 you handle wraparound correctly.</p>
@@ -2754,7 +2748,7 @@
  - <em class="parameter"><code>s2</code></em>
 ).</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.73.6"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.73.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2776,7 +2770,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.73.7"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.73.7"></a><h4>Returns</h4>
 <p> A negative number if <em class="parameter"><code>s1</code></em>
 is before <em class="parameter"><code>s2</code></em>
 , 0 if they are equal, or a
@@ -2789,13 +2783,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-util-group-id-next"></a><h3>gst_util_group_id_next ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_util_group_id_next (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Return a constantly incrementing group id.</p>
 <p>This function is used to generate a new group-id for the
 stream-start event.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.74.6"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.74.6"></a><h4>Returns</h4>
 <p> A constantly incrementing unsigned integer, which might
 overflow back to 0 at some point.</p>
 <p></p>
@@ -2805,9 +2799,9 @@
 <div class="refsect2">
 <a name="gst-util-set-object-arg"></a><h3>gst_util_set_object_arg ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_util_set_object_arg (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
+gst_util_set_object_arg (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre>
 <p>Converts the string value to the type of the objects argument and
 sets the argument with it.</p>
 <p>Note that this function silently returns if <em class="parameter"><code>object</code></em>
@@ -2816,7 +2810,7 @@
  or when <em class="parameter"><code>value</code></em>
  cannot be converted to the type of the property.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.75.6"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.75.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2847,14 +2841,14 @@
 <div class="refsect2">
 <a name="gst-util-set-value-from-string"></a><h3>gst_util_set_value_from_string ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_util_set_value_from_string (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value_str</code></em>);</pre>
+gst_util_set_value_from_string (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value_str</code></em>);</pre>
 <p>Converts the string to the type of the value and
 sets the value with it.</p>
 <p>Note that this function is dangerous as it does not return any indication
 if the conversion worked or not.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.76.6"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.76.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2884,7 +2878,7 @@
 <p>Get a timestamp as GstClockTime to be used for interval measurements.
 The timestamp should not be interpreted in any other way.</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.77.5"></a><h4>Returns</h4>
+<a name="id-1.3.57.7.77.5"></a><h4>Returns</h4>
 <p> the timestamp</p>
 <p></p>
 </div>
@@ -2892,14 +2886,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-util-array-binary-search"></a><h3>gst_util_array_binary_search ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
-gst_util_array_binary_search (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> array</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> num_elements</code></em>,
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+gst_util_array_binary_search (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> array</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> num_elements</code></em>,
                               <em class="parameter"><code><span class="type">gsize</span> element_size</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareDataFunc"><span class="type">GCompareDataFunc</span></a> search_func</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareDataFunc"><span class="type">GCompareDataFunc</span></a> search_func</code></em>,
                               <em class="parameter"><code><a class="link" href="gstreamer-GstUtils.html#GstSearchMode" title="enum GstSearchMode"><span class="type">GstSearchMode</span></a> mode</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> search_data</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> search_data</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Searches inside <em class="parameter"><code>array</code></em>
  for <em class="parameter"><code>search_data</code></em>
  by using the comparison function
@@ -2913,7 +2907,7 @@
  has the same type as the array elements.</p>
 <p>The complexity of this search function is O(log (num_elements)).</p>
 <div class="refsect3">
-<a name="id-1.3.56.8.78.7"></a><h4>Parameters</h4>
+<a name="id-1.3.57.7.78.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2962,9 +2956,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.56.8.78.8"></a><h4>Returns</h4>
-<p> The address of the found element or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if nothing was found. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+<a name="id-1.3.57.7.78.8"></a><h4>Returns</h4>
+<p> The address of the found
+element or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if nothing was found. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 </div>
@@ -2974,7 +2969,7 @@
 <a name="GstSearchMode"></a><h3>enum GstSearchMode</h3>
 <p>The different search modes.</p>
 <div class="refsect3">
-<a name="id-1.3.56.9.2.4"></a><h4>Members</h4>
+<a name="id-1.3.57.8.2.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -3011,6 +3006,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstValue.html b/docs/gst/html/gstreamer-GstValue.html
index beabfd8..46850e8 100644
--- a/docs/gst/html/gstreamer-GstValue.html
+++ b/docs/gst/html/gstreamer-GstValue.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstUtils.html" title="GstUtils">
 <link rel="next" href="gstreamer-GstVersion.html" title="GstVersion">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstValue.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstValue.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstValue.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -79,7 +78,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-int-range-min" title="gst_value_get_int_range_min ()">gst_value_get_int_range_min</a> <span class="c_punctuation">()</span>
@@ -87,7 +86,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-int-range-max" title="gst_value_get_int_range_max ()">gst_value_get_int_range_max</a> <span class="c_punctuation">()</span>
@@ -103,7 +102,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-int-range-step" title="gst_value_get_int_range_step ()">gst_value_get_int_range_step</a> <span class="c_punctuation">()</span>
@@ -205,7 +204,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-double-range-min" title="gst_value_get_double_range_min ()">gst_value_get_double_range_min</a> <span class="c_punctuation">()</span>
@@ -213,7 +212,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-double-range-max" title="gst_value_get_double_range_max ()">gst_value_get_double_range_max</a> <span class="c_punctuation">()</span>
@@ -281,14 +280,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-list-get-size" title="gst_value_list_get_size ()">gst_value_list_get_size</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-list-get-value" title="gst_value_list_get_value ()">gst_value_list_get_value</a> <span class="c_punctuation">()</span>
@@ -314,7 +313,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-fraction-numerator" title="gst_value_get_fraction_numerator ()">gst_value_get_fraction_numerator</a> <span class="c_punctuation">()</span>
@@ -322,7 +321,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-fraction-denominator" title="gst_value_get_fraction_denominator ()">gst_value_get_fraction_denominator</a> <span class="c_punctuation">()</span>
@@ -330,7 +329,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-fraction-multiply" title="gst_value_fraction_multiply ()">gst_value_fraction_multiply</a> <span class="c_punctuation">()</span>
@@ -338,7 +337,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-fraction-subtract" title="gst_value_fraction_subtract ()">gst_value_fraction_subtract</a> <span class="c_punctuation">()</span>
@@ -363,14 +362,14 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-fraction-range-min" title="gst_value_get_fraction_range_min ()">gst_value_get_fraction_range_min</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-get-fraction-range-max" title="gst_value_get_fraction_range_max ()">gst_value_get_fraction_range_max</a> <span class="c_punctuation">()</span>
@@ -507,7 +506,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstValue.html#GstValueCompareFunc" title="GstValueCompareFunc ()">*GstValueCompareFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -515,7 +514,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstValue.html#GstValueSerializeFunc" title="GstValueSerializeFunc ()">*GstValueSerializeFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -523,7 +522,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-GstValue.html#GstValueDeserializeFunc" title="GstValueDeserializeFunc ()">*GstValueDeserializeFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -531,7 +530,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-is-fixed" title="gst_value_is_fixed ()">gst_value_is_fixed</a> <span class="c_punctuation">()</span>
@@ -555,7 +554,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-serialize" title="gst_value_serialize ()">gst_value_serialize</a> <span class="c_punctuation">()</span>
@@ -563,7 +562,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-deserialize" title="gst_value_deserialize ()">gst_value_deserialize</a> <span class="c_punctuation">()</span>
@@ -571,7 +570,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-compare" title="gst_value_compare ()">gst_value_compare</a> <span class="c_punctuation">()</span>
@@ -579,7 +578,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-can-compare" title="gst_value_can_compare ()">gst_value_can_compare</a> <span class="c_punctuation">()</span>
@@ -587,7 +586,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-union" title="gst_value_union ()">gst_value_union</a> <span class="c_punctuation">()</span>
@@ -595,7 +594,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-can-union" title="gst_value_can_union ()">gst_value_can_union</a> <span class="c_punctuation">()</span>
@@ -603,7 +602,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-subtract" title="gst_value_subtract ()">gst_value_subtract</a> <span class="c_punctuation">()</span>
@@ -611,7 +610,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-can-subtract" title="gst_value_can_subtract ()">gst_value_can_subtract</a> <span class="c_punctuation">()</span>
@@ -619,7 +618,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-intersect" title="gst_value_intersect ()">gst_value_intersect</a> <span class="c_punctuation">()</span>
@@ -627,7 +626,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-can-intersect" title="gst_value_can_intersect ()">gst_value_can_intersect</a> <span class="c_punctuation">()</span>
@@ -635,7 +634,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-is-subset" title="gst_value_is_subset ()">gst_value_is_subset</a> <span class="c_punctuation">()</span>
@@ -659,14 +658,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-array-get-size" title="gst_value_array_get_size ()">gst_value_array_get_size</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+<td class="function_type">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-array-get-value" title="gst_value_array_get_value ()">gst_value_array_get_value</a> <span class="c_punctuation">()</span>
@@ -682,7 +681,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-GstValue.html#gst-value-fixate" title="gst_value_fixate ()">gst_value_fixate</a> <span class="c_punctuation">()</span>
@@ -723,11 +722,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstValue.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstValue.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -735,7 +729,7 @@
 <div class="refsect1">
 <a name="gstreamer-GstValue.description"></a><h2>Description</h2>
 <p>GValue implementations specific to GStreamer.</p>
-<p>Note that operations on the same <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> from multiple threads may lead to
+<p>Note that operations on the same <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> from multiple threads may lead to
 undefined behaviour.</p>
 </div>
 <div class="refsect1">
@@ -758,7 +752,7 @@
 </div>
 
 <div class="refsect3">
-<a name="id-1.3.57.8.2.6"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.2.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -811,7 +805,7 @@
 </div>
 
 <div class="refsect3">
-<a name="id-1.3.57.8.3.6"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -833,7 +827,7 @@
 <p>Can be used together with <a class="link" href="gstreamer-GstValue.html#GST-FOURCC-FORMAT:CAPS" title="GST_FOURCC_FORMAT"><span class="type">GST_FOURCC_FORMAT</span></a> to properly output a
 <span class="type">guint32</span> fourcc value in a <code class="function">printf()</code>-style text message.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -853,9 +847,9 @@
 <a name="GST-VALUE-HOLDS-INT-RANGE:CAPS"></a><h3>GST_VALUE_HOLDS_INT_RANGE()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_INT_RANGE(x)      ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_int_range_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-INT-RANGE:CAPS" title="GST_TYPE_INT_RANGE"><span class="type">GST_TYPE_INT_RANGE</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-INT-RANGE:CAPS" title="GST_TYPE_INT_RANGE"><span class="type">GST_TYPE_INT_RANGE</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -864,7 +858,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -875,10 +869,10 @@
 <a name="GST-TYPE-INT-RANGE:CAPS"></a><h3>GST_TYPE_INT_RANGE</h3>
 <pre class="programlisting">#define GST_TYPE_INT_RANGE               (_gst_int_range_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an integer range</p>
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an integer range</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.6.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstIntRange</p>
+<a name="id-1.3.58.7.6.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstIntRange</p>
 <p></p>
 </div>
 </div>
@@ -886,15 +880,15 @@
 <div class="refsect2">
 <a name="gst-value-set-int-range"></a><h3>gst_value_set_int_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_int_range (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> start</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> end</code></em>);</pre>
+gst_value_set_int_range (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> start</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> end</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the range specified by <em class="parameter"><code>start</code></em>
  and <em class="parameter"><code>end</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -924,12 +918,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-int-range-min"></a><h3>gst_value_get_int_range_min ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_value_get_int_range_min (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_value_get_int_range_min (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the minimum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -944,7 +938,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.8.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.8.6"></a><h4>Returns</h4>
 <p> the minimum of the range</p>
 <p></p>
 </div>
@@ -952,12 +946,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-int-range-max"></a><h3>gst_value_get_int_range_max ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_value_get_int_range_max (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_value_get_int_range_max (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the maximum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -972,7 +966,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.9.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.9.6"></a><h4>Returns</h4>
 <p> the maximum of the range</p>
 <p></p>
 </div>
@@ -981,17 +975,17 @@
 <div class="refsect2">
 <a name="gst-value-set-int-range-step"></a><h3>gst_value_set_int_range_step ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_int_range_step (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> start</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> end</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> step</code></em>);</pre>
+gst_value_set_int_range_step (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> start</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> end</code></em>,
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> step</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the range specified by <em class="parameter"><code>start</code></em>
 , <em class="parameter"><code>end</code></em>
  and <em class="parameter"><code>step</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1026,12 +1020,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-int-range-step"></a><h3>gst_value_get_int_range_step ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_value_get_int_range_step (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_value_get_int_range_step (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the step of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1046,7 +1040,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.11.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.11.6"></a><h4>Returns</h4>
 <p> the step of the range</p>
 <p></p>
 </div>
@@ -1056,9 +1050,9 @@
 <a name="GST-VALUE-HOLDS-BITMASK:CAPS"></a><h3>GST_VALUE_HOLDS_BITMASK()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_BITMASK(x)      ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_bitmask_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-BITMASK:CAPS" title="GST_TYPE_BITMASK"><span class="type">GST_TYPE_BITMASK</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-BITMASK:CAPS" title="GST_TYPE_BITMASK"><span class="type">GST_TYPE_BITMASK</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1067,7 +1061,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1078,10 +1072,10 @@
 <a name="GST-TYPE-BITMASK:CAPS"></a><h3>GST_TYPE_BITMASK</h3>
 <pre class="programlisting">#define GST_TYPE_BITMASK                 (_gst_bitmask_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a 64-bit bitmask.</p>
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a 64-bit bitmask.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.13.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstBitmask (which is not explicitly typed)</p>
+<a name="id-1.3.58.7.13.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstBitmask (which is not explicitly typed)</p>
 <p></p>
 </div>
 </div>
@@ -1089,13 +1083,13 @@
 <div class="refsect2">
 <a name="gst-value-set-bitmask"></a><h3>gst_value_set_bitmask ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_bitmask (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+gst_value_set_bitmask (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
                        <em class="parameter"><code><span class="type">guint64</span> bitmask</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the bitmask specified by <em class="parameter"><code>bitmask</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1121,11 +1115,11 @@
 <div class="refsect2">
 <a name="gst-value-get-bitmask"></a><h3>gst_value_get_bitmask ()</h3>
 <pre class="programlisting"><span class="returnvalue">guint64</span>
-gst_value_get_bitmask (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_bitmask (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the bitmask specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1140,7 +1134,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.15.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.15.6"></a><h4>Returns</h4>
 <p> the bitmask.</p>
 <p></p>
 </div>
@@ -1150,9 +1144,9 @@
 <a name="GST-VALUE-HOLDS-INT64-RANGE:CAPS"></a><h3>GST_VALUE_HOLDS_INT64_RANGE()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_INT64_RANGE(x)    ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_int64_range_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-INT64-RANGE:CAPS" title="GST_TYPE_INT64_RANGE"><span class="type">GST_TYPE_INT64_RANGE</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-INT64-RANGE:CAPS" title="GST_TYPE_INT64_RANGE"><span class="type">GST_TYPE_INT64_RANGE</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1161,7 +1155,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1172,10 +1166,10 @@
 <a name="GST-TYPE-INT64-RANGE:CAPS"></a><h3>GST_TYPE_INT64_RANGE</h3>
 <pre class="programlisting">#define GST_TYPE_INT64_RANGE             (_gst_int64_range_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an <span class="type">gint64</span> range</p>
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an <span class="type">gint64</span> range</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.17.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstInt64Range</p>
+<a name="id-1.3.58.7.17.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstInt64Range</p>
 <p></p>
 </div>
 </div>
@@ -1183,7 +1177,7 @@
 <div class="refsect2">
 <a name="gst-value-set-int64-range"></a><h3>gst_value_set_int64_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_int64_range (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+gst_value_set_int64_range (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
                            <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
                            <em class="parameter"><code><span class="type">gint64</span> end</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
@@ -1191,7 +1185,7 @@
  and <em class="parameter"><code>end</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1222,11 +1216,11 @@
 <div class="refsect2">
 <a name="gst-value-get-int64-range-min"></a><h3>gst_value_get_int64_range_min ()</h3>
 <pre class="programlisting"><span class="returnvalue">gint64</span>
-gst_value_get_int64_range_min (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_int64_range_min (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the minimum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1241,7 +1235,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.19.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.19.6"></a><h4>Returns</h4>
 <p> the minimum of the range</p>
 <p></p>
 </div>
@@ -1250,11 +1244,11 @@
 <div class="refsect2">
 <a name="gst-value-get-int64-range-max"></a><h3>gst_value_get_int64_range_max ()</h3>
 <pre class="programlisting"><span class="returnvalue">gint64</span>
-gst_value_get_int64_range_max (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_int64_range_max (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the maximum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1269,7 +1263,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.20.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.20.6"></a><h4>Returns</h4>
 <p> the maximum of the range</p>
 <p></p>
 </div>
@@ -1278,7 +1272,7 @@
 <div class="refsect2">
 <a name="gst-value-set-int64-range-step"></a><h3>gst_value_set_int64_range_step ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_int64_range_step (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+gst_value_set_int64_range_step (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
                                 <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
                                 <em class="parameter"><code><span class="type">gint64</span> end</code></em>,
                                 <em class="parameter"><code><span class="type">gint64</span> step</code></em>);</pre>
@@ -1288,7 +1282,7 @@
  and <em class="parameter"><code>step</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1324,11 +1318,11 @@
 <div class="refsect2">
 <a name="gst-value-get-int64-range-step"></a><h3>gst_value_get_int64_range_step ()</h3>
 <pre class="programlisting"><span class="returnvalue">gint64</span>
-gst_value_get_int64_range_step (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_int64_range_step (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the step of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1343,7 +1337,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.22.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.22.6"></a><h4>Returns</h4>
 <p> the step of the range</p>
 <p></p>
 </div>
@@ -1353,9 +1347,9 @@
 <a name="GST-VALUE-HOLDS-DOUBLE-RANGE:CAPS"></a><h3>GST_VALUE_HOLDS_DOUBLE_RANGE()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_DOUBLE_RANGE(x)   ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_double_range_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-DOUBLE-RANGE:CAPS" title="GST_TYPE_DOUBLE_RANGE"><span class="type">GST_TYPE_DOUBLE_RANGE</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-DOUBLE-RANGE:CAPS" title="GST_TYPE_DOUBLE_RANGE"><span class="type">GST_TYPE_DOUBLE_RANGE</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1364,7 +1358,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1375,10 +1369,10 @@
 <a name="GST-TYPE-DOUBLE-RANGE:CAPS"></a><h3>GST_TYPE_DOUBLE_RANGE</h3>
 <pre class="programlisting">#define GST_TYPE_DOUBLE_RANGE            (_gst_double_range_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a floating point range with double precision</p>
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a floating point range with double precision</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.24.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstIntRange</p>
+<a name="id-1.3.58.7.24.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstIntRange</p>
 <p></p>
 </div>
 </div>
@@ -1386,15 +1380,15 @@
 <div class="refsect2">
 <a name="gst-value-set-double-range"></a><h3>gst_value_set_double_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_double_range (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> start</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> end</code></em>);</pre>
+gst_value_set_double_range (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> start</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> end</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the range specified by <em class="parameter"><code>start</code></em>
  and <em class="parameter"><code>end</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1424,12 +1418,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-double-range-min"></a><h3>gst_value_get_double_range_min ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
-gst_value_get_double_range_min (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+gst_value_get_double_range_min (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the minimum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1444,7 +1438,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.26.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.26.6"></a><h4>Returns</h4>
 <p> the minimum of the range</p>
 <p></p>
 </div>
@@ -1452,12 +1446,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-double-range-max"></a><h3>gst_value_get_double_range_max ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
-gst_value_get_double_range_max (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+gst_value_get_double_range_max (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the maximum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1472,7 +1466,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.27.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.27.6"></a><h4>Returns</h4>
 <p> the maximum of the range</p>
 <p></p>
 </div>
@@ -1482,9 +1476,9 @@
 <a name="GST-VALUE-HOLDS-LIST:CAPS"></a><h3>GST_VALUE_HOLDS_LIST()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_LIST(x)         ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_value_list_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1493,7 +1487,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1504,14 +1498,14 @@
 <a name="GST-TYPE-LIST:CAPS"></a><h3>GST_TYPE_LIST</h3>
 <pre class="programlisting">#define GST_TYPE_LIST                    (_gst_value_list_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an unordered list of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> values. This
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an unordered list of <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> values. This
 is used for example to express a list of possible values for a field in
 a caps structure, like a list of possible sample rates, of which only one
 will be chosen in the end. This means that all values in the list are
 meaningful on their own.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.29.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstValueList (which is not explicitly typed)</p>
+<a name="id-1.3.58.7.29.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstValueList (which is not explicitly typed)</p>
 <p></p>
 </div>
 </div>
@@ -1520,9 +1514,9 @@
 <a name="GST-VALUE-HOLDS-ARRAY:CAPS"></a><h3>GST_VALUE_HOLDS_ARRAY()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_ARRAY(x)        ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_value_array_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.30.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1531,7 +1525,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1542,15 +1536,15 @@
 <a name="GST-TYPE-ARRAY:CAPS"></a><h3>GST_TYPE_ARRAY</h3>
 <pre class="programlisting">#define GST_TYPE_ARRAY                   (_gst_value_array_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an ordered list of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> values. This is
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents an ordered list of <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> values. This is
 used to express a set of values that is meaningful only in their specific
 combination and order of values. Each value on its own is not particularly
 meaningful, only the ordered array in its entirety is meaningful. This is
 used for example to express channel layouts for multichannel audio where
 each channel needs to be mapped to a position in the room.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.31.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstArrayList (which is not explicitly typed)</p>
+<a name="id-1.3.58.7.31.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstArrayList (which is not explicitly typed)</p>
 <p></p>
 </div>
 </div>
@@ -1558,13 +1552,13 @@
 <div class="refsect2">
 <a name="gst-value-list-append-value"></a><h3>gst_value_list_append_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_list_append_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
+gst_value_list_append_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
 <p>Appends <em class="parameter"><code>append_value</code></em>
  to the GstValueList in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.32.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1574,7 +1568,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1590,13 +1584,13 @@
 <div class="refsect2">
 <a name="gst-value-list-append-and-take-value"></a><h3>gst_value_list_append_and_take_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_list_append_and_take_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
+gst_value_list_append_and_take_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
 <p>Appends <em class="parameter"><code>append_value</code></em>
  to the GstValueList in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1606,7 +1600,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1623,13 +1617,13 @@
 <div class="refsect2">
 <a name="gst-value-list-prepend-value"></a><h3>gst_value_list_prepend_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_list_prepend_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *prepend_value</code></em>);</pre>
+gst_value_list_prepend_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *prepend_value</code></em>);</pre>
 <p>Prepends <em class="parameter"><code>prepend_value</code></em>
  to the GstValueList in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1639,7 +1633,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1655,9 +1649,9 @@
 <div class="refsect2">
 <a name="gst-value-list-concat"></a><h3>gst_value_list_concat ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_list_concat (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+gst_value_list_concat (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Concatenates copies of <em class="parameter"><code>value1</code></em>
  and <em class="parameter"><code>value2</code></em>
  into a list.  Values that are not
@@ -1665,7 +1659,7 @@
 <em class="parameter"><code>dest</code></em>
  will be initialized to the type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1675,17 +1669,17 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> an uninitialized <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to take the result. </p></td>
+<td class="parameter_description"><p> an uninitialized <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to take the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value1</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value2</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1696,9 +1690,9 @@
 <div class="refsect2">
 <a name="gst-value-list-merge"></a><h3>gst_value_list_merge ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_list_merge (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                      <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+gst_value_list_merge (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                      <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Merges copies of <em class="parameter"><code>value1</code></em>
  and <em class="parameter"><code>value2</code></em>
 .  Values that are not
@@ -1710,7 +1704,7 @@
 
 were equal).</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.36.6"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.36.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1720,17 +1714,17 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> an uninitialized <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to take the result. </p></td>
+<td class="parameter_description"><p> an uninitialized <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to take the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value1</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value2</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -1740,12 +1734,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-list-get-size"></a><h3>gst_value_list_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
-gst_value_list_get_size (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_value_list_get_size (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the number of values contained in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.37.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1754,13 +1748,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.37.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.37.6"></a><h4>Returns</h4>
 <p> the number of values</p>
 <p></p>
 </div>
@@ -1768,15 +1762,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-list-get-value"></a><h3>gst_value_list_get_value ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
-gst_value_list_get_value (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+gst_value_list_get_value (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Gets the value that is a member of the list contained in <em class="parameter"><code>value</code></em>
  and
 has the index <em class="parameter"><code>index</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.38.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.38.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1786,7 +1780,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-LIST:CAPS" title="GST_TYPE_LIST"><span class="type">GST_TYPE_LIST</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1798,7 +1792,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.38.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.38.6"></a><h4>Returns</h4>
 <p> the value at the given index. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -1808,9 +1802,9 @@
 <a name="GST-VALUE-HOLDS-FRACTION:CAPS"></a><h3>GST_VALUE_HOLDS_FRACTION()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_FRACTION(x)     ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_fraction_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-FRACTION:CAPS" title="GST_TYPE_FRACTION"><span class="type">GST_TYPE_FRACTION</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-FRACTION:CAPS" title="GST_TYPE_FRACTION"><span class="type">GST_TYPE_FRACTION</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.39.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.39.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1819,7 +1813,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1830,11 +1824,11 @@
 <a name="GST-TYPE-FRACTION:CAPS"></a><h3>GST_TYPE_FRACTION</h3>
 <pre class="programlisting">#define GST_TYPE_FRACTION                (_gst_fraction_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a fraction of an integer numerator over
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a fraction of an integer numerator over
 an integer denominator</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.40.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstFraction (which is not explicitly typed)</p>
+<a name="id-1.3.58.7.40.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstFraction (which is not explicitly typed)</p>
 <p></p>
 </div>
 </div>
@@ -1842,9 +1836,9 @@
 <div class="refsect2">
 <a name="gst-value-set-fraction"></a><h3>gst_value_set_fraction ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_fraction (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> numerator</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denominator</code></em>);</pre>
+gst_value_set_fraction (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> numerator</code></em>,
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denominator</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the fraction specified by <em class="parameter"><code>numerator</code></em>
  over <em class="parameter"><code>denominator</code></em>
@@ -1852,7 +1846,7 @@
 The fraction gets reduced to the smallest numerator and denominator,
 and if necessary the sign is moved to the numerator.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.41.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.41.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1882,12 +1876,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-fraction-numerator"></a><h3>gst_value_get_fraction_numerator ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_value_get_fraction_numerator (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_value_get_fraction_numerator (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the numerator of the fraction specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.42.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1902,7 +1896,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.42.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.42.6"></a><h4>Returns</h4>
 <p> the numerator of the fraction.</p>
 <p></p>
 </div>
@@ -1910,12 +1904,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-fraction-denominator"></a><h3>gst_value_get_fraction_denominator ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_value_get_fraction_denominator (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_value_get_fraction_denominator (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the denominator of the fraction specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1930,7 +1924,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.43.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.43.6"></a><h4>Returns</h4>
 <p> the denominator of the fraction.</p>
 <p></p>
 </div>
@@ -1938,15 +1932,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-fraction-multiply"></a><h3>gst_value_fraction_multiply ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_fraction_multiply (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *product</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *factor1</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *factor2</code></em>);</pre>
-<p>Multiplies the two <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> items containing a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-FRACTION:CAPS" title="GST_TYPE_FRACTION"><span class="type">GST_TYPE_FRACTION</span></a> and sets
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_fraction_multiply (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *product</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *factor1</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *factor2</code></em>);</pre>
+<p>Multiplies the two <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> items containing a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-FRACTION:CAPS" title="GST_TYPE_FRACTION"><span class="type">GST_TYPE_FRACTION</span></a> and sets
 <em class="parameter"><code>product</code></em>
  to the product of the two fractions.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1973,24 +1967,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.44.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in case of an error (like integer overflow), <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
+<a name="id-1.3.58.7.44.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in case of an error (like integer overflow), <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-fraction-subtract"></a><h3>gst_value_fraction_subtract ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_fraction_subtract (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *minuend</code></em>,
-                             <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *subtrahend</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_fraction_subtract (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *minuend</code></em>,
+                             <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *subtrahend</code></em>);</pre>
 <p>Subtracts the <em class="parameter"><code>subtrahend</code></em>
  from the <em class="parameter"><code>minuend</code></em>
  and sets <em class="parameter"><code>dest</code></em>
  to the result.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2017,8 +2011,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in case of an error (like integer overflow), <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
+<a name="id-1.3.58.7.45.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in case of an error (like integer overflow), <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -2027,9 +2021,9 @@
 <a name="GST-VALUE-HOLDS-FRACTION-RANGE:CAPS"></a><h3>GST_VALUE_HOLDS_FRACTION_RANGE()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_FRACTION_RANGE(x) ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_fraction_range_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-FRACTION-RANGE:CAPS" title="GST_TYPE_FRACTION_RANGE"><span class="type">GST_TYPE_FRACTION_RANGE</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="gstreamer-GstValue.html#GST-TYPE-FRACTION-RANGE:CAPS" title="GST_TYPE_FRACTION_RANGE"><span class="type">GST_TYPE_FRACTION_RANGE</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2038,7 +2032,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2049,10 +2043,10 @@
 <a name="GST-TYPE-FRACTION-RANGE:CAPS"></a><h3>GST_TYPE_FRACTION_RANGE</h3>
 <pre class="programlisting">#define GST_TYPE_FRACTION_RANGE           (_gst_fraction_range_type)
 </pre>
-<p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a GstFraction range</p>
+<p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> type that represents a GstFraction range</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.47.5"></a><h4>Returns</h4>
-<p> the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstFractionRange</p>
+<a name="id-1.3.58.7.47.5"></a><h4>Returns</h4>
+<p> the <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of GstFractionRange</p>
 <p></p>
 </div>
 </div>
@@ -2060,15 +2054,15 @@
 <div class="refsect2">
 <a name="gst-value-set-fraction-range"></a><h3>gst_value_set_fraction_range ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_fraction_range (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *start</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *end</code></em>);</pre>
+gst_value_set_fraction_range (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *start</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *end</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the range specified by <em class="parameter"><code>start</code></em>
  and <em class="parameter"><code>end</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.48.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2098,12 +2092,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-fraction-range-min"></a><h3>gst_value_get_fraction_range_min ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
-gst_value_get_fraction_range_min (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+gst_value_get_fraction_range_min (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the minimum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.49.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2118,7 +2112,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.49.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.49.6"></a><h4>Returns</h4>
 <p> the minimum of the range</p>
 <p></p>
 </div>
@@ -2126,12 +2120,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-get-fraction-range-max"></a><h3>gst_value_get_fraction_range_max ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
-gst_value_get_fraction_range_max (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+gst_value_get_fraction_range_max (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the maximum of the range specified by <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.50.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2146,7 +2140,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.50.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.50.6"></a><h4>Returns</h4>
 <p> the maximum of the range</p>
 <p></p>
 </div>
@@ -2155,11 +2149,11 @@
 <div class="refsect2">
 <a name="gst-value-set-fraction-range-full"></a><h3>gst_value_set_fraction_range_full ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_fraction_range_full (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> numerator_start</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denominator_start</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> numerator_end</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denominator_end</code></em>);</pre>
+gst_value_set_fraction_range_full (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> numerator_start</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denominator_start</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> numerator_end</code></em>,
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> denominator_end</code></em>);</pre>
 <p>Sets <em class="parameter"><code>value</code></em>
  to the range specified by <em class="parameter"><code>numerator_start</code></em>
 /<em class="parameter"><code>denominator_start</code></em>
@@ -2168,7 +2162,7 @@
 /<em class="parameter"><code>denominator_end</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.51.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2210,9 +2204,9 @@
 <a name="GST-VALUE-HOLDS-DATE-TIME:CAPS"></a><h3>GST_VALUE_HOLDS_DATE_TIME()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_DATE_TIME(x)    ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_date_time_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="GstDateTime.html#GST-TYPE-DATE-TIME:CAPS" title="GST_TYPE_DATE_TIME"><span class="type">GST_TYPE_DATE_TIME</span></a> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <a class="link" href="GstDateTime.html#GST-TYPE-DATE-TIME:CAPS" title="GST_TYPE_DATE_TIME"><span class="type">GST_TYPE_DATE_TIME</span></a> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.52.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2221,7 +2215,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2232,9 +2226,9 @@
 <a name="GST-VALUE-HOLDS-CAPS"></a><h3>GST_VALUE_HOLDS_CAPS()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_CAPS(x)         ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_caps_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_CAPS</span> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_CAPS</span> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.53.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2243,7 +2237,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2253,7 +2247,7 @@
 <div class="refsect2">
 <a name="gst-value-set-caps"></a><h3>gst_value_set_caps ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_caps (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+gst_value_set_caps (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
                     <em class="parameter"><code>const <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Sets the contents of <em class="parameter"><code>value</code></em>
  to <em class="parameter"><code>caps</code></em>
@@ -2262,7 +2256,7 @@
  will be taken by the <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.54.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2288,14 +2282,14 @@
 <div class="refsect2">
 <a name="gst-value-get-caps"></a><h3>gst_value_get_caps ()</h3>
 <pre class="programlisting">const <a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
-gst_value_get_caps (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_caps (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the contents of <em class="parameter"><code>value</code></em>
 . The reference count of the returned
 <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> will not be modified, therefore the caller must take one
 before getting rid of the <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.55.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.55.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2310,7 +2304,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.55.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.55.6"></a><h4>Returns</h4>
 <p> the contents of <em class="parameter"><code>value</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
@@ -2321,9 +2315,9 @@
 <a name="GST-VALUE-HOLDS-CAPS-FEATURES:CAPS"></a><h3>GST_VALUE_HOLDS_CAPS_FEATURES()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_CAPS_FEATURES(x)        (G_VALUE_HOLDS((x), _gst_caps_features_type))
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_CAPS_FEATURES</span> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_CAPS_FEATURES</span> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.56.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.56.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2332,7 +2326,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2342,13 +2336,13 @@
 <div class="refsect2">
 <a name="gst-value-set-caps-features"></a><h3>gst_value_set_caps_features ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_caps_features (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+gst_value_set_caps_features (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
                              <em class="parameter"><code>const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="type">GstCapsFeatures</span></a> *features</code></em>);</pre>
 <p>Sets the contents of <em class="parameter"><code>value</code></em>
  to <em class="parameter"><code>features</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.57.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2374,11 +2368,11 @@
 <div class="refsect2">
 <a name="gst-value-get-caps-features"></a><h3>gst_value_get_caps_features ()</h3>
 <pre class="programlisting">const <a class="link" href="GstCapsFeatures.html" title="GstCapsFeatures"><span class="returnvalue">GstCapsFeatures</span></a> *
-gst_value_get_caps_features (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_caps_features (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the contents of <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.58.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2393,7 +2387,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.58.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.58.6"></a><h4>Returns</h4>
 <p> the contents of <em class="parameter"><code>value</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
@@ -2404,9 +2398,9 @@
 <a name="GST-VALUE-HOLDS-STRUCTURE:CAPS"></a><h3>GST_VALUE_HOLDS_STRUCTURE()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_STRUCTURE(x)            (G_VALUE_HOLDS((x), _gst_structure_type))
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_STRUCTURE</span> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_STRUCTURE</span> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.59.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.59.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2415,7 +2409,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2425,13 +2419,13 @@
 <div class="refsect2">
 <a name="gst-value-set-structure"></a><h3>gst_value_set_structure ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_set_structure (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+gst_value_set_structure (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
                          <em class="parameter"><code>const <a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
 <p>Sets the contents of <em class="parameter"><code>value</code></em>
  to <em class="parameter"><code>structure</code></em>
 .  The actual</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.60.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.60.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2457,11 +2451,11 @@
 <div class="refsect2">
 <a name="gst-value-get-structure"></a><h3>gst_value_get_structure ()</h3>
 <pre class="programlisting">const <a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> *
-gst_value_get_structure (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+gst_value_get_structure (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the contents of <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.61.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.61.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2476,7 +2470,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.61.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.61.6"></a><h4>Returns</h4>
 <p> the contents of <em class="parameter"><code>value</code></em>
 . </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
@@ -2487,9 +2481,9 @@
 <a name="GST-VALUE-HOLDS-BUFFER:CAPS"></a><h3>GST_VALUE_HOLDS_BUFFER()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_BUFFER(x)       ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_buffer_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_BUFFER</span> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_BUFFER</span> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.62.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.62.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2498,7 +2492,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2515,7 +2509,7 @@
 a reference to <em class="parameter"><code>v</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.63.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.63.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2524,13 +2518,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>v</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to query</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to query</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.63.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.63.6"></a><h4>Returns</h4>
 <p> buffer. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -2544,7 +2538,7 @@
  as the value of <em class="parameter"><code>v</code></em>
 .  Caller retains reference to buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.64.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2554,7 +2548,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>v</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2575,7 +2569,7 @@
  as the value of <em class="parameter"><code>v</code></em>
 .  Caller gives away reference to buffer.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.65.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2585,7 +2579,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>v</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2602,9 +2596,9 @@
 <a name="GST-VALUE-HOLDS-SAMPLE:CAPS"></a><h3>GST_VALUE_HOLDS_SAMPLE()</h3>
 <pre class="programlisting">#define GST_VALUE_HOLDS_SAMPLE(x)       ((x) != NULL &amp;&amp; G_VALUE_TYPE(x) == _gst_sample_type)
 </pre>
-<p>Checks if the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_SAMPLE</span> value.</p>
+<p>Checks if the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> contains a <span class="type">GST_TYPE_SAMPLE</span> value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.66.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2613,7 +2607,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -2630,7 +2624,7 @@
 a reference to <em class="parameter"><code>v</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.67.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.67.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2639,13 +2633,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>v</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to query</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to query</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.67.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.67.6"></a><h4>Returns</h4>
 <p> sample. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -2659,7 +2653,7 @@
  as the value of <em class="parameter"><code>v</code></em>
 .  Caller retains reference to sample.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.68.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.68.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2669,7 +2663,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>v</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2690,7 +2684,7 @@
  as the value of <em class="parameter"><code>v</code></em>
 .  Caller gives away reference to sample.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.69.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2700,7 +2694,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>v</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to receive the data</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2723,12 +2717,12 @@
 <hr>
 <div class="refsect2">
 <a name="GstValueCompareFunc"></a><h3>GstValueCompareFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-<span class="c_punctuation">(</span>*GstValueCompareFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
-<p>Used together with <a class="link" href="gstreamer-GstValue.html#gst-value-compare" title="gst_value_compare ()"><code class="function">gst_value_compare()</code></a> to compare <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> items.</p>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<span class="c_punctuation">(</span>*GstValueCompareFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<p>Used together with <a class="link" href="gstreamer-GstValue.html#gst-value-compare" title="gst_value_compare ()"><code class="function">gst_value_compare()</code></a> to compare <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> items.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.71.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.71.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2750,7 +2744,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.71.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.71.6"></a><h4>Returns</h4>
 <p> one of GST_VALUE_LESS_THAN, GST_VALUE_EQUAL, GST_VALUE_GREATER_THAN
 or GST_VALUE_UNORDERED</p>
 <p></p>
@@ -2759,12 +2753,12 @@
 <hr>
 <div class="refsect2">
 <a name="GstValueSerializeFunc"></a><h3>GstValueSerializeFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-<span class="c_punctuation">(</span>*GstValueSerializeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>);</pre>
-<p>Used by <a class="link" href="gstreamer-GstValue.html#gst-value-serialize" title="gst_value_serialize ()"><code class="function">gst_value_serialize()</code></a> to obtain a non-binary form of the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<span class="c_punctuation">(</span>*GstValueSerializeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>);</pre>
+<p>Used by <a class="link" href="gstreamer-GstValue.html#gst-value-serialize" title="gst_value_serialize ()"><code class="function">gst_value_serialize()</code></a> to obtain a non-binary form of the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.72.6"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.72.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2773,13 +2767,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>value1</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.72.7"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.72.7"></a><h4>Returns</h4>
 <p> the string representation of the value. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -2787,12 +2781,12 @@
 <hr>
 <div class="refsect2">
 <a name="GstValueDeserializeFunc"></a><h3>GstValueDeserializeFunc ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-<span class="c_punctuation">(</span>*GstValueDeserializeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                            <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *s</code></em>);</pre>
-<p>Used by <a class="link" href="gstreamer-GstValue.html#gst-value-deserialize" title="gst_value_deserialize ()"><code class="function">gst_value_deserialize()</code></a> to parse a non-binary form into the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="c_punctuation">(</span>*GstValueDeserializeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                            <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *s</code></em>);</pre>
+<p>Used by <a class="link" href="gstreamer-GstValue.html#gst-value-deserialize" title="gst_value_deserialize ()"><code class="function">gst_value_deserialize()</code></a> to parse a non-binary form into the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.73.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.73.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2802,7 +2796,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -2814,22 +2808,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.73.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success</p>
+<a name="id-1.3.58.7.73.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for success</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-is-fixed"></a><h3>gst_value_is_fixed ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_is_fixed (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_is_fixed (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Tests if the given GValue, if available in a GstStructure (or any other
 container) contains a "fixed" (which means: one value) or an "unfixed"
 (which means: multiple possible values, such as data lists or data
 ranges) value.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.74.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.74.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2838,13 +2832,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to check</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.74.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.74.6"></a><h4>Returns</h4>
 <p> true if the value is "fixed".</p>
 <p></p>
 </div>
@@ -2854,10 +2848,10 @@
 <a name="gst-value-register"></a><h3>gst_value_register ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_value_register (<em class="parameter"><code>const <a class="link" href="gstreamer-GstValue.html#GstValueTable" title="struct GstValueTable"><span class="type">GstValueTable</span></a> *table</code></em>);</pre>
-<p>Registers functions to perform calculations on <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> items of a given
+<p>Registers functions to perform calculations on <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> items of a given
 type. Each type can only be added once.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.75.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.75.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2876,12 +2870,12 @@
 <div class="refsect2">
 <a name="gst-value-init-and-copy"></a><h3>gst_value_init_and_copy ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_init_and_copy (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
+gst_value_init_and_copy (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
 <p>Initialises the target value to be of the same type as source and then copies
 the contents from source to target.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.76.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.76.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2906,14 +2900,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-serialize"></a><h3>gst_value_serialize ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-gst_value_serialize (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_value_serialize (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>tries to transform the given <em class="parameter"><code>value</code></em>
  into a string representation that allows
 getting back this string later on using <a class="link" href="gstreamer-GstValue.html#gst-value-deserialize" title="gst_value_deserialize ()"><code class="function">gst_value_deserialize()</code></a>.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.77.6"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.77.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2922,28 +2916,28 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to serialize</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to serialize</p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.77.7"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.77.7"></a><h4>Returns</h4>
 <p> the serialization for <em class="parameter"><code>value</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none exists. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none exists. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-deserialize"></a><h3>gst_value_deserialize ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_deserialize (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *src</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_deserialize (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *src</code></em>);</pre>
 <p>Tries to deserialize a string into the type specified by the given GValue.
-If the operation succeeds, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is returned, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+If the operation succeeds, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is returned, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.78.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.78.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2953,7 +2947,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to fill with contents of
+<td class="parameter_description"><p> <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to fill with contents of
 deserialization. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
 </tr>
@@ -2966,17 +2960,17 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.78.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success</p>
+<a name="id-1.3.58.7.78.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-compare"></a><h3>gst_value_compare ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
-gst_value_compare (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                   <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+gst_value_compare (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                   <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Compares <em class="parameter"><code>value1</code></em>
  and <em class="parameter"><code>value2</code></em>
 .  If <em class="parameter"><code>value1</code></em>
@@ -2991,7 +2985,7 @@
 , GST_VALUE_LESS_THAN is returned.
 If the values are equal, GST_VALUE_EQUAL is returned.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.79.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.79.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3013,7 +3007,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.79.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.79.6"></a><h4>Returns</h4>
 <p> comparison result</p>
 <p></p>
 </div>
@@ -3021,14 +3015,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-can-compare"></a><h3>gst_value_can_compare ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_can_compare (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_can_compare (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                       <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Determines if <em class="parameter"><code>value1</code></em>
  and <em class="parameter"><code>value2</code></em>
  can be compared.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.80.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.80.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3050,23 +3044,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.80.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values can be compared</p>
+<a name="id-1.3.58.7.80.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values can be compared</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-union"></a><h3>gst_value_union ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_union (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_union (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                 <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                 <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Creates a GValue corresponding to the union of <em class="parameter"><code>value1</code></em>
  and <em class="parameter"><code>value2</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.81.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.81.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3093,28 +3087,28 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.81.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the union succeeded.</p>
+<a name="id-1.3.58.7.81.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the union succeeded.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-can-union"></a><h3>gst_value_can_union ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_can_union (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_can_union (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Determines if <em class="parameter"><code>value1</code></em>
  and <em class="parameter"><code>value2</code></em>
  can be non-trivially unioned.
 Any two values can be trivially unioned by adding both of them
-to a <span class="type">GstValueList</span>.  However, certain types have the possibility
+to a GstValueList.  However, certain types have the possibility
 to be unioned in a simpler way.  For example, an integer range
 and an integer can be unioned if the integer is a subset of the
 integer range.  If there is the possibility that two values can
-be unioned, this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+be unioned, this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.82.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.82.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3136,8 +3130,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.82.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there is a function allowing the two values to
+<a name="id-1.3.58.7.82.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there is a function allowing the two values to
 be unioned.</p>
 <p></p>
 </div>
@@ -3145,17 +3139,17 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-subtract"></a><h3>gst_value_subtract ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_subtract (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *minuend</code></em>,
-                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *subtrahend</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_subtract (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *minuend</code></em>,
+                    <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *subtrahend</code></em>);</pre>
 <p>Subtracts <em class="parameter"><code>subtrahend</code></em>
  from <em class="parameter"><code>minuend</code></em>
  and stores the result in <em class="parameter"><code>dest</code></em>
 .
 Note that this means subtraction as in sets, not as in mathematics.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.83.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.83.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3165,10 +3159,11 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> the destination value for the result if the
-subtraction is not empty. May be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, in which case the resulting set
-will not be computed, which can give a fair speedup. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
+<td class="parameter_description"><p> the destination value
+for the result if the subtraction is not empty. May be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
+in which case the resulting set will not be computed, which can
+give a fair speedup. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>minuend</p></td>
@@ -3184,22 +3179,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.83.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the subtraction is not empty</p>
+<a name="id-1.3.58.7.83.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the subtraction is not empty</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-can-subtract"></a><h3>gst_value_can_subtract ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_can_subtract (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *minuend</code></em>,
-                        <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *subtrahend</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_can_subtract (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *minuend</code></em>,
+                        <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *subtrahend</code></em>);</pre>
 <p>Checks if it's possible to subtract <em class="parameter"><code>subtrahend</code></em>
  from <em class="parameter"><code>minuend</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.84.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.84.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3221,26 +3216,26 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.84.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a subtraction is possible</p>
+<a name="id-1.3.58.7.84.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a subtraction is possible</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-intersect"></a><h3>gst_value_intersect ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_intersect (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_intersect (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Calculates the intersection of two values.  If the values have
 a non-empty intersection, the value representing the intersection
 is placed in <em class="parameter"><code>dest</code></em>
-, unless <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  If the intersection is non-empty,
+, unless <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.  If the intersection is non-empty,
 <em class="parameter"><code>dest</code></em>
  is not modified.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.85.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.85.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3250,9 +3245,10 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p> a uninitialized <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> that will hold the calculated
-intersection value. May be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the resulting set if not needed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_description"><p>  a uninitialized <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> that will hold the calculated
+intersection value. May be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the resulting set if not
+needed. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value1</p></td>
@@ -3268,22 +3264,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.85.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the intersection is non-empty</p>
+<a name="id-1.3.58.7.85.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the intersection is non-empty</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-can-intersect"></a><h3>gst_value_can_intersect ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_can_intersect (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_can_intersect (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                         <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Determines if intersecting two values will produce a valid result.
 Two values will produce a valid intersection if they have the same
 type.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.86.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.86.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3305,25 +3301,25 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.86.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values can intersect</p>
+<a name="id-1.3.58.7.86.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the values can intersect</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-value-is-subset"></a><h3>gst_value_is_subset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_is_subset (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_is_subset (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value1</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value2</code></em>);</pre>
 <p>Check that <em class="parameter"><code>value1</code></em>
  is a subset of <em class="parameter"><code>value2</code></em>
 .</p>
-<p>Return: <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is <em class="parameter"><code>value1</code></em>
+<p>Return: <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is <em class="parameter"><code>value1</code></em>
  is a subset of <em class="parameter"><code>value2</code></em>
 </p>
 <div class="refsect3">
-<a name="id-1.3.57.8.87.6"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.87.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3333,12 +3329,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value1</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>value2</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -3349,13 +3345,13 @@
 <div class="refsect2">
 <a name="gst-value-array-append-value"></a><h3>gst_value_array_append_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_array_append_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
+gst_value_array_append_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
 <p>Appends <em class="parameter"><code>append_value</code></em>
  to the GstValueArray in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.88.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.88.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3365,7 +3361,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -3381,13 +3377,13 @@
 <div class="refsect2">
 <a name="gst-value-array-append-and-take-value"></a><h3>gst_value_array_append_and_take_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_array_append_and_take_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
+gst_value_array_append_and_take_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *append_value</code></em>);</pre>
 <p>Appends <em class="parameter"><code>append_value</code></em>
  to the GstValueArray in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.89.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.89.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3397,7 +3393,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -3413,12 +3409,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-array-get-size"></a><h3>gst_value_array_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
-gst_value_array_get_size (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_value_array_get_size (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
 <p>Gets the number of values contained in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.90.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.90.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3427,13 +3423,13 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.90.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.90.6"></a><h4>Returns</h4>
 <p> the number of values</p>
 <p></p>
 </div>
@@ -3441,15 +3437,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-array-get-value"></a><h3>gst_value_array_get_value ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
-gst_value_array_get_value (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
+<pre class="programlisting">const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *
+gst_value_array_get_value (<em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index</code></em>);</pre>
 <p>Gets the value that is a member of the array contained in <em class="parameter"><code>value</code></em>
  and
 has the index <em class="parameter"><code>index</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.91.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.91.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3459,7 +3455,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -3471,7 +3467,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.91.6"></a><h4>Returns</h4>
+<a name="id-1.3.58.7.91.6"></a><h4>Returns</h4>
 <p> the value at the given index. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -3480,13 +3476,13 @@
 <div class="refsect2">
 <a name="gst-value-array-prepend-value"></a><h3>gst_value_array_prepend_value ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_value_array_prepend_value (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
-                               <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *prepend_value</code></em>);</pre>
+gst_value_array_prepend_value (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
+                               <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *prepend_value</code></em>);</pre>
 <p>Prepends <em class="parameter"><code>prepend_value</code></em>
  to the GstValueArray in <em class="parameter"><code>value</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.92.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.92.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3496,7 +3492,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> of type <a class="link" href="gstreamer-GstValue.html#GST-TYPE-ARRAY:CAPS" title="GST_TYPE_ARRAY"><span class="type">GST_TYPE_ARRAY</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -3511,18 +3507,18 @@
 <hr>
 <div class="refsect2">
 <a name="gst-value-fixate"></a><h3>gst_value_fixate ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_value_fixate (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
-                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_value_fixate (<em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *dest</code></em>,
+                  <em class="parameter"><code>const <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *src</code></em>);</pre>
 <p>Fixate <em class="parameter"><code>src</code></em>
  into a new value <em class="parameter"><code>dest</code></em>
 .
 For ranges, the first element is taken. For lists and arrays, the
 first item is fixated and returned.
 If <em class="parameter"><code>src</code></em>
- is already fixed, this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+ is already fixed, this function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.3.57.8.93.5"></a><h4>Parameters</h4>
+<a name="id-1.3.58.7.93.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3532,20 +3528,20 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>dest</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> destination</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> destination</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>src</p></td>
-<td class="parameter_description"><p>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to fixate</p></td>
+<td class="parameter_description"><p>the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to fixate</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.3.57.8.93.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>dest</code></em>
+<a name="id-1.3.58.7.93.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>dest</code></em>
 contains a fixated version of <em class="parameter"><code>src</code></em>
 .</p>
 <p></p>
@@ -3606,10 +3602,10 @@
   GstValueDeserializeFunc deserialize;
 };
 </pre>
-<p>VTable for the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> <em class="parameter"><code>type</code></em>
+<p>VTable for the <a href="https://developer.gnome.org/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> <em class="parameter"><code>type</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.3.57.9.6.5"></a><h4>Members</h4>
+<a name="id-1.3.58.8.6.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -3618,8 +3614,8 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstValueTable.type"></a>type</code></em>;</p></td>
-<td class="struct_member_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a></p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> <em class="structfield"><code><a name="GstValueTable.type"></a>type</code></em>;</p></td>
+<td class="struct_member_description"><p>a <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
@@ -3645,6 +3641,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-GstVersion.html b/docs/gst/html/gstreamer-GstVersion.html
index 6d0d122..b76ca59 100644
--- a/docs/gst/html/gstreamer-GstVersion.html
+++ b/docs/gst/html/gstreamer-GstVersion.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="gstreamer-GstValue.html" title="GstValue">
 <link rel="next" href="gstreamer-device-probing.html" title="GStreamer Device Discovery and Device Probing">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstVersion.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-GstVersion.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-GstVersion.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -66,11 +65,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-GstVersion.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-GstVersion.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -97,21 +91,21 @@
 <hr>
 <div class="refsect2">
 <a name="GST-VERSION-MINOR:CAPS"></a><h3>GST_VERSION_MINOR</h3>
-<pre class="programlisting">#define GST_VERSION_MINOR (3)
+<pre class="programlisting">#define GST_VERSION_MINOR (5)
 </pre>
 <p>The minor version of GStreamer at compile time:</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GST-VERSION-MICRO:CAPS"></a><h3>GST_VERSION_MICRO</h3>
-<pre class="programlisting">#define GST_VERSION_MICRO (3)
+<pre class="programlisting">#define GST_VERSION_MICRO (0)
 </pre>
 <p>The micro version of GStreamer at compile time:</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GST-VERSION-NANO:CAPS"></a><h3>GST_VERSION_NANO</h3>
-<pre class="programlisting">#define GST_VERSION_NANO (0)
+<pre class="programlisting">#define GST_VERSION_NANO (1)
 </pre>
 <p>The nano version of GStreamer at compile time:
 Actual releases have 0, GIT versions have 1, prerelease versions have 2-...</p>
@@ -123,7 +117,7 @@
 <p>Check whether a GStreamer version equal to or greater than
 major.minor.micro is present.</p>
 <div class="refsect3">
-<a name="id-1.3.58.7.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.59.6.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -157,6 +151,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-device-probing.html b/docs/gst/html/gstreamer-device-probing.html
index e17f19f..f4021c2 100644
--- a/docs/gst/html/gstreamer-device-probing.html
+++ b/docs/gst/html/gstreamer-device-probing.html
@@ -7,38 +7,38 @@
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="gstreamer-GstVersion.html" title="GstVersion">
-<link rel="next" href="gstreamer-GstDevice.html" title="GstDevice">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="next" href="gstreamer-GstDeviceMonitor.html" title="GstDeviceMonitor">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
 <td><a accesskey="p" href="gstreamer-GstVersion.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gstreamer-GstDevice.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gstreamer-GstDeviceMonitor.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="gstreamer-device-probing"></a>GStreamer Device Discovery and Device Probing</h1></div></div></div>
 <div class="toc"><dl class="toc">
 <dt>
-<span class="refentrytitle"><a href="gstreamer-GstDevice.html">GstDevice</a></span><span class="refpurpose"> — Object representing a device</span>
-</dt>
-<dt>
 <span class="refentrytitle"><a href="gstreamer-GstDeviceMonitor.html">GstDeviceMonitor</a></span><span class="refpurpose"> — A device monitor and prober</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="GstDeviceMonitorFactory.html">GstDeviceMonitorFactory</a></span><span class="refpurpose"> — Create GstDeviceMonitors from a factory</span>
+<span class="refentrytitle"><a href="gstreamer-GstDevice.html">GstDevice</a></span><span class="refpurpose"> — Object representing a device</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="gstreamer-GstGlobalDeviceMonitor.html">GstGlobalDeviceMonitor</a></span><span class="refpurpose"> — A global device monitor and prober</span>
+<span class="refentrytitle"><a href="gstreamer-GstDeviceProvider.html">GstDeviceProvider</a></span><span class="refpurpose"> — A device provider</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="GstDeviceProviderFactory.html">GstDeviceProviderFactory</a></span><span class="refpurpose"> — Create GstDeviceProviders from a factory</span>
 </dt>
 </dl></div>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-gstconfig.html b/docs/gst/html/gstreamer-gstconfig.html
index e2a0086..8642d17 100644
--- a/docs/gst/html/gstreamer-gstconfig.html
+++ b/docs/gst/html/gstreamer-gstconfig.html
@@ -8,15 +8,14 @@
 <link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
 <link rel="prev" href="GstClock.html" title="GstClock">
 <link rel="next" href="GstContext.html" title="GstContext">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-gstconfig.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-gstconfig.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-gstconfig.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -68,11 +67,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-gstconfig.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-gstconfig.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/gst.h&gt;
 </pre>
@@ -163,6 +157,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-hierarchy.html b/docs/gst/html/gstreamer-hierarchy.html
index bf059b8..d9b7031 100644
--- a/docs/gst/html/gstreamer-hierarchy.html
+++ b/docs/gst/html/gstreamer-hierarchy.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="gstreamer-GstInfo.html" title="GstInfo">
 <link rel="next" href="api-index-full.html" title="API Index">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -23,8 +23,8 @@
 <div class="titlepage"><div><div><h1 class="title">
 <a name="gstreamer-hierarchy"></a>Object Hierarchy</h1></div></div></div>
 <pre class="screen">
-    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a class="link" href="GstObject.html" title="GstObject">GstObject</a>
             <span class="lineart">├──</span> <a class="link" href="GstAllocator.html" title="GstAllocator">GstAllocator</a>
             <span class="lineart">├──</span> <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
@@ -34,7 +34,7 @@
             <span class="lineart">├──</span> <a class="link" href="GstPluginFeature.html" title="GstPluginFeature">GstPluginFeature</a>
             <span class="lineart">│</span>   <span class="lineart">├──</span> <a class="link" href="GstElementFactory.html" title="GstElementFactory">GstElementFactory</a>
             <span class="lineart">│</span>   <span class="lineart">├──</span> <a class="link" href="GstTypeFindFactory.html" title="GstTypeFindFactory">GstTypeFindFactory</a>
-            <span class="lineart">│</span>   <span class="lineart">╰──</span> <a class="link" href="GstDeviceMonitorFactory.html" title="GstDeviceMonitorFactory">GstDeviceMonitorFactory</a>
+            <span class="lineart">│</span>   <span class="lineart">╰──</span> <a class="link" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">GstDeviceProviderFactory</a>
             <span class="lineart">├──</span> <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
             <span class="lineart">│</span>   <span class="lineart">╰──</span> <a class="link" href="GstBin.html" title="GstBin">GstBin</a>
             <span class="lineart">│</span>       <span class="lineart">╰──</span> <a class="link" href="GstPipeline.html" title="GstPipeline">GstPipeline</a>
@@ -48,12 +48,12 @@
             <span class="lineart">├──</span> <a class="link" href="GstPlugin.html" title="GstPlugin">GstPlugin</a>
             <span class="lineart">├──</span> <a class="link" href="GstRegistry.html" title="GstRegistry">GstRegistry</a>
             <span class="lineart">╰──</span> <a class="link" href="GstBufferPool.html" title="GstBufferPool">GstBufferPool</a>
-    GInterface
+    <a href="https://developer.gnome.org/gobject/unstable/GTypeModule.html">GInterface</a>
     <span class="lineart">├──</span> <a class="link" href="GstChildProxy.html" title="GstChildProxy">GstChildProxy</a>
     <span class="lineart">├──</span> <a class="link" href="gstreamer-GstUriHandler.html#GstURIHandler">GstURIHandler</a>
     <span class="lineart">├──</span> <a class="link" href="GstPreset.html" title="GstPreset">GstPreset</a>
     <span class="lineart">╰──</span> <a class="link" href="GstTagSetter.html" title="GstTagSetter">GstTagSetter</a>
-    GBoxed
+    <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a>
     <span class="lineart">├──</span> <a class="link" href="GstMemory.html" title="GstMemory">GstMemory</a>
     <span class="lineart">├──</span> <a class="link" href="GstQuery.html" title="GstQuery">GstQuery</a>
     <span class="lineart">├──</span> <a class="link" href="GstStructure.html" title="GstStructure">GstStructure</a>
@@ -66,16 +66,16 @@
     <span class="lineart">├──</span> <a class="link" href="GstSample.html" title="GstSample">GstSample</a>
     <span class="lineart">├──</span> <a class="link" href="GstContext.html" title="GstContext">GstContext</a>
     <span class="lineart">├──</span> <a class="link" href="GstDateTime.html" title="GstDateTime">GstDateTime</a>
+    <span class="lineart">├──</span> <a class="link" href="GstTagList.html" title="GstTagList">GstTagList</a>
     <span class="lineart">├──</span> <a class="link" href="GstToc.html" title="GstToc">GstToc</a>
     <span class="lineart">├──</span> <a class="link" href="GstToc.html#GstTocEntry">GstTocEntry</a>
     <span class="lineart">├──</span> <a class="link" href="GstSegment.html" title="GstSegment">GstSegment</a>
     <span class="lineart">├──</span> <a class="link" href="GstAllocator.html#GstAllocationParams">GstAllocationParams</a>
-    <span class="lineart">├──</span> <a class="link" href="GstTagList.html" title="GstTagList">GstTagList</a>
     <span class="lineart">╰──</span> <a class="link" href="gstreamer-GstParse.html#GstParseContext">GstParseContext</a>
 </pre>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer-support.html b/docs/gst/html/gstreamer-support.html
index 8a16b85..9386278 100644
--- a/docs/gst/html/gstreamer-support.html
+++ b/docs/gst/html/gstreamer-support.html
@@ -6,17 +6,17 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
-<link rel="prev" href="gstreamer-GstGlobalDeviceMonitor.html" title="GstGlobalDeviceMonitor">
+<link rel="prev" href="GstDeviceProviderFactory.html" title="GstDeviceProviderFactory">
 <link rel="next" href="gstreamer-GstInfo.html" title="GstInfo">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="gstreamer-GstGlobalDeviceMonitor.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="GstDeviceProviderFactory.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="gstreamer-GstInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="chapter">
@@ -32,6 +32,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/gstreamer.html b/docs/gst/html/gstreamer.html
index 36af07d..37bd61d 100644
--- a/docs/gst/html/gstreamer.html
+++ b/docs/gst/html/gstreamer.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="next" href="gst-building.html" title="Building GStreamer and GStreamer Applications">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -52,6 +52,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/index.html b/docs/gst/html/index.html
index 7005ffe..7a0e7d5 100644
--- a/docs/gst/html/index.html
+++ b/docs/gst/html/index.html
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="next" href="gstreamer.html" title="GStreamer Overview">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -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 1.0 Core Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Core 1.0 (1.3.3)
+      for GStreamer Core 1.0 (1.5.0.1)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/</a>.
     </p></div>
@@ -207,6 +207,9 @@
 <span class="refentrytitle"><a href="GstTypeFindFactory.html">GstTypeFindFactory</a></span><span class="refpurpose"> — Information about registered typefind functions</span>
 </dt>
 <dt>
+<span class="refentrytitle"><a href="gstreamer-GstUri.html">GstUri</a></span><span class="refpurpose"> — URI parsing and manipulation.</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="gstreamer-GstUriHandler.html">GstUriHandler</a></span><span class="refpurpose"> — Interface to ease URI handling in plugins.</span>
 </dt>
 <dt>
@@ -223,16 +226,16 @@
 <dt><span class="chapter"><a href="gstreamer-device-probing.html">GStreamer Device Discovery and Device Probing</a></span></dt>
 <dd><dl>
 <dt>
-<span class="refentrytitle"><a href="gstreamer-GstDevice.html">GstDevice</a></span><span class="refpurpose"> — Object representing a device</span>
-</dt>
-<dt>
 <span class="refentrytitle"><a href="gstreamer-GstDeviceMonitor.html">GstDeviceMonitor</a></span><span class="refpurpose"> — A device monitor and prober</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="GstDeviceMonitorFactory.html">GstDeviceMonitorFactory</a></span><span class="refpurpose"> — Create GstDeviceMonitors from a factory</span>
+<span class="refentrytitle"><a href="gstreamer-GstDevice.html">GstDevice</a></span><span class="refpurpose"> — Object representing a device</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="gstreamer-GstGlobalDeviceMonitor.html">GstGlobalDeviceMonitor</a></span><span class="refpurpose"> — A global device monitor and prober</span>
+<span class="refentrytitle"><a href="gstreamer-GstDeviceProvider.html">GstDeviceProvider</a></span><span class="refpurpose"> — A device provider</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="GstDeviceProviderFactory.html">GstDeviceProviderFactory</a></span><span class="refpurpose"> — Create GstDeviceProviders from a factory</span>
 </dt>
 </dl></dd>
 <dt><span class="chapter"><a href="gstreamer-support.html">GStreamer Core Support</a></span></dt>
@@ -247,6 +250,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/index.sgml b/docs/gst/html/index.sgml
index 938a309..aa16774 100644
--- a/docs/gst/html/index.sgml
+++ b/docs/gst/html/index.sgml
@@ -3,7 +3,6 @@
 <ANCHOR id="gst-running" href="gstreamer-1.0/gst-running.html">
 <ANCHOR id="gstreamer-Gst" href="gstreamer-1.0/gstreamer-Gst.html">
 <ANCHOR id="gstreamer-Gst.functions" href="gstreamer-1.0/gstreamer-Gst.html#gstreamer-Gst.functions">
-<ANCHOR id="gstreamer-Gst.object-hierarchy" href="gstreamer-1.0/gstreamer-Gst.html#gstreamer-Gst.object-hierarchy">
 <ANCHOR id="gstreamer-Gst.includes" href="gstreamer-1.0/gstreamer-Gst.html#gstreamer-Gst.includes">
 <ANCHOR id="gstreamer-Gst.description" href="gstreamer-1.0/gstreamer-Gst.html#gstreamer-Gst.description">
 <ANCHOR id="gstreamer-Gst.functions_details" href="gstreamer-1.0/gstreamer-Gst.html#gstreamer-Gst.functions_details">
@@ -48,7 +47,6 @@
 <ANCHOR id="gstreamer-GstAtomicQueue" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html">
 <ANCHOR id="gstreamer-GstAtomicQueue.functions" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html#gstreamer-GstAtomicQueue.functions">
 <ANCHOR id="gstreamer-GstAtomicQueue.other" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html#gstreamer-GstAtomicQueue.other">
-<ANCHOR id="gstreamer-GstAtomicQueue.object-hierarchy" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html#gstreamer-GstAtomicQueue.object-hierarchy">
 <ANCHOR id="gstreamer-GstAtomicQueue.includes" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html#gstreamer-GstAtomicQueue.includes">
 <ANCHOR id="gstreamer-GstAtomicQueue.description" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html#gstreamer-GstAtomicQueue.description">
 <ANCHOR id="gstreamer-GstAtomicQueue.functions_details" href="gstreamer-1.0/gstreamer-GstAtomicQueue.html#gstreamer-GstAtomicQueue.functions_details">
@@ -87,6 +85,7 @@
 <ANCHOR id="gst-bin-add-many" href="gstreamer-1.0/GstBin.html#gst-bin-add-many">
 <ANCHOR id="gst-bin-remove-many" href="gstreamer-1.0/GstBin.html#gst-bin-remove-many">
 <ANCHOR id="gst-bin-find-unlinked-pad" href="gstreamer-1.0/GstBin.html#gst-bin-find-unlinked-pad">
+<ANCHOR id="gst-bin-sync-children-states" href="gstreamer-1.0/GstBin.html#gst-bin-sync-children-states">
 <ANCHOR id="GST-BIN-IS-NO-RESYNC:CAPS" href="gstreamer-1.0/GstBin.html#GST-BIN-IS-NO-RESYNC:CAPS">
 <ANCHOR id="GST-BIN-CHILDREN:CAPS" href="gstreamer-1.0/GstBin.html#GST-BIN-CHILDREN:CAPS">
 <ANCHOR id="GST-BIN-CHILDREN-COOKIE:CAPS" href="gstreamer-1.0/GstBin.html#GST-BIN-CHILDREN-COOKIE:CAPS">
@@ -266,6 +265,7 @@
 <ANCHOR id="gst-bus-create-watch" href="gstreamer-1.0/GstBus.html#gst-bus-create-watch">
 <ANCHOR id="gst-bus-add-watch-full" href="gstreamer-1.0/GstBus.html#gst-bus-add-watch-full">
 <ANCHOR id="gst-bus-add-watch" href="gstreamer-1.0/GstBus.html#gst-bus-add-watch">
+<ANCHOR id="gst-bus-remove-watch" href="gstreamer-1.0/GstBus.html#gst-bus-remove-watch">
 <ANCHOR id="gst-bus-disable-sync-message-emission" href="gstreamer-1.0/GstBus.html#gst-bus-disable-sync-message-emission">
 <ANCHOR id="gst-bus-enable-sync-message-emission" href="gstreamer-1.0/GstBus.html#gst-bus-enable-sync-message-emission">
 <ANCHOR id="gst-bus-async-signal-func" href="gstreamer-1.0/GstBus.html#gst-bus-async-signal-func">
@@ -298,6 +298,9 @@
 <ANCHOR id="GST-CAPS-FLAG-IS-SET:CAPS" href="gstreamer-1.0/GstCaps.html#GST-CAPS-FLAG-IS-SET:CAPS">
 <ANCHOR id="GST-CAPS-FLAG-SET:CAPS" href="gstreamer-1.0/GstCaps.html#GST-CAPS-FLAG-SET:CAPS">
 <ANCHOR id="GST-CAPS-FLAG-UNSET:CAPS" href="gstreamer-1.0/GstCaps.html#GST-CAPS-FLAG-UNSET:CAPS">
+<ANCHOR id="GstCapsForeachFunc" href="gstreamer-1.0/GstCaps.html#GstCapsForeachFunc">
+<ANCHOR id="GstCapsMapFunc" href="gstreamer-1.0/GstCaps.html#GstCapsMapFunc">
+<ANCHOR id="GstCapsFilterMapFunc" href="gstreamer-1.0/GstCaps.html#GstCapsFilterMapFunc">
 <ANCHOR id="gst-caps-new-empty" href="gstreamer-1.0/GstCaps.html#gst-caps-new-empty">
 <ANCHOR id="gst-caps-new-empty-simple" href="gstreamer-1.0/GstCaps.html#gst-caps-new-empty-simple">
 <ANCHOR id="gst-caps-new-any" href="gstreamer-1.0/GstCaps.html#gst-caps-new-any">
@@ -324,6 +327,9 @@
 <ANCHOR id="gst-caps-set-value" href="gstreamer-1.0/GstCaps.html#gst-caps-set-value">
 <ANCHOR id="gst-caps-set-simple" href="gstreamer-1.0/GstCaps.html#gst-caps-set-simple">
 <ANCHOR id="gst-caps-set-simple-valist" href="gstreamer-1.0/GstCaps.html#gst-caps-set-simple-valist">
+<ANCHOR id="gst-caps-foreach" href="gstreamer-1.0/GstCaps.html#gst-caps-foreach">
+<ANCHOR id="gst-caps-map-in-place" href="gstreamer-1.0/GstCaps.html#gst-caps-map-in-place">
+<ANCHOR id="gst-caps-filter-and-map-in-place" href="gstreamer-1.0/GstCaps.html#gst-caps-filter-and-map-in-place">
 <ANCHOR id="gst-caps-is-any" href="gstreamer-1.0/GstCaps.html#gst-caps-is-any">
 <ANCHOR id="gst-caps-is-empty" href="gstreamer-1.0/GstCaps.html#gst-caps-is-empty">
 <ANCHOR id="gst-caps-is-fixed" href="gstreamer-1.0/GstCaps.html#gst-caps-is-fixed">
@@ -513,7 +519,6 @@
 <ANCHOR id="GstClock.see-also" href="gstreamer-1.0/GstClock.html#GstClock.see-also">
 <ANCHOR id="gstreamer-gstconfig" href="gstreamer-1.0/gstreamer-gstconfig.html">
 <ANCHOR id="gstreamer-gstconfig.other" href="gstreamer-1.0/gstreamer-gstconfig.html#gstreamer-gstconfig.other">
-<ANCHOR id="gstreamer-gstconfig.object-hierarchy" href="gstreamer-1.0/gstreamer-gstconfig.html#gstreamer-gstconfig.object-hierarchy">
 <ANCHOR id="gstreamer-gstconfig.includes" href="gstreamer-1.0/gstreamer-gstconfig.html#gstreamer-gstconfig.includes">
 <ANCHOR id="gstreamer-gstconfig.description" href="gstreamer-1.0/gstreamer-gstconfig.html#gstreamer-gstconfig.description">
 <ANCHOR id="gstreamer-gstconfig.functions_details" href="gstreamer-1.0/gstreamer-gstconfig.html#gstreamer-gstconfig.functions_details">
@@ -788,7 +793,6 @@
 <ANCHOR id="gstreamer-GstGError" href="gstreamer-1.0/gstreamer-GstGError.html">
 <ANCHOR id="gstreamer-GstGError.functions" href="gstreamer-1.0/gstreamer-GstGError.html#gstreamer-GstGError.functions">
 <ANCHOR id="gstreamer-GstGError.other" href="gstreamer-1.0/gstreamer-GstGError.html#gstreamer-GstGError.other">
-<ANCHOR id="gstreamer-GstGError.object-hierarchy" href="gstreamer-1.0/gstreamer-GstGError.html#gstreamer-GstGError.object-hierarchy">
 <ANCHOR id="gstreamer-GstGError.includes" href="gstreamer-1.0/gstreamer-GstGError.html#gstreamer-GstGError.includes">
 <ANCHOR id="gstreamer-GstGError.description" href="gstreamer-1.0/gstreamer-GstGError.html#gstreamer-GstGError.description">
 <ANCHOR id="gstreamer-GstGError.functions_details" href="gstreamer-1.0/gstreamer-GstGError.html#gstreamer-GstGError.functions_details">
@@ -891,7 +895,6 @@
 <ANCHOR id="gstreamer-GstFormat" href="gstreamer-1.0/gstreamer-GstFormat.html">
 <ANCHOR id="gstreamer-GstFormat.functions" href="gstreamer-1.0/gstreamer-GstFormat.html#gstreamer-GstFormat.functions">
 <ANCHOR id="gstreamer-GstFormat.other" href="gstreamer-1.0/gstreamer-GstFormat.html#gstreamer-GstFormat.other">
-<ANCHOR id="gstreamer-GstFormat.object-hierarchy" href="gstreamer-1.0/gstreamer-GstFormat.html#gstreamer-GstFormat.object-hierarchy">
 <ANCHOR id="gstreamer-GstFormat.includes" href="gstreamer-1.0/gstreamer-GstFormat.html#gstreamer-GstFormat.includes">
 <ANCHOR id="gstreamer-GstFormat.description" href="gstreamer-1.0/gstreamer-GstFormat.html#gstreamer-GstFormat.description">
 <ANCHOR id="gstreamer-GstFormat.functions_details" href="gstreamer-1.0/gstreamer-GstFormat.html#gstreamer-GstFormat.functions_details">
@@ -937,7 +940,6 @@
 <ANCHOR id="gstreamer-GstIterator" href="gstreamer-1.0/gstreamer-GstIterator.html">
 <ANCHOR id="gstreamer-GstIterator.functions" href="gstreamer-1.0/gstreamer-GstIterator.html#gstreamer-GstIterator.functions">
 <ANCHOR id="gstreamer-GstIterator.other" href="gstreamer-1.0/gstreamer-GstIterator.html#gstreamer-GstIterator.other">
-<ANCHOR id="gstreamer-GstIterator.object-hierarchy" href="gstreamer-1.0/gstreamer-GstIterator.html#gstreamer-GstIterator.object-hierarchy">
 <ANCHOR id="gstreamer-GstIterator.includes" href="gstreamer-1.0/gstreamer-GstIterator.html#gstreamer-GstIterator.includes">
 <ANCHOR id="gstreamer-GstIterator.description" href="gstreamer-1.0/gstreamer-GstIterator.html#gstreamer-GstIterator.description">
 <ANCHOR id="gstreamer-GstIterator.functions_details" href="gstreamer-1.0/gstreamer-GstIterator.html#gstreamer-GstIterator.functions_details">
@@ -1026,6 +1028,7 @@
 <ANCHOR id="GST-MESSAGE-TIMESTAMP:CAPS" href="gstreamer-1.0/GstMessage.html#GST-MESSAGE-TIMESTAMP:CAPS">
 <ANCHOR id="GST-MESSAGE-SEQNUM:CAPS" href="gstreamer-1.0/GstMessage.html#GST-MESSAGE-SEQNUM:CAPS">
 <ANCHOR id="GST-MESSAGE-TYPE:CAPS" href="gstreamer-1.0/GstMessage.html#GST-MESSAGE-TYPE:CAPS">
+<ANCHOR id="GST-MESSAGE-TYPE-IS-EXTENDED:CAPS" href="gstreamer-1.0/GstMessage.html#GST-MESSAGE-TYPE-IS-EXTENDED:CAPS">
 <ANCHOR id="GST-MESSAGE-TYPE-NAME:CAPS" href="gstreamer-1.0/GstMessage.html#GST-MESSAGE-TYPE-NAME:CAPS">
 <ANCHOR id="gst-message-type-to-quark" href="gstreamer-1.0/GstMessage.html#gst-message-type-to-quark">
 <ANCHOR id="gst-message-type-get-name" href="gstreamer-1.0/GstMessage.html#gst-message-type-get-name">
@@ -1118,7 +1121,6 @@
 <ANCHOR id="gstreamer-GstMeta" href="gstreamer-1.0/gstreamer-GstMeta.html">
 <ANCHOR id="gstreamer-GstMeta.functions" href="gstreamer-1.0/gstreamer-GstMeta.html#gstreamer-GstMeta.functions">
 <ANCHOR id="gstreamer-GstMeta.other" href="gstreamer-1.0/gstreamer-GstMeta.html#gstreamer-GstMeta.other">
-<ANCHOR id="gstreamer-GstMeta.object-hierarchy" href="gstreamer-1.0/gstreamer-GstMeta.html#gstreamer-GstMeta.object-hierarchy">
 <ANCHOR id="gstreamer-GstMeta.includes" href="gstreamer-1.0/gstreamer-GstMeta.html#gstreamer-GstMeta.includes">
 <ANCHOR id="gstreamer-GstMeta.description" href="gstreamer-1.0/gstreamer-GstMeta.html#gstreamer-GstMeta.description">
 <ANCHOR id="gstreamer-GstMeta.functions_details" href="gstreamer-1.0/gstreamer-GstMeta.html#gstreamer-GstMeta.functions_details">
@@ -1145,7 +1147,6 @@
 <ANCHOR id="gstreamer-GstMiniObject" href="gstreamer-1.0/gstreamer-GstMiniObject.html">
 <ANCHOR id="gstreamer-GstMiniObject.functions" href="gstreamer-1.0/gstreamer-GstMiniObject.html#gstreamer-GstMiniObject.functions">
 <ANCHOR id="gstreamer-GstMiniObject.other" href="gstreamer-1.0/gstreamer-GstMiniObject.html#gstreamer-GstMiniObject.other">
-<ANCHOR id="gstreamer-GstMiniObject.object-hierarchy" href="gstreamer-1.0/gstreamer-GstMiniObject.html#gstreamer-GstMiniObject.object-hierarchy">
 <ANCHOR id="gstreamer-GstMiniObject.includes" href="gstreamer-1.0/gstreamer-GstMiniObject.html#gstreamer-GstMiniObject.includes">
 <ANCHOR id="gstreamer-GstMiniObject.description" href="gstreamer-1.0/gstreamer-GstMiniObject.html#gstreamer-GstMiniObject.description">
 <ANCHOR id="gstreamer-GstMiniObject.functions_details" href="gstreamer-1.0/gstreamer-GstMiniObject.html#gstreamer-GstMiniObject.functions_details">
@@ -1208,6 +1209,7 @@
 <ANCHOR id="gst-object-get-name" href="gstreamer-1.0/GstObject.html#gst-object-get-name">
 <ANCHOR id="gst-object-set-parent" href="gstreamer-1.0/GstObject.html#gst-object-set-parent">
 <ANCHOR id="gst-object-get-parent" href="gstreamer-1.0/GstObject.html#gst-object-get-parent">
+<ANCHOR id="gst-object-has-parent" href="gstreamer-1.0/GstObject.html#gst-object-has-parent">
 <ANCHOR id="gst-object-unparent" href="gstreamer-1.0/GstObject.html#gst-object-unparent">
 <ANCHOR id="gst-object-default-deep-notify" href="gstreamer-1.0/GstObject.html#gst-object-default-deep-notify">
 <ANCHOR id="gst-object-default-error" href="gstreamer-1.0/GstObject.html#gst-object-default-error">
@@ -1276,6 +1278,7 @@
 <ANCHOR id="GstPadStickyEventsForeachFunction" href="gstreamer-1.0/GstPad.html#GstPadStickyEventsForeachFunction">
 <ANCHOR id="gst-pad-sticky-events-foreach" href="gstreamer-1.0/GstPad.html#gst-pad-sticky-events-foreach">
 <ANCHOR id="gst-pad-is-active" href="gstreamer-1.0/GstPad.html#gst-pad-is-active">
+<ANCHOR id="gst-pad-get-last-flow-return" href="gstreamer-1.0/GstPad.html#gst-pad-get-last-flow-return">
 <ANCHOR id="GST-PAD-PROBE-INFO-TYPE:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-PROBE-INFO-TYPE:CAPS">
 <ANCHOR id="GST-PAD-PROBE-INFO-ID:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-PROBE-INFO-ID:CAPS">
 <ANCHOR id="GST-PAD-PROBE-INFO-DATA:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-PROBE-INFO-DATA:CAPS">
@@ -1380,6 +1383,7 @@
 <ANCHOR id="GST-PAD-ELEMENT-PRIVATE:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-ELEMENT-PRIVATE:CAPS">
 <ANCHOR id="GST-PAD-PAD-TEMPLATE:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-PAD-TEMPLATE:CAPS">
 <ANCHOR id="GST-PAD-DIRECTION:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-DIRECTION:CAPS">
+<ANCHOR id="GST-PAD-LAST-FLOW-RETURN:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-LAST-FLOW-RETURN:CAPS">
 <ANCHOR id="GST-PAD-TASK:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-TASK:CAPS">
 <ANCHOR id="GST-PAD-MODE:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-MODE:CAPS">
 <ANCHOR id="GST-PAD-ACTIVATEFUNC:CAPS" href="gstreamer-1.0/GstPad.html#GST-PAD-ACTIVATEFUNC:CAPS">
@@ -1433,6 +1437,7 @@
 <ANCHOR id="GstPad.property-details" href="gstreamer-1.0/GstPad.html#GstPad.property-details">
 <ANCHOR id="GstPad--caps" href="gstreamer-1.0/GstPad.html#GstPad--caps">
 <ANCHOR id="GstPad--direction" href="gstreamer-1.0/GstPad.html#GstPad--direction">
+<ANCHOR id="GstPad--offset" href="gstreamer-1.0/GstPad.html#GstPad--offset">
 <ANCHOR id="GstPad--template" href="gstreamer-1.0/GstPad.html#GstPad--template">
 <ANCHOR id="GstPad.signal-details" href="gstreamer-1.0/GstPad.html#GstPad.signal-details">
 <ANCHOR id="GstPad-linked" href="gstreamer-1.0/GstPad.html#GstPad-linked">
@@ -1473,7 +1478,6 @@
 <ANCHOR id="gstreamer-GstParamSpec" href="gstreamer-1.0/gstreamer-GstParamSpec.html">
 <ANCHOR id="gstreamer-GstParamSpec.functions" href="gstreamer-1.0/gstreamer-GstParamSpec.html#gstreamer-GstParamSpec.functions">
 <ANCHOR id="gstreamer-GstParamSpec.other" href="gstreamer-1.0/gstreamer-GstParamSpec.html#gstreamer-GstParamSpec.other">
-<ANCHOR id="gstreamer-GstParamSpec.object-hierarchy" href="gstreamer-1.0/gstreamer-GstParamSpec.html#gstreamer-GstParamSpec.object-hierarchy">
 <ANCHOR id="gstreamer-GstParamSpec.includes" href="gstreamer-1.0/gstreamer-GstParamSpec.html#gstreamer-GstParamSpec.includes">
 <ANCHOR id="gstreamer-GstParamSpec.description" href="gstreamer-1.0/gstreamer-GstParamSpec.html#gstreamer-GstParamSpec.description">
 <ANCHOR id="gstreamer-GstParamSpec.functions_details" href="gstreamer-1.0/gstreamer-GstParamSpec.html#gstreamer-GstParamSpec.functions_details">
@@ -1604,7 +1608,6 @@
 <ANCHOR id="gstreamer-GstPoll" href="gstreamer-1.0/gstreamer-GstPoll.html">
 <ANCHOR id="gstreamer-GstPoll.functions" href="gstreamer-1.0/gstreamer-GstPoll.html#gstreamer-GstPoll.functions">
 <ANCHOR id="gstreamer-GstPoll.other" href="gstreamer-1.0/gstreamer-GstPoll.html#gstreamer-GstPoll.other">
-<ANCHOR id="gstreamer-GstPoll.object-hierarchy" href="gstreamer-1.0/gstreamer-GstPoll.html#gstreamer-GstPoll.object-hierarchy">
 <ANCHOR id="gstreamer-GstPoll.includes" href="gstreamer-1.0/gstreamer-GstPoll.html#gstreamer-GstPoll.includes">
 <ANCHOR id="gstreamer-GstPoll.description" href="gstreamer-1.0/gstreamer-GstPoll.html#gstreamer-GstPoll.description">
 <ANCHOR id="gstreamer-GstPoll.functions_details" href="gstreamer-1.0/gstreamer-GstPoll.html#gstreamer-GstPoll.functions_details">
@@ -1649,6 +1652,7 @@
 <ANCHOR id="gst-preset-get-meta" href="gstreamer-1.0/GstPreset.html#gst-preset-get-meta">
 <ANCHOR id="gst-preset-set-app-dir" href="gstreamer-1.0/GstPreset.html#gst-preset-set-app-dir">
 <ANCHOR id="gst-preset-get-app-dir" href="gstreamer-1.0/GstPreset.html#gst-preset-get-app-dir">
+<ANCHOR id="gst-preset-is-editable" href="gstreamer-1.0/GstPreset.html#gst-preset-is-editable">
 <ANCHOR id="GstPreset.other_details" href="gstreamer-1.0/GstPreset.html#GstPreset.other_details">
 <ANCHOR id="GstPreset-struct" href="gstreamer-1.0/GstPreset.html#GstPreset-struct">
 <ANCHOR id="GstPresetInterface" href="gstreamer-1.0/GstPreset.html#GstPresetInterface">
@@ -1828,6 +1832,7 @@
 <ANCHOR id="GstStructure.functions_details" href="gstreamer-1.0/GstStructure.html#GstStructure.functions_details">
 <ANCHOR id="GstStructureForeachFunc" href="gstreamer-1.0/GstStructure.html#GstStructureForeachFunc">
 <ANCHOR id="GstStructureMapFunc" href="gstreamer-1.0/GstStructure.html#GstStructureMapFunc">
+<ANCHOR id="GstStructureFilterMapFunc" href="gstreamer-1.0/GstStructure.html#GstStructureFilterMapFunc">
 <ANCHOR id="gst-structure-new-empty" href="gstreamer-1.0/GstStructure.html#gst-structure-new-empty">
 <ANCHOR id="gst-structure-new-id-empty" href="gstreamer-1.0/GstStructure.html#gst-structure-new-id-empty">
 <ANCHOR id="gst-structure-new" href="gstreamer-1.0/GstStructure.html#gst-structure-new">
@@ -1859,7 +1864,6 @@
 <ANCHOR id="gst-structure-remove-fields-valist" href="gstreamer-1.0/GstStructure.html#gst-structure-remove-fields-valist">
 <ANCHOR id="gst-structure-remove-all-fields" href="gstreamer-1.0/GstStructure.html#gst-structure-remove-all-fields">
 <ANCHOR id="gst-structure-get-field-type" href="gstreamer-1.0/GstStructure.html#gst-structure-get-field-type">
-<ANCHOR id="gst-structure-foreach" href="gstreamer-1.0/GstStructure.html#gst-structure-foreach">
 <ANCHOR id="gst-structure-n-fields" href="gstreamer-1.0/GstStructure.html#gst-structure-n-fields">
 <ANCHOR id="gst-structure-has-field" href="gstreamer-1.0/GstStructure.html#gst-structure-has-field">
 <ANCHOR id="gst-structure-has-field-typed" href="gstreamer-1.0/GstStructure.html#gst-structure-has-field-typed">
@@ -1881,7 +1885,9 @@
 <ANCHOR id="gst-structure-get-clock-time" href="gstreamer-1.0/GstStructure.html#gst-structure-get-clock-time">
 <ANCHOR id="gst-structure-get-enum" href="gstreamer-1.0/GstStructure.html#gst-structure-get-enum">
 <ANCHOR id="gst-structure-get-fraction" href="gstreamer-1.0/GstStructure.html#gst-structure-get-fraction">
+<ANCHOR id="gst-structure-foreach" href="gstreamer-1.0/GstStructure.html#gst-structure-foreach">
 <ANCHOR id="gst-structure-map-in-place" href="gstreamer-1.0/GstStructure.html#gst-structure-map-in-place">
+<ANCHOR id="gst-structure-filter-and-map-in-place" href="gstreamer-1.0/GstStructure.html#gst-structure-filter-and-map-in-place">
 <ANCHOR id="gst-structure-nth-field-name" href="gstreamer-1.0/GstStructure.html#gst-structure-nth-field-name">
 <ANCHOR id="gst-structure-set-parent-refcount" href="gstreamer-1.0/GstStructure.html#gst-structure-set-parent-refcount">
 <ANCHOR id="gst-structure-to-string" href="gstreamer-1.0/GstStructure.html#gst-structure-to-string">
@@ -2174,6 +2180,8 @@
 <ANCHOR id="gst-toc-entry-get-parent" href="gstreamer-1.0/GstToc.html#gst-toc-entry-get-parent">
 <ANCHOR id="gst-toc-entry-get-sub-entries" href="gstreamer-1.0/GstToc.html#gst-toc-entry-get-sub-entries">
 <ANCHOR id="gst-toc-entry-append-sub-entry" href="gstreamer-1.0/GstToc.html#gst-toc-entry-append-sub-entry">
+<ANCHOR id="gst-toc-entry-get-loop" href="gstreamer-1.0/GstToc.html#gst-toc-entry-get-loop">
+<ANCHOR id="gst-toc-entry-set-loop" href="gstreamer-1.0/GstToc.html#gst-toc-entry-set-loop">
 <ANCHOR id="gst-toc-entry-get-start-stop-times" href="gstreamer-1.0/GstToc.html#gst-toc-entry-get-start-stop-times">
 <ANCHOR id="gst-toc-entry-set-start-stop-times" href="gstreamer-1.0/GstToc.html#gst-toc-entry-set-start-stop-times">
 <ANCHOR id="gst-toc-entry-get-tags" href="gstreamer-1.0/GstToc.html#gst-toc-entry-get-tags">
@@ -2185,16 +2193,17 @@
 <ANCHOR id="gst-toc-entry-is-sequence" href="gstreamer-1.0/GstToc.html#gst-toc-entry-is-sequence">
 <ANCHOR id="GST-TOC-ENTRY-TYPE-IS-ALTERNATIVE:CAPS" href="gstreamer-1.0/GstToc.html#GST-TOC-ENTRY-TYPE-IS-ALTERNATIVE:CAPS">
 <ANCHOR id="GST-TOC-ENTRY-TYPE-IS-SEQUENCE:CAPS" href="gstreamer-1.0/GstToc.html#GST-TOC-ENTRY-TYPE-IS-SEQUENCE:CAPS">
+<ANCHOR id="GST-TOC-REPEAT-COUNT-INFINITE:CAPS" href="gstreamer-1.0/GstToc.html#GST-TOC-REPEAT-COUNT-INFINITE:CAPS">
 <ANCHOR id="GstToc.other_details" href="gstreamer-1.0/GstToc.html#GstToc.other_details">
 <ANCHOR id="GstToc-struct" href="gstreamer-1.0/GstToc.html#GstToc-struct">
 <ANCHOR id="GstTocScope" href="gstreamer-1.0/GstToc.html#GstTocScope">
 <ANCHOR id="GstTocEntry-struct" href="gstreamer-1.0/GstToc.html#GstTocEntry-struct">
 <ANCHOR id="GstTocEntryType" href="gstreamer-1.0/GstToc.html#GstTocEntryType">
+<ANCHOR id="GstTocLoopType" href="gstreamer-1.0/GstToc.html#GstTocLoopType">
 <ANCHOR id="GstToc.see-also" href="gstreamer-1.0/GstToc.html#GstToc.see-also">
 <ANCHOR id="gstreamer-GstTocSetter" href="gstreamer-1.0/gstreamer-GstTocSetter.html">
 <ANCHOR id="gstreamer-GstTocSetter.functions" href="gstreamer-1.0/gstreamer-GstTocSetter.html#gstreamer-GstTocSetter.functions">
 <ANCHOR id="gstreamer-GstTocSetter.other" href="gstreamer-1.0/gstreamer-GstTocSetter.html#gstreamer-GstTocSetter.other">
-<ANCHOR id="gstreamer-GstTocSetter.object-hierarchy" href="gstreamer-1.0/gstreamer-GstTocSetter.html#gstreamer-GstTocSetter.object-hierarchy">
 <ANCHOR id="gstreamer-GstTocSetter.includes" href="gstreamer-1.0/gstreamer-GstTocSetter.html#gstreamer-GstTocSetter.includes">
 <ANCHOR id="gstreamer-GstTocSetter.description" href="gstreamer-1.0/gstreamer-GstTocSetter.html#gstreamer-GstTocSetter.description">
 <ANCHOR id="gstreamer-GstTocSetter.functions_details" href="gstreamer-1.0/gstreamer-GstTocSetter.html#gstreamer-GstTocSetter.functions_details">
@@ -2207,7 +2216,6 @@
 <ANCHOR id="gstreamer-GstTypeFind" href="gstreamer-1.0/gstreamer-GstTypeFind.html">
 <ANCHOR id="gstreamer-GstTypeFind.functions" href="gstreamer-1.0/gstreamer-GstTypeFind.html#gstreamer-GstTypeFind.functions">
 <ANCHOR id="gstreamer-GstTypeFind.other" href="gstreamer-1.0/gstreamer-GstTypeFind.html#gstreamer-GstTypeFind.other">
-<ANCHOR id="gstreamer-GstTypeFind.object-hierarchy" href="gstreamer-1.0/gstreamer-GstTypeFind.html#gstreamer-GstTypeFind.object-hierarchy">
 <ANCHOR id="gstreamer-GstTypeFind.includes" href="gstreamer-1.0/gstreamer-GstTypeFind.html#gstreamer-GstTypeFind.includes">
 <ANCHOR id="gstreamer-GstTypeFind.description" href="gstreamer-1.0/gstreamer-GstTypeFind.html#gstreamer-GstTypeFind.description">
 <ANCHOR id="gstreamer-GstTypeFind.functions_details" href="gstreamer-1.0/gstreamer-GstTypeFind.html#gstreamer-GstTypeFind.functions_details">
@@ -2234,6 +2242,58 @@
 <ANCHOR id="gst-type-find-factory-call-function" href="gstreamer-1.0/GstTypeFindFactory.html#gst-type-find-factory-call-function">
 <ANCHOR id="GstTypeFindFactory.other_details" href="gstreamer-1.0/GstTypeFindFactory.html#GstTypeFindFactory.other_details">
 <ANCHOR id="GstTypeFindFactory-struct" href="gstreamer-1.0/GstTypeFindFactory.html#GstTypeFindFactory-struct">
+<ANCHOR id="gstreamer-GstUri" href="gstreamer-1.0/gstreamer-GstUri.html">
+<ANCHOR id="gstreamer-GstUri.functions" href="gstreamer-1.0/gstreamer-GstUri.html#gstreamer-GstUri.functions">
+<ANCHOR id="gstreamer-GstUri.other" href="gstreamer-1.0/gstreamer-GstUri.html#gstreamer-GstUri.other">
+<ANCHOR id="gstreamer-GstUri.includes" href="gstreamer-1.0/gstreamer-GstUri.html#gstreamer-GstUri.includes">
+<ANCHOR id="gstreamer-GstUri.description" href="gstreamer-1.0/gstreamer-GstUri.html#gstreamer-GstUri.description">
+<ANCHOR id="gstreamer-GstUri.functions_details" href="gstreamer-1.0/gstreamer-GstUri.html#gstreamer-GstUri.functions_details">
+<ANCHOR id="GST-URI-CAST:CAPS" href="gstreamer-1.0/gstreamer-GstUri.html#GST-URI-CAST:CAPS">
+<ANCHOR id="GST-URI-CONST-CAST:CAPS" href="gstreamer-1.0/gstreamer-GstUri.html#GST-URI-CONST-CAST:CAPS">
+<ANCHOR id="gst-uri-new" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-new">
+<ANCHOR id="gst-uri-new-with-base" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-new-with-base">
+<ANCHOR id="gst-uri-from-string" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-from-string">
+<ANCHOR id="gst-uri-from-string-with-base" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-from-string-with-base">
+<ANCHOR id="gst-uri-copy" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-copy">
+<ANCHOR id="gst-uri-equal" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-equal">
+<ANCHOR id="gst-uri-join" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-join">
+<ANCHOR id="gst-uri-join-strings" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-join-strings">
+<ANCHOR id="gst-uri-is-writable" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-is-writable">
+<ANCHOR id="gst-uri-make-writable" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-make-writable">
+<ANCHOR id="gst-uri-to-string" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-to-string">
+<ANCHOR id="gst-uri-ref" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-ref">
+<ANCHOR id="gst-uri-unref" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-unref">
+<ANCHOR id="gst-uri-is-normalized" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-is-normalized">
+<ANCHOR id="gst-uri-normalize" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-normalize">
+<ANCHOR id="gst-uri-get-scheme" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-scheme">
+<ANCHOR id="gst-uri-set-scheme" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-scheme">
+<ANCHOR id="gst-uri-get-userinfo" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-userinfo">
+<ANCHOR id="gst-uri-set-userinfo" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-userinfo">
+<ANCHOR id="gst-uri-get-host" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-host">
+<ANCHOR id="gst-uri-set-host" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-host">
+<ANCHOR id="gst-uri-get-port" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-port">
+<ANCHOR id="gst-uri-set-port" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-port">
+<ANCHOR id="gst-uri-get-path" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-path">
+<ANCHOR id="gst-uri-set-path" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-path">
+<ANCHOR id="gst-uri-get-path-string" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-path-string">
+<ANCHOR id="gst-uri-set-path-string" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-path-string">
+<ANCHOR id="gst-uri-get-path-segments" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-path-segments">
+<ANCHOR id="gst-uri-set-path-segments" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-path-segments">
+<ANCHOR id="gst-uri-append-path" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-append-path">
+<ANCHOR id="gst-uri-append-path-segment" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-append-path-segment">
+<ANCHOR id="gst-uri-get-query-string" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-query-string">
+<ANCHOR id="gst-uri-set-query-string" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-query-string">
+<ANCHOR id="gst-uri-get-query-table" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-query-table">
+<ANCHOR id="gst-uri-set-query-table" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-query-table">
+<ANCHOR id="gst-uri-get-query-value" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-query-value">
+<ANCHOR id="gst-uri-set-query-value" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-query-value">
+<ANCHOR id="gst-uri-remove-query-key" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-remove-query-key">
+<ANCHOR id="gst-uri-query-has-key" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-query-has-key">
+<ANCHOR id="gst-uri-get-query-keys" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-query-keys">
+<ANCHOR id="gst-uri-get-fragment" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-get-fragment">
+<ANCHOR id="gst-uri-set-fragment" href="gstreamer-1.0/gstreamer-GstUri.html#gst-uri-set-fragment">
+<ANCHOR id="gstreamer-GstUri.other_details" href="gstreamer-1.0/gstreamer-GstUri.html#gstreamer-GstUri.other_details">
+<ANCHOR id="GstUri" href="gstreamer-1.0/gstreamer-GstUri.html#GstUri">
 <ANCHOR id="gstreamer-GstUriHandler" href="gstreamer-1.0/gstreamer-GstUriHandler.html">
 <ANCHOR id="gstreamer-GstUriHandler.functions" href="gstreamer-1.0/gstreamer-GstUriHandler.html#gstreamer-GstUriHandler.functions">
 <ANCHOR id="GstURIHandler" href="gstreamer-1.0/gstreamer-GstUriHandler.html#GstURIHandler">
@@ -2262,10 +2322,10 @@
 <ANCHOR id="GstURIHandlerInterface" href="gstreamer-1.0/gstreamer-GstUriHandler.html#GstURIHandlerInterface">
 <ANCHOR id="GstURIType" href="gstreamer-1.0/gstreamer-GstUriHandler.html#GstURIType">
 <ANCHOR id="GstURIError" href="gstreamer-1.0/gstreamer-GstUriHandler.html#GstURIError">
+<ANCHOR id="GST-URI-NO-PORT:CAPS" href="gstreamer-1.0/gstreamer-GstUriHandler.html#GST-URI-NO-PORT:CAPS">
 <ANCHOR id="gstreamer-GstUtils" href="gstreamer-1.0/gstreamer-GstUtils.html">
 <ANCHOR id="gstreamer-GstUtils.functions" href="gstreamer-1.0/gstreamer-GstUtils.html#gstreamer-GstUtils.functions">
 <ANCHOR id="gstreamer-GstUtils.other" href="gstreamer-1.0/gstreamer-GstUtils.html#gstreamer-GstUtils.other">
-<ANCHOR id="gstreamer-GstUtils.object-hierarchy" href="gstreamer-1.0/gstreamer-GstUtils.html#gstreamer-GstUtils.object-hierarchy">
 <ANCHOR id="gstreamer-GstUtils.includes" href="gstreamer-1.0/gstreamer-GstUtils.html#gstreamer-GstUtils.includes">
 <ANCHOR id="gstreamer-GstUtils.description" href="gstreamer-1.0/gstreamer-GstUtils.html#gstreamer-GstUtils.description">
 <ANCHOR id="gstreamer-GstUtils.functions_details" href="gstreamer-1.0/gstreamer-GstUtils.html#gstreamer-GstUtils.functions_details">
@@ -2351,7 +2411,6 @@
 <ANCHOR id="gstreamer-GstValue" href="gstreamer-1.0/gstreamer-GstValue.html">
 <ANCHOR id="gstreamer-GstValue.functions" href="gstreamer-1.0/gstreamer-GstValue.html#gstreamer-GstValue.functions">
 <ANCHOR id="gstreamer-GstValue.other" href="gstreamer-1.0/gstreamer-GstValue.html#gstreamer-GstValue.other">
-<ANCHOR id="gstreamer-GstValue.object-hierarchy" href="gstreamer-1.0/gstreamer-GstValue.html#gstreamer-GstValue.object-hierarchy">
 <ANCHOR id="gstreamer-GstValue.includes" href="gstreamer-1.0/gstreamer-GstValue.html#gstreamer-GstValue.includes">
 <ANCHOR id="gstreamer-GstValue.description" href="gstreamer-1.0/gstreamer-GstValue.html#gstreamer-GstValue.description">
 <ANCHOR id="gstreamer-GstValue.functions_details" href="gstreamer-1.0/gstreamer-GstValue.html#gstreamer-GstValue.functions_details">
@@ -2455,7 +2514,6 @@
 <ANCHOR id="GstValueTable" href="gstreamer-1.0/gstreamer-GstValue.html#GstValueTable">
 <ANCHOR id="gstreamer-GstVersion" href="gstreamer-1.0/gstreamer-GstVersion.html">
 <ANCHOR id="gstreamer-GstVersion.functions" href="gstreamer-1.0/gstreamer-GstVersion.html#gstreamer-GstVersion.functions">
-<ANCHOR id="gstreamer-GstVersion.object-hierarchy" href="gstreamer-1.0/gstreamer-GstVersion.html#gstreamer-GstVersion.object-hierarchy">
 <ANCHOR id="gstreamer-GstVersion.includes" href="gstreamer-1.0/gstreamer-GstVersion.html#gstreamer-GstVersion.includes">
 <ANCHOR id="gstreamer-GstVersion.description" href="gstreamer-1.0/gstreamer-GstVersion.html#gstreamer-GstVersion.description">
 <ANCHOR id="gstreamer-GstVersion.functions_details" href="gstreamer-1.0/gstreamer-GstVersion.html#gstreamer-GstVersion.functions_details">
@@ -2465,15 +2523,32 @@
 <ANCHOR id="GST-VERSION-NANO:CAPS" href="gstreamer-1.0/gstreamer-GstVersion.html#GST-VERSION-NANO:CAPS">
 <ANCHOR id="GST-CHECK-VERSION:CAPS" href="gstreamer-1.0/gstreamer-GstVersion.html#GST-CHECK-VERSION:CAPS">
 <ANCHOR id="gstreamer-GstVersion.other_details" href="gstreamer-1.0/gstreamer-GstVersion.html#gstreamer-GstVersion.other_details">
+<ANCHOR id="gstreamer-GstDeviceMonitor" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html">
+<ANCHOR id="gstreamer-GstDeviceMonitor.functions" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.functions">
+<ANCHOR id="gstreamer-GstDeviceMonitor.other" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.other">
+<ANCHOR id="gstreamer-GstDeviceMonitor.includes" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.includes">
+<ANCHOR id="gstreamer-GstDeviceMonitor.description" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.description">
+<ANCHOR id="gstreamer-GstDeviceMonitor.functions_details" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.functions_details">
+<ANCHOR id="gst-device-monitor-new" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-new">
+<ANCHOR id="gst-device-monitor-get-bus" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-bus">
+<ANCHOR id="gst-device-monitor-add-filter" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter">
+<ANCHOR id="gst-device-monitor-remove-filter" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-remove-filter">
+<ANCHOR id="gst-device-monitor-start" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-start">
+<ANCHOR id="gst-device-monitor-stop" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-stop">
+<ANCHOR id="gst-device-monitor-get-devices" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-devices">
+<ANCHOR id="gstreamer-GstDeviceMonitor.other_details" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.other_details">
+<ANCHOR id="GstDeviceMonitor" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#GstDeviceMonitor">
+<ANCHOR id="GstDeviceMonitorClass" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass">
+<ANCHOR id="gstreamer-GstDeviceMonitor.see-also" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.see-also">
 <ANCHOR id="gstreamer-GstDevice" href="gstreamer-1.0/gstreamer-GstDevice.html">
 <ANCHOR id="gstreamer-GstDevice.functions" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.functions">
 <ANCHOR id="gstreamer-GstDevice.other" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.other">
-<ANCHOR id="gstreamer-GstDevice.object-hierarchy" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.object-hierarchy">
 <ANCHOR id="gstreamer-GstDevice.includes" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.includes">
 <ANCHOR id="gstreamer-GstDevice.description" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.description">
 <ANCHOR id="gstreamer-GstDevice.functions_details" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.functions_details">
 <ANCHOR id="gst-device-create-element" href="gstreamer-1.0/gstreamer-GstDevice.html#gst-device-create-element">
 <ANCHOR id="gst-device-get-caps" href="gstreamer-1.0/gstreamer-GstDevice.html#gst-device-get-caps">
+<ANCHOR id="gst-device-get-device-class" href="gstreamer-1.0/gstreamer-GstDevice.html#gst-device-get-device-class">
 <ANCHOR id="gst-device-get-display-name" href="gstreamer-1.0/gstreamer-GstDevice.html#gst-device-get-display-name">
 <ANCHOR id="gst-device-has-classes" href="gstreamer-1.0/gstreamer-GstDevice.html#gst-device-has-classes">
 <ANCHOR id="gst-device-has-classesv" href="gstreamer-1.0/gstreamer-GstDevice.html#gst-device-has-classesv">
@@ -2482,75 +2557,53 @@
 <ANCHOR id="GstDevice" href="gstreamer-1.0/gstreamer-GstDevice.html#GstDevice">
 <ANCHOR id="GstDeviceClass" href="gstreamer-1.0/gstreamer-GstDevice.html#GstDeviceClass">
 <ANCHOR id="gstreamer-GstDevice.see-also" href="gstreamer-1.0/gstreamer-GstDevice.html#gstreamer-GstDevice.see-also">
-<ANCHOR id="gstreamer-GstDeviceMonitor" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html">
-<ANCHOR id="gstreamer-GstDeviceMonitor.functions" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.functions">
-<ANCHOR id="gstreamer-GstDeviceMonitor.other" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.other">
-<ANCHOR id="gstreamer-GstDeviceMonitor.object-hierarchy" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.object-hierarchy">
-<ANCHOR id="gstreamer-GstDeviceMonitor.includes" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.includes">
-<ANCHOR id="gstreamer-GstDeviceMonitor.description" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.description">
-<ANCHOR id="gstreamer-GstDeviceMonitor.functions_details" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.functions_details">
-<ANCHOR id="gst-device-monitor-can-monitor" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-can-monitor">
-<ANCHOR id="gst-device-monitor-class-add-metadata" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-metadata">
-<ANCHOR id="gst-device-monitor-class-add-static-metadata" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-add-static-metadata">
-<ANCHOR id="gst-device-monitor-class-get-metadata" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-get-metadata">
-<ANCHOR id="gst-device-monitor-class-set-metadata" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-metadata">
-<ANCHOR id="gst-device-monitor-class-set-static-metadata" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-class-set-static-metadata">
-<ANCHOR id="gst-device-monitor-device-add" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-add">
-<ANCHOR id="gst-device-monitor-device-remove" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-device-remove">
-<ANCHOR id="gst-device-monitor-get-bus" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-bus">
-<ANCHOR id="gst-device-monitor-get-devices" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-devices">
-<ANCHOR id="gst-device-monitor-get-factory" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-get-factory">
-<ANCHOR id="gst-device-monitor-register" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-register">
-<ANCHOR id="gst-device-monitor-start" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-start">
-<ANCHOR id="gst-device-monitor-stop" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gst-device-monitor-stop">
-<ANCHOR id="gstreamer-GstDeviceMonitor.other_details" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.other_details">
-<ANCHOR id="GstDeviceMonitor" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#GstDeviceMonitor">
-<ANCHOR id="GstDeviceMonitorClass" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#GstDeviceMonitorClass">
-<ANCHOR id="gstreamer-GstDeviceMonitor.see-also" href="gstreamer-1.0/gstreamer-GstDeviceMonitor.html#gstreamer-GstDeviceMonitor.see-also">
-<ANCHOR id="GstDeviceMonitorFactory" href="gstreamer-1.0/GstDeviceMonitorFactory.html">
-<ANCHOR id="GstDeviceMonitorFactory.functions" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.functions">
-<ANCHOR id="GstDeviceMonitorFactory.other" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.other">
-<ANCHOR id="GstDeviceMonitorFactory.object-hierarchy" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.object-hierarchy">
-<ANCHOR id="GstDeviceMonitorFactory.includes" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.includes">
-<ANCHOR id="GstDeviceMonitorFactory.description" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.description">
-<ANCHOR id="GstDeviceMonitorFactory.functions_details" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.functions_details">
-<ANCHOR id="gst-device-monitor-factory-find" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-find">
-<ANCHOR id="gst-device-monitor-factory-get" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-get">
-<ANCHOR id="gst-device-monitor-factory-get-by-name" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-by-name">
-<ANCHOR id="gst-device-monitor-factory-get-device-monitor-type" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-device-monitor-type">
-<ANCHOR id="gst-device-monitor-factory-get-metadata" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata">
-<ANCHOR id="gst-device-monitor-factory-get-metadata-keys" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-get-metadata-keys">
-<ANCHOR id="gst-device-monitor-factory-has-classes" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classes">
-<ANCHOR id="gst-device-monitor-factory-has-classesv" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-has-classesv">
-<ANCHOR id="gst-device-monitor-factory-list-get-device-monitors" href="gstreamer-1.0/GstDeviceMonitorFactory.html#gst-device-monitor-factory-list-get-device-monitors">
-<ANCHOR id="GstDeviceMonitorFactory.other_details" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.other_details">
-<ANCHOR id="GstDeviceMonitorFactory-struct" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory-struct">
-<ANCHOR id="GstDeviceMonitorFactoryClass" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactoryClass">
-<ANCHOR id="GstDeviceMonitorFactory.see-also" href="gstreamer-1.0/GstDeviceMonitorFactory.html#GstDeviceMonitorFactory.see-also">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.functions" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.functions">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.other" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.other">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.object-hierarchy" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.object-hierarchy">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.includes" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.includes">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.description" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.description">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.functions_details" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.functions_details">
-<ANCHOR id="gst-global-device-monitor-get-bus" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-bus">
-<ANCHOR id="gst-global-device-monitor-get-caps-filter" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-caps-filter">
-<ANCHOR id="gst-global-device-monitor-get-classes-filter" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-classes-filter">
-<ANCHOR id="gst-global-device-monitor-get-devices" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-get-devices">
-<ANCHOR id="gst-global-device-monitor-new" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-new">
-<ANCHOR id="gst-global-device-monitor-set-caps-filter" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-caps-filter">
-<ANCHOR id="gst-global-device-monitor-set-classes-filter" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-set-classes-filter">
-<ANCHOR id="gst-global-device-monitor-start" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-start">
-<ANCHOR id="gst-global-device-monitor-stop" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gst-global-device-monitor-stop">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.other_details" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.other_details">
-<ANCHOR id="GstGlobalDeviceMonitor" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitor">
-<ANCHOR id="GstGlobalDeviceMonitorClass" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#GstGlobalDeviceMonitorClass">
-<ANCHOR id="gstreamer-GstGlobalDeviceMonitor.see-also" href="gstreamer-1.0/gstreamer-GstGlobalDeviceMonitor.html#gstreamer-GstGlobalDeviceMonitor.see-also">
+<ANCHOR id="gstreamer-GstDeviceProvider" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html">
+<ANCHOR id="gstreamer-GstDeviceProvider.functions" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.functions">
+<ANCHOR id="gstreamer-GstDeviceProvider.other" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.other">
+<ANCHOR id="gstreamer-GstDeviceProvider.includes" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.includes">
+<ANCHOR id="gstreamer-GstDeviceProvider.description" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.description">
+<ANCHOR id="gstreamer-GstDeviceProvider.functions_details" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.functions_details">
+<ANCHOR id="gst-device-provider-can-monitor" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-can-monitor">
+<ANCHOR id="gst-device-provider-class-add-metadata" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-metadata">
+<ANCHOR id="gst-device-provider-class-add-static-metadata" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-class-add-static-metadata">
+<ANCHOR id="gst-device-provider-class-get-metadata" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-class-get-metadata">
+<ANCHOR id="gst-device-provider-class-set-metadata" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-metadata">
+<ANCHOR id="gst-device-provider-class-set-static-metadata" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-class-set-static-metadata">
+<ANCHOR id="gst-device-provider-device-add" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-device-add">
+<ANCHOR id="gst-device-provider-device-remove" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-device-remove">
+<ANCHOR id="gst-device-provider-get-bus" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-get-bus">
+<ANCHOR id="gst-device-provider-get-devices" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-get-devices">
+<ANCHOR id="gst-device-provider-get-factory" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-get-factory">
+<ANCHOR id="gst-device-provider-register" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-register">
+<ANCHOR id="gst-device-provider-start" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-start">
+<ANCHOR id="gst-device-provider-stop" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gst-device-provider-stop">
+<ANCHOR id="gstreamer-GstDeviceProvider.other_details" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.other_details">
+<ANCHOR id="GstDeviceProvider" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#GstDeviceProvider">
+<ANCHOR id="GstDeviceProviderClass" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#GstDeviceProviderClass">
+<ANCHOR id="gstreamer-GstDeviceProvider.see-also" href="gstreamer-1.0/gstreamer-GstDeviceProvider.html#gstreamer-GstDeviceProvider.see-also">
+<ANCHOR id="GstDeviceProviderFactory" href="gstreamer-1.0/GstDeviceProviderFactory.html">
+<ANCHOR id="GstDeviceProviderFactory.functions" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.functions">
+<ANCHOR id="GstDeviceProviderFactory.other" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.other">
+<ANCHOR id="GstDeviceProviderFactory.object-hierarchy" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.object-hierarchy">
+<ANCHOR id="GstDeviceProviderFactory.includes" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.includes">
+<ANCHOR id="GstDeviceProviderFactory.description" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.description">
+<ANCHOR id="GstDeviceProviderFactory.functions_details" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.functions_details">
+<ANCHOR id="gst-device-provider-factory-find" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-find">
+<ANCHOR id="gst-device-provider-factory-get" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-get">
+<ANCHOR id="gst-device-provider-factory-get-by-name" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-get-by-name">
+<ANCHOR id="gst-device-provider-factory-get-device-provider-type" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-get-device-provider-type">
+<ANCHOR id="gst-device-provider-factory-get-metadata" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata">
+<ANCHOR id="gst-device-provider-factory-get-metadata-keys" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-get-metadata-keys">
+<ANCHOR id="gst-device-provider-factory-has-classes" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-has-classes">
+<ANCHOR id="gst-device-provider-factory-has-classesv" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-has-classesv">
+<ANCHOR id="gst-device-provider-factory-list-get-device-providers" href="gstreamer-1.0/GstDeviceProviderFactory.html#gst-device-provider-factory-list-get-device-providers">
+<ANCHOR id="GstDeviceProviderFactory.other_details" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.other_details">
+<ANCHOR id="GstDeviceProviderFactory-struct" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory-struct">
+<ANCHOR id="GstDeviceProviderFactoryClass" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactoryClass">
+<ANCHOR id="GstDeviceProviderFactory.see-also" href="gstreamer-1.0/GstDeviceProviderFactory.html#GstDeviceProviderFactory.see-also">
 <ANCHOR id="gstreamer-GstInfo" href="gstreamer-1.0/gstreamer-GstInfo.html">
 <ANCHOR id="gstreamer-GstInfo.functions" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.functions">
 <ANCHOR id="gstreamer-GstInfo.other" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.other">
-<ANCHOR id="gstreamer-GstInfo.object-hierarchy" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.object-hierarchy">
 <ANCHOR id="gstreamer-GstInfo.includes" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.includes">
 <ANCHOR id="gstreamer-GstInfo.description" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.description">
 <ANCHOR id="gstreamer-GstInfo.functions_details" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.functions_details">
@@ -2638,10 +2691,12 @@
 <ANCHOR id="gstreamer-GstInfo.other_details" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.other_details">
 <ANCHOR id="GstDebugLevel" href="gstreamer-1.0/gstreamer-GstInfo.html#GstDebugLevel">
 <ANCHOR id="GST-LEVEL-DEFAULT:CAPS" href="gstreamer-1.0/gstreamer-GstInfo.html#GST-LEVEL-DEFAULT:CAPS">
+<ANCHOR id="GST-LEVEL-MAX:CAPS" href="gstreamer-1.0/gstreamer-GstInfo.html#GST-LEVEL-MAX:CAPS">
 <ANCHOR id="GstDebugColorFlags" href="gstreamer-1.0/gstreamer-GstInfo.html#GstDebugColorFlags">
 <ANCHOR id="GstDebugColorMode" href="gstreamer-1.0/gstreamer-GstInfo.html#GstDebugColorMode">
 <ANCHOR id="GstDebugCategory" href="gstreamer-1.0/gstreamer-GstInfo.html#GstDebugCategory">
 <ANCHOR id="GstDebugGraphDetails" href="gstreamer-1.0/gstreamer-GstInfo.html#GstDebugGraphDetails">
+<ANCHOR id="GST-CAT-DEFAULT:CAPS" href="gstreamer-1.0/gstreamer-GstInfo.html#GST-CAT-DEFAULT:CAPS">
 <ANCHOR id="GST-TIME-FORMAT:CAPS" href="gstreamer-1.0/gstreamer-GstInfo.html#GST-TIME-FORMAT:CAPS">
 <ANCHOR id="gstreamer-GstInfo.see-also" href="gstreamer-1.0/gstreamer-GstInfo.html#gstreamer-GstInfo.see-also">
 <ANCHOR id="annotation-glossterm-allow-none" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-allow-none">
@@ -2650,6 +2705,7 @@
 <ANCHOR id="annotation-glossterm-element-type" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-element-type">
 <ANCHOR id="annotation-glossterm-in" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-in">
 <ANCHOR id="annotation-glossterm-inout" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-inout">
+<ANCHOR id="annotation-glossterm-nullable" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-nullable">
 <ANCHOR id="annotation-glossterm-out" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-out">
 <ANCHOR id="annotation-glossterm-out callee-allocates" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-out callee-allocates">
 <ANCHOR id="annotation-glossterm-out caller-allocates" href="gstreamer-1.0/annotation-glossary.html#annotation-glossterm-out caller-allocates">
diff --git a/docs/gst/html/libgstreamer.html b/docs/gst/html/libgstreamer.html
index 87a6b7f..5779c07 100644
--- a/docs/gst/html/libgstreamer.html
+++ b/docs/gst/html/libgstreamer.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Core Reference Manual">
 <link rel="prev" href="gst-running.html" title="Running GStreamer Applications">
 <link rel="next" href="gstreamer-Gst.html" title="Gst">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -192,6 +192,9 @@
 <span class="refentrytitle"><a href="GstTypeFindFactory.html">GstTypeFindFactory</a></span><span class="refpurpose"> — Information about registered typefind functions</span>
 </dt>
 <dt>
+<span class="refentrytitle"><a href="gstreamer-GstUri.html">GstUri</a></span><span class="refpurpose"> — URI parsing and manipulation.</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="gstreamer-GstUriHandler.html">GstUriHandler</a></span><span class="refpurpose"> — Interface to ease URI handling in plugins.</span>
 </dt>
 <dt>
@@ -214,6 +217,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/gst/html/style.css b/docs/gst/html/style.css
index 705a5c9..c141ddd 100644
--- a/docs/gst/html/style.css
+++ b/docs/gst/html/style.css
@@ -30,127 +30,6 @@
   vertical-align: top;
 }
 
-@media screen {
-  sup a.footnote
-  {
-    position: relative;
-    top: 0em ! important;
-  }
-  /* this is needed so that the local anchors are displayed below the naviagtion */
-  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
-  {
-    display: inline-block;
-    position: relative;
-    top:-5em;
-  }
-  /* this seems to be a bug in the xsl style sheets when generating indexes */
-  div.index div.index
-  {
-    top: 0em;
-  }
-  /* make space for the fixed navigation bar and add space at the bottom so that
-   * link targets appear somewhat close to top
-   */
-  body
-  {
-    padding-top: 5em;
-    padding-bottom: 500px;
-    max-width: 60em;
-  }
-  p
-  {
-    max-width: 60em;
-  }
-  /* style and size the navigation bar */
-  table.navigation#top
-  {
-    position: fixed;
-    background: #e2e2e2;
-    border-bottom: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-    z-index: 10;
-  }
-  .navigation a, .navigation a:visited
-  {
-    /* tango:sky blue 3 */
-    color: #204a87;
-  }
-  .navigation a:hover
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-  }
-  td.shortcuts
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-    font-size: 80%;
-    white-space: nowrap;
-  }
-  td.shortcuts .dim
-  {
-    color: #babdb6;
-  }
-}
-@media screen and (min-width: 60em) {
-  /* screen larger than 60em */
-  body { margin: auto; }
-}
-@media screen and (max-width: 60em) {
-  /* screen less than 60em */
-  #nav_hierarchy { display: none; }
-  #nav_interfaces { display: none; }
-  #nav_prerequisites { display: none; }
-  #nav_derived_interfaces { display: none; }
-  #nav_implementations { display: none; }
-  #nav_child_properties { display: none; }
-  #nav_style_properties { display: none; }
-  #nav_index { display: none; }
-  #nav_glossary { display: none; }
-  .gallery_image { display: none; }
-  .property_flags { display: none; }
-  .signal_flags { display: none; }
-  .parameter_annotations { display: none; }
-  .enum_member_annotations { display: none; }
-  .struct_member_annotations { display: none; }
-  .union_member_annotations { display: none; }
-  /* now that a column is hidden, optimize space */
-  col.parameters_name { width: auto; }
-  col.parameters_description { width: auto; }
-  col.struct_members_name { width: auto; }
-  col.struct_members_description { width: auto; }
-  col.enum_members_name { width: auto; }
-  col.enum_members_description { width: auto; }
-  col.union_members_name { width: auto; }
-  col.union_members_description { width: auto; }
-}
-@media print {
-  table.navigation {
-    visibility: collapse;
-    display: none;
-  }
-  div.titlepage table.navigation {
-    visibility: visible;
-    display: table;
-    background: #e2e2e2;
-    border: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-  }
-}
-
-.navigation .title
-{
-  font-size: 120%;
-}
-
 div.gallery-float
 {
   float: left;
@@ -181,7 +60,7 @@
 div.informaltable table
 {
   border-collapse: separate;
-  border-spacing: 20px 3px;
+  border-spacing: 1em 0.5em;
   border: none;
 }
 
@@ -239,6 +118,11 @@
  color: #729fcf;
 }
 
+td p
+{
+  margin: 0.25em;
+}
+
 div.table table
 {
   border-collapse: collapse;
@@ -404,21 +288,28 @@
   font-weight: normal;
 }
 
+acronym,abbr 
+{
+  border-bottom: 1px dotted gray;
+}
+
 /* code listings */
 
-.listing_code .programlisting .cbracket   { color: #a40000; } /* tango: scarlet red 3 */
-.listing_code .programlisting .comment    { color: #a1a39d; } /* tango: aluminium 4 */
-.listing_code .programlisting .function   { color: #000000; font-weight: bold; }
-.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */
-.listing_code .programlisting .keyword    { color: #4e9a06; } /* tango: chameleon 3  */
+.listing_code .programlisting .normal,
+.listing_code .programlisting .normal a,
+.listing_code .programlisting .number,
+.listing_code .programlisting .cbracket,
+.listing_code .programlisting .symbol     { color: #555753; }
+.listing_code .programlisting .comment,
 .listing_code .programlisting .linenum    { color: #babdb6; } /* tango: aluminium 3 */
-.listing_code .programlisting .normal     { color: #000000; }
-.listing_code .programlisting .number     { color: #75507b; } /* tango: plum 2 */
+.listing_code .programlisting .function,
+.listing_code .programlisting .function a,
 .listing_code .programlisting .preproc    { color: #204a87; } /* tango: sky blue 3  */
-.listing_code .programlisting .string     { color: #c17d11; } /* tango: chocolate 2 */
-.listing_code .programlisting .type       { color: #000000; }
-.listing_code .programlisting .type a     { color: #11326b; } /* tango: sky blue 4 */
-.listing_code .programlisting .symbol     { color: #ce5c00; } /* tango: orange 3 */
+.listing_code .programlisting .string     { color: #ad7fa8; } /* tango: plum */
+.listing_code .programlisting .keyword,
+.listing_code .programlisting .usertype,
+.listing_code .programlisting .type,
+.listing_code .programlisting .type a     { color: #4e9a06; } /* tango: chameleon 3  */
 
 .listing_frame {
   /* tango:sky blue 1 */
@@ -433,11 +324,6 @@
   padding: 0.5em;
 }
 .listing_lines {
-  /* this just adds visual clutter and
-     takes precious room from small screens */
-  display: none;
-}
-.listing_lines {
   /* tango:sky blue 0.5 */
   background: #a6c5e3;
   background: rgba(114, 159, 207, 0.2);
@@ -459,3 +345,132 @@
   margin: 0px;
 }
 
+@media screen {
+  sup a.footnote
+  {
+    position: relative;
+    top: 0em ! important;
+  }
+  /* this is needed so that the local anchors are displayed below the naviagtion */
+  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
+  {
+    display: inline-block;
+    position: relative;
+    top:-5em;
+  }
+  /* this seems to be a bug in the xsl style sheets when generating indexes */
+  div.index div.index
+  {
+    top: 0em;
+  }
+  /* make space for the fixed navigation bar and add space at the bottom so that
+   * link targets appear somewhat close to top
+   */
+  body
+  {
+    padding-top: 2.5em;
+    padding-bottom: 500px;
+    max-width: 60em;
+  }
+  p
+  {
+    max-width: 60em;
+  }
+  /* style and size the navigation bar */
+  table.navigation#top
+  {
+    position: fixed;
+    background: #e2e2e2;
+    border-bottom: solid 1px #babdb6;
+    border-spacing: 5px;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    z-index: 10;
+  }
+  table.navigation#top td
+  {
+    padding-left: 6px;
+    padding-right: 6px;
+  }
+  .navigation a, .navigation a:visited
+  {
+    /* tango:sky blue 3 */
+    color: #204a87;
+  }
+  .navigation a:hover
+  {
+    /* tango:sky blue 2 */
+    color: #3465a4;
+  }
+  td.shortcuts
+  {
+    /* tango:sky blue 2 */
+    color: #3465a4;
+    font-size: 80%;
+    white-space: nowrap;
+  }
+  td.shortcuts .dim
+  {
+    color: #babdb6;
+  }
+  .navigation .title
+  {
+    font-size: 80%;
+    max-width: none;
+    margin: 0px;
+    font-weight: normal;
+  }
+}
+@media screen and (min-width: 60em) {
+  /* screen larger than 60em */
+  body { margin: auto; }
+}
+@media screen and (max-width: 60em) {
+  /* screen less than 60em */
+  #nav_hierarchy { display: none; }
+  #nav_interfaces { display: none; }
+  #nav_prerequisites { display: none; }
+  #nav_derived_interfaces { display: none; }
+  #nav_implementations { display: none; }
+  #nav_child_properties { display: none; }
+  #nav_style_properties { display: none; }
+  #nav_index { display: none; }
+  #nav_glossary { display: none; }
+  .gallery_image { display: none; }
+  .property_flags { display: none; }
+  .signal_flags { display: none; }
+  .parameter_annotations { display: none; }
+  .enum_member_annotations { display: none; }
+  .struct_member_annotations { display: none; }
+  .union_member_annotations { display: none; }
+  /* now that a column is hidden, optimize space */
+  col.parameters_name { width: auto; }
+  col.parameters_description { width: auto; }
+  col.struct_members_name { width: auto; }
+  col.struct_members_description { width: auto; }
+  col.enum_members_name { width: auto; }
+  col.enum_members_description { width: auto; }
+  col.union_members_name { width: auto; }
+  col.union_members_description { width: auto; }
+  .listing_lines { display: none; }
+}
+@media print {
+  table.navigation {
+    visibility: collapse;
+    display: none;
+  }
+  div.titlepage table.navigation {
+    visibility: visible;
+    display: table;
+    background: #e2e2e2;
+    border: solid 1px #babdb6;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    height: 3em;
+  }
+}
+
diff --git a/docs/gst/running.xml b/docs/gst/running.xml
index 67ac4fa..db30fe5 100644
--- a/docs/gst/running.xml
+++ b/docs/gst/running.xml
@@ -514,6 +514,31 @@
 encoding does not look like UTF-8.
   </para>
 </formalpara>
+
+<formalpara id="GST_GL_WINDOW">
+  <title><envar>GST_GL_WINDOW</envar></title>
+  <para>
+Influences the window system to use by the GStreamer OpenGL library.
+Common values are 'x11', 'wayland', 'win32' or 'cocoa'.
+  </para>
+</formalpara>
+
+<formalpara id="GST_GL_PLATFORM">
+  <title><envar>GST_GL_PLATFORM</envar></title>
+  <para>
+Influences the OpenGL platform to use by the GStreamer OpenGL library.
+Common values are 'egl', 'glx', 'wgl' or 'cgl'.
+  </para>
+</formalpara>
+
+<formalpara id="GST_GL_API">
+  <title><envar>GST_GL_API</envar></title>
+  <para>
+Influences the OpenGL API requested by the OpenGL platform.
+Common values are 'opengl' or 'gles2'.
+  </para>
+</formalpara>
+
 </refsect2>
 
 </refsect1>
diff --git a/docs/libs/Makefile.am b/docs/libs/Makefile.am
index 889b3a4..fc92b87 100644
--- a/docs/libs/Makefile.am
+++ b/docs/libs/Makefile.am
@@ -25,7 +25,7 @@
 SCAN_OPTIONS=--deprecated-guards="GST_DISABLE_DEPRECATED"
 
 # Extra options to supply to gtkdoc-mkdb.
-MKDB_OPTIONS=--sgml-mode --output-format=xml
+MKDB_OPTIONS=--sgml-mode --output-format=xml --ignore-files="$(IGNORE_HFILES)"
 
 # Extra options to supply to gtkdoc-fixref.
 FIXXREF_OPTIONS=--extra-dir=$(top_builddir)/docs/gst/html \
@@ -41,6 +41,7 @@
 
 # Header files to ignore when scanning.
 IGNORE_HFILES = \
+	check/libcheck check/internal-check.h \
 	gstinterpolationcontrolsourceprivate.h \
 	gstlfocontrolsourceprivate.h \
 	gstgetbits_inl.h \
diff --git a/docs/libs/Makefile.in b/docs/libs/Makefile.in
index 46cd2c0..66d4113 100644
--- a/docs/libs/Makefile.in
+++ b/docs/libs/Makefile.in
@@ -109,6 +109,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -126,7 +127,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -174,6 +175,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -281,6 +286,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -468,7 +474,7 @@
 SCAN_OPTIONS = --deprecated-guards="GST_DISABLE_DEPRECATED"
 
 # Extra options to supply to gtkdoc-mkdb.
-MKDB_OPTIONS = --sgml-mode --output-format=xml
+MKDB_OPTIONS = --sgml-mode --output-format=xml --ignore-files="$(IGNORE_HFILES)"
 
 # Extra options to supply to gtkdoc-fixref.
 FIXXREF_OPTIONS = --extra-dir=$(top_builddir)/docs/gst/html \
@@ -485,6 +491,7 @@
 
 # Header files to ignore when scanning.
 IGNORE_HFILES = \
+	check/libcheck check/internal-check.h \
 	gstinterpolationcontrolsourceprivate.h \
 	gstlfocontrolsourceprivate.h \
 	gstgetbits_inl.h \
diff --git a/docs/libs/gstreamer-libs-docs.sgml b/docs/libs/gstreamer-libs-docs.sgml
index ce87695..0070771 100644
--- a/docs/libs/gstreamer-libs-docs.sgml
+++ b/docs/libs/gstreamer-libs-docs.sgml
@@ -72,6 +72,7 @@
         libgstnet-&GST_API_VERSION;.so provides network elements and objects.
       </para>
 
+      <xi:include href="xml/gstnetaddressmeta.xml" />
       <xi:include href="xml/gstnetclientclock.xml" />
       <xi:include href="xml/gstnettimepacket.xml" />
       <xi:include href="xml/gstnettimeprovider.xml" />
diff --git a/docs/libs/gstreamer-libs-sections.txt b/docs/libs/gstreamer-libs-sections.txt
index 78c32c9..86355fb 100644
--- a/docs/libs/gstreamer-libs-sections.txt
+++ b/docs/libs/gstreamer-libs-sections.txt
@@ -65,7 +65,6 @@
 gst_timed_value_control_source_unset
 gst_timed_value_control_source_unset_all
 gst_timed_value_control_source_get_count
-gst_timed_value_control_source_get_base_value_type
 gst_timed_value_control_invalidate_cache
 <SUBSECTION Standard>
 GstTimedValueControlSourceClass
@@ -167,6 +166,7 @@
 gst_adapter_take_buffer
 gst_adapter_take_buffer_fast
 gst_adapter_take_list
+gst_adapter_take_buffer_list
 gst_adapter_prev_pts
 gst_adapter_prev_dts
 gst_adapter_prev_pts_at_offset
@@ -294,7 +294,6 @@
 gst_base_sink_wait
 gst_base_sink_wait_preroll
 gst_base_sink_wait_clock
-gst_base_sink_wait_eos
 gst_base_sink_set_sync
 gst_base_sink_get_sync
 gst_base_sink_set_max_lateness
@@ -307,8 +306,6 @@
 gst_base_sink_get_ts_offset
 gst_base_sink_set_render_delay
 gst_base_sink_get_render_delay
-gst_base_sink_set_last_buffer_enabled
-gst_base_sink_is_last_buffer_enabled
 gst_base_sink_get_last_sample
 gst_base_sink_set_blocksize
 gst_base_sink_get_blocksize
@@ -325,7 +322,6 @@
 GST_BASE_SINK_PREROLL_BROADCAST
 GST_BASE_SINK_PREROLL_LOCK
 GST_BASE_SINK_PREROLL_SIGNAL
-GST_BASE_SINK_PREROLL_TIMED_WAIT
 GST_BASE_SINK_PREROLL_TRYLOCK
 GST_BASE_SINK_PREROLL_UNLOCK
 GST_BASE_SINK_PREROLL_WAIT
@@ -361,8 +357,6 @@
 gst_base_transform_set_qos_enabled
 gst_base_transform_update_qos
 gst_base_transform_set_gap_aware
-gst_base_transform_suggest
-gst_base_transform_reconfigure
 gst_base_transform_get_allocator
 gst_base_transform_get_buffer_pool
 gst_base_transform_reconfigure_sink
@@ -449,6 +443,9 @@
 
 gst_byte_reader_init
 
+gst_byte_reader_peek_sub_reader
+gst_byte_reader_get_sub_reader
+
 gst_byte_reader_get_pos
 gst_byte_reader_get_remaining
 gst_byte_reader_set_pos
@@ -511,6 +508,7 @@
 gst_byte_reader_peek_data
 
 gst_byte_reader_masked_scan_uint32
+gst_byte_reader_masked_scan_uint32_peek
 
 gst_byte_reader_get_string
 gst_byte_reader_get_string_utf8
@@ -725,7 +723,6 @@
 gst_collect_pads_peek
 gst_collect_pads_pop
 
-gst_collect_pads_read
 gst_collect_pads_read_buffer
 gst_collect_pads_take_buffer
 
@@ -768,8 +765,11 @@
 gst_flow_combiner_update_flow
 gst_flow_combiner_add_pad
 gst_flow_combiner_remove_pad
+gst_flow_combiner_clear
 <SUBSECTION Standard>
+GST_TYPE_FLOW_COMBINER
 <SUBSECTION Private>
+gst_flow_combiner_get_type
 </SECTION>
 
 <SECTION>
@@ -799,7 +799,6 @@
 gst_type_find_helper_for_data
 GstTypeFindHelperGetRangeFunction
 gst_type_find_helper_get_range
-gst_type_find_helper_get_range_ext
 <SUBSECTION Private>
 </SECTION>
 
@@ -870,6 +869,20 @@
 gst_net_address_meta_api_get_type
 </SECTION>
 
+<SECTION>
+<FILE>gstnetcontrolmessagemeta</FILE>
+<TITLE>GstNetControlMessageMeta</TITLE>
+<INCLUDE>gst/net/gstnetcontrolmessagemeta.h</INCLUDE>
+GstNetControlMessageMeta
+gst_buffer_add_net_control_message_meta
+gst_buffer_get_net_control_message_meta
+gst_net_control_message_meta_get_info
+<SUBSECTION Standard>
+GST_NET_CONTROL_MESSAGE_META_API_TYPE
+GST_NET_CONTROL_MESSAGE_META_INFO
+<SUBSECTION Private>
+gst_net_control_message_meta_api_get_type
+</SECTION>
 
 <SECTION>
 <FILE>gstnetclientclock</FILE>
@@ -985,6 +998,12 @@
 gst_check_run_suite
 gst_check_setup_events
 gst_check_setup_events_with_stream_id
+gst_check_setup_sink_pad_by_name_from_template
+gst_check_setup_sink_pad_from_template
+gst_check_setup_src_pad_by_name_from_template
+gst_check_setup_src_pad_from_template
+gst_check_objects_destroyed_on_unref
+gst_check_object_destroyed_on_unref
 
 <SUBSECTION Private>
 MAIN_INIT
@@ -1143,6 +1162,9 @@
 gst_test_clock_wait_for_pending_id_count
 gst_test_clock_process_next_clock_id
 gst_test_clock_get_next_entry_time
+gst_test_clock_wait_for_multiple_pending_ids
+gst_test_clock_id_list_get_latest_time
+gst_test_clock_process_id_list
 <SUBSECTION Standard>
 GST_TEST_CLOCK
 GST_IS_TEST_CLOCK
diff --git a/docs/libs/html/GstARGBControlBinding.html b/docs/libs/html/GstARGBControlBinding.html
index 63fc393..85db73d 100644
--- a/docs/libs/html/GstARGBControlBinding.html
+++ b/docs/libs/html/GstARGBControlBinding.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="prev" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="next" href="GstDirectControlBinding.html" title="GstDirectControlBinding">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstARGBControlBinding.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstARGBControlBinding.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstARGBControlBinding.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstARGBControlBinding.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstARGBControlBinding.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -88,8 +88,8 @@
 </div>
 <div class="refsect1">
 <a name="GstARGBControlBinding.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlBinding.html">GstControlBinding</a>
                 <span class="lineart">╰──</span> GstARGBControlBinding
@@ -112,13 +112,13 @@
 <a name="gst-argb-control-binding-new"></a><h3>gst_argb_control_binding_new ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlBinding.html"><span class="returnvalue">GstControlBinding</span></a> *
 gst_argb_control_binding_new (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *object</code></em>,
-                              <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
+                              <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
                               <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> *cs_a</code></em>,
                               <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> *cs_r</code></em>,
                               <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> *cs_g</code></em>,
                               <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> *cs_b</code></em>);</pre>
 <p>Create a new control-binding that attaches the given <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> to the
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property.</p>
 <div class="refsect3">
 <a name="id-1.2.5.3.8.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -204,6 +204,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstAdapter.html b/docs/libs/html/GstAdapter.html
index ec95464..8cbd748 100644
--- a/docs/libs/html/GstAdapter.html
+++ b/docs/libs/html/GstAdapter.html
@@ -8,14 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstPushSrc.html" title="GstPushSrc">
 <link rel="next" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstAdapter.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstAdapter.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstAdapter.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -66,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="returnvalue">gconstpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="returnvalue">gconstpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstAdapter.html#gst-adapter-map" title="gst_adapter_map ()">gst_adapter_map</a> <span class="c_punctuation">()</span>
@@ -90,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="returnvalue">GBytes</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="returnvalue">GBytes</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstAdapter.html#gst-adapter-copy-bytes" title="gst_adapter_copy_bytes ()">gst_adapter_copy_bytes</a> <span class="c_punctuation">()</span>
@@ -122,7 +122,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstAdapter.html#gst-adapter-take" title="gst_adapter_take ()">gst_adapter_take</a> <span class="c_punctuation">()</span>
@@ -146,7 +146,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstAdapter.html#gst-adapter-take-list" title="gst_adapter_take_list ()">gst_adapter_take_list</a> <span class="c_punctuation">()</span>
@@ -154,6 +154,14 @@
 </tr>
 <tr>
 <td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBufferList.html"><span class="returnvalue">GstBufferList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="GstAdapter.html#gst-adapter-take-buffer-list" title="gst_adapter_take_buffer_list ()">gst_adapter_take_buffer_list</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a>
 </td>
 <td class="function_name">
@@ -218,7 +226,7 @@
 </div>
 <div class="refsect1">
 <a name="GstAdapter.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
     <span class="lineart">╰──</span> GstAdapter
 </pre>
 </div>
@@ -235,7 +243,7 @@
 a file. So if you have undefined buffer sizes and require a specific size,
 this object is for you.</p>
 <p>An adapter is created with <a class="link" href="GstAdapter.html#gst-adapter-new" title="gst_adapter_new ()"><code class="function">gst_adapter_new()</code></a>. It can be freed again with
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
 <p>The theory of operation is like this: All buffers received are put
 into the adapter using <a class="link" href="GstAdapter.html#gst-adapter-push" title="gst_adapter_push ()"><code class="function">gst_adapter_push()</code></a> and the data is then read back
 in chunks of the desired size using <a class="link" href="GstAdapter.html#gst-adapter-map" title="gst_adapter_map ()"><code class="function">gst_adapter_map()</code></a>/<a class="link" href="GstAdapter.html#gst-adapter-unmap" title="gst_adapter_unmap ()"><code class="function">gst_adapter_unmap()</code></a>
@@ -309,7 +317,7 @@
 <p>An element using <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> in its sink pad chain function should ensure that
 when the FLUSH_STOP event is received, that any queued data is cleared using
 <a class="link" href="GstAdapter.html#gst-adapter-clear" title="gst_adapter_clear ()"><code class="function">gst_adapter_clear()</code></a>. Data should also be cleared or processed on EOS and
-when changing state from <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-PAUSED:CAPS"><code class="literal">GST_STATE_PAUSED</code></a> to <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-READY:CAPS"><code class="literal">GST_STATE_READY</code></a>.</p>
+when changing state from <code class="literal">GST_STATE_PAUSED</code> to <code class="literal">GST_STATE_READY</code>.</p>
 <p>Also check the GST_BUFFER_FLAG_DISCONT flag on the buffer. Some elements might
 need to clear the adapter after a discontinuity.</p>
 <p>The adapter will keep track of the timestamps of the buffers
@@ -344,7 +352,7 @@
 <a name="gst-adapter-new"></a><h3>gst_adapter_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="returnvalue">GstAdapter</span></a> *
 gst_adapter_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Creates a new <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a>. Free with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
+<p>Creates a new <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a>. Free with <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.2.5"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a>. </p>
@@ -410,7 +418,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-adapter-map"></a><h3>gst_adapter_map ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="returnvalue">gconstpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="returnvalue">gconstpointer</span></a>
 gst_adapter_map (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
                  <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Gets the first <em class="parameter"><code>size</code></em>
@@ -425,7 +433,7 @@
 <a class="link" href="GstAdapter.html#gst-adapter-take" title="gst_adapter_take ()"><code class="function">gst_adapter_take()</code></a>, which returns a freshly-allocated buffer that you can set
 as <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> memory or the potentially more performant
 <a class="link" href="GstAdapter.html#gst-adapter-take-buffer" title="gst_adapter_take_buffer ()"><code class="function">gst_adapter_take_buffer()</code></a>.</p>
-<p>Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>size</code></em>
+<p>Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>size</code></em>
  bytes are not available.</p>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.5.7"></a><h4>Parameters</h4>
@@ -452,8 +460,8 @@
 <div class="refsect3">
 <a name="id-1.2.4.8.8.5.8"></a><h4>Returns</h4>
 <p>    a pointer to the first <em class="parameter"><code>size</code></em>
-bytes of data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8]</span></p>
+bytes of data, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -483,7 +491,7 @@
 <a name="gst-adapter-copy"></a><h3>gst_adapter_copy ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_adapter_copy (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
-                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> dest</code></em>,
+                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> dest</code></em>,
                   <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
                   <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Copies <em class="parameter"><code>size</code></em>
@@ -534,7 +542,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-adapter-copy-bytes"></a><h3>gst_adapter_copy_bytes ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="returnvalue">GBytes</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="returnvalue">GBytes</span></a> *
 gst_adapter_copy_bytes (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
@@ -543,9 +551,9 @@
 bytes of data starting at <em class="parameter"><code>offset</code></em>
  will be copied out of the buffers contained
 in <em class="parameter"><code>adapter</code></em>
- and into a new <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a> structure which is returned. Depending on
+ and into a new <a href="https://developer.gnome.org/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a> structure which is returned. Depending on
 the value of the <em class="parameter"><code>size</code></em>
- argument an empty <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a> structure may be returned.</p>
+ argument an empty <a href="https://developer.gnome.org/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a> structure may be returned.</p>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -575,8 +583,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.8.6"></a><h4>Returns</h4>
-<p> A new <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a> structure containing the copied data.</p>
-<p>Rename to: gst_adapter_copy. </p>
+<p> A new <a href="https://developer.gnome.org/glib/unstable/glib-Byte-Arrays.html#GBytes"><span class="type">GBytes</span></a> structure containing the copied data. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.4</p>
@@ -622,7 +629,7 @@
 gst_adapter_available (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>);</pre>
 <p>Gets the maximum amount of bytes available, that is it returns the maximum
 value that can be supplied to <a class="link" href="GstAdapter.html#gst-adapter-map" title="gst_adapter_map ()"><code class="function">gst_adapter_map()</code></a> without that function
-returning <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+returning <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -679,7 +686,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-adapter-take"></a><h3>gst_adapter_take ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_adapter_take (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
                   <em class="parameter"><code><span class="type">gsize</span> nbytes</code></em>);</pre>
 <p>Returns a freshly allocated buffer containing the first <em class="parameter"><code>nbytes</code></em>
@@ -712,9 +719,9 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.12.8"></a><h4>Returns</h4>
-<p>    oven-fresh hot data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
+<p>    oven-fresh hot data, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
 bytes are not available. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=nbytes][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=nbytes][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -762,12 +769,12 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.13.9"></a><h4>Returns</h4>
-<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> containing the first <em class="parameter"><code>nbytes</code></em>
-of
-the adapter, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
+<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> containing the first
+<em class="parameter"><code>nbytes</code></em>
+of the adapter, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
 bytes are not available.
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#gst-buffer-unref"><code class="function">gst_buffer_unref()</code></a> when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -818,22 +825,22 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.14.10"></a><h4>Returns</h4>
-<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> containing the first <em class="parameter"><code>nbytes</code></em>
-of
-the adapter, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
+<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> containing the first
+<em class="parameter"><code>nbytes</code></em>
+of the adapter, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
 bytes are not available.
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#gst-buffer-unref"><code class="function">gst_buffer_unref()</code></a> when no longer needed. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 <p class="since">Since 1.2</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-adapter-take-list"></a><h3>gst_adapter_take_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_adapter_take_list (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
                        <em class="parameter"><code><span class="type">gsize</span> nbytes</code></em>);</pre>
-<p>Returns a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of buffers containing the first <em class="parameter"><code>nbytes</code></em>
+<p>Returns a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of buffers containing the first <em class="parameter"><code>nbytes</code></em>
  bytes of the
 <em class="parameter"><code>adapter</code></em>
 . The returned bytes will be flushed from the adapter.
@@ -865,16 +872,62 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.15.7"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of buffers
-containing the first <em class="parameter"><code>nbytes</code></em>
-of the adapter, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
-bytes
-are not available. </p>
-<p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Buffer][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of
+buffers containing the first <em class="parameter"><code>nbytes</code></em>
+of the adapter, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
+bytes are not available. </p>
+<p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Buffer][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-adapter-take-buffer-list"></a><h3>gst_adapter_take_buffer_list ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBufferList.html"><span class="returnvalue">GstBufferList</span></a> *
+gst_adapter_take_buffer_list (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
+                              <em class="parameter"><code><span class="type">gsize</span> nbytes</code></em>);</pre>
+<p>Returns a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBufferList.html"><span class="type">GstBufferList</span></a> of buffers containing the first <em class="parameter"><code>nbytes</code></em>
+ bytes of
+the <em class="parameter"><code>adapter</code></em>
+. The returned bytes will be flushed from the adapter.
+When the caller can deal with individual buffers, this function is more
+performant because no memory should be copied.</p>
+<p>Caller owns the returned list. Call <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBufferList.html#gst-buffer-list-unref"><code class="function">gst_buffer_list_unref()</code></a> to free
+the list after usage.</p>
+<div class="refsect3">
+<a name="id-1.2.4.8.8.16.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>adapter</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>nbytes</p></td>
+<td class="parameter_description"><p>the number of bytes to take</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.4.8.8.16.7"></a><h4>Returns</h4>
+<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBufferList.html"><span class="type">GstBufferList</span></a> of buffers containing
+the first <em class="parameter"><code>nbytes</code></em>
+of the adapter, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>nbytes</code></em>
+bytes are not
+available. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-adapter-prev-pts"></a><h3>gst_adapter_prev_pts ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a>
 gst_adapter_prev_pts (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
@@ -888,7 +941,7 @@
 the first byte with a pts is removed from the adapter, the pts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</p>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.16.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.8.8.17.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -903,14 +956,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>distance</p></td>
-<td class="parameter_description"><p> pointer to location for distance, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to location for distance, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.16.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.8.8.17.7"></a><h4>Returns</h4>
 <p> The previously seen pts.</p>
 <p></p>
 </div>
@@ -930,7 +983,7 @@
 the first byte with a dts is removed from the adapter, the dts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</p>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.17.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.8.8.18.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -945,14 +998,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>distance</p></td>
-<td class="parameter_description"><p> pointer to location for distance, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to location for distance, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.17.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.8.8.18.7"></a><h4>Returns</h4>
 <p> The previously seen dts.</p>
 <p></p>
 </div>
@@ -974,56 +1027,6 @@
 the first byte with a pts is removed from the adapter, the pts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</p>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.18.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>adapter</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>offset</p></td>
-<td class="parameter_description"><p>the offset in the adapter at which to get timestamp</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>distance</p></td>
-<td class="parameter_description"><p> pointer to location for distance, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.4.8.8.18.7"></a><h4>Returns</h4>
-<p> The previously seen pts at given offset.</p>
-<p></p>
-</div>
-<p class="since">Since 1.2</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-adapter-prev-dts-at-offset"></a><h3>gst_adapter_prev_dts_at_offset ()</h3>
-<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a>
-gst_adapter_prev_dts_at_offset (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
-                                <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
-                                <em class="parameter"><code><span class="type">guint64</span> *distance</code></em>);</pre>
-<p>Get the dts that was before the byte at offset <em class="parameter"><code>offset</code></em>
- in the adapter. When
-<em class="parameter"><code>distance</code></em>
- is given, the amount of bytes between the dts and the current
-position is returned.</p>
-<p>The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when
-the adapter is first created or when it is cleared. This also means that before
-the first byte with a dts is removed from the adapter, the dts
-and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</p>
-<div class="refsect3">
 <a name="id-1.2.4.8.8.19.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -1044,14 +1047,64 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>distance</p></td>
-<td class="parameter_description"><p> pointer to location for distance, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> pointer to location for distance, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.8.8.19.7"></a><h4>Returns</h4>
+<p> The previously seen pts at given offset.</p>
+<p></p>
+</div>
+<p class="since">Since 1.2</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-adapter-prev-dts-at-offset"></a><h3>gst_adapter_prev_dts_at_offset ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a>
+gst_adapter_prev_dts_at_offset (<em class="parameter"><code><a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a> *adapter</code></em>,
+                                <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
+                                <em class="parameter"><code><span class="type">guint64</span> *distance</code></em>);</pre>
+<p>Get the dts that was before the byte at offset <em class="parameter"><code>offset</code></em>
+ in the adapter. When
+<em class="parameter"><code>distance</code></em>
+ is given, the amount of bytes between the dts and the current
+position is returned.</p>
+<p>The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when
+the adapter is first created or when it is cleared. This also means that before
+the first byte with a dts is removed from the adapter, the dts
+and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</p>
+<div class="refsect3">
+<a name="id-1.2.4.8.8.20.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>adapter</p></td>
+<td class="parameter_description"><p>a <a class="link" href="GstAdapter.html" title="GstAdapter"><span class="type">GstAdapter</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>offset</p></td>
+<td class="parameter_description"><p>the offset in the adapter at which to get timestamp</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>distance</p></td>
+<td class="parameter_description"><p> pointer to location for distance, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.4.8.8.20.7"></a><h4>Returns</h4>
 <p> The previously seen dts at given offset.</p>
 <p></p>
 </div>
@@ -1078,10 +1131,10 @@
 adapter for it to match, even if the first or last bytes are masked out.</p>
 <p>It is an error to call this function without making sure that there is
 enough data (offset+size bytes) in the adapter.</p>
-<p>This function calls <a class="link" href="GstAdapter.html#gst-adapter-masked-scan-uint32-peek" title="gst_adapter_masked_scan_uint32_peek ()"><code class="function">gst_adapter_masked_scan_uint32_peek()</code></a> passing <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<p>This function calls <a class="link" href="GstAdapter.html#gst-adapter-masked-scan-uint32-peek" title="gst_adapter_masked_scan_uint32_peek ()"><code class="function">gst_adapter_masked_scan_uint32_peek()</code></a> passing <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 for value.</p>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.20.8"></a><h4>Parameters</h4>
+<a name="id-1.2.4.8.8.21.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1120,7 +1173,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.20.9"></a><h4>Returns</h4>
+<a name="id-1.2.4.8.8.21.9"></a><h4>Returns</h4>
 <p> offset of the first match, or -1 if no match was found.</p>
 <p>Example:</p>
 <pre class="programlisting">
@@ -1169,7 +1222,7 @@
 <p>It is an error to call this function without making sure that there is
 enough data (offset+size bytes) in the adapter.</p>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.21.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.8.8.22.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1206,14 +1259,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>pointer to uint32 to return matching data</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> pointer to uint32 to return matching data. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.8.8.21.8"></a><h4>Returns</h4>
+<a name="id-1.2.4.8.8.22.8"></a><h4>Returns</h4>
 <p> offset of the first match, or -1 if no match was found.</p>
 <p></p>
 </div>
@@ -1230,6 +1283,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstBaseParse.html b/docs/libs/html/GstBaseParse.html
index 468d87f..56b69c7 100644
--- a/docs/libs/html/GstBaseParse.html
+++ b/docs/libs/html/GstBaseParse.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="next" href="GstBaseSrc.html" title="GstBaseSrc">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBaseParse.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstBaseParse.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBaseParse.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstBaseParse.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstBaseParse.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -131,7 +131,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseParse.html#gst-base-parse-convert-default" title="gst_base_parse_convert_default ()">gst_base_parse_convert_default</a> <span class="c_punctuation">()</span>
@@ -139,7 +139,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseParse.html#gst-base-parse-add-index-entry" title="gst_base_parse_add_index_entry ()">gst_base_parse_add_index_entry</a> <span class="c_punctuation">()</span>
@@ -229,7 +229,7 @@
 <col width="200px" class="properties_flags">
 </colgroup>
 <tbody><tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseParse.html#GstBaseParse--disable-passthrough" title="The “disable-passthrough” property">disable-passthrough</a></td>
 <td class="property_flags">Read / Write</td>
 </tr></tbody>
@@ -268,8 +268,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBaseParse.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstBaseParse
@@ -395,9 +395,9 @@
 needs to set the fixed caps on srcpad, when the format is ensured (e.g.
 when base class calls subclass' <em class="parameter"><code>set_sink_caps</code></em>
  function).</p>
-<p>This base class uses <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-DEFAULT:CAPS"><code class="literal">GST_FORMAT_DEFAULT</code></a> as a meaning of frames. So,
+<p>This base class uses <code class="literal">GST_FORMAT_DEFAULT</code> as a meaning of frames. So,
 subclass conversion routine needs to know that conversion from
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><code class="literal">GST_FORMAT_TIME</code></a> to <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-DEFAULT:CAPS"><code class="literal">GST_FORMAT_DEFAULT</code></a> must return the
+<code class="literal">GST_FORMAT_TIME</code> to <code class="literal">GST_FORMAT_DEFAULT</code> must return the
 frame number that can be found from the given byte position.</p>
 <p><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> uses subclasses conversion methods also for seeking (or
 otherwise uses its own default one, see also below).</p>
@@ -453,7 +453,7 @@
 gst_base_parse_set_duration (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
                              <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GstFormat"><span class="type">GstFormat</span></a> fmt</code></em>,
                              <em class="parameter"><code><span class="type">gint64</span> duration</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> interval</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> interval</code></em>);</pre>
 <p>Sets the duration of the currently playing media. Subclass can use this
 when it is able to determine duration and/or notices a change in the media
 duration.  Alternatively, if <em class="parameter"><code>interval</code></em>
@@ -499,7 +499,7 @@
 <a name="gst-base-parse-set-average-bitrate"></a><h3>gst_base_parse_set_average_bitrate ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_average_bitrate (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> bitrate</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> bitrate</code></em>);</pre>
 <p>Optionally sets the average bitrate detected in media (if non-zero),
 e.g. based on metadata, as it will be posted to the application.</p>
 <p>By default, announced average bitrate is estimated. The average bitrate
@@ -534,7 +534,7 @@
 <a name="gst-base-parse-set-min-frame-size"></a><h3>gst_base_parse_set_min_frame_size ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_min_frame_size (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_size</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> min_size</code></em>);</pre>
 <p>Subclass can use this function to tell the base class that it needs to
 give at least <span class="type">min_size</span> buffers.</p>
 <div class="refsect3">
@@ -566,7 +566,7 @@
 <a name="gst-base-parse-set-passthrough"></a><h3>gst_base_parse_set_passthrough ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_passthrough (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> passthrough</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> passthrough</code></em>);</pre>
 <p>Set if the nature of the format or configuration does not allow (much)
 parsing, and the parser should operate in passthrough mode (which only
 applies when operating in push mode). That is, incoming buffers are
@@ -594,7 +594,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>passthrough</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parser should run in passthrough mode</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parser should run in passthrough mode</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -606,7 +606,7 @@
 <a name="gst-base-parse-set-syncable"></a><h3>gst_base_parse_set_syncable ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_syncable (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> syncable</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> syncable</code></em>);</pre>
 <p>Set if frame starts can be identified. This is set by default and
 determines whether seeking based on bitrate averages
 is possible for a format/stream.</p>
@@ -638,7 +638,7 @@
 <a name="gst-base-parse-set-has-timing-info"></a><h3>gst_base_parse_set_has_timing_info ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_has_timing_info (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> has_timing</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> has_timing</code></em>);</pre>
 <p>Set if frames carry timing information which the subclass can (generally)
 parse and provide.  In particular, intrinsic (rather than estimated) time
 can be obtained following a seek.</p>
@@ -670,10 +670,10 @@
 <a name="gst-base-parse-set-frame-rate"></a><h3>gst_base_parse_set_frame_rate ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_frame_rate (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_num</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_den</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> lead_in</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> lead_out</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_num</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_den</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> lead_in</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> lead_out</code></em>);</pre>
 <p>If frames per second is configured, parser can take care of buffer duration
 and timestamping.  When performing segment clipping, or seeking to a specific
 location, a corresponding decoder might need an initial <em class="parameter"><code>lead_in</code></em>
@@ -762,7 +762,7 @@
 <a name="gst-base-parse-set-infer-ts"></a><h3>gst_base_parse_set_infer_ts ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_infer_ts (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> infer_ts</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> infer_ts</code></em>);</pre>
 <p>By default, the base class might try to infer PTS from DTS and vice
 versa.  While this is generally correct for audio data, it may not
 be otherwise. Sub-classes implementing such formats should disable
@@ -783,7 +783,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>infer_ts</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parser should infer DTS/PTS from each other</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parser should infer DTS/PTS from each other</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -795,7 +795,7 @@
 <a name="gst-base-parse-set-pts-interpolation"></a><h3>gst_base_parse_set_pts_interpolation ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_parse_set_pts_interpolation (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> pts_interpolate</code></em>);</pre>
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> pts_interpolate</code></em>);</pre>
 <p>By default, the base class will guess PTS timestamps using a simple
 interpolation (previous timestamp + duration), which is incorrect for
 data streams with reordering, where PTS can go backward. Sub-classes
@@ -816,7 +816,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>pts_interpolate</p></td>
-<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parser should interpolate PTS timestamps</p></td>
+<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parser should interpolate PTS timestamps</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -864,7 +864,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-parse-convert-default"></a><h3>gst_base_parse_convert_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_parse_convert_default (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
                                 <em class="parameter"><code><span class="type">gint64</span> src_value</code></em>,
@@ -910,19 +910,19 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.3.9.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if conversion was successful.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if conversion was successful.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-base-parse-add-index-entry"></a><h3>gst_base_parse_add_index_entry ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_parse_add_index_entry (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
                                 <em class="parameter"><code><span class="type">guint64</span> offset</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> ts</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> key</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> force</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> key</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> force</code></em>);</pre>
 <p>Adds an entry to the index associating <em class="parameter"><code>offset</code></em>
  to <em class="parameter"><code>ts</code></em>
 .  It is recommended
@@ -969,7 +969,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.3.9.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating whether entry was added</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> indicating whether entry was added</p>
 <p></p>
 </div>
 </div>
@@ -979,7 +979,7 @@
 <pre class="programlisting"><a class="link" href="GstBaseParse.html#GstBaseParseFrame" title="GstBaseParseFrame"><span class="returnvalue">GstBaseParseFrame</span></a> *
 gst_base_parse_frame_new (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                           <em class="parameter"><code><a class="link" href="GstBaseParse.html#GstBaseParseFrameFlags" title="enum GstBaseParseFrameFlags"><span class="type">GstBaseParseFrameFlags</span></a> flags</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> overhead</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> overhead</code></em>);</pre>
 <p>Allocates a new <a class="link" href="GstBaseParse.html#GstBaseParseFrame" title="GstBaseParseFrame"><span class="type">GstBaseParseFrame</span></a>. This function is mainly for bindings,
 elements written in C should usually allocate the frame on the stack and
 then use <a class="link" href="GstBaseParse.html#gst-base-parse-frame-init" title="gst_base_parse_frame_init ()"><code class="function">gst_base_parse_frame_init()</code></a> to initialise it.</p>
@@ -1096,7 +1096,7 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>
 gst_base_parse_finish_frame (<em class="parameter"><code><a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> *parse</code></em>,
                              <em class="parameter"><code><a class="link" href="GstBaseParse.html#GstBaseParseFrame" title="GstBaseParseFrame"><span class="type">GstBaseParseFrame</span></a> *frame</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> size</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> size</code></em>);</pre>
 <p>Collects parsed data and pushes this downstream.
 Source pad caps must be set when this is called.</p>
 <p>If <em class="parameter"><code>frame</code></em>
@@ -1311,10 +1311,8 @@
 };
 </pre>
 <p>Subclasses can override any of the available virtual methods or not, as
-needed. At minimum <em class="parameter"><code>check_valid_frame</code></em>
- and <em class="parameter"><code>parse_frame</code></em>
- needs to be
-overridden.</p>
+needed. At minimum <em class="parameter"><code>handle_frame</code></em>
+ needs to be overridden.</p>
 <div class="refsect3">
 <a name="id-1.2.4.3.10.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1345,7 +1343,8 @@
 </tr>
 <tr>
 <td class="struct_member_name"><p><em class="structfield"><code><a name="GstBaseParseClass.set-sink-caps"></a>set_sink_caps</code></em> ()</p></td>
-<td class="struct_member_description"><p>allows the subclass to be notified of the actual caps set.</p></td>
+<td class="struct_member_description"><p>Optional.
+Allows the subclass to be notified of the actual caps set.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
@@ -1395,7 +1394,8 @@
 </tr>
 <tr>
 <td class="struct_member_name"><p><em class="structfield"><code><a name="GstBaseParseClass.get-sink-caps"></a>get_sink_caps</code></em> ()</p></td>
-<td class="struct_member_description"><p>allows the subclass to do its own sink get caps if needed.</p></td>
+<td class="struct_member_description"><p>Optional.
+Allows the subclass to do its own sink get caps if needed.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
@@ -1463,7 +1463,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBaseParseFrame.flags"></a>flags</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBaseParseFrame.flags"></a>flags</code></em>;</p></td>
 <td class="struct_member_description"><p>a combination of input and output <a class="link" href="GstBaseParse.html#GstBaseParseFrameFlags" title="enum GstBaseParseFrameFlags"><span class="type">GstBaseParseFrameFlags</span></a> that
 convey additional context to subclass or allow subclass to tune
 subsequent <a class="link" href="GstBaseParse.html" title="GstBaseParse"><span class="type">GstBaseParse</span></a> actions.</p></td>
@@ -1476,7 +1476,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstBaseParseFrame.overhead"></a>overhead</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstBaseParseFrame.overhead"></a>overhead</code></em>;</p></td>
 <td class="struct_member_description"><p>subclass can set this to indicates the metadata overhead
 for the given frame, which is then used to enable more accurate bitrate
 computations. If this is -1, it is assumed that this frame should be
@@ -1573,12 +1573,12 @@
 <a name="GstBaseParse.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstBaseParse--disable-passthrough"></a><h3>The <code class="literal">“disable-passthrough”</code> property</h3>
-<pre class="programlisting">  “disable-passthrough”      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, baseparse will unconditionally force parsing of the
+<pre class="programlisting">  “disable-passthrough”      <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, baseparse will unconditionally force parsing of the
 incoming data. This can be required in the rare cases where the incoming
 side-data (caps, pts, dts, ...) is not trusted by the user and wants to
 force validation and parsing of the incoming data.
-If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, decision of whether to parse the data or not is up to
+If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, decision of whether to parse the data or not is up to
 the implementation (standard behaviour).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -1591,6 +1591,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstBaseSink.html b/docs/libs/html/GstBaseSink.html
index d8ed1a6..e1537c8 100644
--- a/docs/libs/html/GstBaseSink.html
+++ b/docs/libs/html/GstBaseSink.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstBaseSrc.html" title="GstBaseSrc">
 <link rel="next" href="GstBaseTransform.html" title="GstBaseTransform">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBaseSink.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstBaseSink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBaseSink.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstBaseSink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstBaseSink.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,7 +43,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSink.html#gst-base-sink-query-latency" title="gst_base_sink_query_latency ()">gst_base_sink_query_latency</a> <span class="c_punctuation">()</span>
@@ -99,7 +99,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSink.html#gst-base-sink-get-sync" title="gst_base_sink_get_sync ()">gst_base_sink_get_sync</a> <span class="c_punctuation">()</span>
@@ -131,7 +131,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSink.html#gst-base-sink-is-qos-enabled" title="gst_base_sink_is_qos_enabled ()">gst_base_sink_is_qos_enabled</a> <span class="c_punctuation">()</span>
@@ -147,7 +147,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSink.html#gst-base-sink-is-async-enabled" title="gst_base_sink_is_async_enabled ()">gst_base_sink_is_async_enabled</a> <span class="c_punctuation">()</span>
@@ -203,7 +203,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSink.html#gst-base-sink-get-blocksize" title="gst_base_sink_get_blocksize ()">gst_base_sink_get_blocksize</a> <span class="c_punctuation">()</span>
@@ -251,7 +251,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSink.html#gst-base-sink-is-last-sample-enabled" title="gst_base_sink_is_last_sample_enabled ()">gst_base_sink_is_last_sample_enabled</a> <span class="c_punctuation">()</span>
@@ -330,17 +330,17 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSink.html#GstBaseSink--async" title="The “async” property">async</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSink.html#GstBaseSink--blocksize" title="The “blocksize” property">blocksize</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSink.html#GstBaseSink--enable-last-sample" title="The “enable-last-sample” property">enable-last-sample</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -361,7 +361,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSink.html#GstBaseSink--qos" title="The “qos” property">qos</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -371,7 +371,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSink.html#GstBaseSink--sync" title="The “sync” property">sync</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -409,8 +409,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBaseSink.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstBaseSink
@@ -477,7 +477,7 @@
 
 <p></p>
 <p><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> will handle the prerolling correctly. This means that it will
-return <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a> from a state change to PAUSED until the first
+return <code class="literal">GST_STATE_CHANGE_ASYNC</code> from a state change to PAUSED until the first
 buffer arrives in this element. The base class will call the
 <a class="link" href="GstBaseSink.html#GstBaseSinkClass.preroll"><code class="function">GstBaseSinkClass.preroll()</code></a> vmethod with this preroll buffer and will then
 commit the state change to the next asynchronously pending state.</p>
@@ -485,7 +485,7 @@
 clock using the times returned from <a class="link" href="GstBaseSink.html#GstBaseSinkClass.get-times"><code class="function">GstBaseSinkClass.get_times()</code></a>. If this
 function returns <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-TIME-NONE:CAPS"><code class="literal">GST_CLOCK_TIME_NONE</code></a> for the start time, no synchronisation
 will be done. Synchronisation can be disabled entirely by setting the object
-<a class="link" href="GstBaseSink.html#GstBaseSink--sync" title="The “sync” property"><span class="type">“sync”</span></a> property to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a class="link" href="GstBaseSink.html#GstBaseSink--sync" title="The “sync” property"><span class="type">“sync”</span></a> property to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p>After synchronisation the virtual method <a class="link" href="GstBaseSink.html#GstBaseSinkClass.render"><code class="function">GstBaseSinkClass.render()</code></a> will be
 called. Subclasses should minimally implement this method.</p>
 <p>Subclasses that synchronise on the clock in the <a class="link" href="GstBaseSink.html#GstBaseSinkClass.render"><code class="function">GstBaseSinkClass.render()</code></a>
@@ -505,7 +505,7 @@
 segment are rendered (and prerolled). Subclasses should do any subbuffer
 clipping themselves when needed.</p>
 <p><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> will by default report the current playback position in
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><code class="literal">GST_FORMAT_TIME</code></a> based on the current clock time and segment information.
+<code class="literal">GST_FORMAT_TIME</code> based on the current clock time and segment information.
 If no clock has been set on the element, the query will be forwarded
 upstream.</p>
 <p>The <a class="link" href="GstBaseSink.html#GstBaseSinkClass.set-caps"><code class="function">GstBaseSinkClass.set_caps()</code></a> function will be called when the subclass
@@ -550,22 +550,22 @@
 <a name="GstBaseSink.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-base-sink-query-latency"></a><h3>gst_base_sink_query_latency ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_sink_query_latency (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *upstream_live</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *upstream_live</code></em>,
                              <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>,
                              <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>);</pre>
 <p>Query the sink for the latency parameters. The latency will be queried from
 the upstream elements. <em class="parameter"><code>live</code></em>
- will be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>sink</code></em>
+ will be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>sink</code></em>
  is configured to
 synchronize against the clock. <em class="parameter"><code>upstream_live</code></em>
- will be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an upstream
+ will be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an upstream
 element is live.</p>
 <p>If both <em class="parameter"><code>live</code></em>
  and <em class="parameter"><code>upstream_live</code></em>
- are <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the sink will want to compensate
+ are <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the sink will want to compensate
 for the latency introduced by the upstream elements by setting the
 <em class="parameter"><code>min_latency</code></em>
  to a strictly positive value.</p>
@@ -587,29 +587,29 @@
 <tr>
 <td class="parameter_name"><p>live</p></td>
 <td class="parameter_description"><p> if the sink is live. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>upstream_live</p></td>
 <td class="parameter_description"><p> if an upstream element is live. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>min_latency</p></td>
 <td class="parameter_description"><p> the min latency of the upstream elements. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>max_latency</p></td>
 <td class="parameter_description"><p> the max latency of the upstream elements. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.2.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query succeeded.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query succeeded.</p>
 <p></p>
 </div>
 </div>
@@ -676,7 +676,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.4.7"></a><h4>Returns</h4>
-<p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> if the preroll completed and processing can
+<p> <code class="literal">GST_FLOW_OK</code> if the preroll completed and processing can
 continue. Any other return value should be returned from the render vmethod.</p>
 <p></p>
 </div>
@@ -720,8 +720,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>jitter</p></td>
-<td class="parameter_description"><p> the jitter to be filled with time diff, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the jitter to be filled with time diff, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -741,7 +741,7 @@
 against the clock it must unblock when going from PLAYING to the PAUSED state
 and call this method before continuing to render the remaining data.</p>
 <p>This function will block until a state change to PLAYING happens (in which
-case this function returns <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a>) or the processing must be stopped due
+case this function returns <code class="literal">GST_FLOW_OK</code>) or the processing must be stopped due
 to a state change to READY or a FLUSH event (in which case this function
 returns <code class="literal">GST_FLOW_FLUSHING</code>).</p>
 <p>This function should only be called with the PREROLL_LOCK held, like in the
@@ -763,7 +763,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.6.8"></a><h4>Returns</h4>
-<p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> if the preroll completed and processing can
+<p> <code class="literal">GST_FLOW_OK</code> if the preroll completed and processing can
 continue. Any other return value should be returned from the render vmethod.</p>
 <p></p>
 </div>
@@ -779,9 +779,9 @@
  is reached. It is usually called by
 subclasses that use their own internal synchronisation.</p>
 <p>If <em class="parameter"><code>time</code></em>
- is not valid, no synchronisation is done and <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-BADTIME:CAPS"><code class="literal">GST_CLOCK_BADTIME</code></a> is
+ is not valid, no synchronisation is done and <code class="literal">GST_CLOCK_BADTIME</code> is
 returned. Likewise, if synchronisation is disabled in the element or there
-is no clock, no synchronisation is done and <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-BADTIME:CAPS"><code class="literal">GST_CLOCK_BADTIME</code></a> is returned.</p>
+is no clock, no synchronisation is done and <code class="literal">GST_CLOCK_BADTIME</code> is returned.</p>
 <p>This function should only be called with the PREROLL_LOCK held, like when
 receiving an EOS event in the <a class="link" href="GstBaseSink.html#GstBaseSinkClass.event"><code class="function">GstBaseSinkClass.event()</code></a> vmethod or when
 receiving a buffer in
@@ -811,8 +811,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>jitter</p></td>
-<td class="parameter_description"><p> the jitter to be filled with time diff, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the jitter to be filled with time diff, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -828,13 +828,13 @@
 <a name="gst-base-sink-set-sync"></a><h3>gst_base_sink_set_sync ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_sink_set_sync (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sync</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sync</code></em>);</pre>
 <p>Configures <em class="parameter"><code>sink</code></em>
  to synchronize on the clock or not. When
 <em class="parameter"><code>sync</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, incoming samples will be played as fast as
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, incoming samples will be played as fast as
 possible. If <em class="parameter"><code>sync</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the timestamps of the incoming
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the timestamps of the incoming
 buffers will be used to schedule the exact render time of its
 contents.</p>
 <div class="refsect3">
@@ -863,7 +863,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-sink-get-sync"></a><h3>gst_base_sink_get_sync ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_sink_get_sync (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>sink</code></em>
  is currently configured to synchronize against the
@@ -885,7 +885,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to synchronize against the clock.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to synchronize against the clock.</p>
 <p></p>
 </div>
 </div>
@@ -958,7 +958,7 @@
 <a name="gst-base-sink-set-qos-enabled"></a><h3>gst_base_sink_set_qos_enabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_sink_set_qos_enabled (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
 <p>Configures <em class="parameter"><code>sink</code></em>
  to send Quality-of-Service events upstream.</p>
 <div class="refsect3">
@@ -987,7 +987,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-sink-is-qos-enabled"></a><h3>gst_base_sink_is_qos_enabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_sink_is_qos_enabled (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>sink</code></em>
  is currently configured to send Quality-of-Service events
@@ -1009,7 +1009,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to perform Quality-of-Service.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to perform Quality-of-Service.</p>
 <p></p>
 </div>
 </div>
@@ -1018,7 +1018,7 @@
 <a name="gst-base-sink-set-async-enabled"></a><h3>gst_base_sink_set_async_enabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_sink_set_async_enabled (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
 <p>Configures <em class="parameter"><code>sink</code></em>
  to perform all state changes asynchronously. When async is
 disabled, the sink will immediately go to PAUSED instead of waiting for a
@@ -1050,7 +1050,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-sink-is-async-enabled"></a><h3>gst_base_sink_is_async_enabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_sink_is_async_enabled (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>sink</code></em>
  is currently configured to perform asynchronous state
@@ -1072,7 +1072,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to perform asynchronous state
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to perform asynchronous state
 changes.</p>
 <p></p>
 </div>
@@ -1234,10 +1234,10 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.20.8"></a><h4>Returns</h4>
-<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="type">GstSample</span></a>. <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html#gst-sample-unref"><code class="function">gst_sample_unref()</code></a> after usage.
-This function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when no buffer has arrived in the sink yet
-or when the sink is not in PAUSED or PLAYING. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="type">GstSample</span></a>. <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html#gst-sample-unref"><code class="function">gst_sample_unref()</code></a> after
+usage.  This function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when no buffer has arrived in the
+sink yet or when the sink is not in PAUSED or PLAYING. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -1245,7 +1245,7 @@
 <a name="gst-base-sink-set-blocksize"></a><h3>gst_base_sink_set_blocksize ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_sink_set_blocksize (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> blocksize</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> blocksize</code></em>);</pre>
 <p>Set the number of bytes that the sink will pull when it is operating in pull
 mode.</p>
 <div class="refsect3">
@@ -1274,7 +1274,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-sink-get-blocksize"></a><h3>gst_base_sink_get_blocksize ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_base_sink_get_blocksize (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre>
 <p>Get the number of bytes that the sink will pull when it is operating in pull
 mode.</p>
@@ -1426,7 +1426,7 @@
 <a name="gst-base-sink-set-last-sample-enabled"></a><h3>gst_base_sink_set_last_sample_enabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_sink_set_last_sample_enabled (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
 <p>Configures <em class="parameter"><code>sink</code></em>
  to store the last received sample in the last-sample
 property.</p>
@@ -1456,7 +1456,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-sink-is-last-sample-enabled"></a><h3>gst_base_sink_is_last_sample_enabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_sink_is_last_sample_enabled (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre>
 <p>Checks if <em class="parameter"><code>sink</code></em>
  is currently configured to store the last received sample in
@@ -1478,7 +1478,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.5.9.28.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to store the last received sample.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the sink is configured to store the last received sample.</p>
 <p></p>
 </div>
 </div>
@@ -1753,9 +1753,9 @@
 <a name="GstBaseSink.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstBaseSink--async"></a><h3>The <code class="literal">“async”</code> property</h3>
-<pre class="programlisting">  “async”                    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the basesink will perform asynchronous state changes.
-When set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the sink will not signal the parent when it prerolls.
+<pre class="programlisting">  “async”                    <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the basesink will perform asynchronous state changes.
+When set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the sink will not signal the parent when it prerolls.
 Use this option when dealing with sparse streams or when synchronisation is
 not required.</p>
 <p>Flags: Read / Write</p>
@@ -1764,7 +1764,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSink--blocksize"></a><h3>The <code class="literal">“blocksize”</code> property</h3>
-<pre class="programlisting">  “blocksize”                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “blocksize”                <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>The amount of bytes to pull when operating in pull mode.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 4096</p>
@@ -1772,10 +1772,10 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSink--enable-last-sample"></a><h3>The <code class="literal">“enable-last-sample”</code> property</h3>
-<pre class="programlisting">  “enable-last-sample”       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>Enable the last-sample property. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, basesink doesn't keep a
+<pre class="programlisting">  “enable-last-sample”       <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>Enable the last-sample property. If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, basesink doesn't keep a
 reference to the last buffer arrived and the last-sample property is always
-set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. This can be useful if you need buffers to be released as soon
+set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. This can be useful if you need buffers to be released as soon
 as possible, eg. if you're using a buffer pool.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -1786,7 +1786,7 @@
 <pre class="programlisting">  “last-sample”              <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="type">GstSample</span></a> *</pre>
 <p>The last buffer that arrived in the sink and was used for preroll or for
 rendering. This property can be used to generate thumbnails. This property
-can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the sink has not yet received a buffer.</p>
+can be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when the sink has not yet received a buffer.</p>
 <p>Flags: Read</p>
 </div>
 <hr>
@@ -1812,7 +1812,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSink--qos"></a><h3>The <code class="literal">“qos”</code> property</h3>
-<pre class="programlisting">  “qos”                      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “qos”                      <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Generate Quality-of-Service events upstream.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -1830,7 +1830,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSink--sync"></a><h3>The <code class="literal">“sync”</code> property</h3>
-<pre class="programlisting">  “sync”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “sync”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Sync on the clock.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -1863,6 +1863,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstBaseSrc.html b/docs/libs/html/GstBaseSrc.html
index bbc80e1..abc8847 100644
--- a/docs/libs/html/GstBaseSrc.html
+++ b/docs/libs/html/GstBaseSrc.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstBaseParse.html" title="GstBaseParse">
 <link rel="next" href="GstBaseSink.html" title="GstBaseSink">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBaseSrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstBaseSrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBaseSrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstBaseSrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstBaseSrc.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -67,7 +67,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-is-live" title="gst_base_src_is_live ()">gst_base_src_is_live</a> <span class="c_punctuation">()</span>
@@ -91,7 +91,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-query-latency" title="gst_base_src_query_latency ()">gst_base_src_query_latency</a> <span class="c_punctuation">()</span>
@@ -99,7 +99,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-get-blocksize" title="gst_base_src_get_blocksize ()">gst_base_src_get_blocksize</a> <span class="c_punctuation">()</span>
@@ -115,7 +115,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-get-do-timestamp" title="gst_base_src_get_do_timestamp ()">gst_base_src_get_do_timestamp</a> <span class="c_punctuation">()</span>
@@ -147,7 +147,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-new-seamless-segment" title="gst_base_src_new_seamless_segment ()">gst_base_src_new_seamless_segment</a> <span class="c_punctuation">()</span>
@@ -155,7 +155,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-set-caps" title="gst_base_src_set_caps ()">gst_base_src_set_caps</a> <span class="c_punctuation">()</span>
@@ -179,7 +179,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseSrc.html#gst-base-src-is-async" title="gst_base_src_is_async ()">gst_base_src_is_async</a> <span class="c_punctuation">()</span>
@@ -224,22 +224,22 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSrc.html#GstBaseSrc--blocksize" title="The “blocksize” property">blocksize</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSrc.html#GstBaseSrc--do-timestamp" title="The “do-timestamp” property">do-timestamp</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSrc.html#GstBaseSrc--num-buffers" title="The “num-buffers” property">num-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseSrc.html#GstBaseSrc--typefind" title="The “typefind” property">typefind</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -271,8 +271,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBaseSrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstBaseSrc
@@ -296,20 +296,20 @@
 <p>The source can be configured to operate in any <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GstFormat"><span class="type">GstFormat</span></a> with the
 <a class="link" href="GstBaseSrc.html#gst-base-src-set-format" title="gst_base_src_set_format ()"><code class="function">gst_base_src_set_format()</code></a> method. The currently set format determines
 the format of the internal <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSegment.html"><span class="type">GstSegment</span></a> and any <code class="literal">GST_EVENT_SEGMENT</code>
-events. The default format for <a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> is <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-BYTES:CAPS"><code class="literal">GST_FORMAT_BYTES</code></a>.</p>
+events. The default format for <a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> is <code class="literal">GST_FORMAT_BYTES</code>.</p>
 <p><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> always supports push mode scheduling. If the following
 conditions are met, it also supports pull mode scheduling:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
-<li class="listitem"><p>The format is set to <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-BYTES:CAPS"><code class="literal">GST_FORMAT_BYTES</code></a> (default).</p></li>
-<li class="listitem"><p><a class="link" href="GstBaseSrc.html#GstBaseSrcClass.is-seekable"><code class="function">GstBaseSrcClass.is_seekable()</code></a> returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p></li>
+<li class="listitem"><p>The format is set to <code class="literal">GST_FORMAT_BYTES</code> (default).</p></li>
+<li class="listitem"><p><a class="link" href="GstBaseSrc.html#GstBaseSrcClass.is-seekable"><code class="function">GstBaseSrcClass.is_seekable()</code></a> returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p></li>
 </ul></div>
 <p>If all the conditions are met for operating in pull mode, <a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> is
 automatically seekable in push mode as well. The following conditions must
 be met to make the element seekable in push mode when the format is not
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-BYTES:CAPS"><code class="literal">GST_FORMAT_BYTES</code></a>:</p>
+<code class="literal">GST_FORMAT_BYTES</code>:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
 <li class="listitem"><p>
-    <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.is-seekable"><code class="function">GstBaseSrcClass.is_seekable()</code></a> returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
+    <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.is-seekable"><code class="function">GstBaseSrcClass.is_seekable()</code></a> returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
   </p></li>
 <li class="listitem"><p>
     <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.query"><code class="function">GstBaseSrcClass.query()</code></a> can convert all supported seek formats to the
@@ -317,7 +317,7 @@
   </p></li>
 <li class="listitem"><p>
     <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.do-seek"><code class="function">GstBaseSrcClass.do_seek()</code></a> is implemented, performs the seek and returns
-     <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
+     <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
   </p></li>
 </ul></div>
 <p>When the element does not meet the requirements to operate in pull mode, the
@@ -335,7 +335,7 @@
 <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.create"><code class="function">GstBaseSrcClass.create()</code></a> method will not be called in PAUSED but only in
 PLAYING. To signal the pipeline that the element will not produce data, the
 return value from the READY to PAUSED state will be
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-CHANGE-NO-PREROLL:CAPS"><code class="literal">GST_STATE_CHANGE_NO_PREROLL</code></a>.</p>
+<code class="literal">GST_STATE_CHANGE_NO_PREROLL</code>.</p>
 <p>A typical live source will timestamp the buffers it creates with the
 current running time of the pipeline. This is one reason why a live source
 can only produce data in the PLAYING state, when the clock is actually
@@ -414,7 +414,7 @@
 
 An application may send an EOS event to a source element to make it
 perform the EOS logic (send EOS event downstream or post a
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GST-MESSAGE-SEGMENT-DONE:CAPS"><code class="literal">GST_MESSAGE_SEGMENT_DONE</code></a> on the bus). This can typically be done
+<code class="literal">GST_MESSAGE_SEGMENT_DONE</code> on the bus). This can typically be done
 with the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-send-event"><code class="function">gst_element_send_event()</code></a> function on the element or its parent bin.
 
 After the EOS has been sent to the element, the application should wait for
@@ -433,7 +433,7 @@
 against the clock it must unblock when going from PLAYING to the PAUSED state
 and call this method before continuing to produce the remaining data.</p>
 <p>This function will block until a state change to PLAYING happens (in which
-case this function returns <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a>) or the processing must be stopped due
+case this function returns <code class="literal">GST_FLOW_OK</code>) or the processing must be stopped due
 to a state change to READY or a FLUSH event (in which case this function
 returns <code class="literal">GST_FLOW_FLUSHING</code>).</p>
 <div class="refsect3">
@@ -453,7 +453,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.2.7"></a><h4>Returns</h4>
-<p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> if <em class="parameter"><code>src</code></em>
+<p> <code class="literal">GST_FLOW_OK</code> if <em class="parameter"><code>src</code></em>
 is PLAYING and processing can
 continue. Any other return value should be returned from the create vmethod.</p>
 <p></p>
@@ -522,7 +522,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-is-live"></a><h3>gst_base_src_is_live ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_src_is_live (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>);</pre>
 <p>Check if an element is in live mode.</p>
 <div class="refsect3">
@@ -542,7 +542,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if element is in live mode.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if element is in live mode.</p>
 <p></p>
 </div>
 </div>
@@ -551,10 +551,10 @@
 <a name="gst-base-src-set-live"></a><h3>gst_base_src_set_live ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_src_set_live (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> live</code></em>);</pre>
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> live</code></em>);</pre>
 <p>If the element listens to a live source, <em class="parameter"><code>live</code></em>
  should
-be set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+be set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
 <p>A live source will not produce data in the PAUSED state and
 will therefore not be able to participate in the PREROLL phase
 of a pipeline. To signal this fact to the application and the
@@ -592,8 +592,8 @@
 <p>Sets the default format of the source. This will be the format used
 for sending SEGMENT events and for performing seeks.</p>
 <p>If a format of GST_FORMAT_BYTES is set, the element will be able to
-operate in pull mode if the <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.is-seekable"><code class="function">GstBaseSrcClass.is_seekable()</code></a> returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
-<p>This function must only be called in states &lt; <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-PAUSED:CAPS"><code class="literal">GST_STATE_PAUSED</code></a>.</p>
+operate in pull mode if the <a class="link" href="GstBaseSrc.html#GstBaseSrcClass.is-seekable"><code class="function">GstBaseSrcClass.is_seekable()</code></a> returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
+<p>This function must only be called in states &lt; <code class="literal">GST_STATE_PAUSED</code>.</p>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.7.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -620,19 +620,19 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-query-latency"></a><h3>gst_base_src_query_latency ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_src_query_latency (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
                             <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>,
                             <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>);</pre>
 <p>Query the source for the latency parameters. <em class="parameter"><code>live</code></em>
- will be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>src</code></em>
+ will be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when <em class="parameter"><code>src</code></em>
  is
 configured as a live source. <em class="parameter"><code>min_latency</code></em>
- will be set to the difference
-between the running time and the timestamp of the first buffer.
-<em class="parameter"><code>max_latency</code></em>
- is always the undefined value of -1.</p>
+ and <em class="parameter"><code>max_latency</code></em>
+ will be set
+to the difference between the running time and the timestamp of the first
+buffer.</p>
 <p>This function is mostly used by subclasses.</p>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.8.6"></a><h4>Parameters</h4>
@@ -651,31 +651,31 @@
 <tr>
 <td class="parameter_name"><p>live</p></td>
 <td class="parameter_description"><p> if the source is live. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>min_latency</p></td>
 <td class="parameter_description"><p> the min latency of the source. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>max_latency</p></td>
 <td class="parameter_description"><p> the max latency of the source. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.8.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query succeeded.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query succeeded.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-get-blocksize"></a><h3>gst_base_src_get_blocksize ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_base_src_get_blocksize (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>);</pre>
 <p>Get the number of bytes that <em class="parameter"><code>src</code></em>
  will push out with each buffer.</p>
@@ -705,7 +705,7 @@
 <a name="gst-base-src-set-blocksize"></a><h3>gst_base_src_set_blocksize ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_src_set_blocksize (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                            <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> blocksize</code></em>);</pre>
+                            <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> blocksize</code></em>);</pre>
 <p>Set the number of bytes that <em class="parameter"><code>src</code></em>
  will push out with each buffer. When
 <em class="parameter"><code>blocksize</code></em>
@@ -736,7 +736,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-get-do-timestamp"></a><h3>gst_base_src_get_do_timestamp ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_src_get_do_timestamp (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>);</pre>
 <p>Query if <em class="parameter"><code>src</code></em>
  timestamps outgoing buffers based on the current running_time.</p>
@@ -757,7 +757,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.11.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the base class will automatically timestamp outgoing buffers.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the base class will automatically timestamp outgoing buffers.</p>
 <p></p>
 </div>
 </div>
@@ -766,7 +766,7 @@
 <a name="gst-base-src-set-do-timestamp"></a><h3>gst_base_src_set_do_timestamp ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_src_set_do_timestamp (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> timestamp</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> timestamp</code></em>);</pre>
 <p>Configure <em class="parameter"><code>src</code></em>
  to automatically timestamp outgoing buffers based on the
 current running_time of the pipeline. This property is mostly useful for live
@@ -799,7 +799,7 @@
 <a name="gst-base-src-set-dynamic-size"></a><h3>gst_base_src_set_dynamic_size ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_src_set_dynamic_size (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> dynamic</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> dynamic</code></em>);</pre>
 <p>If not <em class="parameter"><code>dynamic</code></em>
 , size is only updated when needed, such as when trying to
 read past current tracked size.  Otherwise, size is checked for upon each
@@ -832,12 +832,13 @@
 <a name="gst-base-src-set-automatic-eos"></a><h3>gst_base_src_set_automatic_eos ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_src_set_automatic_eos (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> automatic_eos</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> automatic_eos</code></em>);</pre>
 <p>If <em class="parameter"><code>automatic_eos</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, basesrc will automatically go EOS if a buffer
-after the total size is returned. By default this is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> but sources
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>src</code></em>
+ will automatically go EOS if a buffer
+after the total size is returned. By default this is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> but sources
 that can't return an authoritative size and only know that they're EOS
-when trying to read more should set this to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+when trying to read more should set this to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -865,7 +866,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-new-seamless-segment"></a><h3>gst_base_src_new_seamless_segment ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_src_new_seamless_segment (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
                                    <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
                                    <em class="parameter"><code><span class="type">gint64</span> stop</code></em>,
@@ -909,14 +910,14 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.15.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if preparation of the seamless segment succeeded.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if preparation of the seamless segment succeeded.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-set-caps"></a><h3>gst_base_src_set_caps ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_src_set_caps (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
                        <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
 <p>Set new caps on the basesrc source pad.</p>
@@ -936,15 +937,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>caps</p></td>
-<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps could be set</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caps could be set</p>
 <p></p>
 </div>
 </div>
@@ -979,14 +980,14 @@
 <td class="parameter_name"><p>allocator</p></td>
 <td class="parameter_description"><p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstAllocator.html"><span class="type">GstAllocator</span></a>
 used. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> the
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a> of <em class="parameter"><code>allocator</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1022,7 +1023,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-src-is-async"></a><h3>gst_base_src_is_async ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_src_is_async (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>);</pre>
 <p>Get the current async behaviour of <em class="parameter"><code>src</code></em>
 . See also <a class="link" href="GstBaseSrc.html#gst-base-src-set-async" title="gst_base_src_set_async ()"><code class="function">gst_base_src_set_async()</code></a>.</p>
@@ -1043,7 +1044,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.4.9.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>src</code></em>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>src</code></em>
 is operating in async mode.</p>
 <p></p>
 </div>
@@ -1053,7 +1054,7 @@
 <a name="gst-base-src-set-async"></a><h3>gst_base_src_set_async ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_src_set_async (<em class="parameter"><code><a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> *src</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> async</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> async</code></em>);</pre>
 <p>Configure async behaviour in <em class="parameter"><code>src</code></em>
 , no state change will block. The open,
 close, start, stop, play and pause virtual methods will be executed in a
@@ -1153,7 +1154,8 @@
   void          (*get_times)    (GstBaseSrc *src, GstBuffer *buffer,
                                  GstClockTime *start, GstClockTime *end);
 
-  /* get the total size of the resource in bytes */
+  /* get the total size of the resource in the format set by
+   * gst_base_src_set_format() */
   gboolean      (*get_size)     (GstBaseSrc *src, guint64 *size);
 
   /* check if the resource is seekable */
@@ -1257,7 +1259,8 @@
 </tr>
 <tr>
 <td class="struct_member_name"><p><em class="structfield"><code><a name="GstBaseSrcClass.get-size"></a>get_size</code></em> ()</p></td>
-<td class="struct_member_description"><p>Return the total size of the resource, in the configured format.</p></td>
+<td class="struct_member_description"><p>Return the total size of the resource, in the format set by
+<a class="link" href="GstBaseSrc.html#gst-base-src-set-format" title="gst_base_src_set_format ()"><code class="function">gst_base_src_set_format()</code></a>.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
@@ -1377,7 +1380,7 @@
 <a name="GstBaseSrc.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstBaseSrc--blocksize"></a><h3>The <code class="literal">“blocksize”</code> property</h3>
-<pre class="programlisting">  “blocksize”                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “blocksize”                <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Size in bytes to read per buffer (-1 = default).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 4096</p>
@@ -1385,7 +1388,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSrc--do-timestamp"></a><h3>The <code class="literal">“do-timestamp”</code> property</h3>
-<pre class="programlisting">  “do-timestamp”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “do-timestamp”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Apply current stream time to buffers.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -1393,7 +1396,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSrc--num-buffers"></a><h3>The <code class="literal">“num-buffers”</code> property</h3>
-<pre class="programlisting">  “num-buffers”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “num-buffers”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Number of buffers to output before sending EOS (-1 = unlimited).</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= -1</p>
@@ -1402,7 +1405,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstBaseSrc--typefind"></a><h3>The <code class="literal">“typefind”</code> property</h3>
-<pre class="programlisting">  “typefind”                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “typefind”                 <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Run typefind before negotiating.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -1415,6 +1418,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstBaseTransform.html b/docs/libs/html/GstBaseTransform.html
index 7ff610e..46ca63d 100644
--- a/docs/libs/html/GstBaseTransform.html
+++ b/docs/libs/html/GstBaseTransform.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstBaseSink.html" title="GstBaseSink">
 <link rel="next" href="GstPushSrc.html" title="GstPushSrc">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstBaseTransform.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstBaseTransform.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstBaseTransform.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstBaseTransform.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstBaseTransform.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,7 +43,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseTransform.html#gst-base-transform-is-passthrough" title="gst_base_transform_is_passthrough ()">gst_base_transform_is_passthrough</a> <span class="c_punctuation">()</span>
@@ -67,7 +67,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseTransform.html#gst-base-transform-is-in-place" title="gst_base_transform_is_in_place ()">gst_base_transform_is_in_place</a> <span class="c_punctuation">()</span>
@@ -83,7 +83,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstBaseTransform.html#gst-base-transform-is-qos-enabled" title="gst_base_transform_is_qos_enabled ()">gst_base_transform_is_qos_enabled</a> <span class="c_punctuation">()</span>
@@ -169,7 +169,7 @@
 <col width="200px" class="properties_flags">
 </colgroup>
 <tbody><tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstBaseTransform.html#GstBaseTransform--qos" title="The “qos” property">qos</a></td>
 <td class="property_flags">Read / Write</td>
 </tr></tbody>
@@ -208,8 +208,8 @@
 </div>
 <div class="refsect1">
 <a name="GstBaseTransform.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstBaseTransform
@@ -295,7 +295,7 @@
     immediately.  </p></li>
 <li class="listitem"><p>
     only implementing transform_ip and not transform implies always_in_place
-    = <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
+    = <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
   </p></li>
 </ul>
 </div>
@@ -321,7 +321,7 @@
 <li class="listitem"><p>
     Elements wishing to operate in this mode should replace the
     prepare_output_buffer method to create subbuffers of the input buffer
-    and set always_in_place to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
+    and set always_in_place to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
   </p></li>
 </ul>
 </div>
@@ -411,10 +411,10 @@
       to the transform_ip function.
     </p></li>
 <li class="listitem"><p>
-      Implied <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if no transform function is implemented.
+      Implied <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if no transform function is implemented.
     </p></li>
 <li class="listitem"><p>
-      Implied <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if ONLY transform function is implemented.
+      Implied <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if ONLY transform function is implemented.
     </p></li>
 </ul>
 </div>
@@ -430,7 +430,7 @@
 <a name="GstBaseTransform.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-base-transform-is-passthrough"></a><h3>gst_base_transform_is_passthrough ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_transform_is_passthrough (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>);</pre>
 <p>See if <em class="parameter"><code>trans</code></em>
  is configured as a passthrough transform.</p>
@@ -451,7 +451,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.6.9.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the transform is configured in passthrough mode.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the transform is configured in passthrough mode.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -461,10 +461,10 @@
 <a name="gst-base-transform-set-passthrough"></a><h3>gst_base_transform_set_passthrough ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_transform_set_passthrough (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> passthrough</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> passthrough</code></em>);</pre>
 <p>Set passthrough mode for this filter by default. This is mostly
 useful for filters that do not care about negotiation.</p>
-<p>Always <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for filters which don't implement either a transform
+<p>Always <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for filters which don't implement either a transform
 or transform_ip method.</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -496,13 +496,13 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_transform_set_prefer_passthrough
                                (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> prefer_passthrough</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> prefer_passthrough</code></em>);</pre>
 <p>If <em class="parameter"><code>prefer_passthrough</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> (the default), <em class="parameter"><code>trans</code></em>
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> (the default), <em class="parameter"><code>trans</code></em>
  will check and
 prefer passthrough caps from the list of caps returned by the
 transform_caps vmethod.</p>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the element must order the caps returned from the
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the element must order the caps returned from the
 transform_caps function in such a way that the preferred format is
 first in the list. This can be interesting for transforms that can do
 passthrough transforms but prefer to do something else, like a
@@ -535,7 +535,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-transform-is-in-place"></a><h3>gst_base_transform_is_in_place ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_transform_is_in_place (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>);</pre>
 <p>See if <em class="parameter"><code>trans</code></em>
  is configured as a in_place transform.</p>
@@ -556,7 +556,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.6.9.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the transform is configured in in_place mode.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the transform is configured in in_place mode.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -566,12 +566,12 @@
 <a name="gst-base-transform-set-in-place"></a><h3>gst_base_transform_set_in_place ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_transform_set_in_place (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> in_place</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> in_place</code></em>);</pre>
 <p>Determines whether a non-writable buffer will be copied before passing
 to the transform_ip function.</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
-<li class="listitem">Always <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if no transform function is implemented.</li>
-<li class="listitem">Always <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if ONLY transform function is implemented.</li>
+<li class="listitem">Always <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if no transform function is implemented.</li>
+<li class="listitem">Always <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if ONLY transform function is implemented.</li>
 </ul></div>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -601,7 +601,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-base-transform-is-qos-enabled"></a><h3>gst_base_transform_is_qos_enabled ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_base_transform_is_qos_enabled (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>);</pre>
 <p>Queries if the transform will handle QoS.</p>
 <div class="refsect3">
@@ -621,7 +621,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.6.9.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if QoS is enabled.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if QoS is enabled.</p>
 <p>MT safe.</p>
 <p></p>
 </div>
@@ -631,7 +631,7 @@
 <a name="gst-base-transform-set-qos-enabled"></a><h3>gst_base_transform_set_qos_enabled ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_transform_set_qos_enabled (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre>
 <p>Enable or disable QoS handling in the transform.</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -662,7 +662,7 @@
 <a name="gst-base-transform-update-qos"></a><h3>gst_base_transform_update_qos ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_transform_update_qos (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> diff</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Set the QoS parameters in the transform. This function is called internally
@@ -708,11 +708,11 @@
 <a name="gst-base-transform-set-gap-aware"></a><h3>gst_base_transform_set_gap_aware ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_base_transform_set_gap_aware (<em class="parameter"><code><a class="link" href="GstBaseTransform.html" title="GstBaseTransform"><span class="type">GstBaseTransform</span></a> *trans</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> gap_aware</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> gap_aware</code></em>);</pre>
 <p>If <em class="parameter"><code>gap_aware</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> (the default), output buffers will have the
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstBuffer.html#GST-BUFFER-FLAG-GAP:CAPS"><code class="literal">GST_BUFFER_FLAG_GAP</code></a> flag unset.</p>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the element must handle output buffers with this flag set
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> (the default), output buffers will have the
+<code class="literal">GST_BUFFER_FLAG_GAP</code> flag unset.</p>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the element must handle output buffers with this flag set
 correctly, i.e. it can assume that the buffer contains neutral data but must
 unset the flag if the output is no neutral data.</p>
 <p>MT safe.</p>
@@ -770,14 +770,14 @@
 <td class="parameter_name"><p>allocator</p></td>
 <td class="parameter_description"><p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstAllocator.html"><span class="type">GstAllocator</span></a>
 used. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>params</p></td>
 <td class="parameter_description"><p> the
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstAllocator.html#GstAllocationParams"><span class="type">GstAllocationParams</span></a> of <em class="parameter"><code>allocator</code></em>
 . </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1001,22 +1001,22 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBaseTransformClass.passthrough-on-same-caps"></a>passthrough_on_same_caps</code></em>;</p></td>
-<td class="struct_member_description"><p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, passthrough mode will be
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBaseTransformClass.passthrough-on-same-caps"></a>passthrough_on_same_caps</code></em>;</p></td>
+<td class="struct_member_description"><p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, passthrough mode will be
 automatically enabled if the caps are the same.
-Set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> by default.</p></td>
+Set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> by default.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBaseTransformClass.transform-ip-on-passthrough"></a>transform_ip_on_passthrough</code></em>;</p></td>
-<td class="struct_member_description"><p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>transform_ip</code></em>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstBaseTransformClass.transform-ip-on-passthrough"></a>transform_ip_on_passthrough</code></em>;</p></td>
+<td class="struct_member_description"><p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, <em class="parameter"><code>transform_ip</code></em>
 will be called in
 passthrough mode. The passed buffer might not be
-writable. When <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, neither <em class="parameter"><code>transform</code></em>
+writable. When <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, neither <em class="parameter"><code>transform</code></em>
 nor
 <em class="parameter"><code>transform_ip</code></em>
 will be called in passthrough mode.
-Set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> by default.</p></td>
+Set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> by default.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
@@ -1074,8 +1074,8 @@
 </tr>
 <tr>
 <td class="struct_member_name"><p><em class="structfield"><code><a name="GstBaseTransformClass.filter-meta"></a>filter_meta</code></em> ()</p></td>
-<td class="struct_member_description"><p>Return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the metadata API should be proposed in the
-upstream allocation query. The default implementation is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td class="struct_member_description"><p>Return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the metadata API should be proposed in the
+upstream allocation query. The default implementation is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 and will cause all metadata to be removed.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1084,7 +1084,7 @@
 <td class="struct_member_description"><p>Propose buffer allocation parameters for upstream elements.
 This function must be implemented if the element reads or
 writes the buffer content. The query that was passed to
-the decide_allocation is passed in this method (or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+the decide_allocation is passed in this method (or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 when the element is in passthrough mode). The default
 implementation will pass the query downstream when in
 passthrough mode and will copy all the filtered metadata
@@ -1158,9 +1158,9 @@
 <tr>
 <td class="struct_member_name"><p><em class="structfield"><code><a name="GstBaseTransformClass.transform-meta"></a>transform_meta</code></em> ()</p></td>
 <td class="struct_member_description"><p>Optional. Transform the metadata on the input buffer to the
-output buffer. By default this method is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and no
+output buffer. By default this method is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and no
 metadata is copied. subclasses can implement this method and
-return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the metadata is to be copied.</p></td>
+return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the metadata is to be copied.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
@@ -1216,7 +1216,7 @@
 <a name="GstBaseTransform.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstBaseTransform--qos"></a><h3>The <code class="literal">“qos”</code> property</h3>
-<pre class="programlisting">  “qos”                      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “qos”                      <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Handle Quality-of-Service events.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -1229,6 +1229,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstCollectPads.html b/docs/libs/html/GstCollectPads.html
index b6bdea9..2e6a23d 100644
--- a/docs/libs/html/GstCollectPads.html
+++ b/docs/libs/html/GstCollectPads.html
@@ -8,14 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-libs-GstByteWriter.html" title="GstByteWriter">
 <link rel="next" href="gstreamer-libs-GstFlowCombiner.html" title="GstFlowCombiner">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstCollectPads.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstCollectPads.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstCollectPads.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -66,7 +66,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsCompareFunction" title="GstCollectPadsCompareFunction ()">*GstCollectPadsCompareFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -74,7 +74,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsEventFunction" title="GstCollectPadsEventFunction ()">*GstCollectPadsEventFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -90,7 +90,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsQueryFunction" title="GstCollectPadsQueryFunction ()">*GstCollectPadsQueryFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -164,7 +164,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCollectPads.html#gst-collect-pads-remove-pad" title="gst_collect_pads_remove_pad ()">gst_collect_pads_remove_pad</a> <span class="c_punctuation">()</span>
@@ -188,7 +188,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCollectPads.html#gst-collect-pads-available" title="gst_collect_pads_available ()">gst_collect_pads_available</a> <span class="c_punctuation">()</span>
@@ -196,7 +196,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCollectPads.html#gst-collect-pads-flush" title="gst_collect_pads_flush ()">gst_collect_pads_flush</a> <span class="c_punctuation">()</span>
@@ -244,7 +244,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCollectPads.html#gst-collect-pads-query-default" title="gst_collect_pads_query_default ()">gst_collect_pads_query_default</a> <span class="c_punctuation">()</span>
@@ -252,7 +252,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCollectPads.html#gst-collect-pads-event-default" title="gst_collect_pads_event_default ()">gst_collect_pads_event_default</a> <span class="c_punctuation">()</span>
@@ -260,7 +260,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstCollectPads.html#gst-collect-pads-src-event-default" title="gst_collect_pads_src_event_default ()">gst_collect_pads_src_event_default</a> <span class="c_punctuation">()</span>
@@ -366,8 +366,8 @@
 </div>
 <div class="refsect1">
 <a name="GstCollectPads.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> GstCollectPads
 </pre>
@@ -403,8 +403,8 @@
 <li class="listitem"><p>
     Data can be dequeued from the pad with the <a class="link" href="GstCollectPads.html#gst-collect-pads-pop" title="gst_collect_pads_pop ()"><code class="function">gst_collect_pads_pop()</code></a> method.
     One can peek at the data with the <a class="link" href="GstCollectPads.html#gst-collect-pads-peek" title="gst_collect_pads_peek ()"><code class="function">gst_collect_pads_peek()</code></a> function.
-    These functions will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the pad received an EOS event. When all
-    pads return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> from a <a class="link" href="GstCollectPads.html#gst-collect-pads-peek" title="gst_collect_pads_peek ()"><code class="function">gst_collect_pads_peek()</code></a>, the element can emit an EOS
+    These functions will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the pad received an EOS event. When all
+    pads return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> from a <a class="link" href="GstCollectPads.html#gst-collect-pads-peek" title="gst_collect_pads_peek ()"><code class="function">gst_collect_pads_peek()</code></a>, the element can emit an EOS
     event itself.
   </p></li>
 <li class="listitem"><p>
@@ -458,11 +458,11 @@
 <span class="c_punctuation">(</span>*GstCollectPadsBufferFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                  <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
                                  <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called when a (considered oldest) buffer can be muxed.
-If all pads have reached EOS, this function is called with <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>buffer</code></em>
+If all pads have reached EOS, this function is called with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>buffer</code></em>
 
-and <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>data</code></em>
+and <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>data</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.3.5"></a><h4>Parameters</h4>
@@ -498,7 +498,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.3.6"></a><h4>Returns</h4>
-<p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> for success</p>
+<p> <code class="literal">GST_FLOW_OK</code> for success</p>
 <p></p>
 </div>
 </div>
@@ -510,7 +510,7 @@
                                <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *inbuffer</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> **outbuffer</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called when <em class="parameter"><code>inbuffer</code></em>
  is received on the pad managed
 by <em class="parameter"><code>data</code></em>
@@ -523,7 +523,7 @@
 <p>This function takes ownership of <em class="parameter"><code>inbuffer</code></em>
  and should output a buffer in
 <em class="parameter"><code>outbuffer</code></em>
- or return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in <em class="parameter"><code>outbuffer</code></em>
+ or return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in <em class="parameter"><code>outbuffer</code></em>
  if the buffer should be dropped.</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.4.7"></a><h4>Parameters</h4>
@@ -571,13 +571,13 @@
 <hr>
 <div class="refsect2">
 <a name="GstCollectPadsCompareFunction"></a><h3>GstCollectPadsCompareFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 <span class="c_punctuation">(</span>*GstCollectPadsCompareFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data1</code></em>,
                                   <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp1</code></em>,
                                   <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data2</code></em>,
                                   <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp2</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function for comparing two timestamps of buffers or newsegments collected on one pad.</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.5.5"></a><h4>Parameters</h4>
@@ -632,11 +632,11 @@
 <hr>
 <div class="refsect2">
 <a name="GstCollectPadsEventFunction"></a><h3>GstCollectPadsEventFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstCollectPadsEventFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html"><span class="type">GstEvent</span></a> *event</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called while processing an event. It takes
 ownership of the event and is responsible for chaining up (to
 <a class="link" href="GstCollectPads.html#gst-collect-pads-event-default" title="gst_collect_pads_event_default ()"><code class="function">gst_collect_pads_event_default()</code></a>) or dropping events (such typical cases
@@ -675,7 +675,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.6.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event</p>
 <p></p>
 </div>
 </div>
@@ -684,7 +684,7 @@
 <a name="GstCollectPadsFlushFunction"></a><h3>GstCollectPadsFlushFunction ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstCollectPadsFlushFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called while processing a flushing seek event.</p>
 <p>The function should flush any internal state of the element and the state of
 all the pads. It should clear only the state not directly managed by the
@@ -718,11 +718,11 @@
 <hr>
 <div class="refsect2">
 <a name="GstCollectPadsQueryFunction"></a><h3>GstCollectPadsQueryFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstCollectPadsQueryFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *pad</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstQuery.html"><span class="type">GstQuery</span></a> *query</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called while processing a query. It takes
 ownership of the query and is responsible for chaining up (to
 events downstream (with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-event-default"><code class="function">gst_pad_event_default()</code></a>).</p>
@@ -760,7 +760,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event</p>
 <p></p>
 </div>
 </div>
@@ -769,7 +769,7 @@
 <a name="GstCollectPadsFunction"></a><h3>GstCollectPadsFunction ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>
 <span class="c_punctuation">(</span>*GstCollectPadsFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>A function that will be called when all pads have received data.</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.9.5"></a><h4>Parameters</h4>
@@ -795,7 +795,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.9.6"></a><h4>Returns</h4>
-<p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> for success</p>
+<p> <code class="literal">GST_FLOW_OK</code> for success</p>
 <p></p>
 </div>
 </div>
@@ -989,7 +989,7 @@
 <p>MT safe.</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.17.6"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
+<p> a new <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -999,9 +999,9 @@
 <pre class="programlisting"><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="returnvalue">GstCollectData</span></a> *
 gst_collect_pads_add_pad (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                           <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                           <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectDataDestroyNotify" title="GstCollectDataDestroyNotify ()"><span class="type">GstCollectDataDestroyNotify</span></a> destroy_notify</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> lock</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> lock</code></em>);</pre>
 <p>Add a pad to the collection of collect pads. The pad has to be
 a sinkpad. The refcount of the pad is incremented. Use
 <a class="link" href="GstCollectPads.html#gst-collect-pads-remove-pad" title="gst_collect_pads_remove_pad ()"><code class="function">gst_collect_pads_remove_pad()</code></a> to remove the pad from the collection
@@ -1049,9 +1049,9 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>destroy_notify</p></td>
-<td class="parameter_description"><p>function to be called before the returned <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>
-structure is freed</p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> function to be called before the returned
+<a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> structure is freed. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>lock</p></td>
@@ -1063,15 +1063,15 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.18.11"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> to identify the new pad. Or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if wrong parameters are supplied.</p>
-<p></p>
+<p> a new <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> to identify the
+new pad. Or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if wrong parameters are supplied. </p>
+<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-collect-pads-remove-pad"></a><h3>gst_collect_pads_remove_pad ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_collect_pads_remove_pad (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                              <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Remove a pad from the collection of collect pads. This function will also
@@ -1104,7 +1104,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.19.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be removed.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be removed.</p>
 <p></p>
 </div>
 </div>
@@ -1158,7 +1158,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-collect-pads-available"></a><h3>gst_collect_pads_available ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_collect_pads_available (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>);</pre>
 <p>Query how much bytes can be read from each queued buffer. This means
 that the result of this call is the maximum number of bytes that can
@@ -1192,10 +1192,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-collect-pads-flush"></a><h3>gst_collect_pads_flush ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_collect_pads_flush (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                         <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Flush <em class="parameter"><code>size</code></em>
  bytes from the pad <em class="parameter"><code>data</code></em>
 .</p>
@@ -1275,7 +1275,7 @@
 <div class="refsect3">
 <a name="id-1.2.4.12.8.24.7"></a><h4>Returns</h4>
 <p> The buffer in <em class="parameter"><code>data</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no buffer is queued.
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no buffer is queued.
 should unref the buffer after usage.</p>
 <p></p>
 </div>
@@ -1317,7 +1317,7 @@
 <div class="refsect3">
 <a name="id-1.2.4.12.8.25.7"></a><h4>Returns</h4>
 <p> The buffer in <em class="parameter"><code>data</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no buffer was
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no buffer was
 queued. You should unref the buffer after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1328,7 +1328,7 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="returnvalue">GstBuffer</span></a> *
 gst_collect_pads_read_buffer (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                               <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Get a subbuffer of <em class="parameter"><code>size</code></em>
  bytes from the given pad <em class="parameter"><code>data</code></em>
 .</p>
@@ -1366,7 +1366,7 @@
 <div class="refsect3">
 <a name="id-1.2.4.12.8.26.8"></a><h4>Returns</h4>
 <p> A sub buffer. The size of the buffer can be less that requested.
-A return of <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> signals that the pad is end-of-stream.
+A return of <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> signals that the pad is end-of-stream.
 Unref the buffer after use. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1377,7 +1377,7 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="returnvalue">GstBuffer</span></a> *
 gst_collect_pads_take_buffer (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                               <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Get a subbuffer of <em class="parameter"><code>size</code></em>
  bytes from the given pad <em class="parameter"><code>data</code></em>
 . Flushes the amount
@@ -1416,7 +1416,7 @@
 <div class="refsect3">
 <a name="id-1.2.4.12.8.27.8"></a><h4>Returns</h4>
 <p> A sub buffer. The size of the buffer can be less that requested.
-A return of <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> signals that the pad is end-of-stream.
+A return of <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> signals that the pad is end-of-stream.
 Unref the buffer after use.</p>
 <p></p>
 </div>
@@ -1429,7 +1429,7 @@
                                     <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *cdata</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buf</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> **outbuf</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Convenience clipping function that converts incoming buffer's timestamp
 to running time, or clips the buffer if outside configured segment.</p>
 <div class="refsect3">
@@ -1459,7 +1459,7 @@
 <tr>
 <td class="parameter_name"><p>outbuf</p></td>
 <td class="parameter_description"><p> output buffer with running time, or NULL if clipped. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>user_data</p></td>
@@ -1473,11 +1473,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-collect-pads-query-default"></a><h3>gst_collect_pads_query_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_collect_pads_query_default (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstQuery.html"><span class="type">GstQuery</span></a> *query</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> discard</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> discard</code></em>);</pre>
 <p>Default <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> query handling that elements should always
 chain up to to ensure proper operation.  Element might however indicate
 query should not be forwarded downstream.</p>
@@ -1517,11 +1517,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-collect-pads-event-default"></a><h3>gst_collect_pads_event_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_collect_pads_event_default (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                 <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html"><span class="type">GstEvent</span></a> *event</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> discard</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> discard</code></em>);</pre>
 <p>Default <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> event handling that elements should always
 chain up to to ensure proper operation.  Element might however indicate
 event should not be forwarded downstream.</p>
@@ -1561,13 +1561,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-collect-pads-src-event-default"></a><h3>gst_collect_pads_src_event_default ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_collect_pads_src_event_default (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
 <p>Default <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> event handling for the src pad of elements.
 Elements can chain up to this to let flushing seek event handling
-be done by GstCollectPads.</p>
+be done by <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.8.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1579,7 +1579,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>pads</p></td>
-<td class="parameter_description"><p>the collectpads to use</p></td>
+<td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> to use</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1603,9 +1603,9 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_buffer_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                       <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsBufferFunction" title="GstCollectPadsBufferFunction ()"><span class="type">GstCollectPadsBufferFunction</span></a> func</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Set the callback function and user data that will be called with
-the oldest buffer when all pads have been collected, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on EOS.
+the oldest buffer when all pads have been collected, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on EOS.
 If a buffer is passed, the callback owns a reference and must unref
 it.</p>
 <p>MT safe.</p>
@@ -1643,7 +1643,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_clip_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                     <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsClipFunction" title="GstCollectPadsClipFunction ()"><span class="type">GstCollectPadsClipFunction</span></a> clipfunc</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Install a clipping function that is called right after a buffer is received
 on a pad managed by <em class="parameter"><code>pads</code></em>
 . See <a class="link" href="GstCollectPads.html#GstCollectPadsClipFunction" title="GstCollectPadsClipFunction ()"><span class="type">GstCollectPadsClipFunction</span></a> for more info.</p>
@@ -1682,7 +1682,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_compare_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                        <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsCompareFunction" title="GstCollectPadsCompareFunction ()"><span class="type">GstCollectPadsCompareFunction</span></a> func</code></em>,
-                                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Set the timestamp comparison function.</p>
 <p>MT safe.</p>
 <div class="refsect3">
@@ -1719,7 +1719,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_event_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsEventFunction" title="GstCollectPadsEventFunction ()"><span class="type">GstCollectPadsEventFunction</span></a> func</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Set the event callback function and user data that will be called when
 collectpads has received an event originating from one of the collected
 pads.  If the event being processed is a serialized one, this callback is
@@ -1762,7 +1762,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_flush_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsFlushFunction" title="GstCollectPadsFlushFunction ()"><span class="type">GstCollectPadsFlushFunction</span></a> func</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Install a flush function that is called when the internal
 state of all pads should be flushed as part of flushing seek
 handling. See <a class="link" href="GstCollectPads.html#GstCollectPadsFlushFunction" title="GstCollectPadsFlushFunction ()"><span class="type">GstCollectPadsFlushFunction</span></a> for more info.</p>
@@ -1802,7 +1802,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_query_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                      <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsQueryFunction" title="GstCollectPadsQueryFunction ()"><span class="type">GstCollectPadsQueryFunction</span></a> func</code></em>,
-                                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>Set the query callback function and user data that will be called after
 collectpads has received a query originating from one of the collected
 pads.  If the query being processed is a serialized one, this callback is
@@ -1844,12 +1844,12 @@
 <a name="gst-collect-pads-set-flushing"></a><h3>gst_collect_pads_set_flushing ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_flushing (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
 <p>Change the flushing state of all the pads in the collection. No pad
 is able to accept anymore data when <em class="parameter"><code>flushing</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. Calling this
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. Calling this
 function with <em class="parameter"><code>flushing</code></em>
- <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> makes <em class="parameter"><code>pads</code></em>
+ <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> makes <em class="parameter"><code>pads</code></em>
  accept data again.
 Caller must ensure that downstream streaming (thread) is not blocked,
 e.g. by sending a FLUSH_START downstream.</p>
@@ -1883,7 +1883,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                                <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsFunction" title="GstCollectPadsFunction ()"><span class="type">GstCollectPadsFunction</span></a> func</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>CollectPads provides a default collection algorithm that will determine
 the oldest buffer available on all of its pads, and then delegate
 to a configured callback.
@@ -1928,7 +1928,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_collect_pads_set_waiting (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>,
                               <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> waiting</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> waiting</code></em>);</pre>
 <p>Sets a pad to waiting or non-waiting mode, if at least this pad
 has not been created with locked waiting state,
 in which case nothing happens.</p>
@@ -1984,9 +1984,10 @@
 <col width="200px" class="struct_members_annotations">
 </colgroup>
 <tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *<em class="structfield"><code><a name="GstCollectPads-struct.data"></a>data</code></em>;</p></td>
-<td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> managed by this <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>.</p></td>
-<td class="struct_member_annotations"> </td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *<em class="structfield"><code><a name="GstCollectPads-struct.data"></a>data</code></em>;</p></td>
+<td class="struct_member_description"><p> <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> managed
+by this <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstBase.CollectData]</span></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -2029,7 +2030,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstCollectData.pos"></a>pos</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstCollectData.pos"></a>pos</code></em>;</p></td>
 <td class="struct_member_description"><p>position in the buffer</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -2101,6 +2102,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstDirectControlBinding.html b/docs/libs/html/GstDirectControlBinding.html
index ab6e7d3..72d2413 100644
--- a/docs/libs/html/GstDirectControlBinding.html
+++ b/docs/libs/html/GstDirectControlBinding.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="prev" href="GstARGBControlBinding.html" title="GstARGBControlBinding">
 <link rel="next" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstDirectControlBinding.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstDirectControlBinding.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstDirectControlBinding.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstDirectControlBinding.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstDirectControlBinding.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -68,8 +68,8 @@
 </div>
 <div class="refsect1">
 <a name="GstDirectControlBinding.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlBinding.html">GstControlBinding</a>
                 <span class="lineart">╰──</span> GstDirectControlBinding
@@ -92,10 +92,10 @@
 <a name="gst-direct-control-binding-new"></a><h3>gst_direct_control_binding_new ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlBinding.html"><span class="returnvalue">GstControlBinding</span></a> *
 gst_direct_control_binding_new (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *object</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> *cs</code></em>);</pre>
 <p>Create a new control-binding that attaches the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a> to the
-<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property.</p>
+<a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.8.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -145,6 +145,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstInterpolationControlSource.html b/docs/libs/html/GstInterpolationControlSource.html
index bb05167..bd7e925 100644
--- a/docs/libs/html/GstInterpolationControlSource.html
+++ b/docs/libs/html/GstInterpolationControlSource.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="prev" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">
 <link rel="next" href="GstLFOControlSource.html" title="GstLFOControlSource">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstInterpolationControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstInterpolationControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstInterpolationControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstInterpolationControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstInterpolationControlSource.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -86,8 +86,8 @@
 </div>
 <div class="refsect1">
 <a name="GstInterpolationControlSource.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html">GstControlSource</a>
                 <span class="lineart">╰──</span> <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">GstTimedValueControlSource</a>
@@ -104,7 +104,7 @@
 <p><a class="link" href="GstInterpolationControlSource.html" title="GstInterpolationControlSource"><span class="type">GstInterpolationControlSource</span></a> is a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a>, that interpolates values between user-given
 control points. It supports several interpolation modes and property types.</p>
 <p>To use <a class="link" href="GstInterpolationControlSource.html" title="GstInterpolationControlSource"><span class="type">GstInterpolationControlSource</span></a> get a new instance by calling
-<a class="link" href="GstInterpolationControlSource.html#gst-interpolation-control-source-new" title="gst_interpolation_control_source_new ()"><code class="function">gst_interpolation_control_source_new()</code></a>, bind it to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> and set some
+<a class="link" href="GstInterpolationControlSource.html#gst-interpolation-control-source-new" title="gst_interpolation_control_source_new ()"><code class="function">gst_interpolation_control_source_new()</code></a>, bind it to a <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> and set some
 control points by calling <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-set" title="gst_timed_value_control_source_set ()"><code class="function">gst_timed_value_control_source_set()</code></a>.</p>
 <p>All functions are MT-safe.</p>
 </div>
@@ -181,6 +181,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstLFOControlSource.html b/docs/libs/html/GstLFOControlSource.html
index 8cf6e22..0cf4976 100644
--- a/docs/libs/html/GstLFOControlSource.html
+++ b/docs/libs/html/GstLFOControlSource.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="prev" href="GstInterpolationControlSource.html" title="GstInterpolationControlSource">
 <link rel="next" href="GstTriggerControlSource.html" title="GstTriggerControlSource">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstLFOControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstLFOControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstLFOControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstLFOControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstLFOControlSource.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -60,17 +60,17 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
 <td class="property_name"><a class="link" href="GstLFOControlSource.html#GstLFOControlSource--amplitude" title="The “amplitude” property">amplitude</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
 <td class="property_name"><a class="link" href="GstLFOControlSource.html#GstLFOControlSource--frequency" title="The “frequency” property">frequency</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
 <td class="property_name"><a class="link" href="GstLFOControlSource.html#GstLFOControlSource--offset" title="The “offset” property">offset</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -108,8 +108,8 @@
 </div>
 <div class="refsect1">
 <a name="GstLFOControlSource.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html">GstControlSource</a>
                 <span class="lineart">╰──</span> GstLFOControlSource
@@ -125,7 +125,7 @@
 <p><a class="link" href="GstLFOControlSource.html" title="GstLFOControlSource"><span class="type">GstLFOControlSource</span></a> is a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a>, that provides several periodic
 waveforms as control values.</p>
 <p>To use <a class="link" href="GstLFOControlSource.html" title="GstLFOControlSource"><span class="type">GstLFOControlSource</span></a> get a new instance by calling
-<a class="link" href="GstLFOControlSource.html#gst-lfo-control-source-new" title="gst_lfo_control_source_new ()"><code class="function">gst_lfo_control_source_new()</code></a>, bind it to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> and set the relevant
+<a class="link" href="GstLFOControlSource.html#gst-lfo-control-source-new" title="gst_lfo_control_source_new ()"><code class="function">gst_lfo_control_source_new()</code></a>, bind it to a <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> and set the relevant
 properties.</p>
 <p>All functions are MT-safe.</p>
 </div>
@@ -207,7 +207,7 @@
 <a name="GstLFOControlSource.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstLFOControlSource--amplitude"></a><h3>The <code class="literal">“amplitude”</code> property</h3>
-<pre class="programlisting">  “amplitude”                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
+<pre class="programlisting">  “amplitude”                <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
 <p>Specifies the amplitude for the waveform of this <a class="link" href="GstLFOControlSource.html" title="GstLFOControlSource"><span class="type">GstLFOControlSource</span></a>.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,1]</p>
@@ -216,7 +216,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstLFOControlSource--frequency"></a><h3>The <code class="literal">“frequency”</code> property</h3>
-<pre class="programlisting">  “frequency”                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
+<pre class="programlisting">  “frequency”                <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
 <p>Specifies the frequency that should be used for the waveform
 of this <a class="link" href="GstLFOControlSource.html" title="GstLFOControlSource"><span class="type">GstLFOControlSource</span></a>. It should be large enough
 so that the period is longer than one nanosecond.</p>
@@ -227,7 +227,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstLFOControlSource--offset"></a><h3>The <code class="literal">“offset”</code> property</h3>
-<pre class="programlisting">  “offset”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
+<pre class="programlisting">  “offset”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
 <p>Specifies the value offset for the waveform of this <a class="link" href="GstLFOControlSource.html" title="GstLFOControlSource"><span class="type">GstLFOControlSource</span></a>.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,1]</p>
@@ -256,6 +256,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstNetClientClock.html b/docs/libs/html/GstNetClientClock.html
index f19a689..583e869 100644
--- a/docs/libs/html/GstNetClientClock.html
+++ b/docs/libs/html/GstNetClientClock.html
@@ -6,22 +6,22 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="up" href="gstreamer-net.html" title="GStreamer Network Classes">
-<link rel="prev" href="gstreamer-net.html" title="GStreamer Network Classes">
+<link rel="prev" href="gstreamer-libs-GstNetAddressMeta.html" title="GstNetAddressMeta">
 <link rel="next" href="gstreamer-libs-GstNetTimePacket.html" title="GstNetTimePacket">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstNetClientClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstNetClientClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstNetClientClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstNetClientClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstNetClientClock.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-net.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gstreamer-net.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="gstreamer-libs-GstNetAddressMeta.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="gstreamer-libs-GstNetTimePacket.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
@@ -62,12 +62,23 @@
 <tbody>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="GstNetClientClock.html#GstNetClientClock--address" title="The “address” property">address</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBus.html"><span class="type">GstBus</span></a> *</td>
+<td class="property_name"><a class="link" href="GstNetClientClock.html#GstNetClientClock--bus" title="The “bus” property">bus</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><span class="type">guint64</span></td>
+<td class="property_name"><a class="link" href="GstNetClientClock.html#GstNetClientClock--minimum-update-interval" title="The “minimum-update-interval” property">minimum-update-interval</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="GstNetClientClock.html#GstNetClientClock--port" title="The “port” property">port</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -94,8 +105,8 @@
 </div>
 <div class="refsect1">
 <a name="GstNetClientClock.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html">GstClock</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSystemClock.html">GstSystemClock</a>
@@ -121,15 +132,19 @@
 "timeout", "window-size" and "window-threshold" object properties.</p>
 <p>A <a class="link" href="GstNetClientClock.html" title="GstNetClientClock"><span class="type">GstNetClientClock</span></a> is typically set on a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPipeline.html"><span class="type">GstPipeline</span></a> with 
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPipeline.html#gst-pipeline-use-clock"><code class="function">gst_pipeline_use_clock()</code></a>.</p>
+<p>If you set a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBus.html"><span class="type">GstBus</span></a> on the clock via the "bus" object property, it will
+send <em class="parameter"><code>GST_MESSAGE_ELEMENT</code></em>
+ messages with an attached <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstStructure.html"><span class="type">GstStructure</span></a> containing
+statistics about clock accuracy and network traffic.</p>
 </div>
 <div class="refsect1">
 <a name="GstNetClientClock.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-net-client-clock-new"></a><h3>gst_net_client_clock_new ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html"><span class="returnvalue">GstClock</span></a> *
-gst_net_client_clock_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *remote_address</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> remote_port</code></em>,
+gst_net_client_clock_new (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                          <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *remote_address</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> remote_port</code></em>,
                           <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> base_time</code></em>);</pre>
 <p>Create a new <a class="link" href="GstNetClientClock.html" title="GstNetClientClock"><span class="type">GstNetClientClock</span></a> that will report the time
 provided by the <a class="link" href="GstNetTimeProvider.html" title="GstNetTimeProvider"><span class="type">GstNetTimeProvider</span></a> on <em class="parameter"><code>remote_address</code></em>
@@ -137,7 +152,7 @@
 <em class="parameter"><code>remote_port</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.6.3.9.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.6.4.9.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -169,7 +184,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.3.9.2.6"></a><h4>Returns</h4>
+<a name="id-1.2.6.4.9.2.6"></a><h4>Returns</h4>
 <p> a new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html"><span class="type">GstClock</span></a> that receives a time from the remote
 clock.</p>
 <p></p>
@@ -188,15 +203,30 @@
 <a name="GstNetClientClock.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstNetClientClock--address"></a><h3>The <code class="literal">“address”</code> property</h3>
-<pre class="programlisting">  “address”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “address”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The IP address of the machine providing a time server.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: "127.0.0.1"</p>
 </div>
 <hr>
 <div class="refsect2">
+<a name="GstNetClientClock--bus"></a><h3>The <code class="literal">“bus”</code> property</h3>
+<pre class="programlisting">  “bus”                      <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBus.html"><span class="type">GstBus</span></a> *</pre>
+<p>A GstBus on which to send clock status information.</p>
+<p>Flags: Read / Write</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstNetClientClock--minimum-update-interval"></a><h3>The <code class="literal">“minimum-update-interval”</code> property</h3>
+<pre class="programlisting">  “minimum-update-interval”  <span class="type">guint64</span></pre>
+<p>Minimum polling interval for packets, in nanoseconds(0 = no limit).</p>
+<p>Flags: Read / Write</p>
+<p>Default value: 50000000</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="GstNetClientClock--port"></a><h3>The <code class="literal">“port”</code> property</h3>
-<pre class="programlisting">  “port”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “port”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>The port on which the remote server is listening.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,65535]</p>
@@ -218,6 +248,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstNetTimeProvider.html b/docs/libs/html/GstNetTimeProvider.html
index 706a20a..40d9632 100644
--- a/docs/libs/html/GstNetTimeProvider.html
+++ b/docs/libs/html/GstNetTimeProvider.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-net.html" title="GStreamer Network Classes">
 <link rel="prev" href="gstreamer-libs-GstNetTimePacket.html" title="GstNetTimePacket">
 <link rel="next" href="gstreamer-check.html" title="GStreamer Check Unit Testing">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstNetTimeProvider.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstNetTimeProvider.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstNetTimeProvider.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstNetTimeProvider.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstNetTimeProvider.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -61,13 +61,13 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="GstNetTimeProvider.html#GstNetTimeProvider--active" title="The “active” property">active</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="GstNetTimeProvider.html#GstNetTimeProvider--address" title="The “address” property">address</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -78,7 +78,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="GstNetTimeProvider.html#GstNetTimeProvider--port" title="The “port” property">port</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -100,8 +100,8 @@
 </div>
 <div class="refsect1">
 <a name="GstNetTimeProvider.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> GstNetTimeProvider
 </pre>
@@ -126,12 +126,12 @@
 <a name="gst-net-time-provider-new"></a><h3>gst_net_time_provider_new ()</h3>
 <pre class="programlisting"><a class="link" href="GstNetTimeProvider.html" title="GstNetTimeProvider"><span class="returnvalue">GstNetTimeProvider</span></a> *
 gst_net_time_provider_new (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html"><span class="type">GstClock</span></a> *clock</code></em>,
-                           <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *address</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> port</code></em>);</pre>
+                           <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *address</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> port</code></em>);</pre>
 <p>Allows network clients to get the current time of <em class="parameter"><code>clock</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.6.5.9.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.6.6.9.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -148,7 +148,7 @@
 <td class="parameter_name"><p>address</p></td>
 <td class="parameter_description"><p> an address to bind on as a dotted quad
 (xxx.xxx.xxx.xxx), IPv6 address, or NULL to bind to all addresses. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>port</p></td>
@@ -159,7 +159,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.5.9.2.6"></a><h4>Returns</h4>
+<a name="id-1.2.6.6.9.2.6"></a><h4>Returns</h4>
 <p> the new <a class="link" href="GstNetTimeProvider.html" title="GstNetTimeProvider"><span class="type">GstNetTimeProvider</span></a>, or NULL on error</p>
 <p></p>
 </div>
@@ -177,7 +177,7 @@
 <a name="GstNetTimeProvider.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstNetTimeProvider--active"></a><h3>The <code class="literal">“active”</code> property</h3>
-<pre class="programlisting">  “active”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “active”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>TRUE if the clock will respond to queries over the network.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -185,7 +185,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstNetTimeProvider--address"></a><h3>The <code class="literal">“address”</code> property</h3>
-<pre class="programlisting">  “address”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “address”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The address to bind on, as a dotted quad (x.x.x.x).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: "0.0.0.0"</p>
@@ -200,7 +200,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstNetTimeProvider--port"></a><h3>The <code class="literal">“port”</code> property</h3>
-<pre class="programlisting">  “port”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “port”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>The port to receive the packets from, 0=allocate.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,65535]</p>
@@ -214,6 +214,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstPushSrc.html b/docs/libs/html/GstPushSrc.html
index 7f6a0d0..fd272d4 100644
--- a/docs/libs/html/GstPushSrc.html
+++ b/docs/libs/html/GstPushSrc.html
@@ -8,14 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstBaseTransform.html" title="GstBaseTransform">
 <link rel="next" href="GstAdapter.html" title="GstAdapter">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstPushSrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstPushSrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#GstPushSrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -53,8 +53,8 @@
 </div>
 <div class="refsect1">
 <a name="GstPushSrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a class="link" href="GstBaseSrc.html" title="GstBaseSrc">GstBaseSrc</a>
@@ -118,6 +118,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstTestClock.html b/docs/libs/html/GstTestClock.html
index f4605ee..a5aaa38 100644
--- a/docs/libs/html/GstTestClock.html
+++ b/docs/libs/html/GstTestClock.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-check.html" title="GStreamer Check Unit Testing">
 <link rel="prev" href="gstreamer-libs-GstStreamConsistency.html" title="GstStreamConsistency">
 <link rel="next" href="gstreamer-hierarchy.html" title="Object Hierarchy">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTestClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstTestClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTestClock.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstTestClock.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstTestClock.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -75,7 +75,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTestClock.html#gst-test-clock-peek-id-count" title="gst_test_clock_peek_id_count ()">gst_test_clock_peek_id_count</a> <span class="c_punctuation">()</span>
@@ -83,7 +83,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTestClock.html#gst-test-clock-has-id" title="gst_test_clock_has_id ()">gst_test_clock_has_id</a> <span class="c_punctuation">()</span>
@@ -91,7 +91,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTestClock.html#gst-test-clock-peek-next-pending-id" title="gst_test_clock_peek_next_pending_id ()">gst_test_clock_peek_next_pending_id</a> <span class="c_punctuation">()</span>
@@ -129,6 +129,30 @@
 <a class="link" href="GstTestClock.html#gst-test-clock-get-next-entry-time" title="gst_test_clock_get_next_entry_time ()">gst_test_clock_get_next_entry_time</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids" title="gst_test_clock_wait_for_multiple_pending_ids ()">gst_test_clock_wait_for_multiple_pending_ids</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstTestClock.html#gst-test-clock-id-list-get-latest-time" title="gst_test_clock_id_list_get_latest_time ()">gst_test_clock_id_list_get_latest_time</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="GstTestClock.html#gst-test-clock-process-id-list" title="gst_test_clock_process_id_list ()">gst_test_clock_process_id_list</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -168,8 +192,8 @@
 </div>
 <div class="refsect1">
 <a name="GstTestClock.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html">GstClock</a>
                 <span class="lineart">╰──</span> GstTestClock
@@ -222,7 +246,7 @@
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Time: %&quot;</span> GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-get-time">gst_clock_get_time</a></span> <span class="gtkdoc opt">(</span>clock<span class="gtkdoc opt">)));</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-advance-time">gst_test_clock_advance_time</a></span> <span class="gtkdoc opt">(</span> test_clock<span class="gtkdoc opt">,</span> <span class="number">1</span> <span class="gtkdoc opt">*</span> GST_SECOND<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Time: %&quot;</span> GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-get-time">gst_clock_get_time</a></span> <span class="gtkdoc opt">(</span>clock<span class="gtkdoc opt">)));</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-usleep">g_usleep</a></span> <span class="gtkdoc opt">(</span><span class="number">10</span> <span class="gtkdoc opt">*</span> G_USEC_PER_SEC<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Date-and-Time-Functions.html#g-usleep">g_usleep</a></span> <span class="gtkdoc opt">(</span><span class="number">10</span> <span class="gtkdoc opt">*</span> G_USEC_PER_SEC<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Time: %&quot;</span> GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-get-time">gst_clock_get_time</a></span> <span class="gtkdoc opt">(</span>clock<span class="gtkdoc opt">)));</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-set-time">gst_test_clock_set_time</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> <span class="number">42</span> <span class="gtkdoc opt">*</span> GST_SECOND<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Time: %&quot;</span> GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-get-time">gst_clock_get_time</a></span> <span class="gtkdoc opt">(</span>clock<span class="gtkdoc opt">)));</span>
@@ -240,7 +264,7 @@
 among them <a class="link" href="GstBaseSrc.html" title="GstBaseSrc"><span class="type">GstBaseSrc</span></a> and <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a>.</p>
 <p><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> keeps track of these clock notifications. By calling
 <a class="link" href="GstTestClock.html#gst-test-clock-wait-for-next-pending-id" title="gst_test_clock_wait_for_next_pending_id ()"><code class="function">gst_test_clock_wait_for_next_pending_id()</code></a> or
-<code class="function">gst_test_clock_wait_for_multiple_pending_ids()</code> a unit tests may wait for the
+<a class="link" href="GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids" title="gst_test_clock_wait_for_multiple_pending_ids ()"><code class="function">gst_test_clock_wait_for_multiple_pending_ids()</code></a> a unit tests may wait for the
 next one or several clock notifications to be requested. Additionally unit
 tests may release blocked waits in a controlled fashion by calling
 <a class="link" href="GstTestClock.html#gst-test-clock-process-next-clock-id" title="gst_test_clock_process_next_clock_id ()"><code class="function">gst_test_clock_process_next_clock_id()</code></a>. This way a unit test can control the
@@ -252,7 +276,7 @@
 notifications so far.</p>
 <p>N.B.: When a unit test waits for a certain amount of clock notifications to
 be requested in <a class="link" href="GstTestClock.html#gst-test-clock-wait-for-next-pending-id" title="gst_test_clock_wait_for_next_pending_id ()"><code class="function">gst_test_clock_wait_for_next_pending_id()</code></a> or
-<code class="function">gst_test_clock_wait_for_multiple_pending_ids()</code> then these functions may block
+<a class="link" href="GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids" title="gst_test_clock_wait_for_multiple_pending_ids ()"><code class="function">gst_test_clock_wait_for_multiple_pending_ids()</code></a> then these functions may block
 for a long time. If they block forever then the expected clock notifications
 were never requested from <a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a>, and so the assumptions in the code
 of the unit test are wrong. The unit test case runner in gstcheck is
@@ -373,18 +397,18 @@
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-advance-time">gst_test_clock_advance_time</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> latency<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Release the next blocking wait and make sure it is the one from element</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
 processed_id <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-process-next-clock-id">gst_test_clock_process_next_clock_id</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(</span>processed_id <span class="gtkdoc opt">==</span> pending_id<span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-ENTRY-STATUS:CAPS">GST_CLOCK_ENTRY_STATUS</a></span> <span class="gtkdoc opt">(</span>processed_id<span class="gtkdoc opt">), ==,</span> GST_CLOCK_OK<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(</span>processed_id <span class="gtkdoc opt">==</span> pending_id<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-ENTRY-STATUS:CAPS">GST_CLOCK_ENTRY_STATUS</a></span> <span class="gtkdoc opt">(</span>processed_id<span class="gtkdoc opt">), ==,</span> GST_CLOCK_OK<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-id-unref">gst_clock_id_unref</a></span> <span class="gtkdoc opt">(</span>pending_id<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-id-unref">gst_clock_id_unref</a></span> <span class="gtkdoc opt">(</span>processed_id<span class="gtkdoc opt">);</span>
 
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Validate that element produced an output buffer and check its timestamp</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function">get_number_of_output_buffer</span> <span class="gtkdoc opt">(...), ==,</span> <span class="number">1</span><span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function">get_number_of_output_buffer</span> <span class="gtkdoc opt">(...), ==,</span> <span class="number">1</span><span class="gtkdoc opt">);</span>
 buf <span class="gtkdoc opt">=</span> <span class="function">get_buffer_pushed_by_element</span> <span class="gtkdoc opt">(</span>element<span class="gtkdoc opt">, ...);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstBuffer.html#GST-BUFFER-TIMESTAMP:CAPS">GST_BUFFER_TIMESTAMP</a></span> <span class="gtkdoc opt">(</span>buf<span class="gtkdoc opt">), ==,</span> latency<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function">GST_BUFFER_TIMESTAMP</span> <span class="gtkdoc opt">(</span>buf<span class="gtkdoc opt">), ==,</span> latency<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#gst-buffer-unref">gst_buffer_unref</a></span> <span class="gtkdoc opt">(</span>buf<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Check that element does not wait for any clock notification</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-peek-next-pending-id">gst_test_clock_peek_next_pending_id</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">) ==</span> FALSE<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(!</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-peek-next-pending-id">gst_test_clock_peek_next_pending_id</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">));</span>
 
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Set time, create and push the second buffer</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-advance-time">gst_test_clock_advance_time</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> <span class="number">10</span> <span class="gtkdoc opt">*</span> GST_SECOND<span class="gtkdoc opt">);</span>
@@ -397,19 +421,19 @@
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-advance-time">gst_test_clock_advance_time</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> latency <span class="gtkdoc opt">+</span> <span class="number">7</span> <span class="gtkdoc opt">*</span> GST_MSECOND<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Release the next blocking wait and make sure it is the one from element</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
 processed_id <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-process-next-clock-id">gst_test_clock_process_next_clock_id</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(</span>processed_id <span class="gtkdoc opt">==</span> pending_id<span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-ENTRY-STATUS:CAPS">GST_CLOCK_ENTRY_STATUS</a></span> <span class="gtkdoc opt">(</span>processed_id<span class="gtkdoc opt">), ==,</span> GST_CLOCK_OK<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(</span>processed_id <span class="gtkdoc opt">==</span> pending_id<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-ENTRY-STATUS:CAPS">GST_CLOCK_ENTRY_STATUS</a></span> <span class="gtkdoc opt">(</span>processed_id<span class="gtkdoc opt">), ==,</span> GST_CLOCK_OK<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-id-unref">gst_clock_id_unref</a></span> <span class="gtkdoc opt">(</span>pending_id<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#gst-clock-id-unref">gst_clock_id_unref</a></span> <span class="gtkdoc opt">(</span>processed_id<span class="gtkdoc opt">);</span>
 
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Validate that element produced an output buffer and check its timestamp</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function">get_number_of_output_buffer</span> <span class="gtkdoc opt">(...), ==,</span> <span class="number">1</span><span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function">get_number_of_output_buffer</span> <span class="gtkdoc opt">(...), ==,</span> <span class="number">1</span><span class="gtkdoc opt">);</span>
 buf <span class="gtkdoc opt">=</span> <span class="function">get_buffer_pushed_by_element</span> <span class="gtkdoc opt">(</span>element<span class="gtkdoc opt">, ...);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstBuffer.html#GST-BUFFER-TIMESTAMP:CAPS">GST_BUFFER_TIMESTAMP</a></span> <span class="gtkdoc opt">(</span>buf<span class="gtkdoc opt">), ==,</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint">g_assert_cmpint</a></span> <span class="gtkdoc opt">(</span><span class="function">GST_BUFFER_TIMESTAMP</span> <span class="gtkdoc opt">(</span>buf<span class="gtkdoc opt">), ==,</span>
     <span class="number">10</span> <span class="gtkdoc opt">*</span> GST_SECOND <span class="gtkdoc opt">+</span> latency <span class="gtkdoc opt">+</span> <span class="number">7</span> <span class="gtkdoc opt">*</span> GST_MSECOND<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#gst-buffer-unref">gst_buffer_unref</a></span> <span class="gtkdoc opt">(</span>buf<span class="gtkdoc opt">);</span>
 <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#GST-INFO:CAPS">GST_INFO</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Check that element does not wait for any clock notification</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-peek-next-pending-id">gst_test_clock_peek_next_pending_id</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">) ==</span> FALSE<span class="gtkdoc opt">);</span>
+<span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert">g_assert</a></span> <span class="gtkdoc opt">(!</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#gst-test-clock-peek-next-pending-id">gst_test_clock_peek_next_pending_id</a></span> <span class="gtkdoc opt">(</span>test_clock<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">));</span>
 <span class="gtkdoc opt">...</span></pre></td>
       </tr>
     </tbody>
@@ -418,7 +442,7 @@
 
 </div>
 <br class="example-break"><p>Since <a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> is only supposed to be used in unit tests it calls
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert"><code class="function">g_assert()</code></a>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpint"><code class="function">g_assert_cmpint()</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert-cmpuint"><code class="function">g_assert_cmpuint()</code></a> to validate all function
+<a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert"><code class="function">g_assert()</code></a>, <a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpint"><code class="function">g_assert_cmpint()</code></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Testing.html#g-assert-cmpuint"><code class="function">g_assert_cmpuint()</code></a> to validate all function
 arguments. This will highlight any issues with the unit test code itself.</p>
 </div>
 <div class="refsect1">
@@ -545,7 +569,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-test-clock-peek-id-count"></a><h3>gst_test_clock_peek_id_count ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_test_clock_peek_id_count (<em class="parameter"><code><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> *test_clock</code></em>);</pre>
 <p>Determine the number of pending clock notifications that have been
 requested from the <em class="parameter"><code>test_clock</code></em>
@@ -576,7 +600,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-test-clock-has-id"></a><h3>gst_test_clock_has_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_test_clock_has_id (<em class="parameter"><code><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> *test_clock</code></em>,
                        <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockID</span></a> id</code></em>);</pre>
 <p>Checks whether <em class="parameter"><code>test_clock</code></em>
@@ -608,8 +632,8 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.7.6.9.7.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the clock has been asked to provide the given clock
-notification, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the clock has been asked to provide the given clock
+notification, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -617,7 +641,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-test-clock-peek-next-pending-id"></a><h3>gst_test_clock_peek_next_pending_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_test_clock_peek_next_pending_id (<em class="parameter"><code><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> *test_clock</code></em>,
                                      <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockID</span></a> *pending_id</code></em>);</pre>
 <p>Determines if the <em class="parameter"><code>pending_id</code></em>
@@ -625,9 +649,9 @@
 be triggered given the current time of the <em class="parameter"><code>test_clock</code></em>
 .</p>
 <p>MT safe.</p>
-<p>Return: <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>pending_id</code></em>
+<p>Return: <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>pending_id</code></em>
  is the next clock notification to be
-triggered, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+triggered, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <div class="refsect3">
 <a name="id-1.2.7.6.9.8.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -646,7 +670,7 @@
 <td class="parameter_name"><p>pending_id</p></td>
 <td class="parameter_description"><p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockID</span></a> clock
 notification to look for. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -684,7 +708,7 @@
 <td class="parameter_name"><p>pending_id</p></td>
 <td class="parameter_description"><p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockID</span></a>
 with information about the pending clock notification. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -697,10 +721,10 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_test_clock_wait_for_pending_id_count
                                (<em class="parameter"><code><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> *test_clock</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> count</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> count</code></em>);</pre>
 <div class="warning">
 <p><code class="literal">gst_test_clock_wait_for_pending_id_count</code> is deprecated and should not be used in newly-written code.</p>
-<p>use <code class="function">gst_test_clock_wait_for_multiple_pending_ids()</code> instead.</p>
+<p>use <a class="link" href="GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids" title="gst_test_clock_wait_for_multiple_pending_ids ()"><code class="function">gst_test_clock_wait_for_multiple_pending_ids()</code></a> instead.</p>
 </div>
 <p>Blocks until at least <em class="parameter"><code>count</code></em>
  clock notifications have been requested from
@@ -792,6 +816,110 @@
 </div>
 <p class="since">Since 1.2</p>
 </div>
+<hr>
+<div class="refsect2">
+<a name="gst-test-clock-wait-for-multiple-pending-ids"></a><h3>gst_test_clock_wait_for_multiple_pending_ids ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_test_clock_wait_for_multiple_pending_ids
+                               (<em class="parameter"><code><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> *test_clock</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> count</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> **pending_list</code></em>);</pre>
+<p>Blocks until at least <em class="parameter"><code>count</code></em>
+ clock notifications have been requested from
+<em class="parameter"><code>test_clock</code></em>
+. There is no timeout for this wait, see the main description of
+<a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a>.</p>
+<p>MT safe.</p>
+<div class="refsect3">
+<a name="id-1.2.7.6.9.13.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>test_clock</p></td>
+<td class="parameter_description"><p><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> for which to await having enough pending clock</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>count</p></td>
+<td class="parameter_description"><p>the number of pending clock notifications to wait for</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>pending_list</p></td>
+<td class="parameter_description"><p> Address
+of a <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> pointer variable to store the list of pending <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockIDs</span></a>
+that expired, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.ClockID][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-test-clock-id-list-get-latest-time"></a><h3>gst_test_clock_id_list_get_latest_time ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a>
+gst_test_clock_id_list_get_latest_time
+                               (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *pending_list</code></em>);</pre>
+<p>Finds the latest time inside the list.</p>
+<p>MT safe.</p>
+<div class="refsect3">
+<a name="id-1.2.7.6.9.14.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pending_list</p></td>
+<td class="parameter_description"><p> List
+of of pending <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockIDs</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.ClockID][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-test-clock-process-id-list"></a><h3>gst_test_clock_process_id_list ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_test_clock_process_id_list (<em class="parameter"><code><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> *test_clock</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *pending_list</code></em>);</pre>
+<p>Processes and releases the pending IDs in the list.</p>
+<p>MT safe.</p>
+<div class="refsect3">
+<a name="id-1.2.7.6.9.15.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>test_clock</p></td>
+<td class="parameter_description"><p><a class="link" href="GstTestClock.html" title="GstTestClock"><span class="type">GstTestClock</span></a> for which to process the pending IDs</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>pending_list</p></td>
+<td class="parameter_description"><p> List
+of pending <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockID"><span class="type">GstClockIDs</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.ClockID][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.4</p>
+</div>
 </div>
 <div class="refsect1">
 <a name="GstTestClock.other_details"></a><h2>Types and Values</h2>
@@ -850,6 +978,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstTimedValueControlSource.html b/docs/libs/html/GstTimedValueControlSource.html
index f961e63..7b6040f 100644
--- a/docs/libs/html/GstTimedValueControlSource.html
+++ b/docs/libs/html/GstTimedValueControlSource.html
@@ -8,15 +8,16 @@
 <link rel="up" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="prev" href="GstDirectControlBinding.html" title="GstDirectControlBinding">
 <link rel="next" href="GstInterpolationControlSource.html" title="GstInterpolationControlSource">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTimedValueControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstTimedValueControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTimedValueControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstTimedValueControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_signals">  <span class="dim">|</span> 
+                  <a href="#GstTimedValueControlSource.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-control.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -42,7 +43,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Sequences.html#GSequenceIter"><span class="returnvalue">GSequenceIter</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Sequences.html#GSequenceIter"><span class="returnvalue">GSequenceIter</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-find-control-point-iter" title="gst_timed_value_control_source_find_control_point_iter ()">gst_timed_value_control_source_find_control_point_iter</a> <span class="c_punctuation">()</span>
@@ -50,7 +51,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-set" title="gst_timed_value_control_source_set ()">gst_timed_value_control_source_set</a> <span class="c_punctuation">()</span>
@@ -58,7 +59,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-set-from-list" title="gst_timed_value_control_source_set_from_list ()">gst_timed_value_control_source_set_from_list</a> <span class="c_punctuation">()</span>
@@ -66,7 +67,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-get-all" title="gst_timed_value_control_source_get_all ()">gst_timed_value_control_source_get_all</a> <span class="c_punctuation">()</span>
@@ -74,7 +75,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-unset" title="gst_timed_value_control_source_unset ()">gst_timed_value_control_source_unset</a> <span class="c_punctuation">()</span>
@@ -90,7 +91,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-get-count" title="gst_timed_value_control_source_get_count ()">gst_timed_value_control_source_get_count</a> <span class="c_punctuation">()</span>
@@ -108,6 +109,33 @@
 </table></div>
 </div>
 <div class="refsect1">
+<a name="GstTimedValueControlSource.signals"></a><h2>Signals</h2>
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="signals_return">
+<col width="300px" class="signals_name">
+<col width="200px" class="signals_flags">
+</colgroup>
+<tbody>
+<tr>
+<td class="signal_type"><span class="returnvalue">void</span></td>
+<td class="signal_name"><a class="link" href="GstTimedValueControlSource.html#GstTimedValueControlSource-value-added" title="The “value-added” signal">value-added</a></td>
+<td class="signal_flags">Run First</td>
+</tr>
+<tr>
+<td class="signal_type"><span class="returnvalue">void</span></td>
+<td class="signal_name"><a class="link" href="GstTimedValueControlSource.html#GstTimedValueControlSource-value-changed" title="The “value-changed” signal">value-changed</a></td>
+<td class="signal_flags">Run First</td>
+</tr>
+<tr>
+<td class="signal_type"><span class="returnvalue">void</span></td>
+<td class="signal_name"><a class="link" href="GstTimedValueControlSource.html#GstTimedValueControlSource-value-removed" title="The “value-removed” signal">value-removed</a></td>
+<td class="signal_flags">Run First</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
 <a name="GstTimedValueControlSource.other"></a><h2>Types and Values</h2>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -122,8 +150,8 @@
 </div>
 <div class="refsect1">
 <a name="GstTimedValueControlSource.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html">GstControlSource</a>
                 <span class="lineart">╰──</span> GstTimedValueControlSource
@@ -147,16 +175,16 @@
 <a name="GstTimedValueControlSource.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-timed-value-control-source-find-control-point-iter"></a><h3>gst_timed_value_control_source_find_control_point_iter ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Sequences.html#GSequenceIter"><span class="returnvalue">GSequenceIter</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Sequences.html#GSequenceIter"><span class="returnvalue">GSequenceIter</span></a> *
 gst_timed_value_control_source_find_control_point_iter
                                (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Find last value before given timestamp in control point list.
 If all values in the control point list come after the given
-timestamp or no values exist, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned.</p>
+timestamp or no values exist, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned.</p>
 <p>For use in control source implementations.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.2.6"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.2.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -178,21 +206,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.2.7"></a><h4>Returns</h4>
-<p> the found <a href="http://library.gnome.org/devel/glib/unstable/glib-Sequences.html#GSequenceIter"><span class="type">GSequenceIter</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p>
+<a name="id-1.2.5.5.9.2.7"></a><h4>Returns</h4>
+<p> the found <a href="https://developer.gnome.org/glib/unstable/glib-Sequences.html#GSequenceIter"><span class="type">GSequenceIter</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-timed-value-control-source-set"></a><h3>gst_timed_value_control_source_set ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_timed_value_control_source_set (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>,
-                                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value</code></em>);</pre>
+                                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value</code></em>);</pre>
 <p>Set the value of given controller-handled property at a certain time.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -219,7 +247,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.3.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.5.9.3.6"></a><h4>Returns</h4>
 <p> FALSE if the values couldn't be set, TRUE otherwise.</p>
 <p></p>
 </div>
@@ -227,13 +255,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-timed-value-control-source-set-from-list"></a><h3>gst_timed_value_control_source_set_from_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_timed_value_control_source_set_from_list
                                (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *timedvalues</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *timedvalues</code></em>);</pre>
 <p>Sets multiple timed values at once.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -256,7 +284,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.4.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.5.9.4.6"></a><h4>Returns</h4>
 <p> FALSE if the values couldn't be set, TRUE otherwise.</p>
 <p></p>
 </div>
@@ -264,13 +292,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-timed-value-control-source-get-all"></a><h3>gst_timed_value_control_source_get_all ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
 gst_timed_value_control_source_get_all
                                (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>);</pre>
 <p>Returns a read-only copy of the list of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a> for the given property.
 Free the list after done with it.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -285,22 +313,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.5.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.5.9.5.6"></a><h4>Returns</h4>
 <p> a copy
-of the list, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the property isn't handled by the controller. </p>
+of the list, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the property isn't handled by the controller. </p>
 <p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstTimedValue]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-timed-value-control-source-unset"></a><h3>gst_timed_value_control_source_unset ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_timed_value_control_source_unset (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>,
                                       <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre>
 <p>Used to remove the value of given controller-handled property at a certain
 time.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -322,7 +350,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.6.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.5.9.6.6"></a><h4>Returns</h4>
 <p> FALSE if the value couldn't be unset (i.e. not found, TRUE otherwise.</p>
 <p></p>
 </div>
@@ -335,7 +363,7 @@
                                (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>);</pre>
 <p>Used to remove all time-stamped values of given controller-handled property</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -353,12 +381,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-timed-value-control-source-get-count"></a><h3>gst_timed_value_control_source_get_count ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_timed_value_control_source_get_count
                                (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>);</pre>
 <p>Get the number of control points that are set.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -373,7 +401,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.8.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.5.9.8.6"></a><h4>Returns</h4>
 <p> the number of control points that are set.</p>
 <p></p>
 </div>
@@ -386,7 +414,7 @@
                                (<em class="parameter"><code><a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self</code></em>);</pre>
 <p>Reset the controlled value cache.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -410,9 +438,131 @@
 <p>The instance structure of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a>.</p>
 </div>
 </div>
+<div class="refsect1">
+<a name="GstTimedValueControlSource.signal-details"></a><h2>Signal Details</h2>
+<div class="refsect2">
+<a name="GstTimedValueControlSource-value-added"></a><h3>The <code class="literal">“value-added”</code> signal</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+user_function (<a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self,
+               <span class="type">GstControlPoint</span>            *timed_value,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>                    user_data)</pre>
+<p>Emited right after the new value has been added to <em class="parameter"><code>self</code></em>
+</p>
+<p>Since 1.6</p>
+<div class="refsect3">
+<a name="id-1.2.5.5.11.2.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>The <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> into which a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a> has been
+added</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>timed_value</p></td>
+<td class="parameter_description"><p>The newly added <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p>Flags: Run First</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstTimedValueControlSource-value-changed"></a><h3>The <code class="literal">“value-changed”</code> signal</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+user_function (<a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self,
+               <span class="type">GstControlPoint</span>            *timed_value,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>                    user_data)</pre>
+<p>Emited right after the new value has been set on <em class="parameter"><code>timed_signals</code></em>
+</p>
+<p>Since 1.6</p>
+<div class="refsect3">
+<a name="id-1.2.5.5.11.3.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>The <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> on which a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a> has changed</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>timed_value</p></td>
+<td class="parameter_description"><p>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a> where the value changed</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p>Flags: Run First</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstTimedValueControlSource-value-removed"></a><h3>The <code class="literal">“value-removed”</code> signal</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+user_function (<a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> *self,
+               <span class="type">GstControlPoint</span>            *timed_value,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>                    user_data)</pre>
+<p>Emited when <em class="parameter"><code>timed_value</code></em>
+ is removed from <em class="parameter"><code>self</code></em>
+</p>
+<p>Since 1.6</p>
+<div class="refsect3">
+<a name="id-1.2.5.5.11.4.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>The <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource"><span class="type">GstTimedValueControlSource</span></a> from which a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a> has been
+removed</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>timed_value</p></td>
+<td class="parameter_description"><p>The removed <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html#GstTimedValue"><span class="type">GstTimedValue</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p>Flags: Run First</p>
+</div>
+</div>
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/GstTriggerControlSource.html b/docs/libs/html/GstTriggerControlSource.html
index 15aaf09..72c00df 100644
--- a/docs/libs/html/GstTriggerControlSource.html
+++ b/docs/libs/html/GstTriggerControlSource.html
@@ -8,15 +8,15 @@
 <link rel="up" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
 <link rel="prev" href="GstLFOControlSource.html" title="GstLFOControlSource">
 <link rel="next" href="gstreamer-net.html" title="GStreamer Network Classes">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#GstTriggerControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#GstTriggerControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#GstTriggerControlSource.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#GstTriggerControlSource.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#GstTriggerControlSource.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -29,7 +29,7 @@
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2><span class="refentrytitle"><a name="GstTriggerControlSource.top_of_page"></a>GstTriggerControlSource</span></h2>
-<p>GstTriggerControlSource — interpolation control source</p>
+<p>GstTriggerControlSource — trigger control source</p>
 </td>
 <td class="gallery_image" valign="top" align="right"></td>
 </tr></table></div>
@@ -86,8 +86,8 @@
 </div>
 <div class="refsect1">
 <a name="GstTriggerControlSource.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html">GstControlSource</a>
                 <span class="lineart">╰──</span> <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">GstTimedValueControlSource</a>
@@ -104,7 +104,7 @@
 <p><a class="link" href="GstTriggerControlSource.html" title="GstTriggerControlSource"><span class="type">GstTriggerControlSource</span></a> is a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstControlSource.html"><span class="type">GstControlSource</span></a>, that returns values from user-given
 control points. It allows for a tolerance on the time-stamps.</p>
 <p>To use <a class="link" href="GstTriggerControlSource.html" title="GstTriggerControlSource"><span class="type">GstTriggerControlSource</span></a> get a new instance by calling
-<a class="link" href="GstTriggerControlSource.html#gst-trigger-control-source-new" title="gst_trigger_control_source_new ()"><code class="function">gst_trigger_control_source_new()</code></a>, bind it to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> and set some
+<a class="link" href="GstTriggerControlSource.html#gst-trigger-control-source-new" title="gst_trigger_control_source_new ()"><code class="function">gst_trigger_control_source_new()</code></a>, bind it to a <a href="https://developer.gnome.org/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> and set some
 control points by calling <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-source-set" title="gst_timed_value_control_source_set ()"><code class="function">gst_timed_value_control_source_set()</code></a>.</p>
 <p>All functions are MT-safe.</p>
 </div>
@@ -150,6 +150,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/annotation-glossary.html b/docs/libs/html/annotation-glossary.html
index b8fb2a1..4d09a10 100644
--- a/docs/libs/html/annotation-glossary.html
+++ b/docs/libs/html/annotation-glossary.html
@@ -7,11 +7,11 @@
 <link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="up" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="prev" href="api-index-deprecated.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"><span id="nav_glossary"><a class="shortcut" href="#glsA">A</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#glsC">C</a>
@@ -20,6 +20,8 @@
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#glsI">I</a>
                      <span class="dim">|</span> 
+                  <a class="shortcut" href="#glsN">N</a>
+                     <span class="dim">|</span> 
                   <a class="shortcut" href="#glsO">O</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#glsS">S</a>
@@ -35,7 +37,7 @@
 <a name="annotation-glossary"></a>Annotation Glossary</h1></div></div></div>
 <a name="glsA"></a><h3 class="title">A</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
-<dd class="glossdef"><p>NULL is ok, both for passing and for returning.</p></dd>
+<dd class="glossdef"><p>NULL is OK, both for passing and for returning.</p></dd>
 <dt><span class="glossterm"><a name="annotation-glossterm-array"></a>array</span></dt>
 <dd class="glossdef"><p>Parameter points to an array of items.</p></dd>
 <a name="glsC"></a><h3 class="title">C</h3>
@@ -47,12 +49,17 @@
 <a name="glsI"></a><h3 class="title">I</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-in"></a>in</span></dt>
 <dd class="glossdef"><p>Parameter for input. Default is <acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>.</p></dd>
+<a name="glsN"></a><h3 class="title">N</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-nullable"></a>nullable</span></dt>
+<dd class="glossdef"><p>NULL may be passed as the value in, out, in-out; or as a return value.</p></dd>
 <a name="glsO"></a><h3 class="title">O</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-out"></a>out</span></dt>
 <dd class="glossdef"><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
 <dt><span class="glossterm"><a name="annotation-glossterm-out%20caller-allocates"></a>out caller-allocates</span></dt>
 <dd class="glossdef"><p>Out parameter, where caller must allocate storage.</p></dd>
 <a name="glsS"></a><h3 class="title">S</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-scope%20async"></a>scope async</span></dt>
+<dd class="glossdef"><p>The callback is valid until first called.</p></dd>
 <dt><span class="glossterm"><a name="annotation-glossterm-scope%20call"></a>scope call</span></dt>
 <dd class="glossdef"><p>The callback is valid only during the call to the method.</p></dd>
 <a name="glsT"></a><h3 class="title">T</h3>
@@ -69,6 +76,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/api-index-deprecated.html b/docs/libs/html/api-index-deprecated.html
index c938533..50d7948 100644
--- a/docs/libs/html/api-index-deprecated.html
+++ b/docs/libs/html/api-index-deprecated.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="prev" href="api-index-full.html" title="API Index">
 <link rel="next" href="annotation-glossary.html" title="Annotation Glossary">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxT">T</a></span></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -30,6 +30,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html
index 9f6d52c..6b06a1b 100644
--- a/docs/libs/html/api-index-full.html
+++ b/docs/libs/html/api-index-full.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="prev" href="gstreamer-hierarchy.html" title="Object Hierarchy">
 <link rel="next" href="api-index-deprecated.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxA">A</a>
                      <span class="dim">|</span> 
                   <a class="shortcut" href="#idxB">B</a>
@@ -124,6 +124,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstAdapter.html#gst-adapter-take-buffer-list" title="gst_adapter_take_buffer_list ()">gst_adapter_take_buffer_list</a>, function in <a class="link" href="GstAdapter.html" title="GstAdapter">GstAdapter</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstAdapter.html#gst-adapter-take-list" title="gst_adapter_take_list ()">gst_adapter_take_list</a>, function in <a class="link" href="GstAdapter.html" title="GstAdapter">GstAdapter</a>
 </dt>
 <dd></dd>
@@ -797,11 +801,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-init" title="gst_bit_reader_init ()">gst_bit_reader_init</a>, function in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
+<a class="link" href="gstreamer-libs-GstBitReader.html#GST-BIT-READER-INIT:CAPS" title="GST_BIT_READER_INIT()">GST_BIT_READER_INIT</a>, macro in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-libs-GstBitReader.html#GST-BIT-READER-INIT:CAPS" title="GST_BIT_READER_INIT()">GST_BIT_READER_INIT</a>, macro in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
+<a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-init" title="gst_bit_reader_init ()">gst_bit_reader_init</a>, function in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
 </dt>
 <dd></dd>
 <dt>
@@ -861,11 +865,19 @@
 </dt>
 <dd></dd>
 <dt>
-gst_buffer_add_net_address_meta, function in GstNetAddressMeta
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#gst-buffer-add-net-address-meta" title="gst_buffer_add_net_address_meta ()">gst_buffer_add_net_address_meta</a>, function in <a class="link" href="gstreamer-libs-GstNetAddressMeta.html" title="GstNetAddressMeta">GstNetAddressMeta</a>
 </dt>
 <dd></dd>
 <dt>
-gst_buffer_get_net_address_meta, macro in GstNetAddressMeta
+gst_buffer_add_net_control_message_meta, function in GstNetControlMessageMeta
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#gst-buffer-get-net-address-meta" title="gst_buffer_get_net_address_meta()">gst_buffer_get_net_address_meta</a>, macro in <a class="link" href="gstreamer-libs-GstNetAddressMeta.html" title="GstNetAddressMeta">GstNetAddressMeta</a>
+</dt>
+<dd></dd>
+<dt>
+gst_buffer_get_net_control_message_meta, macro in GstNetControlMessageMeta
 </dt>
 <dd></dd>
 <dt>
@@ -1049,6 +1061,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-sub-reader" title="gst_byte_reader_get_sub_reader ()">gst_byte_reader_get_sub_reader</a>, function in <a class="link" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">GstByteReader</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint16-be" title="gst_byte_reader_get_uint16_be ()">gst_byte_reader_get_uint16_be</a>, function in <a class="link" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">GstByteReader</a>
 </dt>
 <dd></dd>
@@ -1133,6 +1149,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32-peek" title="gst_byte_reader_masked_scan_uint32_peek ()">gst_byte_reader_masked_scan_uint32_peek</a>, function in <a class="link" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">GstByteReader</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-new" title="gst_byte_reader_new ()">gst_byte_reader_new</a>, function in <a class="link" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">GstByteReader</a>
 </dt>
 <dd></dd>
@@ -1257,6 +1277,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-sub-reader" title="gst_byte_reader_peek_sub_reader ()">gst_byte_reader_peek_sub_reader</a>, function in <a class="link" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">GstByteReader</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint16-be" title="gst_byte_reader_peek_uint16_be ()">gst_byte_reader_peek_uint16_be</a>, function in <a class="link" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">GstByteReader</a>
 </dt>
 <dd></dd>
@@ -1670,6 +1694,14 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-objects-destroyed-on-unref" title="gst_check_objects_destroyed_on_unref ()">gst_check_objects_destroyed_on_unref</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-object-destroyed-on-unref" title="gst_check_object_destroyed_on_unref ()">gst_check_object_destroyed_on_unref</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-run-suite" title="gst_check_run_suite ()">gst_check_run_suite</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
 </dt>
 <dd></dd>
@@ -1694,6 +1726,14 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-by-name-from-template" title="gst_check_setup_sink_pad_by_name_from_template ()">gst_check_setup_sink_pad_by_name_from_template</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-from-template" title="gst_check_setup_sink_pad_from_template ()">gst_check_setup_sink_pad_from_template</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad" title="gst_check_setup_src_pad ()">gst_check_setup_src_pad</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
 </dt>
 <dd></dd>
@@ -1702,6 +1742,14 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-by-name-from-template" title="gst_check_setup_src_pad_by_name_from_template ()">gst_check_setup_src_pad_by_name_from_template</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-from-template" title="gst_check_setup_src_pad_from_template ()">gst_check_setup_src_pad_from_template</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-teardown-element" title="gst_check_teardown_element ()">gst_check_teardown_element</a>, function in <a class="link" href="gstreamer-libs-GstCheck.html" title="GstCheck">GstCheck</a>
 </dt>
 <dd></dd>
@@ -2033,6 +2081,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-clear" title="gst_flow_combiner_clear ()">gst_flow_combiner_clear</a>, function in <a class="link" href="gstreamer-libs-GstFlowCombiner.html" title="GstFlowCombiner">GstFlowCombiner</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-free" title="gst_flow_combiner_free ()">gst_flow_combiner_free</a>, function in <a class="link" href="gstreamer-libs-GstFlowCombiner.html" title="GstFlowCombiner">GstFlowCombiner</a>
 </dt>
 <dd></dd>
@@ -2100,7 +2152,7 @@
 <dd></dd>
 <a name="idxN"></a><h3 class="title">N</h3>
 <dt>
-GstNetAddressMeta, struct in GstNetAddressMeta
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta">GstNetAddressMeta</a>, struct in <a class="link" href="gstreamer-libs-GstNetAddressMeta.html" title="GstNetAddressMeta">GstNetAddressMeta</a>
 </dt>
 <dd></dd>
 <dt>
@@ -2112,6 +2164,14 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstNetClientClock.html#GstNetClientClock--bus" title="The “bus” property">GstNetClientClock:bus</a>, object property in <a class="link" href="GstNetClientClock.html" title="GstNetClientClock">GstNetClientClock</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstNetClientClock.html#GstNetClientClock--minimum-update-interval" title="The “minimum-update-interval” property">GstNetClientClock:minimum-update-interval</a>, object property in <a class="link" href="GstNetClientClock.html" title="GstNetClientClock">GstNetClientClock</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstNetClientClock.html#GstNetClientClock--port" title="The “port” property">GstNetClientClock:port</a>, object property in <a class="link" href="GstNetClientClock.html" title="GstNetClientClock">GstNetClientClock</a>
 </dt>
 <dd></dd>
@@ -2120,6 +2180,10 @@
 </dt>
 <dd></dd>
 <dt>
+GstNetControlMessageMeta, struct in GstNetControlMessageMeta
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket">GstNetTimePacket</a>, struct in <a class="link" href="gstreamer-libs-GstNetTimePacket.html" title="GstNetTimePacket">GstNetTimePacket</a>
 </dt>
 <dd></dd>
@@ -2144,7 +2208,7 @@
 </dt>
 <dd></dd>
 <dt>
-gst_net_address_meta_get_info, function in GstNetAddressMeta
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#gst-net-address-meta-get-info" title="gst_net_address_meta_get_info ()">gst_net_address_meta_get_info</a>, function in <a class="link" href="gstreamer-libs-GstNetAddressMeta.html" title="GstNetAddressMeta">GstNetAddressMeta</a>
 </dt>
 <dd></dd>
 <dt>
@@ -2152,6 +2216,10 @@
 </dt>
 <dd></dd>
 <dt>
+gst_net_control_message_meta_get_info, function in GstNetControlMessageMeta
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gstreamer-libs-GstNetTimePacket.html#gst-net-time-packet-copy" title="gst_net_time_packet_copy ()">gst_net_time_packet_copy</a>, function in <a class="link" href="gstreamer-libs-GstNetTimePacket.html" title="GstNetTimePacket">GstNetTimePacket</a>
 </dt>
 <dd></dd>
@@ -2268,6 +2336,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstTestClock.html#gst-test-clock-id-list-get-latest-time" title="gst_test_clock_id_list_get_latest_time ()">gst_test_clock_id_list_get_latest_time</a>, function in <a class="link" href="GstTestClock.html" title="GstTestClock">GstTestClock</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstTestClock.html#gst-test-clock-new" title="gst_test_clock_new ()">gst_test_clock_new</a>, function in <a class="link" href="GstTestClock.html" title="GstTestClock">GstTestClock</a>
 </dt>
 <dd></dd>
@@ -2284,6 +2356,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstTestClock.html#gst-test-clock-process-id-list" title="gst_test_clock_process_id_list ()">gst_test_clock_process_id_list</a>, function in <a class="link" href="GstTestClock.html" title="GstTestClock">GstTestClock</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstTestClock.html#gst-test-clock-process-next-clock-id" title="gst_test_clock_process_next_clock_id ()">gst_test_clock_process_next_clock_id</a>, function in <a class="link" href="GstTestClock.html" title="GstTestClock">GstTestClock</a>
 </dt>
 <dd></dd>
@@ -2292,6 +2368,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids" title="gst_test_clock_wait_for_multiple_pending_ids ()">gst_test_clock_wait_for_multiple_pending_ids</a>, function in <a class="link" href="GstTestClock.html" title="GstTestClock">GstTestClock</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstTestClock.html#gst-test-clock-wait-for-next-pending-id" title="gst_test_clock_wait_for_next_pending_id ()">gst_test_clock_wait_for_next_pending_id</a>, function in <a class="link" href="GstTestClock.html" title="GstTestClock">GstTestClock</a>
 </dt>
 <dd></dd>
@@ -2304,6 +2384,18 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstTimedValueControlSource.html#GstTimedValueControlSource-value-added" title="The “value-added” signal">GstTimedValueControlSource::value-added</a>, object signal in <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">GstTimedValueControlSource</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstTimedValueControlSource.html#GstTimedValueControlSource-value-changed" title="The “value-changed” signal">GstTimedValueControlSource::value-changed</a>, object signal in <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">GstTimedValueControlSource</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="GstTimedValueControlSource.html#GstTimedValueControlSource-value-removed" title="The “value-removed” signal">GstTimedValueControlSource::value-removed</a>, object signal in <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">GstTimedValueControlSource</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstTimedValueControlSource.html#gst-timed-value-control-invalidate-cache" title="gst_timed_value_control_invalidate_cache ()">gst_timed_value_control_invalidate_cache</a>, function in <a class="link" href="GstTimedValueControlSource.html" title="GstTimedValueControlSource">GstTimedValueControlSource</a>
 </dt>
 <dd></dd>
@@ -2378,6 +2470,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-base.html b/docs/libs/html/gstreamer-base.html
index cdcb3c0..473c678 100644
--- a/docs/libs/html/gstreamer-base.html
+++ b/docs/libs/html/gstreamer-base.html
@@ -8,11 +8,11 @@
 <link rel="up" href="gstreamer-libs.html" title="Part I. GStreamer Libraries">
 <link rel="prev" href="gstreamer-libs.html" title="Part I. GStreamer Libraries">
 <link rel="next" href="GstBaseParse.html" title="GstBaseParse">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-libs.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -75,6 +75,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-check.html b/docs/libs/html/gstreamer-check.html
index 80afbbc..d9d674c 100644
--- a/docs/libs/html/gstreamer-check.html
+++ b/docs/libs/html/gstreamer-check.html
@@ -8,11 +8,11 @@
 <link rel="up" href="gstreamer-libs.html" title="Part I. GStreamer Libraries">
 <link rel="prev" href="GstNetTimeProvider.html" title="GstNetTimeProvider">
 <link rel="next" href="gstreamer-libs-GstCheck.html" title="GstCheck">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-libs.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -43,6 +43,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-control.html b/docs/libs/html/gstreamer-control.html
index 49959c3..42a3ea0 100644
--- a/docs/libs/html/gstreamer-control.html
+++ b/docs/libs/html/gstreamer-control.html
@@ -8,11 +8,11 @@
 <link rel="up" href="gstreamer-libs.html" title="Part I. GStreamer Libraries">
 <link rel="prev" href="gstreamer-libs-GstQueueArray.html" title="GstQueueArray">
 <link rel="next" href="GstARGBControlBinding.html" title="GstARGBControlBinding">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-libs.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -39,7 +39,7 @@
 <span class="refentrytitle"><a href="GstLFOControlSource.html">GstLFOControlSource</a></span><span class="refpurpose"> — LFO control source</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="GstTriggerControlSource.html">GstTriggerControlSource</a></span><span class="refpurpose"> — interpolation control source</span>
+<span class="refentrytitle"><a href="GstTriggerControlSource.html">GstTriggerControlSource</a></span><span class="refpurpose"> — trigger control source</span>
 </dt>
 </dl></div>
 <p>
@@ -49,6 +49,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-hierarchy.html b/docs/libs/html/gstreamer-hierarchy.html
index 9c83a6c..56cbe3d 100644
--- a/docs/libs/html/gstreamer-hierarchy.html
+++ b/docs/libs/html/gstreamer-hierarchy.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="prev" href="GstTestClock.html" title="GstTestClock">
 <link rel="next" href="api-index-full.html" title="API Index">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -23,8 +23,8 @@
 <div class="titlepage"><div><div><h1 class="title">
 <a name="gstreamer-hierarchy"></a>Object Hierarchy</h1></div></div></div>
 <pre class="screen">
-    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">├──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">├──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
     <span class="lineart">│</span>   <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
     <span class="lineart">│</span>       <span class="lineart">├──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
     <span class="lineart">│</span>       <span class="lineart">│</span>   <span class="lineart">├──</span> <a class="link" href="GstBaseParse.html" title="GstBaseParse">GstBaseParse</a>
@@ -51,6 +51,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-1.0.devhelp2 b/docs/libs/html/gstreamer-libs-1.0.devhelp2
index f753ba1..fe829d4 100644
--- a/docs/libs/html/gstreamer-libs-1.0.devhelp2
+++ b/docs/libs/html/gstreamer-libs-1.0.devhelp2
@@ -28,6 +28,7 @@
         <sub name="GstTriggerControlSource" link="GstTriggerControlSource.html"/>
       </sub>
       <sub name="GStreamer Network Classes" link="gstreamer-net.html">
+        <sub name="GstNetAddressMeta" link="gstreamer-libs-GstNetAddressMeta.html"/>
         <sub name="GstNetClientClock" link="GstNetClientClock.html"/>
         <sub name="GstNetTimePacket" link="gstreamer-libs-GstNetTimePacket.html"/>
         <sub name="GstNetTimeProvider" link="GstNetTimeProvider.html"/>
@@ -194,6 +195,7 @@
     <keyword type="function" name="gst_adapter_take_buffer ()" link="GstAdapter.html#gst-adapter-take-buffer"/>
     <keyword type="function" name="gst_adapter_take_buffer_fast ()" link="GstAdapter.html#gst-adapter-take-buffer-fast" since="1.2"/>
     <keyword type="function" name="gst_adapter_take_list ()" link="GstAdapter.html#gst-adapter-take-list"/>
+    <keyword type="function" name="gst_adapter_take_buffer_list ()" link="GstAdapter.html#gst-adapter-take-buffer-list" since="1.6"/>
     <keyword type="function" name="gst_adapter_prev_pts ()" link="GstAdapter.html#gst-adapter-prev-pts"/>
     <keyword type="function" name="gst_adapter_prev_dts ()" link="GstAdapter.html#gst-adapter-prev-dts"/>
     <keyword type="function" name="gst_adapter_prev_pts_at_offset ()" link="GstAdapter.html#gst-adapter-prev-pts-at-offset" since="1.2"/>
@@ -234,6 +236,8 @@
     <keyword type="function" name="gst_byte_reader_new ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-new"/>
     <keyword type="function" name="gst_byte_reader_free ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-free"/>
     <keyword type="function" name="gst_byte_reader_init ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-init"/>
+    <keyword type="function" name="gst_byte_reader_peek_sub_reader ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-sub-reader" since="1.6"/>
+    <keyword type="function" name="gst_byte_reader_get_sub_reader ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-sub-reader" since="1.6"/>
     <keyword type="function" name="gst_byte_reader_get_pos ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-pos"/>
     <keyword type="function" name="gst_byte_reader_get_remaining ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-remaining"/>
     <keyword type="function" name="gst_byte_reader_set_pos ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-set-pos"/>
@@ -287,6 +291,7 @@
     <keyword type="function" name="gst_byte_reader_dup_data ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-dup-data"/>
     <keyword type="function" name="gst_byte_reader_peek_data ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-data"/>
     <keyword type="function" name="gst_byte_reader_masked_scan_uint32 ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32"/>
+    <keyword type="function" name="gst_byte_reader_masked_scan_uint32_peek ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32-peek" since="1.6"/>
     <keyword type="macro" name="gst_byte_reader_get_string()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-string"/>
     <keyword type="function" name="gst_byte_reader_get_string_utf8 ()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-string-utf8"/>
     <keyword type="macro" name="gst_byte_reader_peek_string()" link="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-string"/>
@@ -467,6 +472,7 @@
     <keyword type="function" name="gst_flow_combiner_update_flow ()" link="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-update-flow" since="1.4"/>
     <keyword type="function" name="gst_flow_combiner_add_pad ()" link="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-add-pad" since="1.4"/>
     <keyword type="function" name="gst_flow_combiner_remove_pad ()" link="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-remove-pad" since="1.4"/>
+    <keyword type="function" name="gst_flow_combiner_clear ()" link="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-clear" since="1.6"/>
     <keyword type="function" name="gst_type_find_helper ()" link="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper"/>
     <keyword type="function" name="gst_type_find_helper_for_buffer ()" link="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-for-buffer"/>
     <keyword type="function" name="gst_type_find_helper_for_extension ()" link="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-for-extension"/>
@@ -517,6 +523,9 @@
     <keyword type="function" name="gst_timed_value_control_source_get_count ()" link="GstTimedValueControlSource.html#gst-timed-value-control-source-get-count"/>
     <keyword type="function" name="gst_timed_value_control_invalidate_cache ()" link="GstTimedValueControlSource.html#gst-timed-value-control-invalidate-cache"/>
     <keyword type="struct" name="struct GstTimedValueControlSource" link="GstTimedValueControlSource.html#GstTimedValueControlSource-struct"/>
+    <keyword type="signal" name="The “value-added” signal" link="GstTimedValueControlSource.html#GstTimedValueControlSource-value-added"/>
+    <keyword type="signal" name="The “value-changed” signal" link="GstTimedValueControlSource.html#GstTimedValueControlSource-value-changed"/>
+    <keyword type="signal" name="The “value-removed” signal" link="GstTimedValueControlSource.html#GstTimedValueControlSource-value-removed"/>
     <keyword type="function" name="gst_interpolation_control_source_new ()" link="GstInterpolationControlSource.html#gst-interpolation-control-source-new"/>
     <keyword type="struct" name="struct GstInterpolationControlSource" link="GstInterpolationControlSource.html#GstInterpolationControlSource-struct"/>
     <keyword type="enum" name="enum GstInterpolationMode" link="GstInterpolationControlSource.html#GstInterpolationMode"/>
@@ -533,9 +542,15 @@
     <keyword type="macro" name="GST_TYPE_TRIGGER_WAVEFORM" link="GstTriggerControlSource.html#GST-TYPE-TRIGGER-WAVEFORM:CAPS"/>
     <keyword type="struct" name="struct GstTriggerControlSource" link="GstTriggerControlSource.html#GstTriggerControlSource-struct"/>
     <keyword type="property" name="The “tolerance” property" link="GstTriggerControlSource.html#GstTriggerControlSource--tolerance"/>
+    <keyword type="function" name="gst_buffer_add_net_address_meta ()" link="gstreamer-libs-GstNetAddressMeta.html#gst-buffer-add-net-address-meta"/>
+    <keyword type="macro" name="gst_buffer_get_net_address_meta()" link="gstreamer-libs-GstNetAddressMeta.html#gst-buffer-get-net-address-meta"/>
+    <keyword type="function" name="gst_net_address_meta_get_info ()" link="gstreamer-libs-GstNetAddressMeta.html#gst-net-address-meta-get-info"/>
+    <keyword type="struct" name="struct GstNetAddressMeta" link="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta"/>
     <keyword type="function" name="gst_net_client_clock_new ()" link="GstNetClientClock.html#gst-net-client-clock-new"/>
     <keyword type="struct" name="struct GstNetClientClock" link="GstNetClientClock.html#GstNetClientClock-struct"/>
     <keyword type="property" name="The “address” property" link="GstNetClientClock.html#GstNetClientClock--address"/>
+    <keyword type="property" name="The “bus” property" link="GstNetClientClock.html#GstNetClientClock--bus"/>
+    <keyword type="property" name="The “minimum-update-interval” property" link="GstNetClientClock.html#GstNetClientClock--minimum-update-interval"/>
     <keyword type="property" name="The “port” property" link="GstNetClientClock.html#GstNetClientClock--port"/>
     <keyword type="property" name="The “round-trip-limit” property" link="GstNetClientClock.html#GstNetClientClock--round-trip-limit"/>
     <keyword type="function" name="gst_net_time_packet_new ()" link="gstreamer-libs-GstNetTimePacket.html#gst-net-time-packet-new"/>
@@ -600,6 +615,12 @@
     <keyword type="function" name="gst_check_run_suite ()" link="gstreamer-libs-GstCheck.html#gst-check-run-suite"/>
     <keyword type="function" name="gst_check_setup_events ()" link="gstreamer-libs-GstCheck.html#gst-check-setup-events"/>
     <keyword type="function" name="gst_check_setup_events_with_stream_id ()" link="gstreamer-libs-GstCheck.html#gst-check-setup-events-with-stream-id"/>
+    <keyword type="function" name="gst_check_setup_sink_pad_by_name_from_template ()" link="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-by-name-from-template" since="1.4"/>
+    <keyword type="function" name="gst_check_setup_sink_pad_from_template ()" link="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-from-template" since="1.4"/>
+    <keyword type="function" name="gst_check_setup_src_pad_by_name_from_template ()" link="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-by-name-from-template" since="1.4"/>
+    <keyword type="function" name="gst_check_setup_src_pad_from_template ()" link="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-from-template" since="1.4"/>
+    <keyword type="function" name="gst_check_objects_destroyed_on_unref ()" link="gstreamer-libs-GstCheck.html#gst-check-objects-destroyed-on-unref" since="1.6"/>
+    <keyword type="function" name="gst_check_object_destroyed_on_unref ()" link="gstreamer-libs-GstCheck.html#gst-check-object-destroyed-on-unref" since="1.6"/>
     <keyword type="macro" name="GST_END_TEST" link="gstreamer-libs-GstCheck.html#GST-END-TEST:CAPS"/>
     <keyword type="function" name="gst_buffer_straw_start_pipeline ()" link="gstreamer-libs-GstBufferStraw.html#gst-buffer-straw-start-pipeline"/>
     <keyword type="function" name="gst_buffer_straw_get_buffer ()" link="gstreamer-libs-GstBufferStraw.html#gst-buffer-straw-get-buffer"/>
@@ -620,6 +641,9 @@
     <keyword type="function" name="gst_test_clock_wait_for_pending_id_count ()" link="GstTestClock.html#gst-test-clock-wait-for-pending-id-count" deprecated="use gst_test_clock_wait_for_multiple_pending_ids() instead." since="1.2"/>
     <keyword type="function" name="gst_test_clock_process_next_clock_id ()" link="GstTestClock.html#gst-test-clock-process-next-clock-id" since="1.2"/>
     <keyword type="function" name="gst_test_clock_get_next_entry_time ()" link="GstTestClock.html#gst-test-clock-get-next-entry-time" since="1.2"/>
+    <keyword type="function" name="gst_test_clock_wait_for_multiple_pending_ids ()" link="GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids" since="1.4"/>
+    <keyword type="function" name="gst_test_clock_id_list_get_latest_time ()" link="GstTestClock.html#gst-test-clock-id-list-get-latest-time" since="1.4"/>
+    <keyword type="function" name="gst_test_clock_process_id_list ()" link="GstTestClock.html#gst-test-clock-process-id-list" since="1.4"/>
     <keyword type="struct" name="struct GstTestClock" link="GstTestClock.html#GstTestClock-struct"/>
     <keyword type="struct" name="struct GstTestClockClass" link="GstTestClock.html#GstTestClockClass" since="1.2"/>
     <keyword type="property" name="The “start-time” property" link="GstTestClock.html#GstTestClock--start-time"/>
diff --git a/docs/libs/html/gstreamer-libs-GstBitReader.html b/docs/libs/html/gstreamer-libs-GstBitReader.html
index de55bc9..0ff8044 100644
--- a/docs/libs/html/gstreamer-libs-GstBitReader.html
+++ b/docs/libs/html/gstreamer-libs-GstBitReader.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstAdapter.html" title="GstAdapter">
 <link rel="next" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstBitReader.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstBitReader.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstBitReader.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -72,7 +71,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-pos" title="gst_bit_reader_get_pos ()">gst_bit_reader_get_pos</a> <span class="c_punctuation">()</span>
@@ -80,7 +79,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-remaining" title="gst_bit_reader_get_remaining ()">gst_bit_reader_get_remaining</a> <span class="c_punctuation">()</span>
@@ -88,7 +87,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-set-pos" title="gst_bit_reader_set_pos ()">gst_bit_reader_set_pos</a> <span class="c_punctuation">()</span>
@@ -96,7 +95,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-size" title="gst_bit_reader_get_size ()">gst_bit_reader_get_size</a> <span class="c_punctuation">()</span>
@@ -104,7 +103,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-skip" title="gst_bit_reader_skip ()">gst_bit_reader_skip</a> <span class="c_punctuation">()</span>
@@ -112,7 +111,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-skip-to-byte" title="gst_bit_reader_skip_to_byte ()">gst_bit_reader_skip_to_byte</a> <span class="c_punctuation">()</span>
@@ -120,7 +119,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-bits-uint16" title="gst_bit_reader_get_bits_uint16 ()">gst_bit_reader_get_bits_uint16</a> <span class="c_punctuation">()</span>
@@ -128,7 +127,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-bits-uint32" title="gst_bit_reader_get_bits_uint32 ()">gst_bit_reader_get_bits_uint32</a> <span class="c_punctuation">()</span>
@@ -136,7 +135,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-bits-uint64" title="gst_bit_reader_get_bits_uint64 ()">gst_bit_reader_get_bits_uint64</a> <span class="c_punctuation">()</span>
@@ -144,7 +143,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-get-bits-uint8" title="gst_bit_reader_get_bits_uint8 ()">gst_bit_reader_get_bits_uint8</a> <span class="c_punctuation">()</span>
@@ -152,7 +151,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-peek-bits-uint16" title="gst_bit_reader_peek_bits_uint16 ()">gst_bit_reader_peek_bits_uint16</a> <span class="c_punctuation">()</span>
@@ -160,7 +159,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-peek-bits-uint32" title="gst_bit_reader_peek_bits_uint32 ()">gst_bit_reader_peek_bits_uint32</a> <span class="c_punctuation">()</span>
@@ -168,7 +167,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-peek-bits-uint64" title="gst_bit_reader_peek_bits_uint64 ()">gst_bit_reader_peek_bits_uint64</a> <span class="c_punctuation">()</span>
@@ -176,7 +175,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-peek-bits-uint8" title="gst_bit_reader_peek_bits_uint8 ()">gst_bit_reader_peek_bits_uint8</a> <span class="c_punctuation">()</span>
@@ -279,11 +278,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstBitReader.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstBitReader.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gstbitreader.h&gt;
 </pre>
@@ -305,7 +299,7 @@
 be assigned to a variable. In that case you have to use
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-init" title="gst_bit_reader_init ()"><code class="function">gst_bit_reader_init()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -333,12 +327,12 @@
 <a name="gst-bit-reader-new"></a><h3>gst_bit_reader_new ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="returnvalue">GstBitReader</span></a> *
 gst_bit_reader_new (<em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Create a new <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance, which will read from <em class="parameter"><code>data</code></em>
 .</p>
 <p>Free-function: gst_bit_reader_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.3.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -362,7 +356,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.3.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.3.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -375,7 +369,7 @@
 <p>Frees a <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance, which was previously allocated by
 <a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-new" title="gst_bit_reader_new ()"><code class="function">gst_bit_reader_new()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -396,12 +390,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bit_reader_init (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                      <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Initializes a <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance to read from <em class="parameter"><code>data</code></em>
 . This function
 can be called on already initialized instances.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -432,11 +426,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-pos"></a><h3>gst_bit_reader_get_pos ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_bit_reader_get_pos (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>);</pre>
 <p>Returns the current position of a <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance in bits.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -451,7 +445,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.6.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.6.6"></a><h4>Returns</h4>
 <p> The current position of <em class="parameter"><code>reader</code></em>
 in bits.</p>
 <p></p>
@@ -460,11 +454,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-remaining"></a><h3>gst_bit_reader_get_remaining ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_bit_reader_get_remaining (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>);</pre>
 <p>Returns the remaining number of bits of a <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -479,7 +473,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.7.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.7.6"></a><h4>Returns</h4>
 <p> The remaining number of bits of <em class="parameter"><code>reader</code></em>
 instance.</p>
 <p></p>
@@ -488,13 +482,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-set-pos"></a><h3>gst_bit_reader_set_pos ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_set_pos (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                        <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pos</code></em>);</pre>
+                        <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pos</code></em>);</pre>
 <p>Sets the new position of a <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance to <em class="parameter"><code>pos</code></em>
  in bits.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -516,8 +510,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the position could be set successfully, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<a name="id-1.2.4.9.7.8.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the position could be set successfully, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 otherwise.</p>
 <p></p>
 </div>
@@ -525,11 +519,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-size"></a><h3>gst_bit_reader_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_bit_reader_get_size (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>);</pre>
 <p>Returns the total number of bits of a <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -544,7 +538,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.9.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.9.6"></a><h4>Returns</h4>
 <p> The total number of bits of <em class="parameter"><code>reader</code></em>
 instance.</p>
 <p></p>
@@ -553,13 +547,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-skip"></a><h3>gst_bit_reader_skip ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_skip (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Skips <em class="parameter"><code>nbits</code></em>
  bits of the <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -581,20 +575,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.10.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>nbits</code></em>
-bits could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.10.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>nbits</code></em>
+bits could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-skip-to-byte"></a><h3>gst_bit_reader_skip_to_byte ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_skip_to_byte (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>);</pre>
 <p>Skips until the next byte.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -609,23 +603,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.11.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.11.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-bits-uint16"></a><h3>gst_bit_reader_get_bits_uint16 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_get_bits_uint16 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint16</span> *val</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -652,23 +646,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.12.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.12.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-bits-uint32"></a><h3>gst_bit_reader_get_bits_uint32 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_get_bits_uint32 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint32</span> *val</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -695,23 +689,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.13.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-bits-uint64"></a><h3>gst_bit_reader_get_bits_uint64 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_get_bits_uint64 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint64</span> *val</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -738,23 +732,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.14.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-get-bits-uint8"></a><h3>gst_bit_reader_get_bits_uint8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_get_bits_uint8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint8</span> *val</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -781,23 +775,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.15.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-peek-bits-uint16"></a><h3>gst_bit_reader_peek_bits_uint16 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_peek_bits_uint16 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                  <em class="parameter"><code><span class="type">guint16</span> *val</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -824,23 +818,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.16.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-peek-bits-uint32"></a><h3>gst_bit_reader_peek_bits_uint32 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_peek_bits_uint32 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                  <em class="parameter"><code><span class="type">guint32</span> *val</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -867,23 +861,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.17.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-peek-bits-uint64"></a><h3>gst_bit_reader_peek_bits_uint64 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_peek_bits_uint64 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                  <em class="parameter"><code><span class="type">guint64</span> *val</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -910,23 +904,23 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-bit-reader-peek-bits-uint8"></a><h3>gst_bit_reader_peek_bits_uint8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_bit_reader_peek_bits_uint8 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint8</span> *val</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -953,8 +947,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.9.7.19.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -963,12 +957,12 @@
 <a name="gst-bit-reader-skip-unchecked"></a><h3>gst_bit_reader_skip_unchecked ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_bit_reader_skip_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Skips <em class="parameter"><code>nbits</code></em>
  bits of the <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> instance without checking if there
 are enough bits available in the bit reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -998,7 +992,7 @@
 <p>Skips until the next byte without checking if there are enough bits
 available in the bit reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1019,13 +1013,13 @@
 <pre class="programlisting"><span class="returnvalue">guint16</span>
 gst_bit_reader_get_bits_uint16_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position without
 checking if there are enough bits available in the bit reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1047,7 +1041,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.22.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.22.6"></a><h4>Returns</h4>
 <p> unsigned 16 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1058,13 +1052,13 @@
 <pre class="programlisting"><span class="returnvalue">guint32</span>
 gst_bit_reader_get_bits_uint32_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position without
 checking if there are enough bits available in the bit reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1086,7 +1080,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.23.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.23.6"></a><h4>Returns</h4>
 <p> unsigned 32 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1097,13 +1091,13 @@
 <pre class="programlisting"><span class="returnvalue">guint64</span>
 gst_bit_reader_get_bits_uint64_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position without
 checking if there are enough bits available in the bit reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1125,7 +1119,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.24.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.24.6"></a><h4>Returns</h4>
 <p> unsigned 64 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1136,13 +1130,13 @@
 <pre class="programlisting"><span class="returnvalue">guint8</span>
 gst_bit_reader_get_bits_uint8_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  and update the current position without
 checking if there are enough bits available in the bit reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1164,7 +1158,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.25.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.25.6"></a><h4>Returns</h4>
 <p> unsigned 8 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1175,13 +1169,13 @@
 <pre class="programlisting"><span class="returnvalue">guint16</span>
 gst_bit_reader_peek_bits_uint16_unchecked
                                (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position without
 checking if there are enough bits available in the bit reader</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1203,7 +1197,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.26.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.26.6"></a><h4>Returns</h4>
 <p> unsigned 16 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1214,13 +1208,13 @@
 <pre class="programlisting"><span class="returnvalue">guint32</span>
 gst_bit_reader_peek_bits_uint32_unchecked
                                (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position without
 checking if there are enough bits available in the bit reader</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1242,7 +1236,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.27.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.27.6"></a><h4>Returns</h4>
 <p> unsigned 32 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1253,13 +1247,13 @@
 <pre class="programlisting"><span class="returnvalue">guint64</span>
 gst_bit_reader_peek_bits_uint64_unchecked
                                (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position without
 checking if there are enough bits available in the bit reader</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1281,7 +1275,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.28.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.28.6"></a><h4>Returns</h4>
 <p> unsigned 64 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1292,13 +1286,13 @@
 <pre class="programlisting"><span class="returnvalue">guint8</span>
 gst_bit_reader_peek_bits_uint8_unchecked
                                (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstBitReader.html#GstBitReader" title="GstBitReader"><span class="type">GstBitReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbits</code></em>);</pre>
 <p>Read <em class="parameter"><code>nbits</code></em>
  bits into <em class="parameter"><code>val</code></em>
  but keep the current position without
 checking if there are enough bits available in the bit reader</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.9.7.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1320,7 +1314,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.9.8.29.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.9.7.29.6"></a><h4>Returns</h4>
 <p> unsigned 8 bit integer with the bits.</p>
 <p></p>
 </div>
@@ -1340,7 +1334,7 @@
 </pre>
 <p>A bit reader instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.9.9.2.5"></a><h4>Members</h4>
+<a name="id-1.2.4.9.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -1355,18 +1349,18 @@
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBitReader.size"></a>size</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBitReader.size"></a>size</code></em>;</p></td>
 <td class="struct_member_description"><p>Size of <em class="parameter"><code>data</code></em>
 in bytes</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBitReader.byte"></a>byte</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBitReader.byte"></a>byte</code></em>;</p></td>
 <td class="struct_member_description"><p>Current byte position</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBitReader.bit"></a>bit</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstBitReader.bit"></a>bit</code></em>;</p></td>
 <td class="struct_member_description"><p>Bit position in the current byte</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1378,6 +1372,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstBufferStraw.html b/docs/libs/html/gstreamer-libs-GstBufferStraw.html
index c662744..862cb2b 100644
--- a/docs/libs/html/gstreamer-libs-GstBufferStraw.html
+++ b/docs/libs/html/gstreamer-libs-GstBufferStraw.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-check.html" title="GStreamer Check Unit Testing">
 <link rel="prev" href="gstreamer-libs-GstCheck.html" title="GstCheck">
 <link rel="next" href="gstreamer-libs-GstStreamConsistency.html" title="GstStreamConsistency">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstBufferStraw.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstBufferStraw.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstBufferStraw.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-check.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -68,11 +67,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstBufferStraw.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstBufferStraw.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/check/gstbufferstraw.h&gt;
 </pre>
@@ -105,7 +99,7 @@
 is intended for unit tests, not general API use. In fact it calls fail_if
 from libcheck, so you cannot use it outside unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.4.7.2.8"></a><h4>Parameters</h4>
+<a name="id-1.2.7.4.6.2.8"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -145,7 +139,7 @@
  and <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.7.4.7.3.6"></a><h4>Parameters</h4>
+<a name="id-1.2.7.4.6.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -167,7 +161,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.4.7.3.7"></a><h4>Returns</h4>
+<a name="id-1.2.7.4.6.3.7"></a><h4>Returns</h4>
 <p> the captured <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>.</p>
 <p></p>
 </div>
@@ -179,14 +173,14 @@
 gst_buffer_straw_stop_pipeline (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *bin</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Set <em class="parameter"><code>bin</code></em>
- to <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><span class="type">GST_STATE_NULL</span></a> and release resource allocated in
+ to <span class="type">GST_STATE_NULL</span> and release resource allocated in
 <a class="link" href="gstreamer-libs-GstBufferStraw.html#gst-buffer-straw-start-pipeline" title="gst_buffer_straw_start_pipeline ()"><code class="function">gst_buffer_straw_start_pipeline()</code></a>.</p>
 <p>You must have previously called <a class="link" href="gstreamer-libs-GstBufferStraw.html#gst-buffer-straw-start-pipeline" title="gst_buffer_straw_start_pipeline ()"><code class="function">gst_buffer_straw_start_pipeline()</code></a> on
 <em class="parameter"><code>pipeline</code></em>
  and <em class="parameter"><code>pad</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.7.4.7.4.6"></a><h4>Parameters</h4>
+<a name="id-1.2.7.4.6.4.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -215,6 +209,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstByteReader.html b/docs/libs/html/gstreamer-libs-GstByteReader.html
index 91e5f08..0a5fc83 100644
--- a/docs/libs/html/gstreamer-libs-GstByteReader.html
+++ b/docs/libs/html/gstreamer-libs-GstByteReader.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">
 <link rel="next" href="gstreamer-libs-GstByteWriter.html" title="GstByteWriter">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstByteReader.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstByteReader.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstByteReader.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -73,7 +72,23 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-sub-reader" title="gst_byte_reader_peek_sub_reader ()">gst_byte_reader_peek_sub_reader</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-sub-reader" title="gst_byte_reader_get_sub_reader ()">gst_byte_reader_get_sub_reader</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-pos" title="gst_byte_reader_get_pos ()">gst_byte_reader_get_pos</a> <span class="c_punctuation">()</span>
@@ -81,7 +96,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-remaining" title="gst_byte_reader_get_remaining ()">gst_byte_reader_get_remaining</a> <span class="c_punctuation">()</span>
@@ -89,7 +104,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-set-pos" title="gst_byte_reader_set_pos ()">gst_byte_reader_set_pos</a> <span class="c_punctuation">()</span>
@@ -97,7 +112,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-size" title="gst_byte_reader_get_size ()">gst_byte_reader_get_size</a> <span class="c_punctuation">()</span>
@@ -105,7 +120,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-skip" title="gst_byte_reader_skip ()">gst_byte_reader_skip</a> <span class="c_punctuation">()</span>
@@ -113,7 +128,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int8" title="gst_byte_reader_get_int8 ()">gst_byte_reader_get_int8</a> <span class="c_punctuation">()</span>
@@ -121,7 +136,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int16-be" title="gst_byte_reader_get_int16_be ()">gst_byte_reader_get_int16_be</a> <span class="c_punctuation">()</span>
@@ -129,7 +144,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int16-le" title="gst_byte_reader_get_int16_le ()">gst_byte_reader_get_int16_le</a> <span class="c_punctuation">()</span>
@@ -137,7 +152,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int24-be" title="gst_byte_reader_get_int24_be ()">gst_byte_reader_get_int24_be</a> <span class="c_punctuation">()</span>
@@ -145,7 +160,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int24-le" title="gst_byte_reader_get_int24_le ()">gst_byte_reader_get_int24_le</a> <span class="c_punctuation">()</span>
@@ -153,7 +168,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int32-be" title="gst_byte_reader_get_int32_be ()">gst_byte_reader_get_int32_be</a> <span class="c_punctuation">()</span>
@@ -161,7 +176,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int32-le" title="gst_byte_reader_get_int32_le ()">gst_byte_reader_get_int32_le</a> <span class="c_punctuation">()</span>
@@ -169,7 +184,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int64-be" title="gst_byte_reader_get_int64_be ()">gst_byte_reader_get_int64_be</a> <span class="c_punctuation">()</span>
@@ -177,7 +192,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-int64-le" title="gst_byte_reader_get_int64_le ()">gst_byte_reader_get_int64_le</a> <span class="c_punctuation">()</span>
@@ -185,7 +200,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint8" title="gst_byte_reader_get_uint8 ()">gst_byte_reader_get_uint8</a> <span class="c_punctuation">()</span>
@@ -193,7 +208,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint16-be" title="gst_byte_reader_get_uint16_be ()">gst_byte_reader_get_uint16_be</a> <span class="c_punctuation">()</span>
@@ -201,7 +216,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint16-le" title="gst_byte_reader_get_uint16_le ()">gst_byte_reader_get_uint16_le</a> <span class="c_punctuation">()</span>
@@ -209,7 +224,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint24-be" title="gst_byte_reader_get_uint24_be ()">gst_byte_reader_get_uint24_be</a> <span class="c_punctuation">()</span>
@@ -217,7 +232,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint24-le" title="gst_byte_reader_get_uint24_le ()">gst_byte_reader_get_uint24_le</a> <span class="c_punctuation">()</span>
@@ -225,7 +240,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint32-be" title="gst_byte_reader_get_uint32_be ()">gst_byte_reader_get_uint32_be</a> <span class="c_punctuation">()</span>
@@ -233,7 +248,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint32-le" title="gst_byte_reader_get_uint32_le ()">gst_byte_reader_get_uint32_le</a> <span class="c_punctuation">()</span>
@@ -241,7 +256,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint64-be" title="gst_byte_reader_get_uint64_be ()">gst_byte_reader_get_uint64_be</a> <span class="c_punctuation">()</span>
@@ -249,7 +264,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-uint64-le" title="gst_byte_reader_get_uint64_le ()">gst_byte_reader_get_uint64_le</a> <span class="c_punctuation">()</span>
@@ -257,7 +272,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int8" title="gst_byte_reader_peek_int8 ()">gst_byte_reader_peek_int8</a> <span class="c_punctuation">()</span>
@@ -265,7 +280,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int16-be" title="gst_byte_reader_peek_int16_be ()">gst_byte_reader_peek_int16_be</a> <span class="c_punctuation">()</span>
@@ -273,7 +288,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int16-le" title="gst_byte_reader_peek_int16_le ()">gst_byte_reader_peek_int16_le</a> <span class="c_punctuation">()</span>
@@ -281,7 +296,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int24-be" title="gst_byte_reader_peek_int24_be ()">gst_byte_reader_peek_int24_be</a> <span class="c_punctuation">()</span>
@@ -289,7 +304,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int24-le" title="gst_byte_reader_peek_int24_le ()">gst_byte_reader_peek_int24_le</a> <span class="c_punctuation">()</span>
@@ -297,7 +312,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int32-be" title="gst_byte_reader_peek_int32_be ()">gst_byte_reader_peek_int32_be</a> <span class="c_punctuation">()</span>
@@ -305,7 +320,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int32-le" title="gst_byte_reader_peek_int32_le ()">gst_byte_reader_peek_int32_le</a> <span class="c_punctuation">()</span>
@@ -313,7 +328,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int64-be" title="gst_byte_reader_peek_int64_be ()">gst_byte_reader_peek_int64_be</a> <span class="c_punctuation">()</span>
@@ -321,7 +336,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-int64-le" title="gst_byte_reader_peek_int64_le ()">gst_byte_reader_peek_int64_le</a> <span class="c_punctuation">()</span>
@@ -329,7 +344,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint8" title="gst_byte_reader_peek_uint8 ()">gst_byte_reader_peek_uint8</a> <span class="c_punctuation">()</span>
@@ -337,7 +352,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint16-be" title="gst_byte_reader_peek_uint16_be ()">gst_byte_reader_peek_uint16_be</a> <span class="c_punctuation">()</span>
@@ -345,7 +360,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint16-le" title="gst_byte_reader_peek_uint16_le ()">gst_byte_reader_peek_uint16_le</a> <span class="c_punctuation">()</span>
@@ -353,7 +368,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint24-be" title="gst_byte_reader_peek_uint24_be ()">gst_byte_reader_peek_uint24_be</a> <span class="c_punctuation">()</span>
@@ -361,7 +376,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint24-le" title="gst_byte_reader_peek_uint24_le ()">gst_byte_reader_peek_uint24_le</a> <span class="c_punctuation">()</span>
@@ -369,7 +384,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint32-be" title="gst_byte_reader_peek_uint32_be ()">gst_byte_reader_peek_uint32_be</a> <span class="c_punctuation">()</span>
@@ -377,7 +392,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint32-le" title="gst_byte_reader_peek_uint32_le ()">gst_byte_reader_peek_uint32_le</a> <span class="c_punctuation">()</span>
@@ -385,7 +400,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint64-be" title="gst_byte_reader_peek_uint64_be ()">gst_byte_reader_peek_uint64_be</a> <span class="c_punctuation">()</span>
@@ -393,7 +408,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-uint64-le" title="gst_byte_reader_peek_uint64_le ()">gst_byte_reader_peek_uint64_le</a> <span class="c_punctuation">()</span>
@@ -401,7 +416,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float32-le" title="gst_byte_reader_get_float32_le ()">gst_byte_reader_get_float32_le</a> <span class="c_punctuation">()</span>
@@ -409,7 +424,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float32-be" title="gst_byte_reader_get_float32_be ()">gst_byte_reader_get_float32_be</a> <span class="c_punctuation">()</span>
@@ -417,7 +432,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float64-le" title="gst_byte_reader_get_float64_le ()">gst_byte_reader_get_float64_le</a> <span class="c_punctuation">()</span>
@@ -425,7 +440,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float64-be" title="gst_byte_reader_get_float64_be ()">gst_byte_reader_get_float64_be</a> <span class="c_punctuation">()</span>
@@ -433,7 +448,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float32-le" title="gst_byte_reader_peek_float32_le ()">gst_byte_reader_peek_float32_le</a> <span class="c_punctuation">()</span>
@@ -441,7 +456,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float32-be" title="gst_byte_reader_peek_float32_be ()">gst_byte_reader_peek_float32_be</a> <span class="c_punctuation">()</span>
@@ -449,7 +464,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float64-le" title="gst_byte_reader_peek_float64_le ()">gst_byte_reader_peek_float64_le</a> <span class="c_punctuation">()</span>
@@ -457,7 +472,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float64-be" title="gst_byte_reader_peek_float64_be ()">gst_byte_reader_peek_float64_be</a> <span class="c_punctuation">()</span>
@@ -465,7 +480,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-data" title="gst_byte_reader_get_data ()">gst_byte_reader_get_data</a> <span class="c_punctuation">()</span>
@@ -473,7 +488,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-dup-data" title="gst_byte_reader_dup_data ()">gst_byte_reader_dup_data</a> <span class="c_punctuation">()</span>
@@ -481,7 +496,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-data" title="gst_byte_reader_peek_data ()">gst_byte_reader_peek_data</a> <span class="c_punctuation">()</span>
@@ -489,13 +504,21 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32" title="gst_byte_reader_masked_scan_uint32 ()">gst_byte_reader_masked_scan_uint32</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
+<td class="function_type">
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32-peek" title="gst_byte_reader_masked_scan_uint32_peek ()">gst_byte_reader_masked_scan_uint32_peek</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
 <td class="define_keyword">#define</td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-string" title="gst_byte_reader_get_string()">gst_byte_reader_get_string</a><span class="c_punctuation">()</span>
@@ -503,7 +526,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-string-utf8" title="gst_byte_reader_get_string_utf8 ()">gst_byte_reader_get_string_utf8</a> <span class="c_punctuation">()</span>
@@ -517,7 +540,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-string-utf8" title="gst_byte_reader_peek_string_utf8 ()">gst_byte_reader_peek_string_utf8</a> <span class="c_punctuation">()</span>
@@ -531,7 +554,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-dup-string-utf8" title="gst_byte_reader_dup_string_utf8 ()">gst_byte_reader_dup_string_utf8</a> <span class="c_punctuation">()</span>
@@ -539,7 +562,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-dup-string-utf16" title="gst_byte_reader_dup_string_utf16 ()">gst_byte_reader_dup_string_utf16</a> <span class="c_punctuation">()</span>
@@ -547,7 +570,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-dup-string-utf32" title="gst_byte_reader_dup_string_utf32 ()">gst_byte_reader_dup_string_utf32</a> <span class="c_punctuation">()</span>
@@ -561,7 +584,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-skip-string-utf8" title="gst_byte_reader_skip_string_utf8 ()">gst_byte_reader_skip_string_utf8</a> <span class="c_punctuation">()</span>
@@ -569,7 +592,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-skip-string-utf16" title="gst_byte_reader_skip_string_utf16 ()">gst_byte_reader_skip_string_utf16</a> <span class="c_punctuation">()</span>
@@ -577,7 +600,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-skip-string-utf32" title="gst_byte_reader_skip_string_utf32 ()">gst_byte_reader_skip_string_utf32</a> <span class="c_punctuation">()</span>
@@ -881,7 +904,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float32-le-unchecked" title="gst_byte_reader_get_float32_le_unchecked ()">gst_byte_reader_get_float32_le_unchecked</a> <span class="c_punctuation">()</span>
@@ -889,7 +912,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float32-be-unchecked" title="gst_byte_reader_get_float32_be_unchecked ()">gst_byte_reader_get_float32_be_unchecked</a> <span class="c_punctuation">()</span>
@@ -897,7 +920,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float64-le-unchecked" title="gst_byte_reader_get_float64_le_unchecked ()">gst_byte_reader_get_float64_le_unchecked</a> <span class="c_punctuation">()</span>
@@ -905,7 +928,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-float64-be-unchecked" title="gst_byte_reader_get_float64_be_unchecked ()">gst_byte_reader_get_float64_be_unchecked</a> <span class="c_punctuation">()</span>
@@ -913,7 +936,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float32-le-unchecked" title="gst_byte_reader_peek_float32_le_unchecked ()">gst_byte_reader_peek_float32_le_unchecked</a> <span class="c_punctuation">()</span>
@@ -921,7 +944,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float32-be-unchecked" title="gst_byte_reader_peek_float32_be_unchecked ()">gst_byte_reader_peek_float32_be_unchecked</a> <span class="c_punctuation">()</span>
@@ -929,7 +952,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float64-le-unchecked" title="gst_byte_reader_peek_float64_le_unchecked ()">gst_byte_reader_peek_float64_le_unchecked</a> <span class="c_punctuation">()</span>
@@ -937,7 +960,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-float64-be-unchecked" title="gst_byte_reader_peek_float64_be_unchecked ()">gst_byte_reader_peek_float64_be_unchecked</a> <span class="c_punctuation">()</span>
@@ -982,11 +1005,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstByteReader.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstByteReader.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gstbytereader.h&gt;
 </pre>
@@ -1011,7 +1029,7 @@
 be assigned to a variable. In that case you have to use
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-init" title="gst_byte_reader_init ()"><code class="function">gst_byte_reader_init()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1039,12 +1057,12 @@
 <a name="gst-byte-reader-new"></a><h3>gst_byte_reader_new ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="returnvalue">GstByteReader</span></a> *
 gst_byte_reader_new (<em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
-                     <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                     <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Create a new <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance, which will read from <em class="parameter"><code>data</code></em>
 .</p>
 <p>Free-function: gst_byte_reader_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.3.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1068,7 +1086,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.3.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.3.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1081,7 +1099,7 @@
 <p>Frees a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance, which was previously allocated by
 <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-new" title="gst_byte_reader_new ()"><code class="function">gst_byte_reader_new()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1102,12 +1120,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_reader_init (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                       <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Initializes a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance to read from <em class="parameter"><code>data</code></em>
 . This function
 can be called on already initialized instances.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1138,12 +1156,119 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-byte-reader-peek-sub-reader"></a><h3>gst_byte_reader_peek_sub_reader ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_byte_reader_peek_sub_reader (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
+                                 <em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *sub_reader</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+<p>Initializes a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> sub-reader instance to contain <em class="parameter"><code>size</code></em>
+ bytes of
+data from the current position of <em class="parameter"><code>reader</code></em>
+. This is useful to read chunked
+formats and make sure that one doesn't read beyond the size of the sub-chunk.</p>
+<p>Unlike <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-get-sub-reader" title="gst_byte_reader_get_sub_reader ()"><code class="function">gst_byte_reader_get_sub_reader()</code></a>, this function does not modify the
+current position of <em class="parameter"><code>reader</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.4.10.7.6.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>reader</p></td>
+<td class="parameter_description"><p>an existing and initialized <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>sub_reader</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance to initialize as sub-reader</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>size of <em class="parameter"><code>sub_reader</code></em>
+in bytes</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.4.10.7.6.7"></a><h4>Returns</h4>
+<p> FALSE on error or if <em class="parameter"><code>reader</code></em>
+does not contain <em class="parameter"><code>size</code></em>
+more bytes from
+the current position, and otherwise TRUE</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-byte-reader-get-sub-reader"></a><h3>gst_byte_reader_get_sub_reader ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_byte_reader_get_sub_reader (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
+                                <em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *sub_reader</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+<p>Initializes a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> sub-reader instance to contain <em class="parameter"><code>size</code></em>
+ bytes of
+data from the current position of <em class="parameter"><code>reader</code></em>
+. This is useful to read chunked
+formats and make sure that one doesn't read beyond the size of the sub-chunk.</p>
+<p>Unlike <a class="link" href="gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-sub-reader" title="gst_byte_reader_peek_sub_reader ()"><code class="function">gst_byte_reader_peek_sub_reader()</code></a>, this function also modifies the
+position of <em class="parameter"><code>reader</code></em>
+ and moves it forward by <em class="parameter"><code>size</code></em>
+ bytes.</p>
+<div class="refsect3">
+<a name="id-1.2.4.10.7.7.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>reader</p></td>
+<td class="parameter_description"><p>an existing and initialized <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>sub_reader</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance to initialize as sub-reader</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>size of <em class="parameter"><code>sub_reader</code></em>
+in bytes</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.4.10.7.7.7"></a><h4>Returns</h4>
+<p> FALSE on error or if <em class="parameter"><code>reader</code></em>
+does not contain <em class="parameter"><code>size</code></em>
+more bytes from
+the current position, and otherwise TRUE</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-byte-reader-get-pos"></a><h3>gst_byte_reader_get_pos ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_reader_get_pos (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Returns the current position of a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance in bytes.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1158,7 +1283,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.6.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.8.6"></a><h4>Returns</h4>
 <p> The current position of <em class="parameter"><code>reader</code></em>
 in bytes.</p>
 <p></p>
@@ -1167,11 +1292,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-remaining"></a><h3>gst_byte_reader_get_remaining ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_reader_get_remaining (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Returns the remaining number of bytes of a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1186,7 +1311,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.7.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.9.6"></a><h4>Returns</h4>
 <p> The remaining number of bytes of <em class="parameter"><code>reader</code></em>
 instance.</p>
 <p></p>
@@ -1195,13 +1320,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-set-pos"></a><h3>gst_byte_reader_set_pos ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_set_pos (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pos</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pos</code></em>);</pre>
 <p>Sets the new position of a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance to <em class="parameter"><code>pos</code></em>
  in bytes.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1223,8 +1348,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the position could be set successfully, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<a name="id-1.2.4.10.7.10.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the position could be set successfully, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 otherwise.</p>
 <p></p>
 </div>
@@ -1232,11 +1357,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-size"></a><h3>gst_byte_reader_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_reader_get_size (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Returns the total number of bytes of a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1251,7 +1376,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.9.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.11.6"></a><h4>Returns</h4>
 <p> The total number of bytes of <em class="parameter"><code>reader</code></em>
 instance.</p>
 <p></p>
@@ -1260,13 +1385,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-skip"></a><h3>gst_byte_reader_skip ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_skip (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbytes</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbytes</code></em>);</pre>
 <p>Skips <em class="parameter"><code>nbytes</code></em>
  bytes of the <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1288,22 +1413,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.10.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>nbytes</code></em>
-bytes could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.12.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>nbytes</code></em>
+bytes could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int8"></a><h3>gst_byte_reader_get_int8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                           <em class="parameter"><code><span class="type">gint8</span> *val</code></em>);</pre>
 <p>Read a signed 8 bit integer into <em class="parameter"><code>val</code></em>
  and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1325,22 +1450,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.11.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.13.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int16-be"></a><h3>gst_byte_reader_get_int16_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int16_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint16</span> *val</code></em>);</pre>
 <p>Read a signed 16 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1362,22 +1487,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.12.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.14.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int16-le"></a><h3>gst_byte_reader_get_int16_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int16_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint16</span> *val</code></em>);</pre>
 <p>Read a signed 16 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1399,22 +1524,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.15.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int24-be"></a><h3>gst_byte_reader_get_int24_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int24_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 24 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1436,22 +1561,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.16.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int24-le"></a><h3>gst_byte_reader_get_int24_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int24_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 24 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1473,22 +1598,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.17.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int32-be"></a><h3>gst_byte_reader_get_int32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int32_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 32 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1510,22 +1635,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.16.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int32-le"></a><h3>gst_byte_reader_get_int32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int32_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 32 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1547,22 +1672,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.19.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int64-be"></a><h3>gst_byte_reader_get_int64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int64_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint64</span> *val</code></em>);</pre>
 <p>Read a signed 64 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1584,22 +1709,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.20.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-int64-le"></a><h3>gst_byte_reader_get_int64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_int64_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                               <em class="parameter"><code><span class="type">gint64</span> *val</code></em>);</pre>
 <p>Read a signed 64 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1621,21 +1746,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.21.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint8"></a><h3>gst_byte_reader_get_uint8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                            <em class="parameter"><code><span class="type">guint8</span> *val</code></em>);</pre>
 <p>Read an unsigned 8 bit integer into <em class="parameter"><code>val</code></em>
  and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1657,22 +1782,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.20.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.22.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint16-be"></a><h3>gst_byte_reader_get_uint16_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint16_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint16</span> *val</code></em>);</pre>
 <p>Read an unsigned 16 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1694,22 +1819,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.21.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.23.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint16-le"></a><h3>gst_byte_reader_get_uint16_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint16_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint16</span> *val</code></em>);</pre>
 <p>Read an unsigned 16 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1731,22 +1856,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.22.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.24.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint24-be"></a><h3>gst_byte_reader_get_uint24_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint24_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 24 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1768,22 +1893,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.23.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.25.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint24-le"></a><h3>gst_byte_reader_get_uint24_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint24_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 24 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1805,22 +1930,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.24.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.26.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint32-be"></a><h3>gst_byte_reader_get_uint32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint32_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 32 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1842,22 +1967,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.25.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.27.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint32-le"></a><h3>gst_byte_reader_get_uint32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint32_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 32 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1879,22 +2004,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.26.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.28.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint64-be"></a><h3>gst_byte_reader_get_uint64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint64_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint64</span> *val</code></em>);</pre>
 <p>Read an unsigned 64 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1916,22 +2041,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.27.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.29.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-uint64-le"></a><h3>gst_byte_reader_get_uint64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_uint64_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">guint64</span> *val</code></em>);</pre>
 <p>Read an unsigned 64 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1953,21 +2078,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.28.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.30.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int8"></a><h3>gst_byte_reader_peek_int8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int8 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                            <em class="parameter"><code><span class="type">gint8</span> *val</code></em>);</pre>
 <p>Read a signed 8 bit integer into <em class="parameter"><code>val</code></em>
  but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1989,22 +2114,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.29.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.31.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int16-be"></a><h3>gst_byte_reader_peek_int16_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int16_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint16</span> *val</code></em>);</pre>
 <p>Read a signed 16 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.30.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2026,22 +2151,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.30.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.32.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int16-le"></a><h3>gst_byte_reader_peek_int16_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int16_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint16</span> *val</code></em>);</pre>
 <p>Read a signed 16 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.31.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2063,22 +2188,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.31.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.33.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int24-be"></a><h3>gst_byte_reader_peek_int24_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int24_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 24 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.32.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2100,22 +2225,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.32.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.34.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int24-le"></a><h3>gst_byte_reader_peek_int24_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int24_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 24 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2137,22 +2262,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.33.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.35.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int32-be"></a><h3>gst_byte_reader_peek_int32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int32_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 32 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2174,22 +2299,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.34.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.36.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int32-le"></a><h3>gst_byte_reader_peek_int32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int32_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint32</span> *val</code></em>);</pre>
 <p>Read a signed 32 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2211,22 +2336,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.35.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.37.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int64-be"></a><h3>gst_byte_reader_peek_int64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int64_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint64</span> *val</code></em>);</pre>
 <p>Read a signed 64 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.36.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.38.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2248,22 +2373,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.36.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.38.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-int64-le"></a><h3>gst_byte_reader_peek_int64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_int64_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                <em class="parameter"><code><span class="type">gint64</span> *val</code></em>);</pre>
 <p>Read a signed 64 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.37.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.39.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2285,21 +2410,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.37.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.39.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint8"></a><h3>gst_byte_reader_peek_uint8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint8 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                             <em class="parameter"><code><span class="type">guint8</span> *val</code></em>);</pre>
 <p>Read an unsigned 8 bit integer into <em class="parameter"><code>val</code></em>
  but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.38.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.40.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2321,22 +2446,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.38.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.40.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint16-be"></a><h3>gst_byte_reader_peek_uint16_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint16_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint16</span> *val</code></em>);</pre>
 <p>Read an unsigned 16 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.39.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.41.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2358,22 +2483,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.39.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.41.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint16-le"></a><h3>gst_byte_reader_peek_uint16_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint16_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint16</span> *val</code></em>);</pre>
 <p>Read an unsigned 16 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.40.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.42.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2395,22 +2520,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.40.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.42.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint24-be"></a><h3>gst_byte_reader_peek_uint24_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint24_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 24 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.41.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2432,22 +2557,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.41.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.43.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint24-le"></a><h3>gst_byte_reader_peek_uint24_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint24_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 24 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2469,22 +2594,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.42.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.44.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint32-be"></a><h3>gst_byte_reader_peek_uint32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint32_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 32 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2506,22 +2631,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.43.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.45.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint32-le"></a><h3>gst_byte_reader_peek_uint32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint32_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint32</span> *val</code></em>);</pre>
 <p>Read an unsigned 32 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2543,22 +2668,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.44.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.46.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint64-be"></a><h3>gst_byte_reader_peek_uint64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint64_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint64</span> *val</code></em>);</pre>
 <p>Read an unsigned 64 bit big endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.47.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2580,22 +2705,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.47.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-uint64-le"></a><h3>gst_byte_reader_peek_uint64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_uint64_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                 <em class="parameter"><code><span class="type">guint64</span> *val</code></em>);</pre>
 <p>Read an unsigned 64 bit little endian integer into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2617,22 +2742,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.46.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.48.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float32-le"></a><h3>gst_byte_reader_get_float32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_float32_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
 <p>Read a 32 bit little endian floating point value into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.47.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2647,29 +2772,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.47.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.49.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float32-be"></a><h3>gst_byte_reader_get_float32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_float32_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
 <p>Read a 32 bit big endian floating point value into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.48.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2684,29 +2809,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.48.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.50.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float64-le"></a><h3>gst_byte_reader_get_float64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_float64_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
 <p>Read a 64 bit little endian floating point value into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.49.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2721,29 +2846,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.49.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.51.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float64-be"></a><h3>gst_byte_reader_get_float64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_float64_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
 <p>Read a 64 bit big endian floating point value into <em class="parameter"><code>val</code></em>
 
 and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.50.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2758,29 +2883,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.50.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.52.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float32-le"></a><h3>gst_byte_reader_peek_float32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_float32_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
 <p>Read a 32 bit little endian floating point value into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.51.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2795,29 +2920,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.51.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.53.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float32-be"></a><h3>gst_byte_reader_peek_float32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_float32_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *val</code></em>);</pre>
 <p>Read a 32 bit big endian floating point value into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.52.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2832,29 +2957,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.52.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.54.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float64-le"></a><h3>gst_byte_reader_peek_float64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_float64_le (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
 <p>Read a 64 bit little endian floating point value into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.53.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.55.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2869,29 +2994,29 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.53.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.55.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float64-be"></a><h3>gst_byte_reader_peek_float64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_float64_be (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *val</code></em>);</pre>
 <p>Read a 64 bit big endian floating point value into <em class="parameter"><code>val</code></em>
 
 but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.54.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.56.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2906,31 +3031,31 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>val</p></td>
-<td class="parameter_description"><p> Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
+<td class="parameter_description"><p> Pointer to a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.54.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.56.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-data"></a><h3>gst_byte_reader_get_data ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_data (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                           <em class="parameter"><code>const <span class="type">guint8</span> **val</code></em>);</pre>
 <p>Returns a constant pointer to the current data
 position if at least <em class="parameter"><code>size</code></em>
  bytes are left and
 updates the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.55.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2958,25 +3083,25 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.55.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.57.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-dup-data"></a><h3>gst_byte_reader_dup_data ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_dup_data (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                           <em class="parameter"><code><span class="type">guint8</span> **val</code></em>);</pre>
 <p>Free-function: g_free</p>
 <p>Returns a newly-allocated copy of the current data
 position if at least <em class="parameter"><code>size</code></em>
  bytes are left and
-updates the current position. Free with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
+updates the current position. Free with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.56.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.58.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3004,24 +3129,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.56.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.58.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-data"></a><h3>gst_byte_reader_peek_data ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_data (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
                            <em class="parameter"><code>const <span class="type">guint8</span> **val</code></em>);</pre>
 <p>Returns a constant pointer to the current data
 position if at least <em class="parameter"><code>size</code></em>
  bytes are left and
 keeps the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.57.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.59.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3049,20 +3174,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.57.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.59.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-masked-scan-uint32"></a><h3>gst_byte_reader_masked_scan_uint32 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_reader_masked_scan_uint32 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                     <em class="parameter"><code><span class="type">guint32</span> mask</code></em>,
                                     <em class="parameter"><code><span class="type">guint32</span> pattern</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> offset</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> offset</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Scan for pattern <em class="parameter"><code>pattern</code></em>
  with applied mask <em class="parameter"><code>mask</code></em>
  in the byte reader data,
@@ -3077,7 +3202,7 @@
 <p>It is an error to call this function without making sure that there is
 enough data (offset+size bytes) in the byte reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.58.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.60.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3116,7 +3241,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.58.8"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.60.8"></a><h4>Returns</h4>
 <p> offset of the first match, or -1 if no match was found.</p>
 <p>Example:</p>
 <pre class="programlisting">
@@ -3141,15 +3266,90 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-byte-reader-masked-scan-uint32-peek"></a><h3>gst_byte_reader_masked_scan_uint32_peek ()</h3>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_byte_reader_masked_scan_uint32_peek
+                               (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
+                                <em class="parameter"><code><span class="type">guint32</span> mask</code></em>,
+                                <em class="parameter"><code><span class="type">guint32</span> pattern</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> offset</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                <em class="parameter"><code><span class="type">guint32</span> *value</code></em>);</pre>
+<p>Scan for pattern <em class="parameter"><code>pattern</code></em>
+ with applied mask <em class="parameter"><code>mask</code></em>
+ in the byte reader data,
+starting from offset <em class="parameter"><code>offset</code></em>
+ relative to the current position.</p>
+<p>The bytes in <em class="parameter"><code>pattern</code></em>
+ and <em class="parameter"><code>mask</code></em>
+ are interpreted left-to-right, regardless
+of endianness.  All four bytes of the pattern must be present in the
+byte reader data for it to match, even if the first or last bytes are masked
+out.</p>
+<p>It is an error to call this function without making sure that there is
+enough data (offset+size bytes) in the byte reader.</p>
+<div class="refsect3">
+<a name="id-1.2.4.10.7.61.7"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>reader</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>mask to apply to data before matching against <em class="parameter"><code>pattern</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>pattern</p></td>
+<td class="parameter_description"><p>pattern to match (after mask is applied)</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>offset</p></td>
+<td class="parameter_description"><p>offset from which to start scanning, relative to the current
+position</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>number of bytes to scan from offset</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p>pointer to uint32 to return matching data</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.4.10.7.61.8"></a><h4>Returns</h4>
+<p> offset of the first match, or -1 if no match was found.</p>
+<p></p>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-byte-reader-get-string"></a><h3>gst_byte_reader_get_string()</h3>
 <pre class="programlisting">#define             gst_byte_reader_get_string(reader,str)</pre>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-string-utf8"></a><h3>gst_byte_reader_get_string_utf8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_get_string_utf8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **str</code></em>);</pre>
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **str</code></em>);</pre>
 <p>Returns a constant pointer to the current data position if there is
 a NUL-terminated string in the data (this could be just a NUL terminator),
 advancing the current position to the byte after the string. This will work
@@ -3158,7 +3358,7 @@
 <p>No input checking for valid UTF-8 is done.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.60.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.63.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3174,15 +3374,15 @@
 <tr>
 <td class="parameter_name"><p>str</p></td>
 <td class="parameter_description"><p> address of a
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.60.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be found, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.63.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be found, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -3197,7 +3397,7 @@
 UTF-8, ISO-8859-N etc.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.61.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.64.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3213,24 +3413,24 @@
 <tr>
 <td class="parameter_name"><p>str</p></td>
 <td class="parameter_description"><p> address of a
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.61.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.64.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-string-utf8"></a><h3>gst_byte_reader_peek_string_utf8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_peek_string_utf8 (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **str</code></em>);</pre>
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **str</code></em>);</pre>
 <p>Returns a constant pointer to the current data position if there is
 a NUL-terminated string in the data (this could be just a NUL terminator).
 The current position will be maintained. This will work for any
@@ -3239,7 +3439,7 @@
 <p>No input checking for valid UTF-8 is done.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.62.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.65.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3255,15 +3455,15 @@
 <tr>
 <td class="parameter_name"><p>str</p></td>
 <td class="parameter_description"><p> address of a
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.62.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.65.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -3275,9 +3475,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-dup-string-utf8"></a><h3>gst_byte_reader_dup_string_utf8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_dup_string_utf8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **str</code></em>);</pre>
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **str</code></em>);</pre>
 <p>Free-function: g_free</p>
 <p>FIXME:Reads (copies) a NUL-terminated string in the <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance,
 advancing the current position to the byte after the string. This will work
@@ -3285,7 +3485,7 @@
 UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.64.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.67.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3301,25 +3501,25 @@
 <tr>
 <td class="parameter_name"><p>str</p></td>
 <td class="parameter_description"><p> address of a
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> pointer variable in which to store the result. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.64.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be read into <em class="parameter"><code>str</code></em>
-, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. The
+<a name="id-1.2.4.10.7.67.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be read into <em class="parameter"><code>str</code></em>
+, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. The
 string put into <em class="parameter"><code>str</code></em>
-must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
+must be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-dup-string-utf16"></a><h3>gst_byte_reader_dup_string_utf16 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_dup_string_utf16 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                   <em class="parameter"><code><span class="type">guint16</span> **str</code></em>);</pre>
 <p>Free-function: g_free</p>
@@ -3333,7 +3533,7 @@
 <p>Note: there is no peek or get variant of this function to ensure correct
 byte alignment of the UTF-16 string.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.65.9"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.68.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3356,17 +3556,17 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.65.10"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be read, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. The
+<a name="id-1.2.4.10.7.68.10"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be read, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. The
 string put into <em class="parameter"><code>str</code></em>
-must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
+must be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-dup-string-utf32"></a><h3>gst_byte_reader_dup_string_utf32 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_dup_string_utf32 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
                                   <em class="parameter"><code><span class="type">guint32</span> **str</code></em>);</pre>
 <p>Free-function: g_free</p>
@@ -3380,7 +3580,7 @@
 <p>Note: there is no peek or get variant of this function to ensure correct
 byte alignment of the UTF-32 string.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.66.9"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.69.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3403,10 +3603,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.66.10"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be read, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. The
+<a name="id-1.2.4.10.7.69.10"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be read, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise. The
 string put into <em class="parameter"><code>str</code></em>
-must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
+must be freed with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</p>
 <p></p>
 </div>
 </div>
@@ -3420,7 +3620,7 @@
 UTF-8, ISO-8859-N etc.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.67.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.70.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3435,15 +3635,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.67.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.70.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-skip-string-utf8"></a><h3>gst_byte_reader_skip_string_utf8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_skip_string_utf8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Skips a NUL-terminated string in the <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance, advancing
 the current position to the byte after the string. This will work for
@@ -3451,7 +3651,7 @@
 UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.68.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.71.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3466,22 +3666,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.68.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.71.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-skip-string-utf16"></a><h3>gst_byte_reader_skip_string_utf16 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_skip_string_utf16 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Skips a NUL-terminated UTF-16 string in the <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance,
 advancing the current position to the byte after the string.</p>
 <p>No input checking for valid UTF-16 is done.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.69.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.72.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3496,22 +3696,22 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.69.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.72.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-skip-string-utf32"></a><h3>gst_byte_reader_skip_string_utf32 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_reader_skip_string_utf32 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Skips a NUL-terminated UTF-32 string in the <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance,
 advancing the current position to the byte after the string.</p>
 <p>No input checking for valid UTF-32 is done.</p>
 <p>This function will fail if no NUL-terminator was found in in the data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.70.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.73.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3526,8 +3726,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.70.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<a name="id-1.2.4.10.7.73.8"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a string could be skipped, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
 <p></p>
 </div>
 </div>
@@ -3536,12 +3736,12 @@
 <a name="gst-byte-reader-skip-unchecked"></a><h3>gst_byte_reader_skip_unchecked ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_reader_skip_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbytes</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nbytes</code></em>);</pre>
 <p>Skips <em class="parameter"><code>nbytes</code></em>
  bytes of the <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> instance without checking if
 there are enough bytes available in the byte reader.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.71.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.74.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3571,7 +3771,7 @@
 <p>Read an signed 8 bit integer without checking if there are enough bytes
 available in the byte reader and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.72.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.75.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3586,7 +3786,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.72.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.75.6"></a><h4>Returns</h4>
 <p> signed 8 bit integer.</p>
 <p></p>
 </div>
@@ -3601,7 +3801,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.73.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.76.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3616,7 +3816,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.73.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.76.6"></a><h4>Returns</h4>
 <p> signed 16 bit integer.</p>
 <p></p>
 </div>
@@ -3631,7 +3831,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.74.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.77.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3646,7 +3846,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.74.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.77.6"></a><h4>Returns</h4>
 <p> signed 16 bit integer.</p>
 <p></p>
 </div>
@@ -3661,7 +3861,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.75.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.78.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3676,7 +3876,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.75.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.78.6"></a><h4>Returns</h4>
 <p> signed 24 bit integer (as gint32)</p>
 <p></p>
 </div>
@@ -3691,7 +3891,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.76.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.79.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3706,7 +3906,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.76.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.79.6"></a><h4>Returns</h4>
 <p> signed 24 bit integer (as gint32)</p>
 <p></p>
 </div>
@@ -3721,7 +3921,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.77.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.80.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3736,7 +3936,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.77.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.80.6"></a><h4>Returns</h4>
 <p> signed 32 bit integer.</p>
 <p></p>
 </div>
@@ -3751,7 +3951,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.78.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.81.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3766,7 +3966,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.78.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.81.6"></a><h4>Returns</h4>
 <p> signed 32 bit integer.</p>
 <p></p>
 </div>
@@ -3781,7 +3981,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.79.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.82.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3796,7 +3996,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.79.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.82.6"></a><h4>Returns</h4>
 <p> signed 64 bit integer.</p>
 <p></p>
 </div>
@@ -3811,7 +4011,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.80.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.83.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3826,7 +4026,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.80.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.83.6"></a><h4>Returns</h4>
 <p> signed 64 bit integer.</p>
 <p></p>
 </div>
@@ -3839,7 +4039,7 @@
 <p>Read an unsigned 8 bit integer without checking if there are enough bytes
 available in the byte reader and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.81.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.84.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3854,7 +4054,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.81.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.84.6"></a><h4>Returns</h4>
 <p> unsigned 8 bit integer.</p>
 <p></p>
 </div>
@@ -3869,7 +4069,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.82.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.85.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3884,7 +4084,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.82.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.85.6"></a><h4>Returns</h4>
 <p> unsigned 16 bit integer.</p>
 <p></p>
 </div>
@@ -3899,7 +4099,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.83.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.86.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3914,7 +4114,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.83.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.86.6"></a><h4>Returns</h4>
 <p> unsigned 16 bit integer.</p>
 <p></p>
 </div>
@@ -3929,7 +4129,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.84.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.87.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3944,7 +4144,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.84.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.87.6"></a><h4>Returns</h4>
 <p> unsigned 24 bit integer (as guint32)</p>
 <p></p>
 </div>
@@ -3959,7 +4159,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.85.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.88.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3974,7 +4174,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.85.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.88.6"></a><h4>Returns</h4>
 <p> unsigned 24 bit integer (as guint32)</p>
 <p></p>
 </div>
@@ -3989,7 +4189,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.86.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.89.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4004,7 +4204,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.86.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.89.6"></a><h4>Returns</h4>
 <p> unsigned 32 bit integer.</p>
 <p></p>
 </div>
@@ -4019,7 +4219,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.87.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.90.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4034,7 +4234,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.87.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.90.6"></a><h4>Returns</h4>
 <p> unsigned 32 bit integer.</p>
 <p></p>
 </div>
@@ -4049,7 +4249,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.88.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.91.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4064,7 +4264,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.88.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.91.6"></a><h4>Returns</h4>
 <p> unsigned 64 bit integer.</p>
 <p></p>
 </div>
@@ -4079,7 +4279,7 @@
 if there are enough bytes available in the byte reader and update the
 current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.89.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.92.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4094,7 +4294,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.89.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.92.6"></a><h4>Returns</h4>
 <p> unsigned 64 bit integer.</p>
 <p></p>
 </div>
@@ -4107,7 +4307,7 @@
 <p>Read an signed 8 bit integer without checking if there are enough bytes
 available in the byte reader, but do not advance the current read position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.90.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.93.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4122,7 +4322,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.90.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.93.6"></a><h4>Returns</h4>
 <p> signed 8 bit integer.</p>
 <p></p>
 </div>
@@ -4137,7 +4337,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.91.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.94.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4152,7 +4352,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.91.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.94.6"></a><h4>Returns</h4>
 <p> signed 16 bit integer.</p>
 <p></p>
 </div>
@@ -4167,7 +4367,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.92.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.95.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4182,7 +4382,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.92.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.95.6"></a><h4>Returns</h4>
 <p> signed 16 bit integer.</p>
 <p></p>
 </div>
@@ -4197,7 +4397,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.93.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.96.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4212,7 +4412,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.93.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.96.6"></a><h4>Returns</h4>
 <p> signed 24 bit integer (as gint32)</p>
 <p></p>
 </div>
@@ -4227,7 +4427,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.94.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.97.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4242,7 +4442,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.94.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.97.6"></a><h4>Returns</h4>
 <p> signed 24 bit integer (as gint32)</p>
 <p></p>
 </div>
@@ -4257,7 +4457,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.95.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.98.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4272,7 +4472,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.95.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.98.6"></a><h4>Returns</h4>
 <p> signed 32 bit integer.</p>
 <p></p>
 </div>
@@ -4287,7 +4487,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.96.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.99.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4302,7 +4502,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.96.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.99.6"></a><h4>Returns</h4>
 <p> signed 32 bit integer.</p>
 <p></p>
 </div>
@@ -4317,7 +4517,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.97.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.100.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4332,7 +4532,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.97.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.100.6"></a><h4>Returns</h4>
 <p> signed 64 bit integer.</p>
 <p></p>
 </div>
@@ -4347,7 +4547,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.98.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.101.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4362,7 +4562,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.98.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.101.6"></a><h4>Returns</h4>
 <p> signed 64 bit integer.</p>
 <p></p>
 </div>
@@ -4375,7 +4575,7 @@
 <p>Read an unsigned 8 bit integer without checking if there are enough bytes
 available in the byte reader, but do not advance the current read position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.99.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.102.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4390,7 +4590,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.99.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.102.6"></a><h4>Returns</h4>
 <p> unsigned 8 bit integer.</p>
 <p></p>
 </div>
@@ -4405,7 +4605,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.100.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.103.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4420,7 +4620,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.100.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.103.6"></a><h4>Returns</h4>
 <p> unsigned 16 bit integer.</p>
 <p></p>
 </div>
@@ -4435,7 +4635,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.101.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.104.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4450,7 +4650,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.101.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.104.6"></a><h4>Returns</h4>
 <p> unsigned 16 bit integer.</p>
 <p></p>
 </div>
@@ -4465,7 +4665,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.102.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.105.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4480,7 +4680,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.102.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.105.6"></a><h4>Returns</h4>
 <p> unsigned 24 bit integer (as guint32)</p>
 <p></p>
 </div>
@@ -4495,7 +4695,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.103.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.106.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4510,7 +4710,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.103.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.106.6"></a><h4>Returns</h4>
 <p> unsigned 24 bit integer (as guint32)</p>
 <p></p>
 </div>
@@ -4525,7 +4725,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.104.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.107.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4540,7 +4740,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.104.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.107.6"></a><h4>Returns</h4>
 <p> unsigned 32 bit integer.</p>
 <p></p>
 </div>
@@ -4555,7 +4755,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.105.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.108.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4570,7 +4770,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.105.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.108.6"></a><h4>Returns</h4>
 <p> unsigned 32 bit integer.</p>
 <p></p>
 </div>
@@ -4585,7 +4785,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.106.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.109.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4600,7 +4800,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.106.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.109.6"></a><h4>Returns</h4>
 <p> unsigned 64 bit integer.</p>
 <p></p>
 </div>
@@ -4615,7 +4815,7 @@
 if there are enough bytes available in the byte reader, but do not advance
 the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.107.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.110.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4630,7 +4830,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.107.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.110.6"></a><h4>Returns</h4>
 <p> unsigned 64 bit integer.</p>
 <p></p>
 </div>
@@ -4638,13 +4838,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float32-le-unchecked"></a><h3>gst_byte_reader_get_float32_le_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 gst_byte_reader_get_float32_le_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 32 bit little endian float without checking if there is enough
 data available and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.108.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.111.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4659,7 +4859,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.108.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.111.6"></a><h4>Returns</h4>
 <p> floating point value read</p>
 <p></p>
 </div>
@@ -4667,13 +4867,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float32-be-unchecked"></a><h3>gst_byte_reader_get_float32_be_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 gst_byte_reader_get_float32_be_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 32 bit big endian float without checking if there is enough
 data available and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.109.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.112.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4688,7 +4888,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.109.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.112.6"></a><h4>Returns</h4>
 <p> floating point value read</p>
 <p></p>
 </div>
@@ -4696,13 +4896,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float64-le-unchecked"></a><h3>gst_byte_reader_get_float64_le_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 gst_byte_reader_get_float64_le_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 64 bit little endian float without checking if there is enough
 data available and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.110.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.113.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4717,7 +4917,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.110.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.113.6"></a><h4>Returns</h4>
 <p> double precision floating point value read</p>
 <p></p>
 </div>
@@ -4725,13 +4925,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-get-float64-be-unchecked"></a><h3>gst_byte_reader_get_float64_be_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 gst_byte_reader_get_float64_be_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 64 bit big endian float without checking if there is enough
 data available and update the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.111.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.114.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4746,7 +4946,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.111.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.114.6"></a><h4>Returns</h4>
 <p> double precision floating point value read</p>
 <p></p>
 </div>
@@ -4754,13 +4954,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float32-le-unchecked"></a><h3>gst_byte_reader_peek_float32_le_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 gst_byte_reader_peek_float32_le_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 32 bit little endian float without checking if there is enough
 data available, but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.112.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.115.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4775,7 +4975,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.112.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.115.6"></a><h4>Returns</h4>
 <p> floating point value read</p>
 <p></p>
 </div>
@@ -4783,13 +4983,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float32-be-unchecked"></a><h3>gst_byte_reader_peek_float32_be_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="returnvalue">gfloat</span></a>
 gst_byte_reader_peek_float32_be_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 32 bit big endian float without checking if there is enough
 data available, but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.113.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.116.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4804,7 +5004,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.113.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.116.6"></a><h4>Returns</h4>
 <p> floating point value read</p>
 <p></p>
 </div>
@@ -4812,13 +5012,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float64-le-unchecked"></a><h3>gst_byte_reader_peek_float64_le_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 gst_byte_reader_peek_float64_le_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 64 bit little endian float without checking if there is enough
 data available, but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.114.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.117.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4833,7 +5033,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.114.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.117.6"></a><h4>Returns</h4>
 <p> double precision floating point value read</p>
 <p></p>
 </div>
@@ -4841,13 +5041,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-reader-peek-float64-be-unchecked"></a><h3>gst_byte_reader_peek_float64_be_unchecked ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a>
 gst_byte_reader_peek_float64_be_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <p>Read a 64 bit big endian float without checking if there is enough
 data available, but keep the current position.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.115.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.118.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4862,7 +5062,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.115.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.118.6"></a><h4>Returns</h4>
 <p> double precision floating point value read</p>
 <p></p>
 </div>
@@ -4872,7 +5072,7 @@
 <a name="gst-byte-reader-dup-data-unchecked"></a><h3>gst_byte_reader_dup_data_unchecked ()</h3>
 <pre class="programlisting"><span class="returnvalue">guint8</span> *
 gst_byte_reader_dup_data_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Returns a newly-allocated copy of the data at the current data position
 without checking if at least <em class="parameter"><code>size</code></em>
  bytes are left. Advances the current read
@@ -4880,7 +5080,7 @@
  bytes.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.116.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.119.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4902,10 +5102,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.116.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.119.7"></a><h4>Returns</h4>
 <p> a newly-allocated copy of the
 data <em class="parameter"><code>size</code></em>
-bytes in size. Free with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed. </p>
+bytes in size. Free with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></p>
 </div>
 </div>
@@ -4914,14 +5114,14 @@
 <a name="gst-byte-reader-get-data-unchecked"></a><h3>gst_byte_reader_get_data_unchecked ()</h3>
 <pre class="programlisting">const <span class="returnvalue">guint8</span> *
 gst_byte_reader_get_data_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Returns a constant pointer to the current data position without checking
 if at least <em class="parameter"><code>size</code></em>
  bytes are left. Advances the current read position by
 <em class="parameter"><code>size</code></em>
  bytes.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.117.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.120.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4943,7 +5143,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.117.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.120.6"></a><h4>Returns</h4>
 <p> a constant pointer to the
 current data position. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></p>
@@ -4953,9 +5153,9 @@
 <div class="refsect2">
 <a name="gst-byte-reader-peek-data-unchecked"></a><h3>gst_byte_reader_peek_data_unchecked ()</h3>
 <pre class="programlisting">const <span class="returnvalue">guint8</span> *
-gst_byte_reader_peek_data_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
+gst_byte_reader_peek_data_unchecked (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteReader.html#GstByteReader" title="GstByteReader"><span class="type">GstByteReader</span></a> *reader</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.118.4"></a><h4>Parameters</h4>
+<a name="id-1.2.4.10.7.121.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -4970,7 +5170,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.10.8.118.5"></a><h4>Returns</h4>
+<a name="id-1.2.4.10.7.121.5"></a><h4>Returns</h4>
 <p> a constant pointer to the current data position. </p>
 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
 </div>
@@ -4989,7 +5189,7 @@
 </pre>
 <p>A byte reader instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.10.9.2.5"></a><h4>Members</h4>
+<a name="id-1.2.4.10.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -5004,13 +5204,13 @@
 <td class="struct_member_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstByteReader.size"></a>size</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstByteReader.size"></a>size</code></em>;</p></td>
 <td class="struct_member_description"><p>Size of <em class="parameter"><code>data</code></em>
 in bytes</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstByteReader.byte"></a>byte</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstByteReader.byte"></a>byte</code></em>;</p></td>
 <td class="struct_member_description"><p>Current byte position</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -5022,6 +5222,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstByteWriter.html b/docs/libs/html/gstreamer-libs-GstByteWriter.html
index 3abbaa3..c04e184 100644
--- a/docs/libs/html/gstreamer-libs-GstByteWriter.html
+++ b/docs/libs/html/gstreamer-libs-GstByteWriter.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-libs-GstByteReader.html" title="GstByteReader">
 <link rel="next" href="GstCollectPads.html" title="GstCollectPads">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstByteWriter.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstByteWriter.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstByteWriter.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -139,7 +138,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-get-pos" title="gst_byte_writer_get_pos ()">gst_byte_writer_get_pos</a> <span class="c_punctuation">()</span>
@@ -147,7 +146,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-set-pos" title="gst_byte_writer_set_pos ()">gst_byte_writer_set_pos</a> <span class="c_punctuation">()</span>
@@ -155,7 +154,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-get-remaining" title="gst_byte_writer_get_remaining ()">gst_byte_writer_get_remaining</a> <span class="c_punctuation">()</span>
@@ -163,7 +162,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-get-size" title="gst_byte_writer_get_size ()">gst_byte_writer_get_size</a> <span class="c_punctuation">()</span>
@@ -171,7 +170,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-ensure-free-space" title="gst_byte_writer_ensure_free_space ()">gst_byte_writer_ensure_free_space</a> <span class="c_punctuation">()</span>
@@ -179,7 +178,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int8" title="gst_byte_writer_put_int8 ()">gst_byte_writer_put_int8</a> <span class="c_punctuation">()</span>
@@ -187,7 +186,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int16-be" title="gst_byte_writer_put_int16_be ()">gst_byte_writer_put_int16_be</a> <span class="c_punctuation">()</span>
@@ -195,7 +194,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int16-le" title="gst_byte_writer_put_int16_le ()">gst_byte_writer_put_int16_le</a> <span class="c_punctuation">()</span>
@@ -203,7 +202,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int24-be" title="gst_byte_writer_put_int24_be ()">gst_byte_writer_put_int24_be</a> <span class="c_punctuation">()</span>
@@ -211,7 +210,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int24-le" title="gst_byte_writer_put_int24_le ()">gst_byte_writer_put_int24_le</a> <span class="c_punctuation">()</span>
@@ -219,7 +218,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int32-be" title="gst_byte_writer_put_int32_be ()">gst_byte_writer_put_int32_be</a> <span class="c_punctuation">()</span>
@@ -227,7 +226,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int32-le" title="gst_byte_writer_put_int32_le ()">gst_byte_writer_put_int32_le</a> <span class="c_punctuation">()</span>
@@ -235,7 +234,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int64-be" title="gst_byte_writer_put_int64_be ()">gst_byte_writer_put_int64_be</a> <span class="c_punctuation">()</span>
@@ -243,7 +242,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-int64-le" title="gst_byte_writer_put_int64_le ()">gst_byte_writer_put_int64_le</a> <span class="c_punctuation">()</span>
@@ -251,7 +250,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint8" title="gst_byte_writer_put_uint8 ()">gst_byte_writer_put_uint8</a> <span class="c_punctuation">()</span>
@@ -259,7 +258,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint16-be" title="gst_byte_writer_put_uint16_be ()">gst_byte_writer_put_uint16_be</a> <span class="c_punctuation">()</span>
@@ -267,7 +266,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint16-le" title="gst_byte_writer_put_uint16_le ()">gst_byte_writer_put_uint16_le</a> <span class="c_punctuation">()</span>
@@ -275,7 +274,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint24-be" title="gst_byte_writer_put_uint24_be ()">gst_byte_writer_put_uint24_be</a> <span class="c_punctuation">()</span>
@@ -283,7 +282,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint24-le" title="gst_byte_writer_put_uint24_le ()">gst_byte_writer_put_uint24_le</a> <span class="c_punctuation">()</span>
@@ -291,7 +290,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint32-be" title="gst_byte_writer_put_uint32_be ()">gst_byte_writer_put_uint32_be</a> <span class="c_punctuation">()</span>
@@ -299,7 +298,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint32-le" title="gst_byte_writer_put_uint32_le ()">gst_byte_writer_put_uint32_le</a> <span class="c_punctuation">()</span>
@@ -307,7 +306,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint64-be" title="gst_byte_writer_put_uint64_be ()">gst_byte_writer_put_uint64_be</a> <span class="c_punctuation">()</span>
@@ -315,7 +314,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-uint64-le" title="gst_byte_writer_put_uint64_le ()">gst_byte_writer_put_uint64_le</a> <span class="c_punctuation">()</span>
@@ -323,7 +322,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-float32-be" title="gst_byte_writer_put_float32_be ()">gst_byte_writer_put_float32_be</a> <span class="c_punctuation">()</span>
@@ -331,7 +330,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-float32-le" title="gst_byte_writer_put_float32_le ()">gst_byte_writer_put_float32_le</a> <span class="c_punctuation">()</span>
@@ -339,7 +338,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-float64-be" title="gst_byte_writer_put_float64_be ()">gst_byte_writer_put_float64_be</a> <span class="c_punctuation">()</span>
@@ -347,7 +346,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-float64-le" title="gst_byte_writer_put_float64_le ()">gst_byte_writer_put_float64_le</a> <span class="c_punctuation">()</span>
@@ -361,7 +360,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-string-utf16" title="gst_byte_writer_put_string_utf16 ()">gst_byte_writer_put_string_utf16</a> <span class="c_punctuation">()</span>
@@ -369,7 +368,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-string-utf32" title="gst_byte_writer_put_string_utf32 ()">gst_byte_writer_put_string_utf32</a> <span class="c_punctuation">()</span>
@@ -377,7 +376,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-string-utf8" title="gst_byte_writer_put_string_utf8 ()">gst_byte_writer_put_string_utf8</a> <span class="c_punctuation">()</span>
@@ -385,7 +384,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-data" title="gst_byte_writer_put_data ()">gst_byte_writer_put_data</a> <span class="c_punctuation">()</span>
@@ -393,7 +392,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-fill" title="gst_byte_writer_fill ()">gst_byte_writer_fill</a> <span class="c_punctuation">()</span>
@@ -401,7 +400,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstByteWriter.html#gst-byte-writer-put-buffer" title="gst_byte_writer_put_buffer ()">gst_byte_writer_put_buffer</a> <span class="c_punctuation">()</span>
@@ -624,11 +623,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstByteWriter.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstByteWriter.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gstbytewriter.h&gt;
 </pre>
@@ -651,7 +645,7 @@
 <p>Creates a new, empty <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> instance</p>
 <p>Free-function: gst_byte_writer_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.2.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.2.6"></a><h4>Returns</h4>
 <p> a new, empty <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> instance. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -661,16 +655,16 @@
 <a name="gst-byte-writer-new-with-data"></a><h3>gst_byte_writer_new_with_data ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="returnvalue">GstByteWriter</span></a> *
 gst_byte_writer_new_with_data (<em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> initialized</code></em>);</pre>
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> initialized</code></em>);</pre>
 <p>Creates a new <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> instance with the given
 memory area. If <em class="parameter"><code>initialized</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> it is possible to
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> it is possible to
 read <em class="parameter"><code>size</code></em>
  bytes from the <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> from the beginning.</p>
 <p>Free-function: gst_byte_writer_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.3.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.3.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -691,14 +685,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>initialized</p></td>
-<td class="parameter_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the complete data can be read from the beginning</p></td>
+<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the complete data can be read from the beginning</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.3.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.3.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> instance. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -707,13 +701,13 @@
 <div class="refsect2">
 <a name="gst-byte-writer-new-with-size"></a><h3>gst_byte_writer_new_with_size ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="returnvalue">GstByteWriter</span></a> *
-gst_byte_writer_new_with_size (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                               <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> fixed</code></em>);</pre>
+gst_byte_writer_new_with_size (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                               <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> fixed</code></em>);</pre>
 <p>Creates a new <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> instance with the given
 initial data size.</p>
 <p>Free-function: gst_byte_writer_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.4.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.4.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -728,14 +722,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>fixed</p></td>
-<td class="parameter_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the data can't be reallocated</p></td>
+<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the data can't be reallocated</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.4.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.4.7"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> instance. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -748,7 +742,7 @@
 <p>Initializes <em class="parameter"><code>writer</code></em>
  to an empty instance</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -769,16 +763,16 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_init_with_data (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                 <em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> initialized</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> initialized</code></em>);</pre>
 <p>Initializes <em class="parameter"><code>writer</code></em>
  with the given
 memory area. If <em class="parameter"><code>initialized</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> it is possible to
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> it is possible to
 read <em class="parameter"><code>size</code></em>
  bytes from the <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> from the beginning.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -804,7 +798,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>initialized</p></td>
-<td class="parameter_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the complete data can be read from the beginning</p></td>
+<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the complete data can be read from the beginning</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -816,12 +810,12 @@
 <a name="gst-byte-writer-init-with-size"></a><h3>gst_byte_writer_init_with_size ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_init_with_size (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> fixed</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>,
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> fixed</code></em>);</pre>
 <p>Initializes <em class="parameter"><code>writer</code></em>
  with the given initial data size.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -841,7 +835,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>fixed</p></td>
-<td class="parameter_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the data can't be reallocated</p></td>
+<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> the data can't be reallocated</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -856,7 +850,7 @@
 <p>Frees <em class="parameter"><code>writer</code></em>
  and all memory allocated by it.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -881,7 +875,7 @@
 the current data, which is returned as <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>.</p>
 <p>Free-function: gst_buffer_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.9.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.9.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -896,7 +890,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.9.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.9.7"></a><h4>Returns</h4>
 <p> the current data as buffer. <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#gst-buffer-unref"><code class="function">gst_buffer_unref()</code></a>
 after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -912,7 +906,7 @@
 the current data, which is returned.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.10.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.10.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -927,8 +921,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.10.7"></a><h4>Returns</h4>
-<p> the current data. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. </p>
+<a name="id-1.2.4.11.7.10.7"></a><h4>Returns</h4>
+<p> the current data. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -942,7 +936,7 @@
 owned by <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -966,7 +960,7 @@
  and returns the current data.</p>
 <p>Free-function: g_free</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.12.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.12.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -981,8 +975,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.12.7"></a><h4>Returns</h4>
-<p> the current data. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after
+<a name="id-1.2.4.11.7.12.7"></a><h4>Returns</h4>
+<p> the current data. <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after
 usage. </p>
 <p><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -996,7 +990,7 @@
  and returns the current data as buffer.</p>
 <p>Free-function: gst_buffer_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.13.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.13.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1011,7 +1005,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.13.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.13.7"></a><h4>Returns</h4>
 <p> the current data as buffer. <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#gst-buffer-unref"><code class="function">gst_buffer_unref()</code></a>
 after usage. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -1020,10 +1014,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-get-pos"></a><h3>gst_byte_writer_get_pos ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_writer_get_pos (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.14.4"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.14.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1038,7 +1032,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.14.5"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.14.5"></a><h4>Returns</h4>
 <p> The current position of the read/write cursor</p>
 <p></p>
 </div>
@@ -1046,14 +1040,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-set-pos"></a><h3>gst_byte_writer_set_pos ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_set_pos (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pos</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pos</code></em>);</pre>
 <p>Sets the current read/write cursor of <em class="parameter"><code>writer</code></em>
 . The new position
 can only be between 0 and the current size.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1075,20 +1069,20 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.15.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the new position could be set</p>
+<a name="id-1.2.4.11.7.15.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the new position could be set</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-get-remaining"></a><h3>gst_byte_writer_get_remaining ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_writer_get_remaining (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>);</pre>
 <p>Returns the remaining size of data that can still be written. If
 -1 is returned the remaining size is only limited by system resources.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1103,7 +1097,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.16.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.16.6"></a><h4>Returns</h4>
 <p> the remaining size of data that can still be written</p>
 <p></p>
 </div>
@@ -1111,10 +1105,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-get-size"></a><h3>gst_byte_writer_get_size ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_byte_writer_get_size (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.17.4"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.17.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1129,7 +1123,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.17.5"></a><h4>Returns</h4>
+<a name="id-1.2.4.11.7.17.5"></a><h4>Returns</h4>
 <p> The current, initialized size of the data</p>
 <p></p>
 </div>
@@ -1137,13 +1131,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-ensure-free-space"></a><h3>gst_byte_writer_ensure_free_space ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_ensure_free_space (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                   <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Checks if enough free space from the current write cursor is
 available and reallocates if necessary.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1165,8 +1159,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if at least <em class="parameter"><code>size</code></em>
+<a name="id-1.2.4.11.7.18.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if at least <em class="parameter"><code>size</code></em>
 bytes are still available</p>
 <p></p>
 </div>
@@ -1174,13 +1168,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int8"></a><h3>gst_byte_writer_put_int8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                           <em class="parameter"><code><span class="type">gint8</span> val</code></em>);</pre>
 <p>Writes a signed 8 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1202,21 +1196,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.19.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int16-be"></a><h3>gst_byte_writer_put_int16_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int16_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint16</span> val</code></em>);</pre>
 <p>Writes a signed big endian 16 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1238,21 +1232,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.20.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.20.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int16-le"></a><h3>gst_byte_writer_put_int16_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int16_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint16</span> val</code></em>);</pre>
 <p>Writes a signed little endian 16 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1274,21 +1268,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.21.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.21.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int24-be"></a><h3>gst_byte_writer_put_int24_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int24_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> val</code></em>);</pre>
 <p>Writes a signed big endian 24 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1310,21 +1304,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.22.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.22.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int24-le"></a><h3>gst_byte_writer_put_int24_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int24_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> val</code></em>);</pre>
 <p>Writes a signed little endian 24 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1346,21 +1340,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.23.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.23.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int32-be"></a><h3>gst_byte_writer_put_int32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int32_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> val</code></em>);</pre>
 <p>Writes a signed big endian 32 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1382,21 +1376,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.24.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.24.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int32-le"></a><h3>gst_byte_writer_put_int32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int32_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint32</span> val</code></em>);</pre>
 <p>Writes a signed little endian 32 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1418,21 +1412,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.25.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.25.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int64-be"></a><h3>gst_byte_writer_put_int64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int64_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint64</span> val</code></em>);</pre>
 <p>Writes a signed big endian 64 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1454,21 +1448,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.26.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.26.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-int64-le"></a><h3>gst_byte_writer_put_int64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_int64_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                               <em class="parameter"><code><span class="type">gint64</span> val</code></em>);</pre>
 <p>Writes a signed little endian 64 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1490,21 +1484,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.27.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.27.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint8"></a><h3>gst_byte_writer_put_uint8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                            <em class="parameter"><code><span class="type">guint8</span> val</code></em>);</pre>
 <p>Writes a unsigned 8 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1526,21 +1520,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.28.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.28.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint16-be"></a><h3>gst_byte_writer_put_uint16_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint16_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint16</span> val</code></em>);</pre>
 <p>Writes a unsigned big endian 16 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1562,21 +1556,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.29.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.29.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint16-le"></a><h3>gst_byte_writer_put_uint16_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint16_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint16</span> val</code></em>);</pre>
 <p>Writes a unsigned little endian 16 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.30.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1598,21 +1592,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.30.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.30.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint24-be"></a><h3>gst_byte_writer_put_uint24_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint24_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> val</code></em>);</pre>
 <p>Writes a unsigned big endian 24 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.31.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1634,21 +1628,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.31.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.31.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint24-le"></a><h3>gst_byte_writer_put_uint24_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint24_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> val</code></em>);</pre>
 <p>Writes a unsigned little endian 24 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.32.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.32.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1670,21 +1664,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.32.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.32.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint32-be"></a><h3>gst_byte_writer_put_uint32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint32_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> val</code></em>);</pre>
 <p>Writes a unsigned big endian 32 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1706,21 +1700,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.33.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.33.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint32-le"></a><h3>gst_byte_writer_put_uint32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint32_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint32</span> val</code></em>);</pre>
 <p>Writes a unsigned little endian 32 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.34.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1742,21 +1736,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.34.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.34.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint64-be"></a><h3>gst_byte_writer_put_uint64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint64_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint64</span> val</code></em>);</pre>
 <p>Writes a unsigned big endian 64 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.35.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1778,21 +1772,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.35.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.35.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-uint64-le"></a><h3>gst_byte_writer_put_uint64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_uint64_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                <em class="parameter"><code><span class="type">guint64</span> val</code></em>);</pre>
 <p>Writes a unsigned little endian 64 bit integer to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.36.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1814,21 +1808,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.36.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.36.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-float32-be"></a><h3>gst_byte_writer_put_float32_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_float32_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
 <p>Writes a big endian 32 bit float to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.37.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.37.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1850,21 +1844,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.37.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.37.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-float32-le"></a><h3>gst_byte_writer_put_float32_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_float32_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
 <p>Writes a little endian 32 bit float to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.38.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.38.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1886,21 +1880,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.38.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.38.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-float64-be"></a><h3>gst_byte_writer_put_float64_be ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_float64_be (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
 <p>Writes a big endian 64 bit float to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.39.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.39.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1922,21 +1916,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.39.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.39.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-float64-le"></a><h3>gst_byte_writer_put_float64_le ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_float64_le (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
 <p>Writes a little endian 64 bit float to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.40.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.40.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1958,8 +1952,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.40.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.40.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
@@ -1972,7 +1966,7 @@
 string is assumed to be in an 8-bit encoding (e.g. ASCII,UTF-8 or
 ISO-8859-1).</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.41.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.41.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1994,21 +1988,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.41.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the string could be written</p>
+<a name="id-1.2.4.11.7.41.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the string could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-string-utf16"></a><h3>gst_byte_writer_put_string_utf16 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_string_utf16 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                   <em class="parameter"><code>const <span class="type">guint16</span> *data</code></em>);</pre>
 <p>Writes a NUL-terminated UTF16 string to <em class="parameter"><code>writer</code></em>
  (including the terminator).</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.42.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.42.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2030,21 +2024,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.42.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.42.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-string-utf32"></a><h3>gst_byte_writer_put_string_utf32 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_string_utf32 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                   <em class="parameter"><code>const <span class="type">guint32</span> *data</code></em>);</pre>
 <p>Writes a NUL-terminated UTF32 string to <em class="parameter"><code>writer</code></em>
  (including the terminator).</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2066,21 +2060,21 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.43.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.43.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-string-utf8"></a><h3>gst_byte_writer_put_string_utf8 ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_string_utf8 (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *data</code></em>);</pre>
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *data</code></em>);</pre>
 <p>Writes a NUL-terminated UTF8 string to <em class="parameter"><code>writer</code></em>
  (including the terminator).</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2103,24 +2097,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.44.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.44.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-data"></a><h3>gst_byte_writer_put_data ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_data (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                           <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Writes <em class="parameter"><code>size</code></em>
  bytes of <em class="parameter"><code>data</code></em>
  to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2148,24 +2142,24 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.45.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.45.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-fill"></a><h3>gst_byte_writer_fill ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_fill (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                       <em class="parameter"><code><span class="type">guint8</span> value</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Writes <em class="parameter"><code>size</code></em>
  bytes containing <em class="parameter"><code>value</code></em>
  to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2192,15 +2186,15 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.46.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
+<a name="id-1.2.4.11.7.46.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the value could be written</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-byte-writer-put-buffer"></a><h3>gst_byte_writer_put_buffer ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_byte_writer_put_buffer (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                             <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                             <em class="parameter"><code><span class="type">gsize</span> offset</code></em>,
@@ -2210,7 +2204,7 @@
  to <em class="parameter"><code>writer</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.47.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.47.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2242,8 +2236,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.47.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the data could be written</p>
+<a name="id-1.2.4.11.7.47.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the data could be written</p>
 <p></p>
 </div>
 </div>
@@ -2274,7 +2268,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.50.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.50.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2307,7 +2301,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.51.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.51.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2340,7 +2334,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.52.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.52.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2373,7 +2367,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.53.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.53.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2406,7 +2400,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.54.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.54.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2439,7 +2433,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.55.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.55.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2472,7 +2466,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.56.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.56.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2505,7 +2499,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.57.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.57.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2537,7 +2531,7 @@
  without checking if there
 is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.58.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.58.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2570,7 +2564,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.59.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.59.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2603,7 +2597,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.60.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.60.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2636,7 +2630,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.61.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.61.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2669,7 +2663,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.62.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.62.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2702,7 +2696,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.63.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.63.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2735,7 +2729,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.64.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.64.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2768,7 +2762,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.65.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.65.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2801,7 +2795,7 @@
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.66.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.66.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2829,12 +2823,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_put_float32_be_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
 <p>Writes a big endian 32 bit float to <em class="parameter"><code>writer</code></em>
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.67.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.67.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2862,12 +2856,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_put_float32_le_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> val</code></em>);</pre>
 <p>Writes a little endian 32 bit float to <em class="parameter"><code>writer</code></em>
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.68.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.68.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2895,12 +2889,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_put_float64_be_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
 <p>Writes a big endian 64 bit float to <em class="parameter"><code>writer</code></em>
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.69.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.69.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2928,12 +2922,12 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_put_float64_le_unchecked
                                (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> val</code></em>);</pre>
 <p>Writes a little endian 64 bit float to <em class="parameter"><code>writer</code></em>
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.70.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.70.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -2961,14 +2955,14 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_put_data_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                     <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Writes <em class="parameter"><code>size</code></em>
  bytes of <em class="parameter"><code>data</code></em>
  to <em class="parameter"><code>writer</code></em>
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.71.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.71.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3002,14 +2996,14 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_byte_writer_fill_unchecked (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstByteWriter.html#GstByteWriter" title="GstByteWriter"><span class="type">GstByteWriter</span></a> *writer</code></em>,
                                 <em class="parameter"><code><span class="type">guint8</span> value</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
+                                <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre>
 <p>Writes <em class="parameter"><code>size</code></em>
  bytes containing <em class="parameter"><code>value</code></em>
  to <em class="parameter"><code>writer</code></em>
  without
 checking if there is enough free space available in the byte writer.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.8.72.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.11.7.72.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -3052,7 +3046,7 @@
 </pre>
 <p>A byte writer instance.</p>
 <div class="refsect3">
-<a name="id-1.2.4.11.9.2.5"></a><h4>Members</h4>
+<a name="id-1.2.4.11.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -3066,18 +3060,18 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstByteWriter.alloc-size"></a>alloc_size</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstByteWriter.alloc-size"></a>alloc_size</code></em>;</p></td>
 <td class="struct_member_description"><p>Allocation size of the data</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstByteWriter.fixed"></a>fixed</code></em>;</p></td>
-<td class="struct_member_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> no reallocations are allowed</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstByteWriter.fixed"></a>fixed</code></em>;</p></td>
+<td class="struct_member_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> no reallocations are allowed</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstByteWriter.owned"></a>owned</code></em>;</p></td>
-<td class="struct_member_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> no reallocations are allowed and copies of data are returned</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstByteWriter.owned"></a>owned</code></em>;</p></td>
+<td class="struct_member_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> no reallocations are allowed and copies of data are returned</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
@@ -3088,6 +3082,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstCheck.html b/docs/libs/html/gstreamer-libs-GstCheck.html
index a097678..a824fe5 100644
--- a/docs/libs/html/gstreamer-libs-GstCheck.html
+++ b/docs/libs/html/gstreamer-libs-GstCheck.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-check.html" title="GStreamer Check Unit Testing">
 <link rel="prev" href="gstreamer-check.html" title="GStreamer Check Unit Testing">
 <link rel="next" href="gstreamer-libs-GstBufferStraw.html" title="GstBufferStraw">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstCheck.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstCheck.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstCheck.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-check.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -344,7 +343,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-run-suite" title="gst_check_run_suite ()">gst_check_run_suite</a> <span class="c_punctuation">()</span>
@@ -366,6 +365,54 @@
 <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-events-with-stream-id" title="gst_check_setup_events_with_stream_id ()">gst_check_setup_events_with_stream_id</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-by-name-from-template" title="gst_check_setup_sink_pad_by_name_from_template ()">gst_check_setup_sink_pad_by_name_from_template</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-from-template" title="gst_check_setup_sink_pad_from_template ()">gst_check_setup_sink_pad_from_template</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-by-name-from-template" title="gst_check_setup_src_pad_by_name_from_template ()">gst_check_setup_src_pad_by_name_from_template</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-from-template" title="gst_check_setup_src_pad_from_template ()">gst_check_setup_src_pad_from_template</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-objects-destroyed-on-unref" title="gst_check_objects_destroyed_on_unref ()">gst_check_objects_destroyed_on_unref</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstCheck.html#gst-check-object-destroyed-on-unref" title="gst_check_object_destroyed_on_unref ()">gst_check_object_destroyed_on_unref</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -383,11 +430,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstCheck.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstCheck.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/check/gstcheck.h&gt;
 </pre>
@@ -396,9 +438,9 @@
 <a name="gstreamer-libs-GstCheck.description"></a><h2>Description</h2>
 <p>These macros and functions are for internal use of the unit tests found
 inside the 'check' directories of various GStreamer packages.</p>
-<p>One notable feature is that one can use the environment variables GST_CHECK
-and GST_CHECK_IGNORE to select which tests to run or skip. Both variables
-can contain a comman separated list of test name globs (e.g. test_*).</p>
+<p>One notable feature is that one can use the environment variables GST_CHECKS
+and GST_CHECKS_IGNORE to select which tests to run or skip. Both variables
+can contain a comma separated list of test name globs (e.g. test_*).</p>
 </div>
 <div class="refsect1">
 <a name="gstreamer-libs-GstCheck.functions_details"></a><h2>Functions</h2>
@@ -407,7 +449,7 @@
 <pre class="programlisting">#define             GST_START_TEST(__testname)</pre>
 <p>wrapper for checks START_TEST</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -472,7 +514,7 @@
 case, printing both expressions and the values they evaluated to. This
 macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -482,12 +524,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -504,7 +546,7 @@
 is not the case, printing both expressions and the values they evaluated
 to. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -514,12 +556,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -536,7 +578,7 @@
 this is not the case, printing both expressions and the values they
 evaluated to. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -568,7 +610,7 @@
 case, printing both expressions and the values they evaluated to. This
 macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -600,7 +642,7 @@
 case, printing both expressions and the values they evaluated to. This
 macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -632,7 +674,7 @@
 case, printing both expressions and the values they evaluated to in
 hexadecimal format. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -642,12 +684,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -665,7 +707,7 @@
 case, printing both expressions and the values they evaluated to in
 hexadecimal format. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -698,7 +740,7 @@
 case, printing both expressions and the values they evaluated to in
 hexadecimal format. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -731,7 +773,7 @@
 is not the case, printing both expressions and the values they
 evaluated to. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -770,7 +812,7 @@
 case, printing both expressions and the values they evaluated to. This
 macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.21.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -780,12 +822,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -803,7 +845,7 @@
 is not the case, printing both expressions and the values they evaluated
 to. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.22.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -813,12 +855,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> or <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -836,7 +878,7 @@
 this is not the case, printing both expressions and the values they
 evaluated to. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -869,7 +911,7 @@
 case, printing both expressions and the values they evaluated to. This
 macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.24.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -902,7 +944,7 @@
 case, printing both expressions and the values they evaluated to. This
 macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.25.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -935,7 +977,7 @@
 case, printing both expressions and the values they evaluated to in
 hexadecimal format. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -945,12 +987,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>a</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>b</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value or expression</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -969,7 +1011,7 @@
 case, printing both expressions and the values they evaluated to in
 hexadecimal format. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.27.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.27.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1003,7 +1045,7 @@
 case, printing both expressions and the values they evaluated to in
 hexadecimal format. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.28.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1037,7 +1079,7 @@
 is not the case, printing both expressions and the values they
 evaluated to. This macro is for use in unit tests.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.29.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.29.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1079,17 +1121,17 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_check_message_error (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html"><span class="type">GstMessage</span></a> *message</code></em>,
                          <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>,
-                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>);</pre>
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>,
+                         <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-check-setup-element"></a><h3>gst_check_setup_element ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="returnvalue">GstElement</span></a> *
-gst_check_setup_element (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *factory</code></em>);</pre>
+gst_check_setup_element (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *factory</code></em>);</pre>
 <p>setup an element for a filter test with mysrcpad and mysinkpad</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.33.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.33.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1104,7 +1146,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.33.6"></a><h4>Returns</h4>
+<a name="id-1.2.7.3.7.33.6"></a><h4>Returns</h4>
 <p> a new element. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -1115,8 +1157,9 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
 gst_check_setup_sink_pad (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
                           <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html#GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> *tmpl</code></em>);</pre>
+<p>Does the same as <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-by-name" title="gst_check_setup_sink_pad_by_name ()"><span class="type">gst_check_setup_sink_pad_by_name</span></a> with the <span class="emphasis"><em> name </em></span> parameter equal to "src".</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.34.4"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.34.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1138,8 +1181,9 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.34.5"></a><h4>Returns</h4>
-<p> a new pad. </p>
+<a name="id-1.2.7.3.7.34.6"></a><h4>Returns</h4>
+<p> a new pad that can be used to check the output of <em class="parameter"><code>element</code></em>
+. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -1149,8 +1193,9 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
 gst_check_setup_src_pad (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
                          <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html#GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> *tmpl</code></em>);</pre>
+<p>Does the same as <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-by-name" title="gst_check_setup_src_pad_by_name ()"><span class="type">gst_check_setup_src_pad_by_name</span></a> with the <span class="emphasis"><em> name </em></span> parameter equal to "sink".</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.35.4"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.35.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1172,8 +1217,9 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.35.5"></a><h4>Returns</h4>
-<p> a new pad. </p>
+<a name="id-1.2.7.3.7.35.6"></a><h4>Returns</h4>
+<p> A new pad that can be used to inject data on <em class="parameter"><code>element</code></em>
+. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -1183,9 +1229,16 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
 gst_check_setup_sink_pad_by_name (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
                                   <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html#GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> *tmpl</code></em>,
-                                  <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                  <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<p>Creates a new sink pad (based on the given <em class="parameter"><code>tmpl</code></em>
+) and links it to the given <em class="parameter"><code>element</code></em>
+ src pad 
+(the pad that matches the given <em class="parameter"><code>name</code></em>
+).
+You can set event/chain/query functions on this pad to check the output of the <em class="parameter"><code>element</code></em>
+.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.36.4"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.36.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1205,15 +1258,17 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name</p></td>
+<td class="parameter_description"><p>Name of the <em class="parameter"><code>element</code></em>
+src pad that will be linked to the sink pad that will be setup</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.36.5"></a><h4>Returns</h4>
-<p> a new pad. </p>
+<a name="id-1.2.7.3.7.36.6"></a><h4>Returns</h4>
+<p> a new pad that can be used to check the output of <em class="parameter"><code>element</code></em>
+. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -1223,9 +1278,76 @@
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
 gst_check_setup_src_pad_by_name (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
                                  <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html#GstStaticPadTemplate"><span class="type">GstStaticPadTemplate</span></a> *tmpl</code></em>,
-                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                 <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<p>Creates a new src pad (based on the given <em class="parameter"><code>tmpl</code></em>
+) and links it to the given <em class="parameter"><code>element</code></em>
+ sink pad (the pad that matches the given <em class="parameter"><code>name</code></em>
+).
+Before using the src pad to push data on <em class="parameter"><code>element</code></em>
+ you need to call <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-events" title="gst_check_setup_events ()"><span class="type">gst_check_setup_events</span></a> on the created src pad.</p>
+<p>Example of how to push a buffer on <em class="parameter"><code>element</code></em>
+:</p>
+<div class="informalexample">
+  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
+    <tbody>
+      <tr>
+        <td class="listing_lines" align="right"><pre>1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24</pre></td>
+        <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">static</span> GstStaticPadTemplate sinktemplate <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html#GST-STATIC-PAD-TEMPLATE:CAPS">GST_STATIC_PAD_TEMPLATE</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;sink&quot;</span><span class="gtkdoc opt">,</span>
+GST_PAD_SINK<span class="gtkdoc opt">,</span>
+GST_PAD_ALWAYS<span class="gtkdoc opt">,</span>
+<span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#GST-STATIC-CAPS">GST_STATIC_CAPS</a></span> <span class="gtkdoc opt">(</span>YOUR_CAPS_TEMPLATE_STRING<span class="gtkdoc opt">)</span>
+<span class="gtkdoc opt">);</span>
+<span class="gtkdoc kwb">static</span> GstStaticPadTemplate srctemplate <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html#GST-STATIC-PAD-TEMPLATE:CAPS">GST_STATIC_PAD_TEMPLATE</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;src&quot;</span><span class="gtkdoc opt">,</span>
+GST_PAD_SRC<span class="gtkdoc opt">,</span>
+GST_PAD_ALWAYS<span class="gtkdoc opt">,</span>
+<span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#GST-STATIC-CAPS">GST_STATIC_CAPS</a></span> <span class="gtkdoc opt">(</span>YOUR_CAPS_TEMPLATE_STRING<span class="gtkdoc opt">)</span>
+<span class="gtkdoc opt">);</span>
+
+GstElement <span class="gtkdoc opt">*</span> element <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/gstreamer-libs-GstCheck.html#gst-check-setup-element">gst_check_setup_element</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;element&quot;</span><span class="gtkdoc opt">);</span>
+GstPad <span class="gtkdoc opt">*</span> mysrcpad <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/gstreamer-libs-GstCheck.html#gst-check-setup-src-pad">gst_check_setup_src_pad</a></span> <span class="gtkdoc opt">(</span>element<span class="gtkdoc opt">, &amp;</span>srctemplate<span class="gtkdoc opt">);</span>
+GstPad <span class="gtkdoc opt">*</span> mysinkpad <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad">gst_check_setup_sink_pad</a></span> <span class="gtkdoc opt">(</span>element<span class="gtkdoc opt">, &amp;</span>sinktemplate<span class="gtkdoc opt">);</span>
+
+<span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-set-active">gst_pad_set_active</a></span> <span class="gtkdoc opt">(</span>mysrcpad<span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">);</span>
+<span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-set-active">gst_pad_set_active</a></span> <span class="gtkdoc opt">(</span>mysinkpad<span class="gtkdoc opt">,</span> TRUE<span class="gtkdoc opt">);</span>
+<span class="function">fail_unless</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-set-state">gst_element_set_state</a></span> <span class="gtkdoc opt">(</span>element<span class="gtkdoc opt">,</span> GST_STATE_PLAYING<span class="gtkdoc opt">) ==</span> GST_STATE_CHANGE_SUCCESS<span class="gtkdoc opt">,</span> <span class="string">&quot;could not set to playing&quot;</span><span class="gtkdoc opt">);</span>
+
+GstCaps <span class="gtkdoc opt">*</span> caps <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-from-string">gst_caps_from_string</a></span> <span class="gtkdoc opt">(</span>YOUR_DESIRED_SINK_CAPS<span class="gtkdoc opt">);</span>
+<span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/gstreamer-libs-GstCheck.html#gst-check-setup-events">gst_check_setup_events</a></span> <span class="gtkdoc opt">(</span>mysrcpad<span class="gtkdoc opt">,</span> element<span class="gtkdoc opt">,</span> caps<span class="gtkdoc opt">,</span> GST_FORMAT_TIME<span class="gtkdoc opt">);</span>
+<span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref">gst_caps_unref</a></span> <span class="gtkdoc opt">(</span>caps<span class="gtkdoc opt">);</span>
+
+<span class="function">fail_unless</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-push">gst_pad_push</a></span> <span class="gtkdoc opt">(</span>mysrcpad<span class="gtkdoc opt">,</span> <span class="function">gst_buffer_new_and_alloc</span><span class="gtkdoc opt">(</span><span class="number">2</span><span class="gtkdoc opt">)) ==</span> GST_FLOW_OK<span class="gtkdoc opt">);</span></pre></td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+<p></p>
+<p>For very simple input/output test scenarios checkout <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-element-push-buffer-list" title="gst_check_element_push_buffer_list ()"><span class="type">gst_check_element_push_buffer_list</span></a> and <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-element-push-buffer" title="gst_check_element_push_buffer ()"><span class="type">gst_check_element_push_buffer</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.37.4"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.37.9"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1235,7 +1357,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>element</p></td>
-<td class="parameter_description"><p>element to setup pad on</p></td>
+<td class="parameter_description"><p>element to setup src pad on</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -1245,15 +1367,17 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name</p></td>
+<td class="parameter_description"><p>Name of the <em class="parameter"><code>element</code></em>
+sink pad that will be linked to the src pad that will be setup</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.37.5"></a><h4>Returns</h4>
-<p> a new pad. </p>
+<a name="id-1.2.7.3.7.37.10"></a><h4>Returns</h4>
+<p> A new pad that can be used to inject data on <em class="parameter"><code>element</code></em>
+. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -1262,7 +1386,7 @@
 <a name="gst-check-teardown-pad-by-name"></a><h3>gst_check_teardown_pad_by_name ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_check_teardown_pad_by_name (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
@@ -1296,13 +1420,13 @@
 <a name="gst-check-buffer-data"></a><h3>gst_check_buffer_data ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_check_buffer_data (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer</code></em>,
-                       <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> data</code></em>,
+                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> data</code></em>,
                        <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
 <p>Compare the buffer contents with <em class="parameter"><code>data</code></em>
  and <em class="parameter"><code>size</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.43.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.43.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1338,7 +1462,7 @@
 <p>Compare two caps with gst_caps_is_equal and fail unless they are
 equal.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.44.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.44.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1364,25 +1488,25 @@
 <div class="refsect2">
 <a name="gst-check-element-push-buffer-list"></a><h3>gst_check_element_push_buffer_list ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_check_element_push_buffer_list (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *element_name</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *buffer_in</code></em>,
+gst_check_element_push_buffer_list (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *element_name</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *buffer_in</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> *caps_in</code></em>,
-                                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *buffer_out</code></em>,
+                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *buffer_out</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> *caps_out</code></em>,
                                     <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a> last_flow_return</code></em>);</pre>
-<p>Create an <em class="parameter"><code>element</code></em>
- with the factory with the name and push the buffers in
-<em class="parameter"><code>buffer_in</code></em>
- to this element. The element should create the buffers equal to
-the buffers in <em class="parameter"><code>buffer_out</code></em>
-. We only check the caps, size and the data of the
-buffers. This function unrefs the buffers in the two lists.
+<p>Create an element using the factory providing the <em class="parameter"><code>element_name</code></em>
+ and push the
+buffers in <em class="parameter"><code>buffer_in</code></em>
+ to this element. The element should create the buffers
+equal to the buffers in <em class="parameter"><code>buffer_out</code></em>
+. We only check the size and the data of
+the buffers. This function unrefs the buffers in the two lists.
 The last_flow_return parameter indicates the expected flow return value from
 pushing the final buffer in the list.
 This can be used to set up a test which pushes some buffers and then an
 invalid buffer, when the final buffer is expected to fail, for example.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.45.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.45.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1402,12 +1526,22 @@
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstBuffer][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
+<td class="parameter_name"><p>caps_in</p></td>
+<td class="parameter_description"><p>the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> expected of the sinkpad of the element</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
 <td class="parameter_name"><p>buffer_out</p></td>
 <td class="parameter_description"><p> a list of buffers that we expect from
 the element. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstBuffer][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
+<td class="parameter_name"><p>caps_out</p></td>
+<td class="parameter_description"><p>the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> expected of the srcpad of the element</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
 <td class="parameter_name"><p>last_flow_return</p></td>
 <td class="parameter_description"><p>the last buffer push needs to give this GstFlowReturn</p></td>
 <td class="parameter_annotations"> </td>
@@ -1420,20 +1554,20 @@
 <div class="refsect2">
 <a name="gst-check-element-push-buffer"></a><h3>gst_check_element_push_buffer ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
-gst_check_element_push_buffer (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *element_name</code></em>,
+gst_check_element_push_buffer (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *element_name</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer_in</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> *caps_in</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer_out</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> *caps_out</code></em>);</pre>
-<p>Create an <em class="parameter"><code>element</code></em>
- with the factory with the name and push the
-<em class="parameter"><code>buffer_in</code></em>
+<p>Create an element using the factory providing the <em class="parameter"><code>element_name</code></em>
+ and
+push the <em class="parameter"><code>buffer_in</code></em>
  to this element. The element should create one buffer
 and this will be compared with <em class="parameter"><code>buffer_out</code></em>
 . We only check the caps
 and the data of the buffers. This function unrefs the buffers.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.46.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.46.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1452,10 +1586,20 @@
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
+<td class="parameter_name"><p>caps_in</p></td>
+<td class="parameter_description"><p>the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> expected of the sinkpad of the element</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
 <td class="parameter_name"><p>buffer_out</p></td>
 <td class="parameter_description"><p>compare the result with this buffer</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
+<tr>
+<td class="parameter_name"><p>caps_out</p></td>
+<td class="parameter_description"><p>the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> expected of the srcpad of the element</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -1463,10 +1607,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-check-run-suite"></a><h3>gst_check_run_suite ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
 gst_check_run_suite (<em class="parameter"><code><span class="type">Suite</span> *suite</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
-                     <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fname</code></em>);</pre>
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
+                     <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *fname</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
@@ -1482,7 +1626,7 @@
  has more than one src or sink pad, use
 <a class="link" href="gstreamer-libs-GstCheck.html#gst-check-setup-events-with-stream-id" title="gst_check_setup_events_with_stream_id ()"><code class="function">gst_check_setup_events_with_stream_id()</code></a> instead.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.48.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.48.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1503,7 +1647,7 @@
 <tr>
 <td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> in case caps event must be sent. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
@@ -1522,12 +1666,12 @@
                                        <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
                                        <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> *caps</code></em>,
                                        <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
-                                       <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre>
+                                       <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre>
 <p>Push stream-start, caps and segment event, which consist of the minimum
 required events to allow streaming. Caps is optional to allow raw src
 testing.</p>
 <div class="refsect3">
-<a name="id-1.2.7.3.8.49.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.3.7.49.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1548,7 +1692,7 @@
 <tr>
 <td class="parameter_name"><p>caps</p></td>
 <td class="parameter_description"><p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> in case caps event must be sent. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>format</p></td>
@@ -1564,6 +1708,230 @@
 </table></div>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="gst-check-setup-sink-pad-by-name-from-template"></a><h3>gst_check_setup_sink_pad_by_name_from_template ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+gst_check_setup_sink_pad_by_name_from_template
+                               (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
+                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html"><span class="type">GstPadTemplate</span></a> *tmpl</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.50.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>element</p></td>
+<td class="parameter_description"><p>element to setup pad on</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>pad template</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>name</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.50.5"></a><h4>Returns</h4>
+<p> a new pad. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-check-setup-sink-pad-from-template"></a><h3>gst_check_setup_sink_pad_from_template ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+gst_check_setup_sink_pad_from_template
+                               (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
+                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html"><span class="type">GstPadTemplate</span></a> *tmpl</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.51.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>element</p></td>
+<td class="parameter_description"><p>element to setup pad on</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>pad template</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.51.5"></a><h4>Returns</h4>
+<p> a new pad. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-check-setup-src-pad-by-name-from-template"></a><h3>gst_check_setup_src_pad_by_name_from_template ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+gst_check_setup_src_pad_by_name_from_template
+                               (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
+                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html"><span class="type">GstPadTemplate</span></a> *tmpl</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.52.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>element</p></td>
+<td class="parameter_description"><p>element to setup pad on</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>pad template</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>name</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.52.5"></a><h4>Returns</h4>
+<p> a new pad. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-check-setup-src-pad-from-template"></a><h3>gst_check_setup_src_pad_from_template ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="returnvalue">GstPad</span></a> *
+gst_check_setup_src_pad_from_template (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>,
+                                       <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPadTemplate.html"><span class="type">GstPadTemplate</span></a> *tmpl</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.53.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>element</p></td>
+<td class="parameter_description"><p>element to setup pad on</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>pad template</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.53.5"></a><h4>Returns</h4>
+<p> a new pad. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since 1.4</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-check-objects-destroyed-on-unref"></a><h3>gst_check_objects_destroyed_on_unref ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_check_objects_destroyed_on_unref (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object_to_unref</code></em>,
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> first_object</code></em>,
+                                      <em class="parameter"><code>...</code></em>);</pre>
+<p>Unrefs <em class="parameter"><code>object_to_unref</code></em>
+ and checks that is has properly been
+destroyed, also checks that the other objects passed in
+parametter have been destroyed as a concequence of
+unrefing <em class="parameter"><code>object_to_unref</code></em>
+. Last variable argument should be NULL.</p>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.54.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>object_to_unref</p></td>
+<td class="parameter_description"><p>The <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to unref</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>first_object</p></td>
+<td class="parameter_description"><p> The first object that should be destroyed as a
+concequence of unrefing <em class="parameter"><code>object_to_unref</code></em>
+. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>...</p></td>
+<td class="parameter_description"><p>Additional object that should have been destroyed.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since 1.6</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-check-object-destroyed-on-unref"></a><h3>gst_check_object_destroyed_on_unref ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_check_object_destroyed_on_unref (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object_to_unref</code></em>);</pre>
+<p>Unrefs <em class="parameter"><code>object_to_unref</code></em>
+ and checks that is has properly been
+destroyed.</p>
+<div class="refsect3">
+<a name="id-1.2.7.3.7.55.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>object_to_unref</p></td>
+<td class="parameter_description"><p>The <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to unref</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since 1.6</p>
+</div>
 </div>
 <div class="refsect1">
 <a name="gstreamer-libs-GstCheck.other_details"></a><h2>Types and Values</h2>
@@ -1576,6 +1944,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstDataQueue.html b/docs/libs/html/gstreamer-libs-GstDataQueue.html
index 06476d6..bc8c7c0 100644
--- a/docs/libs/html/gstreamer-libs-GstDataQueue.html
+++ b/docs/libs/html/gstreamer-libs-GstDataQueue.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-libs-GstTypeFindHelper.html" title="GstTypeFindHelper">
 <link rel="next" href="gstreamer-libs-GstQueueArray.html" title="GstQueueArray">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstDataQueue.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstDataQueue.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstDataQueue.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -42,7 +41,7 @@
 <tbody>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <span class="c_punctuation">(</span><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueCheckFullFunction" title="GstDataQueueCheckFullFunction ()">*GstDataQueueCheckFullFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
@@ -74,7 +73,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-push" title="gst_data_queue_push ()">gst_data_queue_push</a> <span class="c_punctuation">()</span>
@@ -82,7 +81,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-push-force" title="gst_data_queue_push_force ()">gst_data_queue_push_force</a> <span class="c_punctuation">()</span>
@@ -90,7 +89,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-pop" title="gst_data_queue_pop ()">gst_data_queue_pop</a> <span class="c_punctuation">()</span>
@@ -98,7 +97,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-peek" title="gst_data_queue_peek ()">gst_data_queue_peek</a> <span class="c_punctuation">()</span>
@@ -122,7 +121,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-drop-head" title="gst_data_queue_drop_head ()">gst_data_queue_drop_head</a> <span class="c_punctuation">()</span>
@@ -130,7 +129,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-is-full" title="gst_data_queue_is_full ()">gst_data_queue_is_full</a> <span class="c_punctuation">()</span>
@@ -138,7 +137,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-is-empty" title="gst_data_queue_is_empty ()">gst_data_queue_is_empty</a> <span class="c_punctuation">()</span>
@@ -187,11 +186,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstDataQueue.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstDataQueue.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gstdataqueue.h&gt;
 </pre>
@@ -206,16 +200,16 @@
 <a name="gstreamer-libs-GstDataQueue.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="GstDataQueueCheckFullFunction"></a><h3>GstDataQueueCheckFullFunction ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 <span class="c_punctuation">(</span>*GstDataQueueCheckFullFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> visible</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> bytes</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> visible</code></em>,
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> bytes</code></em>,
                                   <em class="parameter"><code><span class="type">guint64</span> time</code></em>,
-                                  <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
+                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
 <p>The prototype of the function used to inform the queue that it should be
 considered as full.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -245,15 +239,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>checkdata</p></td>
-<td class="parameter_description"><p>The <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> registered when the <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> was created.</p></td>
+<td class="parameter_description"><p>The <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> registered when the <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> was created.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the queue should be considered full.</p>
+<a name="id-1.2.4.15.7.2.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the queue should be considered full.</p>
 <p></p>
 </div>
 </div>
@@ -262,14 +256,14 @@
 <a name="GstDataQueueEmptyCallback"></a><h3>GstDataQueueEmptyCallback ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstDataQueueEmptyCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstDataQueueFullCallback"></a><h3>GstDataQueueFullCallback ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 <span class="c_punctuation">(</span>*GstDataQueueFullCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
 </div>
 <hr>
 <div class="refsect2">
@@ -278,15 +272,15 @@
 gst_data_queue_new (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueCheckFullFunction" title="GstDataQueueCheckFullFunction ()"><span class="type">GstDataQueueCheckFullFunction</span></a> checkfull</code></em>,
                     <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueFullCallback" title="GstDataQueueFullCallback ()"><span class="type">GstDataQueueFullCallback</span></a> fullcallback</code></em>,
                     <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueEmptyCallback" title="GstDataQueueEmptyCallback ()"><span class="type">GstDataQueueEmptyCallback</span></a> emptycallback</code></em>,
-                    <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
-<p>Creates a new <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a>. The difference with <em class="parameter"><code>gst_data_queue_new</code></em>
- is that it will
-not emit the 'full' and 'empty' signals, but instead calling directly <em class="parameter"><code>fullcallback</code></em>
-
-or <em class="parameter"><code>emptycallback</code></em>
-.</p>
+                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> checkdata</code></em>);</pre>
+<p>Creates a new <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a>. If <em class="parameter"><code>fullcallback</code></em>
+ or <em class="parameter"><code>emptycallback</code></em>
+ are supplied, then
+the <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> will call the respective callback to signal full or empty condition.
+If the callbacks are NULL the <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> will instead emit 'full' and 'empty'
+signals.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -312,7 +306,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>checkdata</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> that will be passed to the <em class="parameter"><code>checkfull</code></em>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> that will be passed to the <em class="parameter"><code>checkfull</code></em>
 , <em class="parameter"><code>fullcallback</code></em>
 ,
 and <em class="parameter"><code>emptycallback</code></em>
@@ -323,7 +317,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.5.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.15.7.5.6"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a>.</p>
 <p></p>
 </div>
@@ -332,7 +326,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-push"></a><h3>gst_data_queue_push ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_push (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
                      <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> *item</code></em>);</pre>
 <p>Pushes a <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> (or a structure that begins with the same fields)
@@ -346,11 +340,11 @@
 and <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-push-event"><code class="function">gst_pad_push_event()</code></a>: this function only takes ownership of <em class="parameter"><code>item</code></em>
  and
 the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> contained in <em class="parameter"><code>item</code></em>
- if the push was successful. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+ if the push was successful. If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 is returned, the caller is responsible for freeing <em class="parameter"><code>item</code></em>
  and its contents.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.6.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.6.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -372,8 +366,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.6.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>item</code></em>
+<a name="id-1.2.4.15.7.6.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>item</code></em>
 was successfully pushed on the <em class="parameter"><code>queue</code></em>
 .</p>
 <p></p>
@@ -383,7 +377,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-push-force"></a><h3>gst_data_queue_push_force ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_push_force (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
                            <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> *item</code></em>);</pre>
 <p>Pushes a <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> (or a structure that begins with the same fields)
@@ -397,11 +391,11 @@
 and <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-push-event"><code class="function">gst_pad_push_event()</code></a>: this function only takes ownership of <em class="parameter"><code>item</code></em>
  and
 the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> contained in <em class="parameter"><code>item</code></em>
- if the push was successful. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+ if the push was successful. If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
 is returned, the caller is responsible for freeing <em class="parameter"><code>item</code></em>
  and its contents.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.7.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.7.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -423,8 +417,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.7.7"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>item</code></em>
+<a name="id-1.2.4.15.7.7.7"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>item</code></em>
 was successfully pushed on the <em class="parameter"><code>queue</code></em>
 .</p>
 <p></p>
@@ -434,7 +428,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-pop"></a><h3>gst_data_queue_pop ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_pop (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
                     <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> **item</code></em>);</pre>
 <p>Retrieves the first <em class="parameter"><code>item</code></em>
@@ -445,7 +439,7 @@
  is set to the flushing state.
 MT safe.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -467,8 +461,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an <em class="parameter"><code>item</code></em>
+<a name="id-1.2.4.15.7.8.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an <em class="parameter"><code>item</code></em>
 was successfully retrieved from the <em class="parameter"><code>queue</code></em>
 .</p>
 <p></p>
@@ -478,7 +472,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-peek"></a><h3>gst_data_queue_peek ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_peek (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
                      <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> **item</code></em>);</pre>
 <p>Retrieves the first <em class="parameter"><code>item</code></em>
@@ -489,7 +483,7 @@
  is set to the flushing state.
 MT safe.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -511,8 +505,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.9.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an <em class="parameter"><code>item</code></em>
+<a name="id-1.2.4.15.7.9.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an <em class="parameter"><code>item</code></em>
 was successfully retrieved from the <em class="parameter"><code>queue</code></em>
 .</p>
 <p></p>
@@ -529,7 +523,7 @@
 <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-pop" title="gst_data_queue_pop ()"><span class="type">gst_data_queue_pop</span></a> will be released.
 MT safe.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -550,18 +544,18 @@
 <a name="gst-data-queue-set-flushing"></a><h3>gst_data_queue_set_flushing ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_data_queue_set_flushing (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre>
 <p>Sets the queue to flushing state if <em class="parameter"><code>flushing</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. If set to flushing
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. If set to flushing
 state, any incoming data on the <em class="parameter"><code>queue</code></em>
  will be discarded. Any call currently
 blocking on <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-push" title="gst_data_queue_push ()"><span class="type">gst_data_queue_push</span></a> or <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-pop" title="gst_data_queue_pop ()"><span class="type">gst_data_queue_pop</span></a> will return straight
-away with a return value of <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. While the <em class="parameter"><code>queue</code></em>
+away with a return value of <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. While the <em class="parameter"><code>queue</code></em>
  is in flushing state, 
-all calls to those two functions will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+all calls to those two functions will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p>MT Safe.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.11.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.11.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -576,7 +570,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>flushing</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> stating if the queue will be flushing or not.</p></td>
+<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> stating if the queue will be flushing or not.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -587,12 +581,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-drop-head"></a><h3>gst_data_queue_drop_head ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_drop_head (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
-<p>Pop and unref the head-most <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> with the given <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a>.</p>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>);</pre>
+<p>Pop and unref the head-most <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> with the given <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -607,15 +601,15 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>The <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the item to drop.</p></td>
+<td class="parameter_description"><p>The <a href="https://developer.gnome.org/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the item to drop.</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.12.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an element was removed.</p>
+<a name="id-1.2.4.15.7.12.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an element was removed.</p>
 <p></p>
 </div>
 <p class="since">Since 1.2</p>
@@ -623,7 +617,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-is-full"></a><h3>gst_data_queue_is_full ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_is_full (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>);</pre>
 <p>Queries if <em class="parameter"><code>queue</code></em>
  is full. This check will be done using the
@@ -631,7 +625,7 @@
 .
 MT safe.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.13.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -646,8 +640,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.13.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>queue</code></em>
+<a name="id-1.2.4.15.7.13.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>queue</code></em>
 is full.</p>
 <p></p>
 </div>
@@ -656,13 +650,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-data-queue-is-empty"></a><h3>gst_data_queue_is_empty ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_data_queue_is_empty (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> *queue</code></em>);</pre>
 <p>Queries if there are any items in the <em class="parameter"><code>queue</code></em>
 .
 MT safe.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.14.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -677,8 +671,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.14.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>queue</code></em>
+<a name="id-1.2.4.15.7.14.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>queue</code></em>
 is empty.</p>
 <p></p>
 </div>
@@ -692,7 +686,7 @@
                           <em class="parameter"><code><a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueSize" title="struct GstDataQueueSize"><span class="type">GstDataQueueSize</span></a> *level</code></em>);</pre>
 <p>Get the current level of the queue.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.15.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -723,7 +717,7 @@
 <p>Inform the queue that the limits for the fullness check have changed and that
 any blocking <a class="link" href="gstreamer-libs-GstDataQueue.html#gst-data-queue-push" title="gst_data_queue_push ()"><code class="function">gst_data_queue_push()</code></a> should be unblocked to recheck the limits.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.15.7.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -750,7 +744,7 @@
 </pre>
 <p>Opaque <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a> structure.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.9.2.5"></a><h4>Members</h4>
+<a name="id-1.2.4.15.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -758,7 +752,7 @@
 <col width="200px" class="struct_members_annotations">
 </colgroup>
 <tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> <em class="structfield"><code><a name="GstDataQueue.object"></a>object</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> <em class="structfield"><code><a name="GstDataQueue.object"></a>object</code></em>;</p></td>
 <td class="struct_member_description"><p>the parent structure</p></td>
 <td class="struct_member_annotations"> </td>
 </tr></tbody>
@@ -776,7 +770,7 @@
 </pre>
 <p>Structure describing the size of a queue.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.9.3.5"></a><h4>Members</h4>
+<a name="id-1.2.4.15.8.3.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -785,12 +779,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstDataQueueSize.visible"></a>visible</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstDataQueueSize.visible"></a>visible</code></em>;</p></td>
 <td class="struct_member_description"><p>number of buffers</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstDataQueueSize.bytes"></a>bytes</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstDataQueueSize.bytes"></a>bytes</code></em>;</p></td>
 <td class="struct_member_description"><p>number of bytes</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -819,7 +813,7 @@
 <p>Structure used by <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueue" title="struct GstDataQueue"><span class="type">GstDataQueue</span></a>. You can supply a different structure, as
 long as the top of the structure is identical to this structure.</p>
 <div class="refsect3">
-<a name="id-1.2.4.15.9.4.5"></a><h4>Members</h4>
+<a name="id-1.2.4.15.8.4.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -833,7 +827,7 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstDataQueueItem.size"></a>size</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstDataQueueItem.size"></a>size</code></em>;</p></td>
 <td class="struct_member_description"><p>the size in bytes of the miniobject.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -844,14 +838,14 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstDataQueueItem.visible"></a>visible</code></em>;</p></td>
-<td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>object</code></em>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstDataQueueItem.visible"></a>visible</code></em>;</p></td>
+<td class="struct_member_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>object</code></em>
 should be considered as a visible object.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> <em class="structfield"><code><a name="GstDataQueueItem.destroy"></a>destroy</code></em>;</p></td>
-<td class="struct_member_description"><p>The <a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> function to use to free the <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a>.
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> <em class="structfield"><code><a name="GstDataQueueItem.destroy"></a>destroy</code></em>;</p></td>
+<td class="struct_member_description"><p>The <a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> function to use to free the <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a>.
 This function should also drop the reference to <em class="parameter"><code>object</code></em>
 the owner of the
 <a class="link" href="gstreamer-libs-GstDataQueue.html#GstDataQueueItem" title="struct GstDataQueueItem"><span class="type">GstDataQueueItem</span></a> is assumed to hold.</p></td>
@@ -865,6 +859,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstFlowCombiner.html b/docs/libs/html/gstreamer-libs-GstFlowCombiner.html
index 0681a96..1623e1f 100644
--- a/docs/libs/html/gstreamer-libs-GstFlowCombiner.html
+++ b/docs/libs/html/gstreamer-libs-GstFlowCombiner.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="GstCollectPads.html" title="GstCollectPads">
 <link rel="next" href="gstreamer-libs-GstTypeFindHelper.html" title="GstTypeFindHelper">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstFlowCombiner.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstFlowCombiner.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstFlowCombiner.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -80,15 +79,18 @@
 <a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-remove-pad" title="gst_flow_combiner_remove_pad ()">gst_flow_combiner_remove_pad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-clear" title="gst_flow_combiner_clear ()">gst_flow_combiner_clear</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstFlowCombiner.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstFlowCombiner.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gstflowcombiner.h&gt;
 </pre>
@@ -102,25 +104,23 @@
 it has in its list and computes the combined return value and provides
 it to the caller.</p>
 <p>To add a new pad to the <span class="type">GstFlowCombiner</span> use <a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-add-pad" title="gst_flow_combiner_add_pad ()"><code class="function">gst_flow_combiner_add_pad()</code></a>.
-The new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> is stored with a default value of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a>.</p>
+The new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> is stored with a default value of <code class="literal">GST_FLOW_OK</code>.</p>
 <p>In case you want a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> to be removed, use <a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-remove-pad" title="gst_flow_combiner_remove_pad ()"><code class="function">gst_flow_combiner_remove_pad()</code></a>.</p>
 <p>Please be aware that this struct isn't thread safe as its designed to be
  used by demuxers, those usually will have a single thread operating it.</p>
-<p>None of these functions will take refs on the passed <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>s, it
-is the caller's responsibility to make sure that the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> exists as long
-as this struct exists.</p>
+<p>These functions will take refs on the passed <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>s.</p>
 <p>Aside from reducing the user's code size, the main advantage of using this
 helper struct is to follow the standard rules for <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a> combination.
 These rules are:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
 <li class="listitem"><p><code class="literal">GST_FLOW_EOS</code>: only if all returns are EOS too</p></li>
-<li class="listitem"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-NOT-LINKED:CAPS"><code class="literal">GST_FLOW_NOT_LINKED</code></a>: only if all returns are NOT_LINKED too</p></li>
-<li class="listitem"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-ERROR:CAPS"><code class="literal">GST_FLOW_ERROR</code></a> or below: if at least one returns an error return</p></li>
-<li class="listitem"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-NOT-NEGOTIATED:CAPS"><code class="literal">GST_FLOW_NOT_NEGOTIATED</code></a>: if at least one returns a not-negotiated return</p></li>
+<li class="listitem"><p><code class="literal">GST_FLOW_NOT_LINKED</code>: only if all returns are NOT_LINKED too</p></li>
+<li class="listitem"><p><code class="literal">GST_FLOW_ERROR</code> or below: if at least one returns an error return</p></li>
+<li class="listitem"><p><code class="literal">GST_FLOW_NOT_NEGOTIATED</code>: if at least one returns a not-negotiated return</p></li>
 <li class="listitem"><p><code class="literal">GST_FLOW_FLUSHING</code>: if at least one returns flushing</p></li>
-<li class="listitem"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a>: otherwise</p></li>
+<li class="listitem"><p><code class="literal">GST_FLOW_OK</code>: otherwise</p></li>
 </ul></div>
-<p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-ERROR:CAPS"><code class="literal">GST_FLOW_ERROR</code></a> or below, GST_FLOW_NOT_NEGOTIATED and GST_FLOW_FLUSHING are
+<p><code class="literal">GST_FLOW_ERROR</code> or below, GST_FLOW_NOT_NEGOTIATED and GST_FLOW_FLUSHING are
 returned immediatelly from the <a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-update-flow" title="gst_flow_combiner_update_flow ()"><code class="function">gst_flow_combiner_update_flow()</code></a> function.</p>
 </div>
 <div class="refsect1">
@@ -131,7 +131,7 @@
 gst_flow_combiner_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Creates a new <span class="type">GstFlowCombiner</span>, use <a class="link" href="gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-free" title="gst_flow_combiner_free ()"><code class="function">gst_flow_combiner_free()</code></a> to free it.</p>
 <div class="refsect3">
-<a name="id-1.2.4.13.7.2.5"></a><h4>Returns</h4>
+<a name="id-1.2.4.13.6.2.5"></a><h4>Returns</h4>
 <p> A new <span class="type">GstFlowCombiner</span></p>
 <p></p>
 </div>
@@ -144,7 +144,7 @@
 gst_flow_combiner_free (<em class="parameter"><code><span class="type">GstFlowCombiner</span> *combiner</code></em>);</pre>
 <p>Frees a <span class="type">GstFlowCombiner</span> struct and all its internal data.</p>
 <div class="refsect3">
-<a name="id-1.2.4.13.7.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.13.6.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -167,12 +167,12 @@
 gst_flow_combiner_update_flow (<em class="parameter"><code><span class="type">GstFlowCombiner</span> *combiner</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a> fret</code></em>);</pre>
 <p>Computes the combined flow return for the pads in it.</p>
-<p>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a> paramter should be the last flow return update for a pad
+<p>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a> parameter should be the last flow return update for a pad
 in this <span class="type">GstFlowCombiner</span>. It will use this value to be able to shortcut some
 combinations and avoid looking over all pads again. e.g. The last combined
 return is the same as the latest obtained <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.13.7.4.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.13.6.4.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -194,7 +194,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.13.7.4.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.13.6.4.7"></a><h4>Returns</h4>
 <p> The combined <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a></p>
 <p></p>
 </div>
@@ -208,7 +208,7 @@
                            <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Adds a new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> to the <span class="type">GstFlowCombiner</span>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.13.7.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.13.6.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -239,7 +239,7 @@
                               <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Removes a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> from the <span class="type">GstFlowCombiner</span>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.13.7.6.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.13.6.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -262,6 +262,29 @@
 </div>
 <p class="since">Since 1.4</p>
 </div>
+<hr>
+<div class="refsect2">
+<a name="gst-flow-combiner-clear"></a><h3>gst_flow_combiner_clear ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_flow_combiner_clear (<em class="parameter"><code><span class="type">GstFlowCombiner</span> *combiner</code></em>);</pre>
+<p>Removes all pads from a <span class="type">GstFlowCombiner</span> and resets it to its initial state.</p>
+<div class="refsect3">
+<a name="id-1.2.4.13.6.7.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>combiner</p></td>
+<td class="parameter_description"><p>the <span class="type">GstFlowCombiner</span> to clear</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since 1.6</p>
+</div>
 </div>
 <div class="refsect1">
 <a name="gstreamer-libs-GstFlowCombiner.other_details"></a><h2>Types and Values</h2>
@@ -269,6 +292,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstNetAddressMeta.html b/docs/libs/html/gstreamer-libs-GstNetAddressMeta.html
new file mode 100644
index 0000000..9a83a6a
--- /dev/null
+++ b/docs/libs/html/gstreamer-libs-GstNetAddressMeta.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer 1.0 Library Reference Manual: GstNetAddressMeta</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual">
+<link rel="up" href="gstreamer-net.html" title="GStreamer Network Classes">
+<link rel="prev" href="gstreamer-net.html" title="GStreamer Network Classes">
+<link rel="next" href="GstNetClientClock.html" title="GstNetClientClock">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstNetAddressMeta.description" class="shortcut">Description</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="gstreamer-net.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gstreamer-net.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="GstNetClientClock.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="gstreamer-libs-GstNetAddressMeta"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="gstreamer-libs-GstNetAddressMeta.top_of_page"></a>GstNetAddressMeta</span></h2>
+<p>GstNetAddressMeta — Network address metadata</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="gstreamer-libs-GstNetAddressMeta.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta"><span class="returnvalue">GstNetAddressMeta</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#gst-buffer-add-net-address-meta" title="gst_buffer_add_net_address_meta ()">gst_buffer_add_net_address_meta</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#gst-buffer-get-net-address-meta" title="gst_buffer_get_net_address_meta()">gst_buffer_get_net_address_meta</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gstreamer-libs-GstNetAddressMeta.html#gst-net-address-meta-get-info" title="gst_net_address_meta_get_info ()">gst_net_address_meta_get_info</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-libs-GstNetAddressMeta.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody><tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta">GstNetAddressMeta</a></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-libs-GstNetAddressMeta.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;gst/net/gstnetaddressmeta.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="gstreamer-libs-GstNetAddressMeta.description"></a><h2>Description</h2>
+<p><span class="type">GstNetAddress</span> can be used to store a network address. <a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta"><span class="type">GstNetAddressMeta</span></a> can
+be used to store a network address in a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> so that it network
+elements can track the to and from address of the buffer.</p>
+</div>
+<div class="refsect1">
+<a name="gstreamer-libs-GstNetAddressMeta.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="gst-buffer-add-net-address-meta"></a><h3>gst_buffer_add_net_address_meta ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta"><span class="returnvalue">GstNetAddressMeta</span></a> *
+gst_buffer_add_net_address_meta (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> *buffer</code></em>,
+                                 <em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> *addr</code></em>);</pre>
+<p>Attaches <em class="parameter"><code>addr</code></em>
+ as metadata in a <a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta"><span class="type">GstNetAddressMeta</span></a> to <em class="parameter"><code>buffer</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.6.3.7.2.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>addr</p></td>
+<td class="parameter_description"><p>a <em class="parameter"><code>GSocketAddress</code></em>
+to connect to <em class="parameter"><code>buffer</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.6.3.7.2.6"></a><h4>Returns</h4>
+<p> a <a class="link" href="gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta" title="struct GstNetAddressMeta"><span class="type">GstNetAddressMeta</span></a> connected to <em class="parameter"><code>buffer</code></em>
+. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-buffer-get-net-address-meta"></a><h3>gst_buffer_get_net_address_meta()</h3>
+<pre class="programlisting">#define             gst_buffer_get_net_address_meta(b)</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-net-address-meta-get-info"></a><h3>gst_net_address_meta_get_info ()</h3>
+<pre class="programlisting">const <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> *
+gst_net_address_meta_get_info (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+</div>
+<div class="refsect1">
+<a name="gstreamer-libs-GstNetAddressMeta.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstNetAddressMeta"></a><h3>struct GstNetAddressMeta</h3>
+<pre class="programlisting">struct GstNetAddressMeta {
+  GstMeta       meta;
+
+  GSocketAddress *addr;
+};
+</pre>
+<p>Buffer metadata for network addresses.</p>
+<div class="refsect3">
+<a name="id-1.2.6.3.8.2.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstNetAddressMeta.meta"></a>meta</code></em>;</p></td>
+<td class="struct_member_description"><p>the parent type</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="https://developer.gnome.org/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> *<em class="structfield"><code><a name="GstNetAddressMeta.addr"></a>addr</code></em>;</p></td>
+<td class="struct_member_description"><p>a <a href="https://developer.gnome.org/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> stored as metadata</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+          Generated by GTK-Doc V1.21</div>
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstNetTimePacket.html b/docs/libs/html/gstreamer-libs-GstNetTimePacket.html
index 61b6f79..bc49f6a 100644
--- a/docs/libs/html/gstreamer-libs-GstNetTimePacket.html
+++ b/docs/libs/html/gstreamer-libs-GstNetTimePacket.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-net.html" title="GStreamer Network Classes">
 <link rel="prev" href="GstNetClientClock.html" title="GstNetClientClock">
 <link rel="next" href="GstNetTimeProvider.html" title="GstNetTimeProvider">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstNetTimePacket.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstNetTimePacket.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstNetTimePacket.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-net.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -75,7 +74,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstNetTimePacket.html#gst-net-time-packet-send" title="gst_net_time_packet_send ()">gst_net_time_packet_send</a> <span class="c_punctuation">()</span>
@@ -112,11 +111,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstNetTimePacket.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstNetTimePacket.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/net/gstnet.h&gt;
 </pre>
@@ -137,11 +131,11 @@
  is at least
 <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GST-NET-TIME-PACKET-SIZE:CAPS" title="GST_NET_TIME_PACKET_SIZE"><span class="type">GST_NET_TIME_PACKET_SIZE</span></a> bytes long.</p>
 <p>If <em class="parameter"><code>buffer</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>, the local and remote times will be set to
+ is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>, the local and remote times will be set to
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstClock.html#GST-CLOCK-TIME-NONE:CAPS"><span class="type">GST_CLOCK_TIME_NONE</span></a>.</p>
 <p>MT safe. Caller owns return value (gst_net_time_packet_free to free).</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.2.7"></a><h4>Parameters</h4>
+<a name="id-1.2.6.5.7.2.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -156,7 +150,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.2.8"></a><h4>Returns</h4>
+<a name="id-1.2.6.5.7.2.8"></a><h4>Returns</h4>
 <p> The new <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="type">GstNetTimePacket</span></a>.</p>
 <p></p>
 </div>
@@ -169,7 +163,7 @@
 <p>Make a copy of <em class="parameter"><code>packet</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.6.5.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -184,7 +178,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.3.6"></a><h4>Returns</h4>
+<a name="id-1.2.6.5.7.3.6"></a><h4>Returns</h4>
 <p> a copy of <em class="parameter"><code>packet</code></em>
 , free with <a class="link" href="gstreamer-libs-GstNetTimePacket.html#gst-net-time-packet-free" title="gst_net_time_packet_free ()"><code class="function">gst_net_time_packet_free()</code></a>.</p>
 <p></p>
@@ -198,7 +192,7 @@
 <p>Free <em class="parameter"><code>packet</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.6.5.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -217,13 +211,13 @@
 <div class="refsect2">
 <a name="gst-net-time-packet-receive"></a><h3>gst_net_time_packet_receive ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="returnvalue">GstNetTimePacket</span></a> *
-gst_net_time_packet_receive (<em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GSocket.html"><span class="type">GSocket</span></a> *socket</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> **src_address</code></em>,
-                             <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+gst_net_time_packet_receive (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GSocket.html"><span class="type">GSocket</span></a> *socket</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> **src_address</code></em>,
+                             <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Receives a <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="type">GstNetTimePacket</span></a> over a socket. Handles interrupted system
 calls, but otherwise returns NULL on error.</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.6.5.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -243,14 +237,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>return address for a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or NULL</p></td>
+<td class="parameter_description"><p>return address for a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or NULL</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.5.6"></a><h4>Returns</h4>
+<a name="id-1.2.6.5.7.5.6"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="type">GstNetTimePacket</span></a>, or NULL on error. Free
 with <a class="link" href="gstreamer-libs-GstNetTimePacket.html#gst-net-time-packet-free" title="gst_net_time_packet_free ()"><code class="function">gst_net_time_packet_free()</code></a> when done. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -259,15 +253,15 @@
 <hr>
 <div class="refsect2">
 <a name="gst-net-time-packet-send"></a><h3>gst_net_time_packet_send ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_net_time_packet_send (<em class="parameter"><code>const <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="type">GstNetTimePacket</span></a> *packet</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GSocket.html"><span class="type">GSocket</span></a> *socket</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> *dest_address</code></em>,
-                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+                          <em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GSocket.html"><span class="type">GSocket</span></a> *socket</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> *dest_address</code></em>,
+                          <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>Sends a <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="type">GstNetTimePacket</span></a> over a socket.</p>
 <p>MT safe.</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.6.6"></a><h4>Parameters</h4>
+<a name="id-1.2.6.5.7.6.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -292,14 +286,14 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>return address for a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or NULL</p></td>
+<td class="parameter_description"><p>return address for a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or NULL</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.6.7"></a><h4>Returns</h4>
+<a name="id-1.2.6.5.7.6.7"></a><h4>Returns</h4>
 <p> TRUE if successful, FALSE in case an error occurred.</p>
 <p></p>
 </div>
@@ -315,7 +309,7 @@
 network.</p>
 <p>MT safe. Caller owns return value (g_free to free).</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.7.6"></a><h4>Parameters</h4>
+<a name="id-1.2.6.5.7.7.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -330,7 +324,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.6.4.8.7.7"></a><h4>Returns</h4>
+<a name="id-1.2.6.5.7.7.7"></a><h4>Returns</h4>
 <p> A newly allocated sequence of <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GST-NET-TIME-PACKET-SIZE:CAPS" title="GST_NET_TIME_PACKET_SIZE"><span class="type">GST_NET_TIME_PACKET_SIZE</span></a> bytes.</p>
 <p></p>
 </div>
@@ -347,7 +341,7 @@
 </pre>
 <p>Content of a <a class="link" href="gstreamer-libs-GstNetTimePacket.html#GstNetTimePacket" title="struct GstNetTimePacket"><span class="type">GstNetTimePacket</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.6.4.9.2.5"></a><h4>Members</h4>
+<a name="id-1.2.6.5.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -384,6 +378,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstQueueArray.html b/docs/libs/html/gstreamer-libs-GstQueueArray.html
index 99cd128..0f540e7 100644
--- a/docs/libs/html/gstreamer-libs-GstQueueArray.html
+++ b/docs/libs/html/gstreamer-libs-GstQueueArray.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-libs-GstDataQueue.html" title="GstDataQueue">
 <link rel="next" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstQueueArray.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstQueueArray.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstQueueArray.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -58,7 +57,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-get-length" title="gst_queue_array_get_length ()">gst_queue_array_get_length</a> <span class="c_punctuation">()</span>
@@ -66,7 +65,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-pop-head" title="gst_queue_array_pop_head ()">gst_queue_array_pop_head</a> <span class="c_punctuation">()</span>
@@ -74,7 +73,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-peek-head" title="gst_queue_array_peek_head ()">gst_queue_array_peek_head</a> <span class="c_punctuation">()</span>
@@ -90,7 +89,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-is-empty" title="gst_queue_array_is_empty ()">gst_queue_array_is_empty</a> <span class="c_punctuation">()</span>
@@ -98,7 +97,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-drop-element" title="gst_queue_array_drop_element ()">gst_queue_array_drop_element</a> <span class="c_punctuation">()</span>
@@ -106,7 +105,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-find" title="gst_queue_array_find ()">gst_queue_array_find</a> <span class="c_punctuation">()</span>
@@ -129,11 +128,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstQueueArray.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstQueueArray.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gstqueuearray.h&gt;
 </pre>
@@ -149,12 +143,12 @@
 <div class="refsect2">
 <a name="gst-queue-array-new"></a><h3>gst_queue_array_new ()</h3>
 <pre class="programlisting"><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="returnvalue">GstQueueArray</span></a> *
-gst_queue_array_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> initial_size</code></em>);</pre>
+gst_queue_array_new (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> initial_size</code></em>);</pre>
 <p>Allocates a new <a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> object with an initial
 queue size of <em class="parameter"><code>initial_size</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -169,7 +163,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.2.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.16.7.2.6"></a><h4>Returns</h4>
 <p> a new <a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> object</p>
 <p></p>
 </div>
@@ -183,7 +177,7 @@
 <p>Frees queue <em class="parameter"><code>array</code></em>
  and all memory associated to it.</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -202,12 +196,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-queue-array-get-length"></a><h3>gst_queue_array_get_length ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_queue_array_get_length (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>);</pre>
 <p>Returns the length of the queue <em class="parameter"><code>array</code></em>
 </p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -222,7 +216,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.4.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.16.7.4.6"></a><h4>Returns</h4>
 <p> the length of the queue <em class="parameter"><code>array</code></em>
 .</p>
 <p></p>
@@ -232,13 +226,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-queue-array-pop-head"></a><h3>gst_queue_array_pop_head ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_queue_array_pop_head (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>);</pre>
 <p>Returns and head of the queue <em class="parameter"><code>array</code></em>
  and removes
 it from the queue.</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -253,7 +247,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.5.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.16.7.5.6"></a><h4>Returns</h4>
 <p> The head of the queue</p>
 <p></p>
 </div>
@@ -262,13 +256,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-queue-array-peek-head"></a><h3>gst_queue_array_peek_head ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_queue_array_peek_head (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>);</pre>
 <p>Returns and head of the queue <em class="parameter"><code>array</code></em>
  and does not
 remove it from the queue.</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.6.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.6.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -283,7 +277,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.6.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.16.7.6.6"></a><h4>Returns</h4>
 <p> The head of the queue</p>
 <p></p>
 </div>
@@ -294,12 +288,12 @@
 <a name="gst-queue-array-push-tail"></a><h3>gst_queue_array_push_tail ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_queue_array_push_tail (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>,
-                           <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                           <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Pushes <em class="parameter"><code>data</code></em>
  to the tail of the queue <em class="parameter"><code>array</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -325,12 +319,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-queue-array-is-empty"></a><h3>gst_queue_array_is_empty ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_queue_array_is_empty (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>);</pre>
 <p>Checks if the queue <em class="parameter"><code>array</code></em>
  is empty.</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.8.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -345,8 +339,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.8.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the queue <em class="parameter"><code>array</code></em>
+<a name="id-1.2.4.16.7.8.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the queue <em class="parameter"><code>array</code></em>
 is empty</p>
 <p></p>
 </div>
@@ -355,14 +349,14 @@
 <hr>
 <div class="refsect2">
 <a name="gst-queue-array-drop-element"></a><h3>gst_queue_array_drop_element ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a>
 gst_queue_array_drop_element (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>,
-                              <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                              <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
 <p>Drops the queue element at position <em class="parameter"><code>idx</code></em>
  from queue <em class="parameter"><code>array</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -384,7 +378,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.9.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.16.7.9.6"></a><h4>Returns</h4>
 <p> the dropped element</p>
 <p></p>
 </div>
@@ -393,10 +387,10 @@
 <hr>
 <div class="refsect2">
 <a name="gst-queue-array-find"></a><h3>gst_queue_array_find ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_queue_array_find (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstQueueArray.html#GstQueueArray" title="GstQueueArray"><span class="type">GstQueueArray</span></a> *array</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> func</code></em>,
-                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Doubly-Linked-Lists.html#GCompareFunc"><span class="type">GCompareFunc</span></a> func</code></em>,
+                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
 <p>Finds an element in the queue <em class="parameter"><code>array</code></em>
 , either by comparing every element
 with <em class="parameter"><code>func</code></em>
@@ -409,7 +403,7 @@
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-drop-element" title="gst_queue_array_drop_element ()"><code class="function">gst_queue_array_drop_element()</code></a>. FIXME: return index 0-based and make
 <a class="link" href="gstreamer-libs-GstQueueArray.html#gst-queue-array-drop-element" title="gst_queue_array_drop_element ()"><code class="function">gst_queue_array_drop_element()</code></a> take a 0-based index.</p>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.10.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.16.7.10.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -424,9 +418,9 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>func</p></td>
-<td class="parameter_description"><p> comparison function, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to find <em class="parameter"><code>data</code></em>
+<td class="parameter_description"><p> comparison function, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to find <em class="parameter"><code>data</code></em>
 by value. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>data</p></td>
@@ -437,7 +431,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.16.8.10.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.16.7.10.7"></a><h4>Returns</h4>
 <p> Index of the found element or -1 if nothing was found.</p>
 <p></p>
 </div>
@@ -454,6 +448,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstStreamConsistency.html b/docs/libs/html/gstreamer-libs-GstStreamConsistency.html
index bf7969d..c3c232e 100644
--- a/docs/libs/html/gstreamer-libs-GstStreamConsistency.html
+++ b/docs/libs/html/gstreamer-libs-GstStreamConsistency.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-check.html" title="GStreamer Check Unit Testing">
 <link rel="prev" href="gstreamer-libs-GstBufferStraw.html" title="GstBufferStraw">
 <link rel="next" href="GstTestClock.html" title="GstTestClock">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstStreamConsistency.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstStreamConsistency.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstStreamConsistency.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-check.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -66,7 +65,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
 <a class="link" href="gstreamer-libs-GstStreamConsistency.html#gst-consistency-checker-add-pad" title="gst_consistency_checker_add_pad ()">gst_consistency_checker_add_pad</a> <span class="c_punctuation">()</span>
@@ -89,11 +88,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstStreamConsistency.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstStreamConsistency.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/check/gstconsistencychecker.h&gt;
 </pre>
@@ -112,7 +106,7 @@
 <p>Sets up a data probe on the given pad which will raise assertions if the
 data flow is inconsistent.</p>
 <div class="refsect3">
-<a name="id-1.2.7.5.8.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.5.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -127,7 +121,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.5.8.2.6"></a><h4>Returns</h4>
+<a name="id-1.2.7.5.7.2.6"></a><h4>Returns</h4>
 <p> A <a class="link" href="gstreamer-libs-GstStreamConsistency.html#GstStreamConsistency" title="GstStreamConsistency"><span class="type">GstStreamConsistency</span></a> structure used to track data flow.</p>
 <p></p>
 </div>
@@ -139,7 +133,7 @@
 gst_consistency_checker_reset (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstStreamConsistency.html#GstStreamConsistency" title="GstStreamConsistency"><span class="type">GstStreamConsistency</span></a> *consist</code></em>);</pre>
 <p>Reset the stream checker's internal variables.</p>
 <div class="refsect3">
-<a name="id-1.2.7.5.8.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.5.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -162,7 +156,7 @@
 <p>Frees the allocated data and probes associated with <em class="parameter"><code>consist</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.7.5.8.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.5.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -180,13 +174,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-consistency-checker-add-pad"></a><h3>gst_consistency_checker_add_pad ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_consistency_checker_add_pad (<em class="parameter"><code><a class="link" href="gstreamer-libs-GstStreamConsistency.html#GstStreamConsistency" title="GstStreamConsistency"><span class="type">GstStreamConsistency</span></a> *consist</code></em>,
                                  <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a> *pad</code></em>);</pre>
 <p>Sets up a data probe on the given pad which will raise assertions if the
 data flow is inconsistent.</p>
 <div class="refsect3">
-<a name="id-1.2.7.5.8.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.7.5.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -208,8 +202,8 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.7.5.8.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad was added</p>
+<a name="id-1.2.7.5.7.5.6"></a><h4>Returns</h4>
+<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad was added</p>
 <p></p>
 </div>
 </div>
@@ -225,6 +219,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html b/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html
index af1cf7e..3c09174 100644
--- a/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html
+++ b/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html
@@ -8,15 +8,14 @@
 <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
 <link rel="prev" href="gstreamer-libs-GstFlowCombiner.html" title="GstFlowCombiner">
 <link rel="next" href="gstreamer-libs-GstDataQueue.html" title="GstDataQueue">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstTypeFindHelper.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-libs-GstTypeFindHelper.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-libs-GstTypeFindHelper.description" class="shortcut">Description</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -92,11 +91,6 @@
 </table></div>
 </div>
 <div class="refsect1">
-<a name="gstreamer-libs-GstTypeFindHelper.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">
-</pre>
-</div>
-<div class="refsect1">
 <a name="gstreamer-libs-GstTypeFindHelper.includes"></a><h2>Includes</h2>
 <pre class="synopsis">#include &lt;gst/base/gsttypefindhelper.h&gt;
 </pre>
@@ -118,7 +112,7 @@
 <p>Tries to find what type of data is flowing from the given source <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>.</p>
 <p>Free-function: gst_caps_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.2.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.14.6.2.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -140,10 +134,10 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.2.7"></a><h4>Returns</h4>
-<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data stream.
-Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> matches the data stream. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.2.4.14.6.2.7"></a><h4>Returns</h4>
+<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data
+stream.  Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> matches the data stream. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -157,14 +151,14 @@
 assumption being that the buffer represents the beginning of the stream or
 file.</p>
 <p>All available typefinders will be called on the data in order of rank. If
-a typefinding function returns a probability of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTypeFind.html#GST-TYPE-FIND-MAXIMUM:CAPS"><code class="literal">GST_TYPE_FIND_MAXIMUM</code></a>,
+a typefinding function returns a probability of <code class="literal">GST_TYPE_FIND_MAXIMUM</code>,
 typefinding is stopped immediately and the found caps will be returned
 right away. Otherwise, all available typefind functions will the tried,
-and the caps with the highest probability will be returned, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
+and the caps with the highest probability will be returned, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
 the content of the buffer could not be identified.</p>
 <p>Free-function: gst_caps_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.3.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.14.6.3.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -174,8 +168,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p> object doing the typefinding, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (used for logging). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> object doing the typefinding, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (used for logging). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>buf</p></td>
@@ -185,18 +179,18 @@
 <tr>
 <td class="parameter_name"><p>prob</p></td>
 <td class="parameter_description"><p> location to store the probability of the found
-caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+caps, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.3.8"></a><h4>Returns</h4>
-<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if no type could be found. The caller should free the caps returned
-with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.2.4.14.6.3.8"></a><h4>Returns</h4>
+<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no type could be found. The caller should free the caps
+returned with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -204,7 +198,7 @@
 <a name="gst-type-find-helper-for-extension"></a><h3>gst_type_find_helper_for_extension ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="returnvalue">GstCaps</span></a> *
 gst_type_find_helper_for_extension (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>,
-                                    <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>);</pre>
+                                    <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>);</pre>
 <p>Tries to find the best <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> associated with <em class="parameter"><code>extension</code></em>
 .</p>
 <p>All available typefinders will be checked against the extension in order
@@ -213,7 +207,7 @@
 returned.</p>
 <p>Free-function: gst_caps_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.4.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.14.6.4.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -223,8 +217,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p> object doing the typefinding, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (used for logging). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> object doing the typefinding, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (used for logging). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>extension</p></td>
@@ -235,12 +229,12 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.4.8"></a><h4>Returns</h4>
-<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to <em class="parameter"><code>extension</code></em>
-, or
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no type could be found. The caller should free the caps
-returned with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.2.4.14.6.4.8"></a><h4>Returns</h4>
+<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to
+<em class="parameter"><code>extension</code></em>
+, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no type could be found. The caller should free
+the caps returned with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -256,15 +250,15 @@
 assumption being that the data represents the beginning of the stream or
 file.</p>
 <p>All available typefinders will be called on the data in order of rank. If
-a typefinding function returns a probability of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTypeFind.html#GST-TYPE-FIND-MAXIMUM:CAPS"><code class="literal">GST_TYPE_FIND_MAXIMUM</code></a>,
+a typefinding function returns a probability of <code class="literal">GST_TYPE_FIND_MAXIMUM</code>,
 typefinding is stopped immediately and the found caps will be returned
 right away. Otherwise, all available typefind functions will the tried,
-and the caps with the highest probability will be returned, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
+and the caps with the highest probability will be returned, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
 the content of <em class="parameter"><code>data</code></em>
  could not be identified.</p>
 <p>Free-function: gst_caps_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.5.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.14.6.5.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -274,8 +268,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>obj</p></td>
-<td class="parameter_description"><p> object doing the typefinding, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (used for logging). </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> object doing the typefinding, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (used for logging). </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>data</p></td>
@@ -291,18 +285,18 @@
 <tr>
 <td class="parameter_name"><p>prob</p></td>
 <td class="parameter_description"><p> location to store the probability of the found
-caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+caps, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.5.8"></a><h4>Returns</h4>
-<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if no type could be found. The caller should free the caps returned
-with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.2.4.14.6.5.8"></a><h4>Returns</h4>
+<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data,
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no type could be found. The caller should free the caps
+returned with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
@@ -312,7 +306,7 @@
 <span class="c_punctuation">(</span>*GstTypeFindHelperGetRangeFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>,
                                       <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>,
                                       <em class="parameter"><code><span class="type">guint64</span> offset</code></em>,
-                                      <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>,
+                                      <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>,
                                       <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> **buffer</code></em>);</pre>
 <p>This function will be called by <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-get-range" title="gst_type_find_helper_get_range ()"><code class="function">gst_type_find_helper_get_range()</code></a> when
 typefinding functions request to peek at the data of a stream at certain
@@ -323,7 +317,7 @@
 return value.</p>
 <p>This function is supposed to behave exactly like a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstPadGetRangeFunction"><span class="type">GstPadGetRangeFunction</span></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.6.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.14.6.6.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -339,8 +333,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>obj</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>offset</p></td>
@@ -361,7 +355,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.6.7"></a><h4>Returns</h4>
+<a name="id-1.2.4.14.6.6.7"></a><h4>Returns</h4>
 <p> GST_FLOW_OK for success</p>
 <p></p>
 </div>
@@ -374,7 +368,7 @@
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>,
                                 <em class="parameter"><code><a class="link" href="gstreamer-libs-GstTypeFindHelper.html#GstTypeFindHelperGetRangeFunction" title="GstTypeFindHelperGetRangeFunction ()"><span class="type">GstTypeFindHelperGetRangeFunction</span></a> func</code></em>,
                                 <em class="parameter"><code><span class="type">guint64</span> size</code></em>,
-                                <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>,
+                                <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>,
                                 <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>);</pre>
 <p>Utility function to do pull-based typefinding. Unlike <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper" title="gst_type_find_helper ()"><code class="function">gst_type_find_helper()</code></a>
 however, this function will use the specified function <em class="parameter"><code>func</code></em>
@@ -386,12 +380,12 @@
 callback can then call the upstream peer pad with offsets adjusted for the
 tag size, for example).</p>
 <p>When <em class="parameter"><code>extension</code></em>
- is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, this function will first try the typefind
+ is not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, this function will first try the typefind
 functions for the given extension, which might speed up the typefinding
 in many cases.</p>
 <p>Free-function: gst_caps_unref</p>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.7.7"></a><h4>Parameters</h4>
+<a name="id-1.2.4.14.6.7.7"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -408,8 +402,8 @@
 <tr>
 <td class="parameter_name"><p>parent</p></td>
 <td class="parameter_description"><p> the parent of <em class="parameter"><code>obj</code></em>
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>func</p></td>
@@ -430,17 +424,17 @@
 <tr>
 <td class="parameter_name"><p>prob</p></td>
 <td class="parameter_description"><p> location to store the probability of the found
-caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+caps, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.14.7.7.8"></a><h4>Returns</h4>
-<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data stream.
-Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> matches the data stream. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+<a name="id-1.2.4.14.6.7.8"></a><h4>Returns</h4>
+<p> the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> corresponding to the data
+stream.  Returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> matches the data stream. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
 </div>
 </div>
 </div>
@@ -450,6 +444,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-libs.html b/docs/libs/html/gstreamer-libs.html
index d8f6dcf..1c7844b 100644
--- a/docs/libs/html/gstreamer-libs.html
+++ b/docs/libs/html/gstreamer-libs.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="prev" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="next" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -90,12 +90,15 @@
 <span class="refentrytitle"><a href="GstLFOControlSource.html">GstLFOControlSource</a></span><span class="refpurpose"> — LFO control source</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="GstTriggerControlSource.html">GstTriggerControlSource</a></span><span class="refpurpose"> — interpolation control source</span>
+<span class="refentrytitle"><a href="GstTriggerControlSource.html">GstTriggerControlSource</a></span><span class="refpurpose"> — trigger control source</span>
 </dt>
 </dl></dd>
 <dt><span class="chapter"><a href="gstreamer-net.html">GStreamer Network Classes</a></span></dt>
 <dd><dl>
 <dt>
+<span class="refentrytitle"><a href="gstreamer-libs-GstNetAddressMeta.html">GstNetAddressMeta</a></span><span class="refpurpose"> — Network address metadata</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="GstNetClientClock.html">GstNetClientClock</a></span><span class="refpurpose"> — Special clock that synchronizes to a remote time
                     provider.</span>
 </dt>
@@ -135,6 +138,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/gstreamer-net.html b/docs/libs/html/gstreamer-net.html
index 715e55e..6991078 100644
--- a/docs/libs/html/gstreamer-net.html
+++ b/docs/libs/html/gstreamer-net.html
@@ -7,23 +7,26 @@
 <link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="up" href="gstreamer-libs.html" title="Part I. GStreamer Libraries">
 <link rel="prev" href="GstTriggerControlSource.html" title="GstTriggerControlSource">
-<link rel="next" href="GstNetClientClock.html" title="GstNetClientClock">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="next" href="gstreamer-libs-GstNetAddressMeta.html" title="GstNetAddressMeta">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="gstreamer-libs.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
 <td><a accesskey="p" href="GstTriggerControlSource.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="GstNetClientClock.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gstreamer-libs-GstNetAddressMeta.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
 <a name="gstreamer-net"></a>GStreamer Network Classes</h2></div></div></div>
 <div class="toc"><dl class="toc">
 <dt>
+<span class="refentrytitle"><a href="gstreamer-libs-GstNetAddressMeta.html">GstNetAddressMeta</a></span><span class="refpurpose"> — Network address metadata</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="GstNetClientClock.html">GstNetClientClock</a></span><span class="refpurpose"> — Special clock that synchronizes to a remote time
                     provider.</span>
 </dt>
@@ -42,6 +45,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html
index cd3556a..e890dc1 100644
--- a/docs/libs/html/index.html
+++ b/docs/libs/html/index.html
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual">
 <link rel="next" href="gstreamer-libs.html" title="Part I. GStreamer Libraries">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -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 1.0 Library Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Library 1.0 (1.3.3)
+      for GStreamer Library 1.0 (1.5.0.1)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/</a>.
     </p></div>
@@ -90,12 +90,15 @@
 <span class="refentrytitle"><a href="GstLFOControlSource.html">GstLFOControlSource</a></span><span class="refpurpose"> — LFO control source</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="GstTriggerControlSource.html">GstTriggerControlSource</a></span><span class="refpurpose"> — interpolation control source</span>
+<span class="refentrytitle"><a href="GstTriggerControlSource.html">GstTriggerControlSource</a></span><span class="refpurpose"> — trigger control source</span>
 </dt>
 </dl></dd>
 <dt><span class="chapter"><a href="gstreamer-net.html">GStreamer Network Classes</a></span></dt>
 <dd><dl>
 <dt>
+<span class="refentrytitle"><a href="gstreamer-libs-GstNetAddressMeta.html">GstNetAddressMeta</a></span><span class="refpurpose"> — Network address metadata</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="GstNetClientClock.html">GstNetClientClock</a></span><span class="refpurpose"> — Special clock that synchronizes to a remote time
                     provider.</span>
 </dt>
@@ -132,6 +135,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/libs/html/index.sgml b/docs/libs/html/index.sgml
index 70354d7..905e164 100644
--- a/docs/libs/html/index.sgml
+++ b/docs/libs/html/index.sgml
@@ -204,6 +204,7 @@
 <ANCHOR id="gst-adapter-take-buffer" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-take-buffer">
 <ANCHOR id="gst-adapter-take-buffer-fast" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-take-buffer-fast">
 <ANCHOR id="gst-adapter-take-list" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-take-list">
+<ANCHOR id="gst-adapter-take-buffer-list" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-take-buffer-list">
 <ANCHOR id="gst-adapter-prev-pts" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-prev-pts">
 <ANCHOR id="gst-adapter-prev-dts" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-prev-dts">
 <ANCHOR id="gst-adapter-prev-pts-at-offset" href="gstreamer-libs-1.0/GstAdapter.html#gst-adapter-prev-pts-at-offset">
@@ -215,7 +216,6 @@
 <ANCHOR id="gstreamer-libs-GstBitReader" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html">
 <ANCHOR id="gstreamer-libs-GstBitReader.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html#gstreamer-libs-GstBitReader.functions">
 <ANCHOR id="gstreamer-libs-GstBitReader.other" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html#gstreamer-libs-GstBitReader.other">
-<ANCHOR id="gstreamer-libs-GstBitReader.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html#gstreamer-libs-GstBitReader.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstBitReader.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html#gstreamer-libs-GstBitReader.includes">
 <ANCHOR id="gstreamer-libs-GstBitReader.description" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html#gstreamer-libs-GstBitReader.description">
 <ANCHOR id="gstreamer-libs-GstBitReader.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstBitReader.html#gstreamer-libs-GstBitReader.functions_details">
@@ -252,7 +252,6 @@
 <ANCHOR id="gstreamer-libs-GstByteReader" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html">
 <ANCHOR id="gstreamer-libs-GstByteReader.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gstreamer-libs-GstByteReader.functions">
 <ANCHOR id="gstreamer-libs-GstByteReader.other" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gstreamer-libs-GstByteReader.other">
-<ANCHOR id="gstreamer-libs-GstByteReader.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gstreamer-libs-GstByteReader.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstByteReader.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gstreamer-libs-GstByteReader.includes">
 <ANCHOR id="gstreamer-libs-GstByteReader.description" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gstreamer-libs-GstByteReader.description">
 <ANCHOR id="gstreamer-libs-GstByteReader.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gstreamer-libs-GstByteReader.functions_details">
@@ -260,6 +259,8 @@
 <ANCHOR id="gst-byte-reader-new" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-new">
 <ANCHOR id="gst-byte-reader-free" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-free">
 <ANCHOR id="gst-byte-reader-init" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-init">
+<ANCHOR id="gst-byte-reader-peek-sub-reader" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-sub-reader">
+<ANCHOR id="gst-byte-reader-get-sub-reader" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-get-sub-reader">
 <ANCHOR id="gst-byte-reader-get-pos" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-get-pos">
 <ANCHOR id="gst-byte-reader-get-remaining" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-get-remaining">
 <ANCHOR id="gst-byte-reader-set-pos" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-set-pos">
@@ -313,6 +314,7 @@
 <ANCHOR id="gst-byte-reader-dup-data" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-dup-data">
 <ANCHOR id="gst-byte-reader-peek-data" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-data">
 <ANCHOR id="gst-byte-reader-masked-scan-uint32" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32">
+<ANCHOR id="gst-byte-reader-masked-scan-uint32-peek" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-masked-scan-uint32-peek">
 <ANCHOR id="gst-byte-reader-get-string" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-get-string">
 <ANCHOR id="gst-byte-reader-get-string-utf8" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-get-string-utf8">
 <ANCHOR id="gst-byte-reader-peek-string" href="gstreamer-libs-1.0/gstreamer-libs-GstByteReader.html#gst-byte-reader-peek-string">
@@ -378,7 +380,6 @@
 <ANCHOR id="gstreamer-libs-GstByteWriter" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html">
 <ANCHOR id="gstreamer-libs-GstByteWriter.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html#gstreamer-libs-GstByteWriter.functions">
 <ANCHOR id="gstreamer-libs-GstByteWriter.other" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html#gstreamer-libs-GstByteWriter.other">
-<ANCHOR id="gstreamer-libs-GstByteWriter.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html#gstreamer-libs-GstByteWriter.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstByteWriter.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html#gstreamer-libs-GstByteWriter.includes">
 <ANCHOR id="gstreamer-libs-GstByteWriter.description" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html#gstreamer-libs-GstByteWriter.description">
 <ANCHOR id="gstreamer-libs-GstByteWriter.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstByteWriter.html#gstreamer-libs-GstByteWriter.functions_details">
@@ -507,7 +508,6 @@
 <ANCHOR id="GstCollectPadsStateFlags" href="gstreamer-libs-1.0/GstCollectPads.html#GstCollectPadsStateFlags">
 <ANCHOR id="gstreamer-libs-GstFlowCombiner" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html">
 <ANCHOR id="gstreamer-libs-GstFlowCombiner.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gstreamer-libs-GstFlowCombiner.functions">
-<ANCHOR id="gstreamer-libs-GstFlowCombiner.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gstreamer-libs-GstFlowCombiner.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstFlowCombiner.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gstreamer-libs-GstFlowCombiner.includes">
 <ANCHOR id="gstreamer-libs-GstFlowCombiner.description" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gstreamer-libs-GstFlowCombiner.description">
 <ANCHOR id="gstreamer-libs-GstFlowCombiner.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gstreamer-libs-GstFlowCombiner.functions_details">
@@ -516,10 +516,10 @@
 <ANCHOR id="gst-flow-combiner-update-flow" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-update-flow">
 <ANCHOR id="gst-flow-combiner-add-pad" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-add-pad">
 <ANCHOR id="gst-flow-combiner-remove-pad" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-remove-pad">
+<ANCHOR id="gst-flow-combiner-clear" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gst-flow-combiner-clear">
 <ANCHOR id="gstreamer-libs-GstFlowCombiner.other_details" href="gstreamer-libs-1.0/gstreamer-libs-GstFlowCombiner.html#gstreamer-libs-GstFlowCombiner.other_details">
 <ANCHOR id="gstreamer-libs-GstTypeFindHelper" href="gstreamer-libs-1.0/gstreamer-libs-GstTypeFindHelper.html">
 <ANCHOR id="gstreamer-libs-GstTypeFindHelper.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstTypeFindHelper.html#gstreamer-libs-GstTypeFindHelper.functions">
-<ANCHOR id="gstreamer-libs-GstTypeFindHelper.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstTypeFindHelper.html#gstreamer-libs-GstTypeFindHelper.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstTypeFindHelper.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstTypeFindHelper.html#gstreamer-libs-GstTypeFindHelper.includes">
 <ANCHOR id="gstreamer-libs-GstTypeFindHelper.description" href="gstreamer-libs-1.0/gstreamer-libs-GstTypeFindHelper.html#gstreamer-libs-GstTypeFindHelper.description">
 <ANCHOR id="gstreamer-libs-GstTypeFindHelper.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstTypeFindHelper.html#gstreamer-libs-GstTypeFindHelper.functions_details">
@@ -533,7 +533,6 @@
 <ANCHOR id="gstreamer-libs-GstDataQueue" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html">
 <ANCHOR id="gstreamer-libs-GstDataQueue.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html#gstreamer-libs-GstDataQueue.functions">
 <ANCHOR id="gstreamer-libs-GstDataQueue.other" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html#gstreamer-libs-GstDataQueue.other">
-<ANCHOR id="gstreamer-libs-GstDataQueue.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html#gstreamer-libs-GstDataQueue.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstDataQueue.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html#gstreamer-libs-GstDataQueue.includes">
 <ANCHOR id="gstreamer-libs-GstDataQueue.description" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html#gstreamer-libs-GstDataQueue.description">
 <ANCHOR id="gstreamer-libs-GstDataQueue.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstDataQueue.html#gstreamer-libs-GstDataQueue.functions_details">
@@ -559,7 +558,6 @@
 <ANCHOR id="gstreamer-libs-GstQueueArray" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html">
 <ANCHOR id="gstreamer-libs-GstQueueArray.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html#gstreamer-libs-GstQueueArray.functions">
 <ANCHOR id="gstreamer-libs-GstQueueArray.other" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html#gstreamer-libs-GstQueueArray.other">
-<ANCHOR id="gstreamer-libs-GstQueueArray.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html#gstreamer-libs-GstQueueArray.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstQueueArray.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html#gstreamer-libs-GstQueueArray.includes">
 <ANCHOR id="gstreamer-libs-GstQueueArray.description" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html#gstreamer-libs-GstQueueArray.description">
 <ANCHOR id="gstreamer-libs-GstQueueArray.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstQueueArray.html#gstreamer-libs-GstQueueArray.functions_details">
@@ -601,6 +599,7 @@
 <ANCHOR id="GstDirectControlBinding--control-source" href="gstreamer-libs-1.0/GstDirectControlBinding.html#GstDirectControlBinding--control-source">
 <ANCHOR id="GstTimedValueControlSource" href="gstreamer-libs-1.0/GstTimedValueControlSource.html">
 <ANCHOR id="GstTimedValueControlSource.functions" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.functions">
+<ANCHOR id="GstTimedValueControlSource.signals" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.signals">
 <ANCHOR id="GstTimedValueControlSource.other" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.other">
 <ANCHOR id="GstTimedValueControlSource.object-hierarchy" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.object-hierarchy">
 <ANCHOR id="GstTimedValueControlSource.includes" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.includes">
@@ -616,6 +615,10 @@
 <ANCHOR id="gst-timed-value-control-invalidate-cache" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#gst-timed-value-control-invalidate-cache">
 <ANCHOR id="GstTimedValueControlSource.other_details" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.other_details">
 <ANCHOR id="GstTimedValueControlSource-struct" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource-struct">
+<ANCHOR id="GstTimedValueControlSource.signal-details" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource.signal-details">
+<ANCHOR id="GstTimedValueControlSource-value-added" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource-value-added">
+<ANCHOR id="GstTimedValueControlSource-value-changed" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource-value-changed">
+<ANCHOR id="GstTimedValueControlSource-value-removed" href="gstreamer-libs-1.0/GstTimedValueControlSource.html#GstTimedValueControlSource-value-removed">
 <ANCHOR id="GstInterpolationControlSource" href="gstreamer-libs-1.0/GstInterpolationControlSource.html">
 <ANCHOR id="GstInterpolationControlSource.functions" href="gstreamer-libs-1.0/GstInterpolationControlSource.html#GstInterpolationControlSource.functions">
 <ANCHOR id="GstInterpolationControlSource.properties" href="gstreamer-libs-1.0/GstInterpolationControlSource.html#GstInterpolationControlSource.properties">
@@ -662,6 +665,17 @@
 <ANCHOR id="GstTriggerControlSource-struct" href="gstreamer-libs-1.0/GstTriggerControlSource.html#GstTriggerControlSource-struct">
 <ANCHOR id="GstTriggerControlSource.property-details" href="gstreamer-libs-1.0/GstTriggerControlSource.html#GstTriggerControlSource.property-details">
 <ANCHOR id="GstTriggerControlSource--tolerance" href="gstreamer-libs-1.0/GstTriggerControlSource.html#GstTriggerControlSource--tolerance">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gstreamer-libs-GstNetAddressMeta.functions">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta.other" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gstreamer-libs-GstNetAddressMeta.other">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gstreamer-libs-GstNetAddressMeta.includes">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta.description" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gstreamer-libs-GstNetAddressMeta.description">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gstreamer-libs-GstNetAddressMeta.functions_details">
+<ANCHOR id="gst-buffer-add-net-address-meta" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gst-buffer-add-net-address-meta">
+<ANCHOR id="gst-buffer-get-net-address-meta" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gst-buffer-get-net-address-meta">
+<ANCHOR id="gst-net-address-meta-get-info" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gst-net-address-meta-get-info">
+<ANCHOR id="gstreamer-libs-GstNetAddressMeta.other_details" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#gstreamer-libs-GstNetAddressMeta.other_details">
+<ANCHOR id="GstNetAddressMeta" href="gstreamer-libs-1.0/gstreamer-libs-GstNetAddressMeta.html#GstNetAddressMeta">
 <ANCHOR id="GstNetClientClock" href="gstreamer-libs-1.0/GstNetClientClock.html">
 <ANCHOR id="GstNetClientClock.functions" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock.functions">
 <ANCHOR id="GstNetClientClock.properties" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock.properties">
@@ -675,13 +689,14 @@
 <ANCHOR id="GstNetClientClock-struct" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock-struct">
 <ANCHOR id="GstNetClientClock.property-details" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock.property-details">
 <ANCHOR id="GstNetClientClock--address" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock--address">
+<ANCHOR id="GstNetClientClock--bus" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock--bus">
+<ANCHOR id="GstNetClientClock--minimum-update-interval" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock--minimum-update-interval">
 <ANCHOR id="GstNetClientClock--port" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock--port">
 <ANCHOR id="GstNetClientClock--round-trip-limit" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock--round-trip-limit">
 <ANCHOR id="GstNetClientClock.see-also" href="gstreamer-libs-1.0/GstNetClientClock.html#GstNetClientClock.see-also">
 <ANCHOR id="gstreamer-libs-GstNetTimePacket" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html">
 <ANCHOR id="gstreamer-libs-GstNetTimePacket.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html#gstreamer-libs-GstNetTimePacket.functions">
 <ANCHOR id="gstreamer-libs-GstNetTimePacket.other" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html#gstreamer-libs-GstNetTimePacket.other">
-<ANCHOR id="gstreamer-libs-GstNetTimePacket.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html#gstreamer-libs-GstNetTimePacket.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstNetTimePacket.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html#gstreamer-libs-GstNetTimePacket.includes">
 <ANCHOR id="gstreamer-libs-GstNetTimePacket.description" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html#gstreamer-libs-GstNetTimePacket.description">
 <ANCHOR id="gstreamer-libs-GstNetTimePacket.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstNetTimePacket.html#gstreamer-libs-GstNetTimePacket.functions_details">
@@ -715,7 +730,6 @@
 <ANCHOR id="gstreamer-libs-GstCheck" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html">
 <ANCHOR id="gstreamer-libs-GstCheck.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.functions">
 <ANCHOR id="gstreamer-libs-GstCheck.other" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.other">
-<ANCHOR id="gstreamer-libs-GstCheck.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstCheck.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.includes">
 <ANCHOR id="gstreamer-libs-GstCheck.description" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.description">
 <ANCHOR id="gstreamer-libs-GstCheck.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.functions_details">
@@ -767,11 +781,16 @@
 <ANCHOR id="gst-check-run-suite" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-run-suite">
 <ANCHOR id="gst-check-setup-events" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-setup-events">
 <ANCHOR id="gst-check-setup-events-with-stream-id" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-setup-events-with-stream-id">
+<ANCHOR id="gst-check-setup-sink-pad-by-name-from-template" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-by-name-from-template">
+<ANCHOR id="gst-check-setup-sink-pad-from-template" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-setup-sink-pad-from-template">
+<ANCHOR id="gst-check-setup-src-pad-by-name-from-template" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-by-name-from-template">
+<ANCHOR id="gst-check-setup-src-pad-from-template" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-setup-src-pad-from-template">
+<ANCHOR id="gst-check-objects-destroyed-on-unref" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-objects-destroyed-on-unref">
+<ANCHOR id="gst-check-object-destroyed-on-unref" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gst-check-object-destroyed-on-unref">
 <ANCHOR id="gstreamer-libs-GstCheck.other_details" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#gstreamer-libs-GstCheck.other_details">
 <ANCHOR id="GST-END-TEST:CAPS" href="gstreamer-libs-1.0/gstreamer-libs-GstCheck.html#GST-END-TEST:CAPS">
 <ANCHOR id="gstreamer-libs-GstBufferStraw" href="gstreamer-libs-1.0/gstreamer-libs-GstBufferStraw.html">
 <ANCHOR id="gstreamer-libs-GstBufferStraw.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstBufferStraw.html#gstreamer-libs-GstBufferStraw.functions">
-<ANCHOR id="gstreamer-libs-GstBufferStraw.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstBufferStraw.html#gstreamer-libs-GstBufferStraw.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstBufferStraw.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstBufferStraw.html#gstreamer-libs-GstBufferStraw.includes">
 <ANCHOR id="gstreamer-libs-GstBufferStraw.description" href="gstreamer-libs-1.0/gstreamer-libs-GstBufferStraw.html#gstreamer-libs-GstBufferStraw.description">
 <ANCHOR id="gstreamer-libs-GstBufferStraw.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstBufferStraw.html#gstreamer-libs-GstBufferStraw.functions_details">
@@ -782,7 +801,6 @@
 <ANCHOR id="gstreamer-libs-GstStreamConsistency" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html">
 <ANCHOR id="gstreamer-libs-GstStreamConsistency.functions" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html#gstreamer-libs-GstStreamConsistency.functions">
 <ANCHOR id="gstreamer-libs-GstStreamConsistency.other" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html#gstreamer-libs-GstStreamConsistency.other">
-<ANCHOR id="gstreamer-libs-GstStreamConsistency.object-hierarchy" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html#gstreamer-libs-GstStreamConsistency.object-hierarchy">
 <ANCHOR id="gstreamer-libs-GstStreamConsistency.includes" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html#gstreamer-libs-GstStreamConsistency.includes">
 <ANCHOR id="gstreamer-libs-GstStreamConsistency.description" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html#gstreamer-libs-GstStreamConsistency.description">
 <ANCHOR id="gstreamer-libs-GstStreamConsistency.functions_details" href="gstreamer-libs-1.0/gstreamer-libs-GstStreamConsistency.html#gstreamer-libs-GstStreamConsistency.functions_details">
@@ -811,6 +829,9 @@
 <ANCHOR id="gst-test-clock-wait-for-pending-id-count" href="gstreamer-libs-1.0/GstTestClock.html#gst-test-clock-wait-for-pending-id-count">
 <ANCHOR id="gst-test-clock-process-next-clock-id" href="gstreamer-libs-1.0/GstTestClock.html#gst-test-clock-process-next-clock-id">
 <ANCHOR id="gst-test-clock-get-next-entry-time" href="gstreamer-libs-1.0/GstTestClock.html#gst-test-clock-get-next-entry-time">
+<ANCHOR id="gst-test-clock-wait-for-multiple-pending-ids" href="gstreamer-libs-1.0/GstTestClock.html#gst-test-clock-wait-for-multiple-pending-ids">
+<ANCHOR id="gst-test-clock-id-list-get-latest-time" href="gstreamer-libs-1.0/GstTestClock.html#gst-test-clock-id-list-get-latest-time">
+<ANCHOR id="gst-test-clock-process-id-list" href="gstreamer-libs-1.0/GstTestClock.html#gst-test-clock-process-id-list">
 <ANCHOR id="GstTestClock.other_details" href="gstreamer-libs-1.0/GstTestClock.html#GstTestClock.other_details">
 <ANCHOR id="GstTestClock-struct" href="gstreamer-libs-1.0/GstTestClock.html#GstTestClock-struct">
 <ANCHOR id="GstTestClockClass" href="gstreamer-libs-1.0/GstTestClock.html#GstTestClockClass">
@@ -822,8 +843,10 @@
 <ANCHOR id="annotation-glossterm-closure" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-closure">
 <ANCHOR id="annotation-glossterm-element-type" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-element-type">
 <ANCHOR id="annotation-glossterm-in" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-in">
+<ANCHOR id="annotation-glossterm-nullable" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-nullable">
 <ANCHOR id="annotation-glossterm-out" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-out">
 <ANCHOR id="annotation-glossterm-out caller-allocates" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-out caller-allocates">
+<ANCHOR id="annotation-glossterm-scope async" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-scope async">
 <ANCHOR id="annotation-glossterm-scope call" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-scope call">
 <ANCHOR id="annotation-glossterm-transfer container" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-transfer container">
 <ANCHOR id="annotation-glossterm-transfer floating" href="gstreamer-libs-1.0/annotation-glossary.html#annotation-glossterm-transfer floating">
diff --git a/docs/libs/html/style.css b/docs/libs/html/style.css
index 705a5c9..c141ddd 100644
--- a/docs/libs/html/style.css
+++ b/docs/libs/html/style.css
@@ -30,127 +30,6 @@
   vertical-align: top;
 }
 
-@media screen {
-  sup a.footnote
-  {
-    position: relative;
-    top: 0em ! important;
-  }
-  /* this is needed so that the local anchors are displayed below the naviagtion */
-  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
-  {
-    display: inline-block;
-    position: relative;
-    top:-5em;
-  }
-  /* this seems to be a bug in the xsl style sheets when generating indexes */
-  div.index div.index
-  {
-    top: 0em;
-  }
-  /* make space for the fixed navigation bar and add space at the bottom so that
-   * link targets appear somewhat close to top
-   */
-  body
-  {
-    padding-top: 5em;
-    padding-bottom: 500px;
-    max-width: 60em;
-  }
-  p
-  {
-    max-width: 60em;
-  }
-  /* style and size the navigation bar */
-  table.navigation#top
-  {
-    position: fixed;
-    background: #e2e2e2;
-    border-bottom: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-    z-index: 10;
-  }
-  .navigation a, .navigation a:visited
-  {
-    /* tango:sky blue 3 */
-    color: #204a87;
-  }
-  .navigation a:hover
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-  }
-  td.shortcuts
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-    font-size: 80%;
-    white-space: nowrap;
-  }
-  td.shortcuts .dim
-  {
-    color: #babdb6;
-  }
-}
-@media screen and (min-width: 60em) {
-  /* screen larger than 60em */
-  body { margin: auto; }
-}
-@media screen and (max-width: 60em) {
-  /* screen less than 60em */
-  #nav_hierarchy { display: none; }
-  #nav_interfaces { display: none; }
-  #nav_prerequisites { display: none; }
-  #nav_derived_interfaces { display: none; }
-  #nav_implementations { display: none; }
-  #nav_child_properties { display: none; }
-  #nav_style_properties { display: none; }
-  #nav_index { display: none; }
-  #nav_glossary { display: none; }
-  .gallery_image { display: none; }
-  .property_flags { display: none; }
-  .signal_flags { display: none; }
-  .parameter_annotations { display: none; }
-  .enum_member_annotations { display: none; }
-  .struct_member_annotations { display: none; }
-  .union_member_annotations { display: none; }
-  /* now that a column is hidden, optimize space */
-  col.parameters_name { width: auto; }
-  col.parameters_description { width: auto; }
-  col.struct_members_name { width: auto; }
-  col.struct_members_description { width: auto; }
-  col.enum_members_name { width: auto; }
-  col.enum_members_description { width: auto; }
-  col.union_members_name { width: auto; }
-  col.union_members_description { width: auto; }
-}
-@media print {
-  table.navigation {
-    visibility: collapse;
-    display: none;
-  }
-  div.titlepage table.navigation {
-    visibility: visible;
-    display: table;
-    background: #e2e2e2;
-    border: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-  }
-}
-
-.navigation .title
-{
-  font-size: 120%;
-}
-
 div.gallery-float
 {
   float: left;
@@ -181,7 +60,7 @@
 div.informaltable table
 {
   border-collapse: separate;
-  border-spacing: 20px 3px;
+  border-spacing: 1em 0.5em;
   border: none;
 }
 
@@ -239,6 +118,11 @@
  color: #729fcf;
 }
 
+td p
+{
+  margin: 0.25em;
+}
+
 div.table table
 {
   border-collapse: collapse;
@@ -404,21 +288,28 @@
   font-weight: normal;
 }
 
+acronym,abbr 
+{
+  border-bottom: 1px dotted gray;
+}
+
 /* code listings */
 
-.listing_code .programlisting .cbracket   { color: #a40000; } /* tango: scarlet red 3 */
-.listing_code .programlisting .comment    { color: #a1a39d; } /* tango: aluminium 4 */
-.listing_code .programlisting .function   { color: #000000; font-weight: bold; }
-.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */
-.listing_code .programlisting .keyword    { color: #4e9a06; } /* tango: chameleon 3  */
+.listing_code .programlisting .normal,
+.listing_code .programlisting .normal a,
+.listing_code .programlisting .number,
+.listing_code .programlisting .cbracket,
+.listing_code .programlisting .symbol     { color: #555753; }
+.listing_code .programlisting .comment,
 .listing_code .programlisting .linenum    { color: #babdb6; } /* tango: aluminium 3 */
-.listing_code .programlisting .normal     { color: #000000; }
-.listing_code .programlisting .number     { color: #75507b; } /* tango: plum 2 */
+.listing_code .programlisting .function,
+.listing_code .programlisting .function a,
 .listing_code .programlisting .preproc    { color: #204a87; } /* tango: sky blue 3  */
-.listing_code .programlisting .string     { color: #c17d11; } /* tango: chocolate 2 */
-.listing_code .programlisting .type       { color: #000000; }
-.listing_code .programlisting .type a     { color: #11326b; } /* tango: sky blue 4 */
-.listing_code .programlisting .symbol     { color: #ce5c00; } /* tango: orange 3 */
+.listing_code .programlisting .string     { color: #ad7fa8; } /* tango: plum */
+.listing_code .programlisting .keyword,
+.listing_code .programlisting .usertype,
+.listing_code .programlisting .type,
+.listing_code .programlisting .type a     { color: #4e9a06; } /* tango: chameleon 3  */
 
 .listing_frame {
   /* tango:sky blue 1 */
@@ -433,11 +324,6 @@
   padding: 0.5em;
 }
 .listing_lines {
-  /* this just adds visual clutter and
-     takes precious room from small screens */
-  display: none;
-}
-.listing_lines {
   /* tango:sky blue 0.5 */
   background: #a6c5e3;
   background: rgba(114, 159, 207, 0.2);
@@ -459,3 +345,132 @@
   margin: 0px;
 }
 
+@media screen {
+  sup a.footnote
+  {
+    position: relative;
+    top: 0em ! important;
+  }
+  /* this is needed so that the local anchors are displayed below the naviagtion */
+  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
+  {
+    display: inline-block;
+    position: relative;
+    top:-5em;
+  }
+  /* this seems to be a bug in the xsl style sheets when generating indexes */
+  div.index div.index
+  {
+    top: 0em;
+  }
+  /* make space for the fixed navigation bar and add space at the bottom so that
+   * link targets appear somewhat close to top
+   */
+  body
+  {
+    padding-top: 2.5em;
+    padding-bottom: 500px;
+    max-width: 60em;
+  }
+  p
+  {
+    max-width: 60em;
+  }
+  /* style and size the navigation bar */
+  table.navigation#top
+  {
+    position: fixed;
+    background: #e2e2e2;
+    border-bottom: solid 1px #babdb6;
+    border-spacing: 5px;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    z-index: 10;
+  }
+  table.navigation#top td
+  {
+    padding-left: 6px;
+    padding-right: 6px;
+  }
+  .navigation a, .navigation a:visited
+  {
+    /* tango:sky blue 3 */
+    color: #204a87;
+  }
+  .navigation a:hover
+  {
+    /* tango:sky blue 2 */
+    color: #3465a4;
+  }
+  td.shortcuts
+  {
+    /* tango:sky blue 2 */
+    color: #3465a4;
+    font-size: 80%;
+    white-space: nowrap;
+  }
+  td.shortcuts .dim
+  {
+    color: #babdb6;
+  }
+  .navigation .title
+  {
+    font-size: 80%;
+    max-width: none;
+    margin: 0px;
+    font-weight: normal;
+  }
+}
+@media screen and (min-width: 60em) {
+  /* screen larger than 60em */
+  body { margin: auto; }
+}
+@media screen and (max-width: 60em) {
+  /* screen less than 60em */
+  #nav_hierarchy { display: none; }
+  #nav_interfaces { display: none; }
+  #nav_prerequisites { display: none; }
+  #nav_derived_interfaces { display: none; }
+  #nav_implementations { display: none; }
+  #nav_child_properties { display: none; }
+  #nav_style_properties { display: none; }
+  #nav_index { display: none; }
+  #nav_glossary { display: none; }
+  .gallery_image { display: none; }
+  .property_flags { display: none; }
+  .signal_flags { display: none; }
+  .parameter_annotations { display: none; }
+  .enum_member_annotations { display: none; }
+  .struct_member_annotations { display: none; }
+  .union_member_annotations { display: none; }
+  /* now that a column is hidden, optimize space */
+  col.parameters_name { width: auto; }
+  col.parameters_description { width: auto; }
+  col.struct_members_name { width: auto; }
+  col.struct_members_description { width: auto; }
+  col.enum_members_name { width: auto; }
+  col.enum_members_description { width: auto; }
+  col.union_members_name { width: auto; }
+  col.union_members_description { width: auto; }
+  .listing_lines { display: none; }
+}
+@media print {
+  table.navigation {
+    visibility: collapse;
+    display: none;
+  }
+  div.titlepage table.navigation {
+    visibility: visible;
+    display: table;
+    background: #e2e2e2;
+    border: solid 1px #babdb6;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    height: 3em;
+  }
+}
+
diff --git a/docs/manual/Makefile.in b/docs/manual/Makefile.in
index b510386..29a9ee2 100644
--- a/docs/manual/Makefile.in
+++ b/docs/manual/Makefile.in
@@ -114,6 +114,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -131,7 +132,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/manual/advanced-buffering.xml b/docs/manual/advanced-buffering.xml
index 72fc96f..7facd85 100644
--- a/docs/manual/advanced-buffering.xml
+++ b/docs/manual/advanced-buffering.xml
@@ -73,7 +73,7 @@
         }
       } else {
         /* buffering busy */
-        if (buffering == FALSE && target_state == GST_STATE_PLAYING) {
+        if (!buffering && target_state == GST_STATE_PLAYING) {
           /* we were not buffering but PLAYING, PAUSE  the pipeline. */
           gst_element_set_state (pipeline, GST_STATE_PAUSED);
         }
@@ -349,7 +349,7 @@
 
   if (percent < 100) {
     /* buffering busy */
-    if (is_buffering == FALSE) {
+    if (!is_buffering) {
       is_buffering = TRUE;
       if (target_state == GST_STATE_PLAYING) {
         /* we were not buffering but PLAYING, PAUSE  the pipeline. */
@@ -364,7 +364,7 @@
 {
   GstElement *pipeline = user_data;
 
-  if (is_buffering == FALSE)
+  if (!is_buffering)
     gst_element_set_state (pipeline, target_state);
   else
     g_timeout_add (500, buffer_timeout, pipeline);
diff --git a/docs/manual/advanced-dataaccess.xml b/docs/manual/advanced-dataaccess.xml
index 7f91986..555d0ba 100644
--- a/docs/manual/advanced-dataaccess.xml
+++ b/docs/manual/advanced-dataaccess.xml
@@ -311,7 +311,6 @@
         the sink element, unblock the source pads and set the pipeline to
         the playing state. You will see that exactly the requested
         region is played by the sink before it goes to EOS.
-        What follows
       </para>
       <para>
         What follows is an example application that loosly follows this
diff --git a/docs/manual/appendix-programs.xml b/docs/manual/appendix-programs.xml
index b888a17..72eab54 100644
--- a/docs/manual/appendix-programs.xml
+++ b/docs/manual/appendix-programs.xml
@@ -59,6 +59,7 @@
   
   filesrc = gst_bin_get_by_name (GST_BIN (pipeline), "my_filesrc");
   g_object_set (filesrc, "location", argv[1], NULL);
+  g_object_unref (filesrc);
 
   gst_element_set_state (pipeline, GST_STATE_PLAYING);
 
diff --git a/docs/plugins/Makefile.in b/docs/plugins/Makefile.in
index b11e737..8ba1779 100644
--- a/docs/plugins/Makefile.in
+++ b/docs/plugins/Makefile.in
@@ -107,6 +107,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -124,7 +125,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -172,6 +173,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -277,6 +282,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/plugins/gstreamer-plugins-sections.txt b/docs/plugins/gstreamer-plugins-sections.txt
index ac4451c..313da0f 100644
--- a/docs/plugins/gstreamer-plugins-sections.txt
+++ b/docs/plugins/gstreamer-plugins-sections.txt
@@ -41,6 +41,7 @@
 <SUBSECTION Standard>
 GstFdSinkClass
 GST_FD_SINK
+GST_FD_SINK_CAST
 GST_IS_FD_SINK
 GST_TYPE_FD_SINK
 GST_FD_SINK_CLASS
@@ -87,6 +88,7 @@
 <SUBSECTION Standard>
 GstFileSinkClass
 GST_FILE_SINK
+GST_FILE_SINK_CAST
 GST_IS_FILE_SINK
 GST_TYPE_FILE_SINK
 GST_FILE_SINK_CLASS
@@ -126,6 +128,22 @@
 </SECTION>
 
 <SECTION>
+<FILE>element-concat</FILE>
+<TITLE>concat</TITLE>
+GstConcat
+<SUBSECTION Standard>
+GstConcatClass
+GST_CONCAT
+GST_CONCAT_CAST
+GST_IS_CONCAT
+GST_TYPE_CONCAT
+GST_CONCAT_CLASS
+GST_IS_CONCAT_CLASS
+<SUBSECTION Private>
+gst_concat_get_type
+</SECTION>
+
+<SECTION>
 <FILE>element-downloadbuffer</FILE>
 <TITLE>downloadbuffer</TITLE>
 GstDownloadBuffer
diff --git a/docs/plugins/gstreamer-plugins.hierarchy b/docs/plugins/gstreamer-plugins.hierarchy
index 9195eb1..c26d933 100644
--- a/docs/plugins/gstreamer-plugins.hierarchy
+++ b/docs/plugins/gstreamer-plugins.hierarchy
@@ -22,6 +22,7 @@
           GstIdentity
         GstBin
           GstPipeline
+        GstConcat
         GstDownloadBuffer
         GstFunnel
         GstInputSelector
@@ -36,7 +37,7 @@
       GstPadTemplate
       GstPlugin
       GstPluginFeature
-        GstDeviceMonitorFactory
+        GstDeviceProviderFactory
         GstElementFactory
         GstTypeFindFactory
       GstRegistry
diff --git a/docs/plugins/html/ch01.html b/docs/plugins/html/ch01.html
index 7797b66..0fcdcce 100644
--- a/docs/plugins/html/ch01.html
+++ b/docs/plugins/html/ch01.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer Core Plugins 1.0 Plugins Reference Manual">
 <link rel="prev" href="index.html" title="GStreamer Core Plugins 1.0 Plugins Reference Manual">
 <link rel="next" href="gstreamer-plugins-capsfilter.html" title="capsfilter">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -81,6 +81,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/ch02.html b/docs/plugins/html/ch02.html
index 3e7e218..7dc1224 100644
--- a/docs/plugins/html/ch02.html
+++ b/docs/plugins/html/ch02.html
@@ -8,11 +8,11 @@
 <link rel="up" href="index.html" title="GStreamer Core Plugins 1.0 Plugins Reference Manual">
 <link rel="prev" href="gstreamer-plugins-valve.html" title="valve">
 <link rel="next" href="gstreamer-plugins-plugin-coreelements.html" title="coreelements">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
@@ -28,6 +28,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-capsfilter.html b/docs/plugins/html/gstreamer-plugins-capsfilter.html
index b220ac9..ae20ad8 100644
--- a/docs/plugins/html/gstreamer-plugins-capsfilter.html
+++ b/docs/plugins/html/gstreamer-plugins-capsfilter.html
@@ -8,15 +8,15 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="ch01.html" title="gstreamer Elements">
 <link rel="next" href="gstreamer-plugins-downloadbuffer.html" title="downloadbuffer">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-capsfilter.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-capsfilter.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-capsfilter.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-capsfilter.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-capsfilter.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -64,8 +64,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-capsfilter.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseTransform.html">GstBaseTransform</a>
@@ -196,6 +196,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-downloadbuffer.html b/docs/plugins/html/gstreamer-plugins-downloadbuffer.html
index ae54e55..de4be66 100644
--- a/docs/plugins/html/gstreamer-plugins-downloadbuffer.html
+++ b/docs/plugins/html/gstreamer-plugins-downloadbuffer.html
@@ -8,15 +8,15 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-capsfilter.html" title="capsfilter">
 <link rel="next" href="gstreamer-plugins-fakesrc.html" title="fakesrc">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-downloadbuffer.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-downloadbuffer.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-downloadbuffer.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-downloadbuffer.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-downloadbuffer.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,17 +43,17 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-downloadbuffer.html#GstDownloadBuffer--high-percent" title="The “high-percent” property">high-percent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-downloadbuffer.html#GstDownloadBuffer--low-percent" title="The “low-percent” property">low-percent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-downloadbuffer.html#GstDownloadBuffer--max-size-bytes" title="The “max-size-bytes” property">max-size-bytes</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -64,18 +64,18 @@
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-downloadbuffer.html#GstDownloadBuffer--temp-location" title="The “temp-location” property">temp-location</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-downloadbuffer.html#GstDownloadBuffer--temp-remove" title="The “temp-remove” property">temp-remove</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-downloadbuffer.html#GstDownloadBuffer--temp-template" title="The “temp-template” property">temp-template</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -97,8 +97,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-downloadbuffer.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstDownloadBuffer
@@ -226,7 +226,7 @@
 <a name="gstreamer-plugins-downloadbuffer.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstDownloadBuffer--high-percent"></a><h3>The <code class="literal">“high-percent”</code> property</h3>
-<pre class="programlisting">  “high-percent”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “high-percent”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>High threshold for buffering to finish. Only used if use-buffering is True.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,100]</p>
@@ -235,7 +235,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstDownloadBuffer--low-percent"></a><h3>The <code class="literal">“low-percent”</code> property</h3>
-<pre class="programlisting">  “low-percent”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “low-percent”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Low threshold for buffering to start. Only used if use-buffering is True.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,100]</p>
@@ -244,7 +244,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstDownloadBuffer--max-size-bytes"></a><h3>The <code class="literal">“max-size-bytes”</code> property</h3>
-<pre class="programlisting">  “max-size-bytes”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-bytes”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. amount of data to buffer (bytes, 0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 2097152</p>
@@ -260,7 +260,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstDownloadBuffer--temp-location"></a><h3>The <code class="literal">“temp-location”</code> property</h3>
-<pre class="programlisting">  “temp-location”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “temp-location”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>Location to store temporary files in (Only read this property, use temp-template to configure the name template).</p>
 <p>Flags: Read</p>
 <p>Default value: NULL</p>
@@ -268,7 +268,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstDownloadBuffer--temp-remove"></a><h3>The <code class="literal">“temp-remove”</code> property</h3>
-<pre class="programlisting">  “temp-remove”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “temp-remove”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>When temp-template is set, remove the temporary file when going to READY.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -276,7 +276,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstDownloadBuffer--temp-template"></a><h3>The <code class="literal">“temp-template”</code> property</h3>
-<pre class="programlisting">  “temp-template”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “temp-template”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>File template to store temporary files in, should contain directory and XXXXXX. (NULL == disabled).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: NULL</p>
@@ -285,6 +285,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-fakesink.html b/docs/plugins/html/gstreamer-plugins-fakesink.html
index 11c05e7..edc3806 100644
--- a/docs/plugins/html/gstreamer-plugins-fakesink.html
+++ b/docs/plugins/html/gstreamer-plugins-fakesink.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-fakesrc.html" title="fakesrc">
 <link rel="next" href="gstreamer-plugins-fdsink.html" title="fdsink">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fakesink.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fakesink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fakesink.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fakesink.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fakesink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fakesink.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-fakesink.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,38 +44,38 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--can-activate-pull" title="The “can-activate-pull” property">can-activate-pull</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--can-activate-push" title="The “can-activate-push” property">can-activate-push</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--dump" title="The “dump” property">dump</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--last-message" title="The “last-message” property">last-message</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--num-buffers" title="The “num-buffers” property">num-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--signal-handoffs" title="The “signal-handoffs” property">signal-handoffs</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink--silent" title="The “silent” property">silent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -130,8 +130,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-fakesink.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSink.html">GstBaseSink</a>
@@ -295,7 +295,7 @@
 <a name="gstreamer-plugins-fakesink.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstFakeSink--can-activate-pull"></a><h3>The <code class="literal">“can-activate-pull”</code> property</h3>
-<pre class="programlisting">  “can-activate-pull”        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “can-activate-pull”        <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Can activate in pull mode.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -303,7 +303,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSink--can-activate-push"></a><h3>The <code class="literal">“can-activate-push”</code> property</h3>
-<pre class="programlisting">  “can-activate-push”        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “can-activate-push”        <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Can activate in push mode.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -311,7 +311,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSink--dump"></a><h3>The <code class="literal">“dump”</code> property</h3>
-<pre class="programlisting">  “dump”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “dump”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Dump buffer contents to stdout.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -319,7 +319,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSink--last-message"></a><h3>The <code class="literal">“last-message”</code> property</h3>
-<pre class="programlisting">  “last-message”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “last-message”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The message describing current status.</p>
 <p>Flags: Read</p>
 <p>Default value: NULL</p>
@@ -327,7 +327,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSink--num-buffers"></a><h3>The <code class="literal">“num-buffers”</code> property</h3>
-<pre class="programlisting">  “num-buffers”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “num-buffers”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Number of buffers to accept going EOS.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= G_MAXULONG</p>
@@ -336,7 +336,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSink--signal-handoffs"></a><h3>The <code class="literal">“signal-handoffs”</code> property</h3>
-<pre class="programlisting">  “signal-handoffs”          <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “signal-handoffs”          <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Send a signal before unreffing the buffer.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -344,7 +344,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSink--silent"></a><h3>The <code class="literal">“silent”</code> property</h3>
-<pre class="programlisting">  “silent”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “silent”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Don't produce last_message events.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -366,7 +366,7 @@
 user_function (<a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink"><span class="type">GstFakeSink</span></a> *fakesink,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>   *buffer,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>      *pad,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
 <p>This signal gets emitted before unreffing the buffer.</p>
 <div class="refsect3">
 <a name="id-1.2.5.12.2.5"></a><h4>Parameters</h4>
@@ -409,7 +409,7 @@
 user_function (<a class="link" href="gstreamer-plugins-fakesink.html#GstFakeSink"><span class="type">GstFakeSink</span></a> *fakesink,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>   *buffer,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>      *pad,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
 <p>This signal gets emitted before unreffing the buffer.</p>
 <div class="refsect3">
 <a name="id-1.2.5.12.3.5"></a><h4>Parameters</h4>
@@ -453,6 +453,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-fakesrc.html b/docs/plugins/html/gstreamer-plugins-fakesrc.html
index ba08125..474d662 100644
--- a/docs/plugins/html/gstreamer-plugins-fakesrc.html
+++ b/docs/plugins/html/gstreamer-plugins-fakesrc.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-downloadbuffer.html" title="downloadbuffer">
 <link rel="next" href="gstreamer-plugins-fakesink.html" title="fakesink">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fakesrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fakesrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fakesrc.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fakesrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fakesrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fakesrc.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-fakesrc.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,12 +44,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--can-activate-pull" title="The “can-activate-pull” property">can-activate-pull</a></td>
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--can-activate-push" title="The “can-activate-push” property">can-activate-push</a></td>
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
@@ -59,12 +59,12 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--datarate" title="The “datarate” property">datarate</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--dump" title="The “dump” property">dump</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -79,44 +79,44 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--is-live" title="The “is-live” property">is-live</a></td>
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--last-message" title="The “last-message” property">last-message</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--parentsize" title="The “parentsize” property">parentsize</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--pattern" title="The “pattern” property">pattern</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--signal-handoffs" title="The “signal-handoffs” property">signal-handoffs</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--silent" title="The “silent” property">silent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--sizemax" title="The “sizemax” property">sizemax</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--sizemin" title="The “sizemin” property">sizemin</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -126,7 +126,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc--sync" title="The “sync” property">sync</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -181,8 +181,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-fakesrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSrc.html">GstBaseSrc</a>
@@ -478,7 +478,7 @@
 <a name="gstreamer-plugins-fakesrc.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstFakeSrc--can-activate-pull"></a><h3>The <code class="literal">“can-activate-pull”</code> property</h3>
-<pre class="programlisting">  “can-activate-pull”        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “can-activate-pull”        <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Can activate in pull mode.</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: TRUE</p>
@@ -486,7 +486,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--can-activate-push"></a><h3>The <code class="literal">“can-activate-push”</code> property</h3>
-<pre class="programlisting">  “can-activate-push”        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “can-activate-push”        <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Can activate in push mode.</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: TRUE</p>
@@ -502,7 +502,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--datarate"></a><h3>The <code class="literal">“datarate”</code> property</h3>
-<pre class="programlisting">  “datarate”                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “datarate”                 <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Timestamps buffers with number of bytes per second (0 = none).</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -511,7 +511,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--dump"></a><h3>The <code class="literal">“dump”</code> property</h3>
-<pre class="programlisting">  “dump”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “dump”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Dump buffer contents to stdout.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -535,7 +535,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--is-live"></a><h3>The <code class="literal">“is-live”</code> property</h3>
-<pre class="programlisting">  “is-live”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “is-live”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>True if the element cannot produce data in PAUSED.</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: FALSE</p>
@@ -543,7 +543,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--last-message"></a><h3>The <code class="literal">“last-message”</code> property</h3>
-<pre class="programlisting">  “last-message”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “last-message”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The last status message.</p>
 <p>Flags: Read</p>
 <p>Default value: NULL</p>
@@ -551,7 +551,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--parentsize"></a><h3>The <code class="literal">“parentsize”</code> property</h3>
-<pre class="programlisting">  “parentsize”               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “parentsize”               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Size of parent buffer for sub-buffered allocation.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -560,7 +560,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--pattern"></a><h3>The <code class="literal">“pattern”</code> property</h3>
-<pre class="programlisting">  “pattern”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “pattern”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>pattern.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: NULL</p>
@@ -568,7 +568,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--signal-handoffs"></a><h3>The <code class="literal">“signal-handoffs”</code> property</h3>
-<pre class="programlisting">  “signal-handoffs”          <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “signal-handoffs”          <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Send a signal before pushing the buffer.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -576,7 +576,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--silent"></a><h3>The <code class="literal">“silent”</code> property</h3>
-<pre class="programlisting">  “silent”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “silent”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Don't produce last_message events.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -584,7 +584,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--sizemax"></a><h3>The <code class="literal">“sizemax”</code> property</h3>
-<pre class="programlisting">  “sizemax”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “sizemax”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Maximum buffer size.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -593,7 +593,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--sizemin"></a><h3>The <code class="literal">“sizemin”</code> property</h3>
-<pre class="programlisting">  “sizemin”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “sizemin”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Minimum buffer size.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -610,7 +610,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFakeSrc--sync"></a><h3>The <code class="literal">“sync”</code> property</h3>
-<pre class="programlisting">  “sync”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “sync”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Sync to the clock to the datarate.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -624,7 +624,7 @@
 user_function (<a class="link" href="gstreamer-plugins-fakesrc.html#GstFakeSrc"><span class="type">GstFakeSrc</span></a> *fakesrc,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>  *buffer,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>     *pad,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
 <p>This signal gets emitted before sending the buffer.</p>
 <div class="refsect3">
 <a name="id-1.2.4.12.2.5"></a><h4>Parameters</h4>
@@ -668,6 +668,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-fdsink.html b/docs/plugins/html/gstreamer-plugins-fdsink.html
index aa6f8d8..7118c0d 100644
--- a/docs/plugins/html/gstreamer-plugins-fdsink.html
+++ b/docs/plugins/html/gstreamer-plugins-fdsink.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-fakesink.html" title="fakesink">
 <link rel="next" href="gstreamer-plugins-fdsrc.html" title="fdsrc">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fdsink.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fdsink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fdsink.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fdsink.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fdsink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fdsink.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-fdsink.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,7 +43,7 @@
 <col width="200px" class="properties_flags">
 </colgroup>
 <tbody><tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fdsink.html#GstFdSink--fd" title="The “fd” property">fd</a></td>
 <td class="property_flags">Read / Write</td>
 </tr></tbody>
@@ -64,8 +64,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-fdsink.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSink.html">GstBaseSink</a>
@@ -158,7 +158,7 @@
 <a name="gstreamer-plugins-fdsink.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstFdSink--fd"></a><h3>The <code class="literal">“fd”</code> property</h3>
-<pre class="programlisting">  “fd”                       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “fd”                       <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>An open file descriptor to write to.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -172,6 +172,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-fdsrc.html b/docs/plugins/html/gstreamer-plugins-fdsrc.html
index 2611d00..c8a12f6 100644
--- a/docs/plugins/html/gstreamer-plugins-fdsrc.html
+++ b/docs/plugins/html/gstreamer-plugins-fdsrc.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-fdsink.html" title="fdsink">
 <link rel="next" href="gstreamer-plugins-filesrc.html" title="filesrc">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fdsrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fdsrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-fdsrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fdsrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fdsrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-fdsrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-fdsrc.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,7 +44,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-fdsrc.html#GstFdSrc--fd" title="The “fd” property">fd</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -71,8 +71,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-fdsrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSrc.html">GstBaseSrc</a>
@@ -189,7 +189,7 @@
 <a name="gstreamer-plugins-fdsrc.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstFdSrc--fd"></a><h3>The <code class="literal">“fd”</code> property</h3>
-<pre class="programlisting">  “fd”                       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “fd”                       <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>An open file descriptor to read from.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -211,6 +211,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-filesink.html b/docs/plugins/html/gstreamer-plugins-filesink.html
index 249bf86..1213e01 100644
--- a/docs/plugins/html/gstreamer-plugins-filesink.html
+++ b/docs/plugins/html/gstreamer-plugins-filesink.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-filesrc.html" title="filesrc">
 <link rel="next" href="gstreamer-plugins-funnel.html" title="funnel">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-filesink.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-filesink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-filesink.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-filesink.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-filesink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-filesink.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-filesink.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,7 +44,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-filesink.html#GstFileSink--append" title="The “append” property">append</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -54,13 +54,13 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-filesink.html#GstFileSink--buffer-size" title="The “buffer-size” property">buffer-size</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-filesink.html#GstFileSink--location" title="The “location” property">location</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -82,8 +82,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-filesink.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSink.html">GstBaseSink</a>
@@ -187,7 +187,7 @@
 <a name="gstreamer-plugins-filesink.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstFileSink--append"></a><h3>The <code class="literal">“append”</code> property</h3>
-<pre class="programlisting">  “append”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “append”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Append to an already existing file.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -203,7 +203,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFileSink--buffer-size"></a><h3>The <code class="literal">“buffer-size”</code> property</h3>
-<pre class="programlisting">  “buffer-size”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “buffer-size”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Size of buffer in number of bytes for line or full buffer-mode.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 65536</p>
@@ -211,7 +211,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstFileSink--location"></a><h3>The <code class="literal">“location”</code> property</h3>
-<pre class="programlisting">  “location”                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “location”                 <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>Location of the file to write.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: NULL</p>
@@ -224,6 +224,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-filesrc.html b/docs/plugins/html/gstreamer-plugins-filesrc.html
index 60652dc..9e3dc3c 100644
--- a/docs/plugins/html/gstreamer-plugins-filesrc.html
+++ b/docs/plugins/html/gstreamer-plugins-filesrc.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-fdsrc.html" title="fdsrc">
 <link rel="next" href="gstreamer-plugins-filesink.html" title="filesink">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-filesrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-filesrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-filesrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-filesrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-filesrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-filesrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-filesrc.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,7 +44,7 @@
 </colgroup>
 <tbody><tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-filesrc.html#GstFileSrc--location" title="The “location” property">location</a></td>
 <td class="property_flags">Read / Write</td>
 </tr></tbody>
@@ -65,8 +65,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-filesrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSrc.html">GstBaseSrc</a>
@@ -89,7 +89,7 @@
     <tbody>
       <tr>
         <td class="listing_lines" align="right"><pre>1</pre></td>
-        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch filesrc location<span class="gtkdoc opt">=</span>song<span class="gtkdoc opt">.</span>ogg <span class="gtkdoc opt">!</span> decodebin2 <span class="gtkdoc opt">!</span> autoaudiosink</pre></td>
+        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch filesrc location<span class="gtkdoc opt">=</span>song<span class="gtkdoc opt">.</span>ogg <span class="gtkdoc opt">!</span> decodebin <span class="gtkdoc opt">!</span> autoaudiosink</pre></td>
       </tr>
     </tbody>
   </table>
@@ -170,7 +170,7 @@
 <a name="gstreamer-plugins-filesrc.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstFileSrc--location"></a><h3>The <code class="literal">“location”</code> property</h3>
-<pre class="programlisting">  “location”                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “location”                 <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>Location of the file to read.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: NULL</p>
@@ -183,6 +183,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-funnel.html b/docs/plugins/html/gstreamer-plugins-funnel.html
index 4c720d2..c01f7d6 100644
--- a/docs/plugins/html/gstreamer-plugins-funnel.html
+++ b/docs/plugins/html/gstreamer-plugins-funnel.html
@@ -8,14 +8,14 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-filesink.html" title="filesink">
 <link rel="next" href="gstreamer-plugins-identity.html" title="identity">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-funnel.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-funnel.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-funnel.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -47,8 +47,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-funnel.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstFunnel
@@ -58,7 +58,7 @@
 <a name="gstreamer-plugins-funnel.description"></a><h2>Description</h2>
 <p>Takes packets from various input sinks into one output source.</p>
 <p>funnel always outputs a single, open ended segment from
-0 with in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><code class="literal">GST_FORMAT_TIME</code></a> and outputs the buffers of the
+0 with in <code class="literal">GST_FORMAT_TIME</code> and outputs the buffers of the
 different sinkpads with timestamps that are set to the
 running time for that stream. funnel does not synchronize
 the different input streams but simply forwards all buffers
@@ -160,6 +160,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-identity.html b/docs/plugins/html/gstreamer-plugins-identity.html
index 98e878a..82fd87e 100644
--- a/docs/plugins/html/gstreamer-plugins-identity.html
+++ b/docs/plugins/html/gstreamer-plugins-identity.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-funnel.html" title="funnel">
 <link rel="next" href="gstreamer-plugins-input-selector.html" title="input-selector">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-identity.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-identity.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-identity.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-identity.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-identity.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-identity.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-identity.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,63 +44,63 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--check-imperfect-offset" title="The “check-imperfect-offset” property">check-imperfect-offset</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--check-imperfect-timestamp" title="The “check-imperfect-timestamp” property">check-imperfect-timestamp</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--datarate" title="The “datarate” property">datarate</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--drop-probability" title="The “drop-probability” property">drop-probability</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--dump" title="The “dump” property">dump</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--error-after" title="The “error-after” property">error-after</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--last-message" title="The “last-message” property">last-message</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--signal-handoffs" title="The “signal-handoffs” property">signal-handoffs</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--silent" title="The “silent” property">silent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--single-segment" title="The “single-segment” property">single-segment</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--sleep-time" title="The “sleep-time” property">sleep-time</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-identity.html#GstIdentity--sync" title="The “sync” property">sync</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -137,8 +137,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-identity.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseTransform.html">GstBaseTransform</a>
@@ -247,7 +247,7 @@
 <a name="gstreamer-plugins-identity.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstIdentity--check-imperfect-offset"></a><h3>The <code class="literal">“check-imperfect-offset”</code> property</h3>
-<pre class="programlisting">  “check-imperfect-offset”   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “check-imperfect-offset”   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Send element messages if offset and offset_end do not match up.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -255,7 +255,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--check-imperfect-timestamp"></a><h3>The <code class="literal">“check-imperfect-timestamp”</code> property</h3>
-<pre class="programlisting">  “check-imperfect-timestamp” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “check-imperfect-timestamp” <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Send element messages if timestamps and durations do not match up.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -263,7 +263,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--datarate"></a><h3>The <code class="literal">“datarate”</code> property</h3>
-<pre class="programlisting">  “datarate”                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “datarate”                 <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>(Re)timestamps buffers with number of bytes per second (0 = inactive).</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: &gt;= 0</p>
@@ -272,7 +272,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--drop-probability"></a><h3>The <code class="literal">“drop-probability”</code> property</h3>
-<pre class="programlisting">  “drop-probability”         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a></pre>
+<pre class="programlisting">  “drop-probability”         <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a></pre>
 <p>The Probability a buffer is dropped.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,1]</p>
@@ -281,7 +281,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--dump"></a><h3>The <code class="literal">“dump”</code> property</h3>
-<pre class="programlisting">  “dump”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “dump”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Dump buffer contents to stdout.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -289,7 +289,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--error-after"></a><h3>The <code class="literal">“error-after”</code> property</h3>
-<pre class="programlisting">  “error-after”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “error-after”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Error after N buffers.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: -1</p>
@@ -297,7 +297,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--last-message"></a><h3>The <code class="literal">“last-message”</code> property</h3>
-<pre class="programlisting">  “last-message”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “last-message”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>last-message.</p>
 <p>Flags: Read</p>
 <p>Default value: NULL</p>
@@ -305,16 +305,16 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--signal-handoffs"></a><h3>The <code class="literal">“signal-handoffs”</code> property</h3>
-<pre class="programlisting">  “signal-handoffs”          <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a>, the identity will emit a handoff signal when handling a buffer.
-When set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a>, no signal will be emitted, which might improve performance.</p>
+<pre class="programlisting">  “signal-handoffs”          <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a>, the identity will emit a handoff signal when handling a buffer.
+When set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a>, no signal will be emitted, which might improve performance.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--silent"></a><h3>The <code class="literal">“silent”</code> property</h3>
-<pre class="programlisting">  “silent”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “silent”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>silent.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -322,7 +322,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--single-segment"></a><h3>The <code class="literal">“single-segment”</code> property</h3>
-<pre class="programlisting">  “single-segment”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “single-segment”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Timestamp buffers and eat segments so as to appear as one segment.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -330,7 +330,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--sleep-time"></a><h3>The <code class="literal">“sleep-time”</code> property</h3>
-<pre class="programlisting">  “sleep-time”               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “sleep-time”               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Microseconds to sleep between processing.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 0</p>
@@ -338,7 +338,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstIdentity--sync"></a><h3>The <code class="literal">“sync”</code> property</h3>
-<pre class="programlisting">  “sync”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “sync”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Synchronize to pipeline clock.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -351,7 +351,7 @@
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-identity.html#GstIdentity"><span class="type">GstIdentity</span></a> *identity,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>   *buffer,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
 <p>This signal gets emitted before passing the buffer downstream.</p>
 <div class="refsect3">
 <a name="id-1.2.11.12.2.5"></a><h4>Parameters</h4>
@@ -391,6 +391,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-input-selector.html b/docs/plugins/html/gstreamer-plugins-input-selector.html
index 552ccfc..41863d4 100644
--- a/docs/plugins/html/gstreamer-plugins-input-selector.html
+++ b/docs/plugins/html/gstreamer-plugins-input-selector.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-identity.html" title="identity">
 <link rel="next" href="gstreamer-plugins-multiqueue.html" title="multiqueue">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-input-selector.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-input-selector.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-input-selector.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-input-selector.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-input-selector.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-input-selector.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-input-selector.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -50,12 +50,12 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-input-selector.html#GstInputSelector--cache-buffers" title="The “cache-buffers” property">cache-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-input-selector.html#GstInputSelector--n-pads" title="The “n-pads” property">n-pads</a></td>
 <td class="property_flags">Read</td>
 </tr>
@@ -65,7 +65,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-input-selector.html#GstInputSelector--sync-streams" title="The “sync-streams” property">sync-streams</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -108,8 +108,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-input-selector.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstInputSelector
@@ -128,11 +128,11 @@
 "tags": The currently active tags on the pad (<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstTagList.html"><span class="type">GstTagList</span></a>, boxed type)
 </li>
 <li class="listitem">
-"active": If the pad is currently active (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>)
+"active": If the pad is currently active (<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>)
 </li>
 <li class="listitem">
-"always-ok" : Make an inactive pads return <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> instead of
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GST-FLOW-NOT-LINKED:CAPS"><span class="type">GST_FLOW_NOT_LINKED</span></a>
+"always-ok" : Make an inactive pads return <span class="type">GST_FLOW_OK</span> instead of
+<span class="type">GST_FLOW_NOT_LINKED</span>
 </li>
 </ul></div>
 <div class="refsynopsisdiv">
@@ -272,8 +272,8 @@
 <hr>
 <div class="refsect2">
 <a name="GstInputSelector--cache-buffers"></a><h3>The <code class="literal">“cache-buffers”</code> property</h3>
-<pre class="programlisting">  “cache-buffers”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and GstInputSelector:sync-streams is also set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>,
+<pre class="programlisting">  “cache-buffers”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and GstInputSelector:sync-streams is also set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>,
 the active pad will cache the buffers still considered valid (after current
 running time, see sync-mode) to avoid missing frames if/when the pad is
 reactivated.</p>
@@ -286,7 +286,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstInputSelector--n-pads"></a><h3>The <code class="literal">“n-pads”</code> property</h3>
-<pre class="programlisting">  “n-pads”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “n-pads”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>The number of sink pads.</p>
 <p>Flags: Read</p>
 <p>Default value: 0</p>
@@ -306,8 +306,8 @@
 <hr>
 <div class="refsect2">
 <a name="GstInputSelector--sync-streams"></a><h3>The <code class="literal">“sync-streams”</code> property</h3>
-<pre class="programlisting">  “sync-streams”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
-<p>If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> all inactive streams will be synced to the
+<pre class="programlisting">  “sync-streams”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>If set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> all inactive streams will be synced to the
 running time of the active stream or to the current clock.</p>
 <p>To make sure no buffers are dropped by input-selector
 that might be needed when switching the active pad,
@@ -322,7 +322,7 @@
 <a name="GstInputSelector-block"></a><h3>The <code class="literal">“block”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">gint64</span>
 user_function (<a class="link" href="gstreamer-plugins-input-selector.html#GstInputSelector"><span class="type">GstInputSelector</span></a> *inputselector,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>          user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>          user_data)</pre>
 <p>Block all sink pads in preparation for a switch. Returns the stop time of
 the current switch segment, as a running time, or 0 if there is no current
 active pad or the current active pad never received data.</p>
@@ -358,6 +358,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-multiqueue.html b/docs/plugins/html/gstreamer-plugins-multiqueue.html
index 9548b54..f6c0c67 100644
--- a/docs/plugins/html/gstreamer-plugins-multiqueue.html
+++ b/docs/plugins/html/gstreamer-plugins-multiqueue.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-input-selector.html" title="input-selector">
 <link rel="next" href="gstreamer-plugins-output-selector.html" title="output-selector">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-multiqueue.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-multiqueue.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-multiqueue.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-multiqueue.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-multiqueue.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-multiqueue.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-multiqueue.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,12 +44,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--extra-size-buffers" title="The “extra-size-buffers” property">extra-size-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--extra-size-bytes" title="The “extra-size-bytes” property">extra-size-bytes</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -59,22 +59,22 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--high-percent" title="The “high-percent” property">high-percent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--low-percent" title="The “low-percent” property">low-percent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--max-size-buffers" title="The “max-size-buffers” property">max-size-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--max-size-bytes" title="The “max-size-bytes” property">max-size-bytes</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -84,12 +84,12 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--sync-by-running-time" title="The “sync-by-running-time” property">sync-by-running-time</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue--use-buffering" title="The “use-buffering” property">use-buffering</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -133,8 +133,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-multiqueue.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstMultiQueue
@@ -323,7 +323,7 @@
 <a name="gstreamer-plugins-multiqueue.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstMultiQueue--extra-size-buffers"></a><h3>The <code class="literal">“extra-size-buffers”</code> property</h3>
-<pre class="programlisting">  “extra-size-buffers”       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “extra-size-buffers”       <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Amount of buffers the queues can grow if one of them is empty (0=disable) (NOT IMPLEMENTED).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 5</p>
@@ -331,7 +331,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--extra-size-bytes"></a><h3>The <code class="literal">“extra-size-bytes”</code> property</h3>
-<pre class="programlisting">  “extra-size-bytes”         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “extra-size-bytes”         <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Amount of data the queues can grow if one of them is empty (bytes, 0=disable) (NOT IMPLEMENTED).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 10485760</p>
@@ -347,7 +347,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--high-percent"></a><h3>The <code class="literal">“high-percent”</code> property</h3>
-<pre class="programlisting">  “high-percent”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “high-percent”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>High threshold percent for buffering to finish.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,100]</p>
@@ -356,7 +356,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--low-percent"></a><h3>The <code class="literal">“low-percent”</code> property</h3>
-<pre class="programlisting">  “low-percent”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “low-percent”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Low threshold percent for buffering to start.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,100]</p>
@@ -365,7 +365,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--max-size-buffers"></a><h3>The <code class="literal">“max-size-buffers”</code> property</h3>
-<pre class="programlisting">  “max-size-buffers”         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-buffers”         <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. number of buffers in the queue (0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 5</p>
@@ -373,7 +373,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--max-size-bytes"></a><h3>The <code class="literal">“max-size-bytes”</code> property</h3>
-<pre class="programlisting">  “max-size-bytes”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-bytes”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. amount of data in the queue (bytes, 0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 10485760</p>
@@ -389,7 +389,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--sync-by-running-time"></a><h3>The <code class="literal">“sync-by-running-time”</code> property</h3>
-<pre class="programlisting">  “sync-by-running-time”     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “sync-by-running-time”     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>If enabled multiqueue will synchronize deactivated or not-linked streams
 to the activated and linked streams by taking the running time.
 Otherwise multiqueue will synchronize the deactivated or not-linked
@@ -401,7 +401,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstMultiQueue--use-buffering"></a><h3>The <code class="literal">“use-buffering”</code> property</h3>
-<pre class="programlisting">  “use-buffering”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “use-buffering”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Enable the buffering option in multiqueue so that BUFFERING messages are
 emitted based on low-/high-percent thresholds.</p>
 <p>Flags: Read / Write</p>
@@ -414,7 +414,7 @@
 <a name="GstMultiQueue-overrun"></a><h3>The <code class="literal">“overrun”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue"><span class="type">GstMultiQueue</span></a> *multiqueue,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
 <p>Reports that one of the queues in the multiqueue is full (overrun).
 A queue is full if the total amount of data inside it (num-buffers, time,
 size) is higher than the boundary values which can be set through the
@@ -449,7 +449,7 @@
 <a name="GstMultiQueue-underrun"></a><h3>The <code class="literal">“underrun”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-multiqueue.html#GstMultiQueue"><span class="type">GstMultiQueue</span></a> *multiqueue,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>       user_data)</pre>
 <p>This signal is emitted from the streaming thread when there is
 no data in any of the queues inside the multiqueue instance (underrun).</p>
 <p>This indicates either starvation or EOS from the upstream data sources.</p>
@@ -485,6 +485,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-output-selector.html b/docs/plugins/html/gstreamer-plugins-output-selector.html
index 38eb008..14f9a10 100644
--- a/docs/plugins/html/gstreamer-plugins-output-selector.html
+++ b/docs/plugins/html/gstreamer-plugins-output-selector.html
@@ -8,15 +8,15 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-multiqueue.html" title="multiqueue">
 <link rel="next" href="gstreamer-plugins-queue.html" title="queue">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-output-selector.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-output-selector.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-output-selector.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-output-selector.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-output-selector.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -54,7 +54,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-output-selector.html#GstOutputSelector--resend-latest" title="The “resend-latest” property">resend-latest</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -82,8 +82,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-output-selector.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstOutputSelector
@@ -248,7 +248,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstOutputSelector--resend-latest"></a><h3>The <code class="literal">“resend-latest”</code> property</h3>
-<pre class="programlisting">  “resend-latest”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “resend-latest”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Resend latest buffer after a switch to a new pad.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -261,6 +261,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html b/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html
index 834c3f3..7a405d0 100644
--- a/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html
+++ b/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html
@@ -7,11 +7,11 @@
 <link rel="home" href="index.html" title="GStreamer Core Plugins 1.0 Plugins Reference Manual">
 <link rel="up" href="ch02.html" title="gstreamer Plugins">
 <link rel="prev" href="ch02.html" title="gstreamer Plugins">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
@@ -41,7 +41,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.5.0.1</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
@@ -49,7 +49,7 @@
 </tr>
 <tr>
 <td><p><span class="term">package</span></p></td>
-<td>GStreamer source release</td>
+<td>GStreamer git</td>
 </tr>
 <tr>
 <td><p><span class="term">origin</span></p></td>
@@ -71,6 +71,10 @@
 <td>Pass data without modification, limiting formats</td>
 </tr>
 <tr>
+<td><p><span class="term">concat</span></p></td>
+<td>Concatenate multiple streams</td>
+</tr>
+<tr>
 <td><p><span class="term"><a class="link" href="gstreamer-plugins-downloadbuffer.html" title="downloadbuffer">downloadbuffer</a></span></p></td>
 <td>Download Buffer element</td>
 </tr>
@@ -144,6 +148,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-queue.html b/docs/plugins/html/gstreamer-plugins-queue.html
index a0c0717..eca1ab6 100644
--- a/docs/plugins/html/gstreamer-plugins-queue.html
+++ b/docs/plugins/html/gstreamer-plugins-queue.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-output-selector.html" title="output-selector">
 <link rel="next" href="gstreamer-plugins-queue2.html" title="queue2">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-queue.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-queue.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-queue.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-queue.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-queue.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-queue.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-queue.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -44,12 +44,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--current-level-buffers" title="The “current-level-buffers” property">current-level-buffers</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--current-level-bytes" title="The “current-level-bytes” property">current-level-bytes</a></td>
 <td class="property_flags">Read</td>
 </tr>
@@ -59,7 +59,7 @@
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--flush-on-eos" title="The “flush-on-eos” property">flush-on-eos</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -69,12 +69,12 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--max-size-buffers" title="The “max-size-buffers” property">max-size-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--max-size-bytes" title="The “max-size-bytes” property">max-size-bytes</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -84,12 +84,12 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--min-threshold-buffers" title="The “min-threshold-buffers” property">min-threshold-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--min-threshold-bytes" title="The “min-threshold-bytes” property">min-threshold-bytes</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -99,7 +99,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue.html#GstQueue--silent" title="The “silent” property">silent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -159,8 +159,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-queue.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstQueue
@@ -327,7 +327,7 @@
 <a name="gstreamer-plugins-queue.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstQueue--current-level-buffers"></a><h3>The <code class="literal">“current-level-buffers”</code> property</h3>
-<pre class="programlisting">  “current-level-buffers”    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “current-level-buffers”    <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Current number of buffers in the queue.</p>
 <p>Flags: Read</p>
 <p>Default value: 0</p>
@@ -335,7 +335,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--current-level-bytes"></a><h3>The <code class="literal">“current-level-bytes”</code> property</h3>
-<pre class="programlisting">  “current-level-bytes”      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “current-level-bytes”      <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Current amount of data in the queue (bytes).</p>
 <p>Flags: Read</p>
 <p>Default value: 0</p>
@@ -351,7 +351,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--flush-on-eos"></a><h3>The <code class="literal">“flush-on-eos”</code> property</h3>
-<pre class="programlisting">  “flush-on-eos”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “flush-on-eos”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Discard all data in the queue when an EOS event is received, and pass
 on the EOS event as soon as possible (instead of waiting until all
 buffers in the queue have been processed, which is the default behaviour).</p>
@@ -375,7 +375,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--max-size-buffers"></a><h3>The <code class="literal">“max-size-buffers”</code> property</h3>
-<pre class="programlisting">  “max-size-buffers”         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-buffers”         <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. number of buffers in the queue (0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 200</p>
@@ -383,7 +383,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--max-size-bytes"></a><h3>The <code class="literal">“max-size-bytes”</code> property</h3>
-<pre class="programlisting">  “max-size-bytes”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-bytes”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. amount of data in the queue (bytes, 0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 10485760</p>
@@ -399,7 +399,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--min-threshold-buffers"></a><h3>The <code class="literal">“min-threshold-buffers”</code> property</h3>
-<pre class="programlisting">  “min-threshold-buffers”    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “min-threshold-buffers”    <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Min. number of buffers in the queue to allow reading (0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 0</p>
@@ -407,7 +407,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--min-threshold-bytes"></a><h3>The <code class="literal">“min-threshold-bytes”</code> property</h3>
-<pre class="programlisting">  “min-threshold-bytes”      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “min-threshold-bytes”      <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Min. amount of data in the queue to allow reading (bytes, 0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 0</p>
@@ -423,7 +423,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue--silent"></a><h3>The <code class="literal">“silent”</code> property</h3>
-<pre class="programlisting">  “silent”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “silent”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Don't emit queue signals. Makes queues more lightweight if no signals are
 needed.</p>
 <p>Flags: Read / Write</p>
@@ -436,7 +436,7 @@
 <a name="GstQueue-overrun"></a><h3>The <code class="literal">“overrun”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-queue.html#GstQueue"><span class="type">GstQueue</span></a> *queue,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
 <p>Reports that the buffer became full (overrun).
 A buffer is full if the total amount of data inside it (num-buffers, time,
 size) is higher than the boundary values which can be set through the
@@ -470,7 +470,7 @@
 <a name="GstQueue-pushing"></a><h3>The <code class="literal">“pushing”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-queue.html#GstQueue"><span class="type">GstQueue</span></a> *queue,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
 <p>Reports when the queue has enough data to start pushing data again on the
 source pad.</p>
 <div class="refsect3">
@@ -502,7 +502,7 @@
 <a name="GstQueue-running"></a><h3>The <code class="literal">“running”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-queue.html#GstQueue"><span class="type">GstQueue</span></a> *queue,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
 <p>Reports that enough (min-threshold) data is in the queue. Use this signal
 together with the underrun signal to pause the pipeline on underrun and
 wait for the queue to fill-up before resume playback.</p>
@@ -535,7 +535,7 @@
 <a name="GstQueue-underrun"></a><h3>The <code class="literal">“underrun”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-queue.html#GstQueue"><span class="type">GstQueue</span></a> *queue,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)</pre>
 <p>Reports that the buffer became empty (underrun).
 A buffer is empty if the total amount of data inside it (num-buffers, time,
 size) is lower than the boundary values which can be set through the
@@ -568,6 +568,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-queue2.html b/docs/plugins/html/gstreamer-plugins-queue2.html
index 81dd439..7ffbfb4 100644
--- a/docs/plugins/html/gstreamer-plugins-queue2.html
+++ b/docs/plugins/html/gstreamer-plugins-queue2.html
@@ -8,15 +8,15 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-queue.html" title="queue">
 <link rel="next" href="gstreamer-plugins-tee.html" title="tee">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-queue2.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-queue2.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-queue2.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-queue2.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-queue2.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -43,12 +43,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--current-level-buffers" title="The “current-level-buffers” property">current-level-buffers</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--current-level-bytes" title="The “current-level-bytes” property">current-level-bytes</a></td>
 <td class="property_flags">Read</td>
 </tr>
@@ -58,22 +58,22 @@
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--high-percent" title="The “high-percent” property">high-percent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--low-percent" title="The “low-percent” property">low-percent</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--max-size-buffers" title="The “max-size-buffers” property">max-size-buffers</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--max-size-bytes" title="The “max-size-bytes” property">max-size-bytes</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -89,28 +89,28 @@
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--temp-location" title="The “temp-location” property">temp-location</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--temp-remove" title="The “temp-remove” property">temp-remove</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--temp-template" title="The “temp-template” property">temp-template</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--use-buffering" title="The “use-buffering” property">use-buffering</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-queue2.html#GstQueue2--use-rate-estimate" title="The “use-rate-estimate” property">use-rate-estimate</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -132,8 +132,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-queue2.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstQueue2
@@ -257,7 +257,7 @@
 <a name="gstreamer-plugins-queue2.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstQueue2--current-level-buffers"></a><h3>The <code class="literal">“current-level-buffers”</code> property</h3>
-<pre class="programlisting">  “current-level-buffers”    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “current-level-buffers”    <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Current number of buffers in the queue.</p>
 <p>Flags: Read</p>
 <p>Default value: 0</p>
@@ -265,7 +265,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--current-level-bytes"></a><h3>The <code class="literal">“current-level-bytes”</code> property</h3>
-<pre class="programlisting">  “current-level-bytes”      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “current-level-bytes”      <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Current amount of data in the queue (bytes).</p>
 <p>Flags: Read</p>
 <p>Default value: 0</p>
@@ -281,7 +281,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--high-percent"></a><h3>The <code class="literal">“high-percent”</code> property</h3>
-<pre class="programlisting">  “high-percent”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “high-percent”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>High threshold for buffering to finish. Only used if use-buffering is True.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,100]</p>
@@ -290,7 +290,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--low-percent"></a><h3>The <code class="literal">“low-percent”</code> property</h3>
-<pre class="programlisting">  “low-percent”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “low-percent”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>Low threshold for buffering to start. Only used if use-buffering is True.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,100]</p>
@@ -299,7 +299,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--max-size-buffers"></a><h3>The <code class="literal">“max-size-buffers”</code> property</h3>
-<pre class="programlisting">  “max-size-buffers”         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-buffers”         <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. number of buffers in the queue (0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 100</p>
@@ -307,7 +307,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--max-size-bytes"></a><h3>The <code class="literal">“max-size-bytes”</code> property</h3>
-<pre class="programlisting">  “max-size-bytes”           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “max-size-bytes”           <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>Max. amount of data in the queue (bytes, 0=disable).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 2097152</p>
@@ -332,7 +332,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--temp-location"></a><h3>The <code class="literal">“temp-location”</code> property</h3>
-<pre class="programlisting">  “temp-location”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “temp-location”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>Location to store temporary files in (Only read this property, use temp-template to configure the name template).</p>
 <p>Flags: Read</p>
 <p>Default value: NULL</p>
@@ -340,7 +340,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--temp-remove"></a><h3>The <code class="literal">“temp-remove”</code> property</h3>
-<pre class="programlisting">  “temp-remove”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “temp-remove”              <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>When temp-template is set, remove the temporary file when going to READY.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -348,7 +348,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--temp-template"></a><h3>The <code class="literal">“temp-template”</code> property</h3>
-<pre class="programlisting">  “temp-template”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “temp-template”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>File template to store temporary files in, should contain directory and XXXXXX. (NULL == disabled).</p>
 <p>Flags: Read / Write</p>
 <p>Default value: NULL</p>
@@ -356,7 +356,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--use-buffering"></a><h3>The <code class="literal">“use-buffering”</code> property</h3>
-<pre class="programlisting">  “use-buffering”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “use-buffering”            <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Emit GST_MESSAGE_BUFFERING based on low-/high-percent thresholds.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -364,7 +364,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstQueue2--use-rate-estimate"></a><h3>The <code class="literal">“use-rate-estimate”</code> property</h3>
-<pre class="programlisting">  “use-rate-estimate”        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “use-rate-estimate”        <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Estimate the bitrate of the stream to calculate time level.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: TRUE</p>
@@ -373,6 +373,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-tee.html b/docs/plugins/html/gstreamer-plugins-tee.html
index 5c9d2d7..66298f3 100644
--- a/docs/plugins/html/gstreamer-plugins-tee.html
+++ b/docs/plugins/html/gstreamer-plugins-tee.html
@@ -8,15 +8,15 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-queue2.html" title="queue2">
 <link rel="next" href="gstreamer-plugins-typefind.html" title="typefind">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-tee.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-tee.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-tee.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-tee.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-tee.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -49,18 +49,18 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-tee.html#GstTee--has-chain" title="The “has-chain” property">has-chain</a></td>
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
 <tr>
 <td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-tee.html#GstTee--last-message" title="The “last-message” property">last-message</a></td>
 <td class="property_flags">Read</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-tee.html#GstTee--num-src-pads" title="The “num-src-pads” property">num-src-pads</a></td>
 <td class="property_flags">Read</td>
 </tr>
@@ -70,7 +70,7 @@
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-tee.html#GstTee--silent" title="The “silent” property">silent</a></td>
 <td class="property_flags">Read / Write / Construct</td>
 </tr>
@@ -98,8 +98,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-tee.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstTee
@@ -121,7 +121,7 @@
     <tbody>
       <tr>
         <td class="listing_lines" align="right"><pre>1</pre></td>
-        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch filesrc location<span class="gtkdoc opt">=</span>song<span class="gtkdoc opt">.</span>ogg <span class="gtkdoc opt">!</span> decodebin2 <span class="gtkdoc opt">!</span> tee name<span class="gtkdoc opt">=</span>t <span class="gtkdoc opt">!</span> queue <span class="gtkdoc opt">!</span> autoaudiosink t<span class="gtkdoc opt">. !</span> queue <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> goom <span class="gtkdoc opt">!</span> videoconvert <span class="gtkdoc opt">!</span> autovideosink</pre></td>
+        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch filesrc location<span class="gtkdoc opt">=</span>song<span class="gtkdoc opt">.</span>ogg <span class="gtkdoc opt">!</span> decodebin <span class="gtkdoc opt">!</span> tee name<span class="gtkdoc opt">=</span>t <span class="gtkdoc opt">!</span> queue <span class="gtkdoc opt">!</span> autoaudiosink t<span class="gtkdoc opt">. !</span> queue <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> goom <span class="gtkdoc opt">!</span> videoconvert <span class="gtkdoc opt">!</span> autovideosink</pre></td>
       </tr>
     </tbody>
   </table>
@@ -267,7 +267,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstTee--has-chain"></a><h3>The <code class="literal">“has-chain”</code> property</h3>
-<pre class="programlisting">  “has-chain”                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “has-chain”                <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>If the element can operate in push mode.</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: TRUE</p>
@@ -275,7 +275,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstTee--last-message"></a><h3>The <code class="literal">“last-message”</code> property</h3>
-<pre class="programlisting">  “last-message”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting">  “last-message”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The message describing current status.</p>
 <p>Flags: Read</p>
 <p>Default value: NULL</p>
@@ -283,7 +283,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstTee--num-src-pads"></a><h3>The <code class="literal">“num-src-pads”</code> property</h3>
-<pre class="programlisting">  “num-src-pads”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
+<pre class="programlisting">  “num-src-pads”             <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
 <p>The number of source pads.</p>
 <p>Flags: Read</p>
 <p>Allowed values: &gt;= 0</p>
@@ -300,7 +300,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstTee--silent"></a><h3>The <code class="literal">“silent”</code> property</h3>
-<pre class="programlisting">  “silent”                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “silent”                   <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Don't produce last_message events.</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: TRUE</p>
@@ -313,6 +313,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-typefind.html b/docs/plugins/html/gstreamer-plugins-typefind.html
index f39b0e0..fc72585 100644
--- a/docs/plugins/html/gstreamer-plugins-typefind.html
+++ b/docs/plugins/html/gstreamer-plugins-typefind.html
@@ -8,16 +8,16 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-tee.html" title="tee">
 <link rel="next" href="gstreamer-plugins-valve.html" title="valve">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-typefind.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-typefind.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-typefind.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-typefind.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-typefind.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-typefind.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-typefind.signals" class="shortcut">Signals</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -56,7 +56,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-typefind.html#GstTypeFindElement--minimum" title="The “minimum” property">minimum</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -93,8 +93,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-typefind.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstTypeFindElement
@@ -222,7 +222,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstTypeFindElement--minimum"></a><h3>The <code class="literal">“minimum”</code> property</h3>
-<pre class="programlisting">  “minimum”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting">  “minimum”                  <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
 <p>minimum probability required to accept caps.</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [1,100]</p>
@@ -235,9 +235,9 @@
 <a name="GstTypeFindElement-have-type"></a><h3>The <code class="literal">“have-type”</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 user_function (<a class="link" href="gstreamer-plugins-typefind.html#GstTypeFindElement"><span class="type">GstTypeFindElement</span></a> *typefind,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>               probability,
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>               probability,
                <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a>            *caps,
-               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>            user_data)</pre>
+               <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>            user_data)</pre>
 <p>This signal gets emitted when the type and its probability has
 been found.</p>
 <div class="refsect3">
@@ -278,6 +278,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/gstreamer-plugins-valve.html b/docs/plugins/html/gstreamer-plugins-valve.html
index 979326d..7fcb942 100644
--- a/docs/plugins/html/gstreamer-plugins-valve.html
+++ b/docs/plugins/html/gstreamer-plugins-valve.html
@@ -8,15 +8,15 @@
 <link rel="up" href="ch01.html" title="gstreamer Elements">
 <link rel="prev" href="gstreamer-plugins-typefind.html" title="typefind">
 <link rel="next" href="ch02.html" title="gstreamer Plugins">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
 <td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-valve.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
-                  <a href="#gstreamer-plugins-valve.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-valve.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+                  <a href="#gstreamer-plugins-valve.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                   <a href="#gstreamer-plugins-valve.properties" class="shortcut">Properties</a></span>
 </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
@@ -42,7 +42,7 @@
 <col width="200px" class="properties_flags">
 </colgroup>
 <tbody><tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_type"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
 <td class="property_name"><a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property">drop</a></td>
 <td class="property_flags">Read / Write</td>
 </tr></tbody>
@@ -63,8 +63,8 @@
 </div>
 <div class="refsect1">
 <a name="gstreamer-plugins-valve.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+    <span class="lineart">╰──</span> <a href="https://developer.gnome.org/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                 <span class="lineart">╰──</span> GstValve
@@ -73,9 +73,9 @@
 <div class="refsect1">
 <a name="gstreamer-plugins-valve.description"></a><h2>Description</h2>
 <p>The valve is a simple element that drops buffers when the <a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property"><span class="type">“drop”</span></a>
-property is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and lets then through otherwise.</p>
-<p>Any downstream error received while the <a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property"><span class="type">“drop”</span></a> property is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
-is ignored. So downstream element can be set to  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a> and removed,
+property is set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and lets then through otherwise.</p>
+<p>Any downstream error received while the <a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property"><span class="type">“drop”</span></a> property is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
+is ignored. So downstream element can be set to  <code class="literal">GST_STATE_NULL</code> and removed,
 without using pad blocking.</p>
 <div class="refsynopsisdiv">
 <h2>Synopsis</h2>
@@ -175,7 +175,7 @@
 <a name="gstreamer-plugins-valve.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="GstValve--drop"></a><h3>The <code class="literal">“drop”</code> property</h3>
-<pre class="programlisting">  “drop”                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<pre class="programlisting">  “drop”                     <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
 <p>Whether to drop buffers and events or let them through.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: FALSE</p>
@@ -184,6 +184,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index ead4d8e..5386857 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GStreamer Core Plugins 1.0 Plugins Reference Manual">
 <link rel="next" href="ch01.html" title="gstreamer Elements">
-<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.21 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -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 Core Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Core Plugins 1.0 (1.3.3)
+      for GStreamer Core Plugins 1.0 (1.5.0.1)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/</a>.
     </p></div>
@@ -88,6 +88,6 @@
 </div>
 <div class="footer">
 <hr>
-          Generated by GTK-Doc V1.20</div>
+          Generated by GTK-Doc V1.21</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/plugins/html/style.css b/docs/plugins/html/style.css
index 705a5c9..c141ddd 100644
--- a/docs/plugins/html/style.css
+++ b/docs/plugins/html/style.css
@@ -30,127 +30,6 @@
   vertical-align: top;
 }
 
-@media screen {
-  sup a.footnote
-  {
-    position: relative;
-    top: 0em ! important;
-  }
-  /* this is needed so that the local anchors are displayed below the naviagtion */
-  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
-  {
-    display: inline-block;
-    position: relative;
-    top:-5em;
-  }
-  /* this seems to be a bug in the xsl style sheets when generating indexes */
-  div.index div.index
-  {
-    top: 0em;
-  }
-  /* make space for the fixed navigation bar and add space at the bottom so that
-   * link targets appear somewhat close to top
-   */
-  body
-  {
-    padding-top: 5em;
-    padding-bottom: 500px;
-    max-width: 60em;
-  }
-  p
-  {
-    max-width: 60em;
-  }
-  /* style and size the navigation bar */
-  table.navigation#top
-  {
-    position: fixed;
-    background: #e2e2e2;
-    border-bottom: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-    z-index: 10;
-  }
-  .navigation a, .navigation a:visited
-  {
-    /* tango:sky blue 3 */
-    color: #204a87;
-  }
-  .navigation a:hover
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-  }
-  td.shortcuts
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-    font-size: 80%;
-    white-space: nowrap;
-  }
-  td.shortcuts .dim
-  {
-    color: #babdb6;
-  }
-}
-@media screen and (min-width: 60em) {
-  /* screen larger than 60em */
-  body { margin: auto; }
-}
-@media screen and (max-width: 60em) {
-  /* screen less than 60em */
-  #nav_hierarchy { display: none; }
-  #nav_interfaces { display: none; }
-  #nav_prerequisites { display: none; }
-  #nav_derived_interfaces { display: none; }
-  #nav_implementations { display: none; }
-  #nav_child_properties { display: none; }
-  #nav_style_properties { display: none; }
-  #nav_index { display: none; }
-  #nav_glossary { display: none; }
-  .gallery_image { display: none; }
-  .property_flags { display: none; }
-  .signal_flags { display: none; }
-  .parameter_annotations { display: none; }
-  .enum_member_annotations { display: none; }
-  .struct_member_annotations { display: none; }
-  .union_member_annotations { display: none; }
-  /* now that a column is hidden, optimize space */
-  col.parameters_name { width: auto; }
-  col.parameters_description { width: auto; }
-  col.struct_members_name { width: auto; }
-  col.struct_members_description { width: auto; }
-  col.enum_members_name { width: auto; }
-  col.enum_members_description { width: auto; }
-  col.union_members_name { width: auto; }
-  col.union_members_description { width: auto; }
-}
-@media print {
-  table.navigation {
-    visibility: collapse;
-    display: none;
-  }
-  div.titlepage table.navigation {
-    visibility: visible;
-    display: table;
-    background: #e2e2e2;
-    border: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-  }
-}
-
-.navigation .title
-{
-  font-size: 120%;
-}
-
 div.gallery-float
 {
   float: left;
@@ -181,7 +60,7 @@
 div.informaltable table
 {
   border-collapse: separate;
-  border-spacing: 20px 3px;
+  border-spacing: 1em 0.5em;
   border: none;
 }
 
@@ -239,6 +118,11 @@
  color: #729fcf;
 }
 
+td p
+{
+  margin: 0.25em;
+}
+
 div.table table
 {
   border-collapse: collapse;
@@ -404,21 +288,28 @@
   font-weight: normal;
 }
 
+acronym,abbr 
+{
+  border-bottom: 1px dotted gray;
+}
+
 /* code listings */
 
-.listing_code .programlisting .cbracket   { color: #a40000; } /* tango: scarlet red 3 */
-.listing_code .programlisting .comment    { color: #a1a39d; } /* tango: aluminium 4 */
-.listing_code .programlisting .function   { color: #000000; font-weight: bold; }
-.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */
-.listing_code .programlisting .keyword    { color: #4e9a06; } /* tango: chameleon 3  */
+.listing_code .programlisting .normal,
+.listing_code .programlisting .normal a,
+.listing_code .programlisting .number,
+.listing_code .programlisting .cbracket,
+.listing_code .programlisting .symbol     { color: #555753; }
+.listing_code .programlisting .comment,
 .listing_code .programlisting .linenum    { color: #babdb6; } /* tango: aluminium 3 */
-.listing_code .programlisting .normal     { color: #000000; }
-.listing_code .programlisting .number     { color: #75507b; } /* tango: plum 2 */
+.listing_code .programlisting .function,
+.listing_code .programlisting .function a,
 .listing_code .programlisting .preproc    { color: #204a87; } /* tango: sky blue 3  */
-.listing_code .programlisting .string     { color: #c17d11; } /* tango: chocolate 2 */
-.listing_code .programlisting .type       { color: #000000; }
-.listing_code .programlisting .type a     { color: #11326b; } /* tango: sky blue 4 */
-.listing_code .programlisting .symbol     { color: #ce5c00; } /* tango: orange 3 */
+.listing_code .programlisting .string     { color: #ad7fa8; } /* tango: plum */
+.listing_code .programlisting .keyword,
+.listing_code .programlisting .usertype,
+.listing_code .programlisting .type,
+.listing_code .programlisting .type a     { color: #4e9a06; } /* tango: chameleon 3  */
 
 .listing_frame {
   /* tango:sky blue 1 */
@@ -433,11 +324,6 @@
   padding: 0.5em;
 }
 .listing_lines {
-  /* this just adds visual clutter and
-     takes precious room from small screens */
-  display: none;
-}
-.listing_lines {
   /* tango:sky blue 0.5 */
   background: #a6c5e3;
   background: rgba(114, 159, 207, 0.2);
@@ -459,3 +345,132 @@
   margin: 0px;
 }
 
+@media screen {
+  sup a.footnote
+  {
+    position: relative;
+    top: 0em ! important;
+  }
+  /* this is needed so that the local anchors are displayed below the naviagtion */
+  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
+  {
+    display: inline-block;
+    position: relative;
+    top:-5em;
+  }
+  /* this seems to be a bug in the xsl style sheets when generating indexes */
+  div.index div.index
+  {
+    top: 0em;
+  }
+  /* make space for the fixed navigation bar and add space at the bottom so that
+   * link targets appear somewhat close to top
+   */
+  body
+  {
+    padding-top: 2.5em;
+    padding-bottom: 500px;
+    max-width: 60em;
+  }
+  p
+  {
+    max-width: 60em;
+  }
+  /* style and size the navigation bar */
+  table.navigation#top
+  {
+    position: fixed;
+    background: #e2e2e2;
+    border-bottom: solid 1px #babdb6;
+    border-spacing: 5px;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    z-index: 10;
+  }
+  table.navigation#top td
+  {
+    padding-left: 6px;
+    padding-right: 6px;
+  }
+  .navigation a, .navigation a:visited
+  {
+    /* tango:sky blue 3 */
+    color: #204a87;
+  }
+  .navigation a:hover
+  {
+    /* tango:sky blue 2 */
+    color: #3465a4;
+  }
+  td.shortcuts
+  {
+    /* tango:sky blue 2 */
+    color: #3465a4;
+    font-size: 80%;
+    white-space: nowrap;
+  }
+  td.shortcuts .dim
+  {
+    color: #babdb6;
+  }
+  .navigation .title
+  {
+    font-size: 80%;
+    max-width: none;
+    margin: 0px;
+    font-weight: normal;
+  }
+}
+@media screen and (min-width: 60em) {
+  /* screen larger than 60em */
+  body { margin: auto; }
+}
+@media screen and (max-width: 60em) {
+  /* screen less than 60em */
+  #nav_hierarchy { display: none; }
+  #nav_interfaces { display: none; }
+  #nav_prerequisites { display: none; }
+  #nav_derived_interfaces { display: none; }
+  #nav_implementations { display: none; }
+  #nav_child_properties { display: none; }
+  #nav_style_properties { display: none; }
+  #nav_index { display: none; }
+  #nav_glossary { display: none; }
+  .gallery_image { display: none; }
+  .property_flags { display: none; }
+  .signal_flags { display: none; }
+  .parameter_annotations { display: none; }
+  .enum_member_annotations { display: none; }
+  .struct_member_annotations { display: none; }
+  .union_member_annotations { display: none; }
+  /* now that a column is hidden, optimize space */
+  col.parameters_name { width: auto; }
+  col.parameters_description { width: auto; }
+  col.struct_members_name { width: auto; }
+  col.struct_members_description { width: auto; }
+  col.enum_members_name { width: auto; }
+  col.enum_members_description { width: auto; }
+  col.union_members_name { width: auto; }
+  col.union_members_description { width: auto; }
+  .listing_lines { display: none; }
+}
+@media print {
+  table.navigation {
+    visibility: collapse;
+    display: none;
+  }
+  div.titlepage table.navigation {
+    visibility: visible;
+    display: table;
+    background: #e2e2e2;
+    border: solid 1px #babdb6;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    height: 3em;
+  }
+}
+
diff --git a/docs/plugins/inspect/plugin-coreelements.xml b/docs/plugins/inspect/plugin-coreelements.xml
index 8f8ef79..c98c7f3 100644
--- a/docs/plugins/inspect/plugin-coreelements.xml
+++ b/docs/plugins/inspect/plugin-coreelements.xml
@@ -3,10 +3,10 @@
   <description>GStreamer core elements</description>
   <filename>../../plugins/elements/.libs/libgstcoreelements.so</filename>
   <basename>libgstcoreelements.so</basename>
-  <version>1.3.3</version>
+  <version>1.5.0.1</version>
   <license>LGPL</license>
   <source>gstreamer</source>
-  <package>GStreamer source release</package>
+  <package>GStreamer git</package>
   <origin>Unknown package origin</origin>
   <elements>
     <element>
@@ -31,6 +31,27 @@
       </pads>
     </element>
     <element>
+      <name>concat</name>
+      <longname>Concat</longname>
+      <class>Generic</class>
+      <description>Concatenate multiple streams</description>
+      <author>Sebastian Dröge &lt;sebastian@centricular.com&gt;</author>
+      <pads>
+        <caps>
+          <name>sink_%u</name>
+          <direction>sink</direction>
+          <presence>request</presence>
+          <details>ANY</details>
+        </caps>
+        <caps>
+          <name>src</name>
+          <direction>source</direction>
+          <presence>always</presence>
+          <details>ANY</details>
+        </caps>
+      </pads>
+    </element>
+    <element>
       <name>downloadbuffer</name>
       <longname>DownloadBuffer</longname>
       <class>Generic</class>
diff --git a/docs/pwg/Makefile.in b/docs/pwg/Makefile.in
index 4732ae1..76d7c46 100644
--- a/docs/pwg/Makefile.in
+++ b/docs/pwg/Makefile.in
@@ -114,6 +114,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -131,7 +132,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/pwg/advanced-allocation.xml b/docs/pwg/advanced-allocation.xml
index 5888037..253c60d 100644
--- a/docs/pwg/advanced-allocation.xml
+++ b/docs/pwg/advanced-allocation.xml
@@ -2,7 +2,7 @@
   <title>Memory allocation</title>
   <para>
     Memory allocation and management is a very important topic in
-    multimedia. High definition video uses many magabytes to store
+    multimedia. High definition video uses many megabytes to store
     one single frame of video. It is important to reuse the memory
     when possible instead of constantly allocating and freeing
     the memory.
@@ -117,7 +117,7 @@
     </para>
     <para>
       The buffer contains one or more <classname>GstMemory</classname>
-      objects thet represent the data in the buffer.
+      objects that represent the data in the buffer.
     </para>
     <para>
       Metadata in the buffer consists of:
@@ -398,7 +398,7 @@
           macro. You will also make a method to add your metadata
           implementation to a <classname>GstBuffer</classname>.
           Your <filename>my-example-meta.h</filename> header file will
-          need thse additions:
+          need these additions:
         </para>
         <programlisting>
 <![CDATA[
diff --git a/docs/pwg/advanced-clock.xml b/docs/pwg/advanced-clock.xml
index 4618167..a0ffc4f 100644
--- a/docs/pwg/advanced-clock.xml
+++ b/docs/pwg/advanced-clock.xml
@@ -64,7 +64,7 @@
     <title> Buffer running-time </title>
     <para>
       To calculate a buffer running-time, we need a buffer timestamp and
-      the SEGMENT event that preceeded the buffer. First we can convert
+      the SEGMENT event that preceded the buffer. First we can convert
       the SEGMENT event into a <classname>GstSegment</classname> object
       and then we can use the
       <function>gst_segment_to_running_time ()</function> function to
diff --git a/docs/pwg/advanced-events.xml b/docs/pwg/advanced-events.xml
index 997d5b3..5471ace 100644
--- a/docs/pwg/advanced-events.xml
+++ b/docs/pwg/advanced-events.xml
@@ -372,7 +372,7 @@
         The flush-stop event is created with
         <function>gst_event_new_flush_stop ()</function>. It has one
         parameter that controls if the running-time of the pipeline should
-        be reset to 0 or not. Normally aftera flushing seek, the
+        be reset to 0 or not. Normally after a flushing seek, the
         running_time is set back to 0.
       </para>
     </sect2>
diff --git a/docs/pwg/advanced-negotiation.xml b/docs/pwg/advanced-negotiation.xml
index db9b8cd..16591d3 100644
--- a/docs/pwg/advanced-negotiation.xml
+++ b/docs/pwg/advanced-negotiation.xml
@@ -370,7 +370,7 @@
 gst_my_filter_setcaps (GstMyFilter *filter,
 		       GstCaps *caps)
 {
-  if (gst_pad_set_caps (filter->sinkpad, caps)) {
+  if (gst_pad_set_caps (filter->srcpad, caps)) {
     filter->passthrough = TRUE;
   } else {
     GstCaps *othercaps, *newcaps;
diff --git a/docs/pwg/advanced-qos.xml b/docs/pwg/advanced-qos.xml
index 36ddf31..b87bf1e 100644
--- a/docs/pwg/advanced-qos.xml
+++ b/docs/pwg/advanced-qos.xml
@@ -2,7 +2,7 @@
   <title>Quality Of Service (QoS)</title>
 
   <para>
-    Quality of Service in &GStreamer; is about measuring and ajusting
+    Quality of Service in &GStreamer; is about measuring and adjusting
     the real-time performance of a pipeline. The real-time performance is
     always measured relative to the pipeline clock and typically happens in
     the sinks when they synchronize buffers against the clock.
@@ -77,12 +77,12 @@
       second long, it is operating at twice the required speed. If, on the
       other hand, it takes 2 seconds to produce a buffer with 1 seconds worth
       of data, upstream is producing buffers too slow and we won't be able to
-      keep sycnhronization. Usually, a running average is kept of the
+      keep synchronization. Usually, a running average is kept of the
       proportion.
     </para>
     <para>
       A synchronizing element also needs to measure its own performance in
-      order to figure out if the performace problem is upstream of itself.
+      order to figure out if the performance problem is upstream of itself.
     </para>
     <para>
       These measurements are used to construct a QOS event that is sent
@@ -184,7 +184,7 @@
       <para>
         Long term corrections are a bit more difficult to perform. They
         rely on the value of the proportion in the QOS event. Elements should
-        reduce the amount of resources they comsume by the proportion 
+        reduce the amount of resources they consume by the proportion
         field in the QoS message.
       </para>
       <para>
diff --git a/docs/pwg/advanced-tagging.xml b/docs/pwg/advanced-tagging.xml
index 082d732..d1e5393 100644
--- a/docs/pwg/advanced-tagging.xml
+++ b/docs/pwg/advanced-tagging.xml
@@ -54,7 +54,7 @@
     <title>Reading Tags from Streams</title>
     <para>
       The basic object for tags is a <ulink type="http"
-      url="../../gstreamer/html/gstreamer-GstTagList.html"><classname>GstTagList
+      url="../../gstreamer/html/GstTagList.html"><classname>GstTagList
       </classname></ulink>. An element that is reading tags from a stream should
       create an empty taglist and fill this with individual tags. Empty tag
       lists can be created with <function>gst_tag_list_new ()</function>. Then,
@@ -109,7 +109,7 @@
       TagSetter interface (which is just a layer). Pipeline tags are tags
       provided to the element from within the pipeline. The element receives
       such tags via the <symbol>GST_EVENT_TAG</symbol> event, which means
-      that tags writers should implment an event handler. The tag writer is
+      that tags writers should implement an event handler. The tag writer is
       responsible for combining all these three into one list and writing them
       to the output stream.
     </para>
diff --git a/docs/pwg/intro-basics.xml b/docs/pwg/intro-basics.xml
index e864e5e..de065d2 100644
--- a/docs/pwg/intro-basics.xml
+++ b/docs/pwg/intro-basics.xml
@@ -190,8 +190,8 @@
       See the &GstLibRef; for the current implementation details of a <ulink
       type="http"
       url="../../gstreamer/html/gstreamer-GstMiniObject.html"><classname>GstMiniObject</classname></ulink>, <ulink type="http"
-      url="../../gstreamer/html/gstreamer-GstBuffer.html"><classname>GstBuffer</classname></ulink> and <ulink type="http"
-      url="../../gstreamer/html/gstreamer-GstEvent.html"><classname>GstEvent</classname></ulink>.
+      url="../../gstreamer/html/GstBuffer.html"><classname>GstBuffer</classname></ulink> and <ulink type="http"
+      url="../../gstreamer/html/GstEvent.html"><classname>GstEvent</classname></ulink>.
     </para>
 
     <sect2 id="sect2-buffer-allocation" xreflabel="Buffer Allocation">
diff --git a/docs/pwg/other-base.xml b/docs/pwg/other-base.xml
index 484f436..0c00f98 100644
--- a/docs/pwg/other-base.xml
+++ b/docs/pwg/other-base.xml
@@ -119,7 +119,7 @@
         base-class.
       </para>
       <para>
-        The <classname>GstBaseAusioSink</classname> has little to no
+        The <classname>GstAudioBaseSink</classname> has little to no
         limitations and should fit virtually every implementation, but is
         hard to implement. The <classname>GstAudioSink</classname>, on the
         other hand, only fits those systems with a simple <function>open
diff --git a/docs/slides/Makefile.in b/docs/slides/Makefile.in
index 9676b0a..6107fc8 100644
--- a/docs/slides/Makefile.in
+++ b/docs/slides/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -153,6 +154,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -258,6 +263,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/docs/xsl/Makefile.in b/docs/xsl/Makefile.in
index 4650e11..24178c9 100644
--- a/docs/xsl/Makefile.in
+++ b/docs/xsl/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -153,6 +154,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -258,6 +263,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/gst/Makefile.am b/gst/Makefile.am
index 86d226e..1c67f8e 100644
--- a/gst/Makefile.am
+++ b/gst/Makefile.am
@@ -41,7 +41,8 @@
 # make variables for all generated source and header files to make the
 # distinction clear
 
-built_header_configure = gstconfig.h gstversion.h
+built_header_configure = gstversion.h
+built_sys_header_configure = gstconfig.h
 built_header_make = gstenumtypes.h
 built_source_make = gstenumtypes.c
 
@@ -66,21 +67,22 @@
 	gstcapsfeatures.c	\
 	gstchildproxy.c		\
 	gstclock.c		\
+	gstclock-linreg.c	\
 	gstcontext.c \
 	gstcontrolbinding.c \
 	gstcontrolsource.c \
 	gstdatetime.c		\
 	gstdebugutils.c		\
 	gstdevice.c		\
-	gstdevicemonitor.c	\
-	gstdevicemonitorfactory.c \
+	gstdevicemonitor.c 	\
+	gstdeviceprovider.c	\
+	gstdeviceproviderfactory.c \
 	gstelement.c		\
 	gstelementfactory.c	\
 	gsterror.c		\
 	gstevent.c		\
 	gstformat.c		\
 	gstghostpad.c		\
-	gstglobaldevicemonitor.c \
 	gstinfo.c		\
 	gstiterator.c		\
 	gstatomicqueue.c	\
@@ -126,12 +128,13 @@
 # BUILT_SOURCES are built on make all/check/install before all other targets
 BUILT_SOURCES = \
         $(built_header_configure)	\
+        $(built_sys_header_configure)	\
         $(built_header_make)		\
         $(built_source_make)
 # CLEANFILES is for files generated by make
 CLEANFILES = $(built_header_make) $(built_source_make) $(as_dll_cleanfiles) *.gcno *.gcda *.gcov *.gcov.out
 # DISTCLEANFILES is for files generated by configure
-DISTCLEANFILES = $(built_header_configure)
+DISTCLEANFILES = $(built_header_configure) $(built_sys_header_configure)
 
 libgstreamer_@GST_API_VERSION@_la_CFLAGS =		\
 	-D_GNU_SOURCE					\
@@ -177,14 +180,14 @@
 	gstelement.h		\
 	gstelementmetadata.h	\
 	gstdevice.h		\
-	gstdevicemonitor.h	\
-	gstdevicemonitorfactory.h \
+	gstdeviceprovider.h	\
+	gstdeviceproviderfactory.h \
 	gstelementfactory.h	\
 	gsterror.h		\
 	gstevent.h		\
 	gstformat.h		\
 	gstghostpad.h		\
-	gstglobaldevicemonitor.h \
+	gstdevicemonitor.h 	\
 	gstinfo.h		\
 	gstiterator.h		\
 	gstatomicqueue.h	\
@@ -225,6 +228,9 @@
 nodist_libgstreamer_@GST_API_VERSION@include_HEADERS = \
 	$(built_header_configure) $(built_header_make)
 
+configexecincludedir = $(libdir)/gstreamer-@GST_API_VERSION@/include/gst
+nodist_configexecinclude_HEADERS = $(built_sys_header_configure)
+
 noinst_HEADERS = 		\
 	gettext.h		\
 	glib-compat-private.h	\
diff --git a/gst/Makefile.in b/gst/Makefile.in
index eb59429..6af5d37 100644
--- a/gst/Makefile.in
+++ b/gst/Makefile.in
@@ -96,6 +96,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -113,7 +114,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -160,6 +161,7 @@
 am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" \
 	"$(DESTDIR)$(typelibsdir)" \
 	"$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)" \
+	"$(DESTDIR)$(configexecincludedir)" \
 	"$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 @GST_DISABLE_PARSE_FALSE@am__DEPENDENCIES_1 = parse/libgstparse.la
@@ -173,20 +175,20 @@
 am__libgstreamer_@GST_API_VERSION@_la_SOURCES_DIST = gst.c gstobject.c \
 	gstallocator.c gstbin.c gstbuffer.c gstbufferlist.c \
 	gstbufferpool.c gstbus.c gstcaps.c gstcapsfeatures.c \
-	gstchildproxy.c gstclock.c gstcontext.c gstcontrolbinding.c \
-	gstcontrolsource.c gstdatetime.c gstdebugutils.c gstdevice.c \
-	gstdevicemonitor.c gstdevicemonitorfactory.c gstelement.c \
+	gstchildproxy.c gstclock.c gstclock-linreg.c gstcontext.c \
+	gstcontrolbinding.c gstcontrolsource.c gstdatetime.c \
+	gstdebugutils.c gstdevice.c gstdevicemonitor.c \
+	gstdeviceprovider.c gstdeviceproviderfactory.c gstelement.c \
 	gstelementfactory.c gsterror.c gstevent.c gstformat.c \
-	gstghostpad.c gstglobaldevicemonitor.c gstinfo.c gstiterator.c \
-	gstatomicqueue.c gstmessage.c gstmeta.c gstmemory.c \
-	gstminiobject.c gstpad.c gstpadtemplate.c gstparamspecs.c \
-	gstpipeline.c gstplugin.c gstpluginfeature.c gstpluginloader.c \
-	gstpoll.c gstpreset.c gstquark.c gstquery.c gstregistry.c \
-	gstregistrychunks.c gstsample.c gstsegment.c gststructure.c \
-	gstsystemclock.c gsttaglist.c gsttagsetter.c gsttask.c \
-	gsttaskpool.c gsttoc.c gsttocsetter.c gsttrace.c gsttypefind.c \
-	gsttypefindfactory.c gsturi.c gstutils.c gstvalue.c gstparse.c \
-	gstregistrybinary.c
+	gstghostpad.c gstinfo.c gstiterator.c gstatomicqueue.c \
+	gstmessage.c gstmeta.c gstmemory.c gstminiobject.c gstpad.c \
+	gstpadtemplate.c gstparamspecs.c gstpipeline.c gstplugin.c \
+	gstpluginfeature.c gstpluginloader.c gstpoll.c gstpreset.c \
+	gstquark.c gstquery.c gstregistry.c gstregistrychunks.c \
+	gstsample.c gstsegment.c gststructure.c gstsystemclock.c \
+	gsttaglist.c gsttagsetter.c gsttask.c gsttaskpool.c gsttoc.c \
+	gsttocsetter.c gsttrace.c gsttypefind.c gsttypefindfactory.c \
+	gsturi.c gstutils.c gstvalue.c gstparse.c gstregistrybinary.c
 @GST_DISABLE_TRACE_FALSE@am__objects_1 = libgstreamer_@GST_API_VERSION@_la-gsttrace.lo
 @GST_DISABLE_REGISTRY_FALSE@am__objects_2 = libgstreamer_@GST_API_VERSION@_la-gstregistrybinary.lo
 am_libgstreamer_@GST_API_VERSION@_la_OBJECTS =  \
@@ -202,6 +204,7 @@
 	libgstreamer_@GST_API_VERSION@_la-gstcapsfeatures.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstchildproxy.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstclock.lo \
+	libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstcontext.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstcontrolbinding.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstcontrolsource.lo \
@@ -209,14 +212,14 @@
 	libgstreamer_@GST_API_VERSION@_la-gstdebugutils.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstdevice.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstdevicemonitor.lo \
-	libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.lo \
+	libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.lo \
+	libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstelement.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstelementfactory.lo \
 	libgstreamer_@GST_API_VERSION@_la-gsterror.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstevent.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstformat.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstghostpad.lo \
-	libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstinfo.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstiterator.lo \
 	libgstreamer_@GST_API_VERSION@_la-gstatomicqueue.lo \
@@ -321,6 +324,7 @@
   esac
 DATA = $(gir_DATA) $(typelibs_DATA)
 HEADERS = $(libgstreamer_@GST_API_VERSION@include_HEADERS) \
+	$(nodist_configexecinclude_HEADERS) \
 	$(nodist_libgstreamer_@GST_API_VERSION@include_HEADERS) \
 	$(noinst_HEADERS)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
@@ -386,6 +390,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -491,6 +499,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -672,7 +681,8 @@
 
 # make variables for all generated source and header files to make the
 # distinction clear
-built_header_configure = gstconfig.h gstversion.h
+built_header_configure = gstversion.h
+built_sys_header_configure = gstconfig.h
 built_header_make = gstenumtypes.h
 built_source_make = gstenumtypes.c
 EXTRA_libgstreamer_@GST_API_VERSION@_la_SOURCES = \
@@ -695,21 +705,22 @@
 	gstcapsfeatures.c	\
 	gstchildproxy.c		\
 	gstclock.c		\
+	gstclock-linreg.c	\
 	gstcontext.c \
 	gstcontrolbinding.c \
 	gstcontrolsource.c \
 	gstdatetime.c		\
 	gstdebugutils.c		\
 	gstdevice.c		\
-	gstdevicemonitor.c	\
-	gstdevicemonitorfactory.c \
+	gstdevicemonitor.c 	\
+	gstdeviceprovider.c	\
+	gstdeviceproviderfactory.c \
 	gstelement.c		\
 	gstelementfactory.c	\
 	gsterror.c		\
 	gstevent.c		\
 	gstformat.c		\
 	gstghostpad.c		\
-	gstglobaldevicemonitor.c \
 	gstinfo.c		\
 	gstiterator.c		\
 	gstatomicqueue.c	\
@@ -756,6 +767,7 @@
 # BUILT_SOURCES are built on make all/check/install before all other targets
 BUILT_SOURCES = \
         $(built_header_configure)	\
+        $(built_sys_header_configure)	\
         $(built_header_make)		\
         $(built_source_make)
 
@@ -764,7 +776,7 @@
 	$(as_dll_cleanfiles) *.gcno *.gcda *.gcov *.gcov.out \
 	$(am__append_1)
 # DISTCLEANFILES is for files generated by configure
-DISTCLEANFILES = $(built_header_configure)
+DISTCLEANFILES = $(built_header_configure) $(built_sys_header_configure)
 libgstreamer_@GST_API_VERSION@_la_CFLAGS = \
 	-D_GNU_SOURCE					\
 	-DGST_EXPORTS					\
@@ -808,14 +820,14 @@
 	gstelement.h		\
 	gstelementmetadata.h	\
 	gstdevice.h		\
-	gstdevicemonitor.h	\
-	gstdevicemonitorfactory.h \
+	gstdeviceprovider.h	\
+	gstdeviceproviderfactory.h \
 	gstelementfactory.h	\
 	gsterror.h		\
 	gstevent.h		\
 	gstformat.h		\
 	gstghostpad.h		\
-	gstglobaldevicemonitor.h \
+	gstdevicemonitor.h 	\
 	gstinfo.h		\
 	gstiterator.h		\
 	gstatomicqueue.h	\
@@ -855,6 +867,8 @@
 nodist_libgstreamer_@GST_API_VERSION@include_HEADERS = \
 	$(built_header_configure) $(built_header_make)
 
+configexecincludedir = $(libdir)/gstreamer-@GST_API_VERSION@/include/gst
+nodist_configexecinclude_HEADERS = $(built_sys_header_configure)
 noinst_HEADERS = \
 	gettext.h		\
 	glib-compat-private.h	\
@@ -980,6 +994,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcaps.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcapsfeatures.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstchildproxy.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstclock.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcontext.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcontrolbinding.Plo@am__quote@
@@ -988,7 +1003,8 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdebugutils.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdevice.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdevicemonitor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstelement.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstelementfactory.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstenumtypes.Plo@am__quote@
@@ -996,7 +1012,6 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstevent.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstformat.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstghostpad.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstinfo.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstiterator.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstmemory.Plo@am__quote@
@@ -1144,6 +1159,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstclock.lo `test -f 'gstclock.c' || echo '$(srcdir)/'`gstclock.c
 
+libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.lo: gstclock-linreg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.lo `test -f 'gstclock-linreg.c' || echo '$(srcdir)/'`gstclock-linreg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstclock-linreg.c' object='libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstclock-linreg.lo `test -f 'gstclock-linreg.c' || echo '$(srcdir)/'`gstclock-linreg.c
+
 libgstreamer_@GST_API_VERSION@_la-gstcontext.lo: gstcontext.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstcontext.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcontext.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstcontext.lo `test -f 'gstcontext.c' || echo '$(srcdir)/'`gstcontext.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcontext.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstcontext.Plo
@@ -1193,12 +1215,19 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstdevicemonitor.lo `test -f 'gstdevicemonitor.c' || echo '$(srcdir)/'`gstdevicemonitor.c
 
-libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.lo: gstdevicemonitorfactory.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.lo `test -f 'gstdevicemonitorfactory.c' || echo '$(srcdir)/'`gstdevicemonitorfactory.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstdevicemonitorfactory.c' object='libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.lo' libtool=yes @AMDEPBACKSLASH@
+libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.lo: gstdeviceprovider.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.lo `test -f 'gstdeviceprovider.c' || echo '$(srcdir)/'`gstdeviceprovider.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstdeviceprovider.c' object='libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstdevicemonitorfactory.lo `test -f 'gstdevicemonitorfactory.c' || echo '$(srcdir)/'`gstdevicemonitorfactory.c
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstdeviceprovider.lo `test -f 'gstdeviceprovider.c' || echo '$(srcdir)/'`gstdeviceprovider.c
+
+libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.lo: gstdeviceproviderfactory.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.lo `test -f 'gstdeviceproviderfactory.c' || echo '$(srcdir)/'`gstdeviceproviderfactory.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstdeviceproviderfactory.c' object='libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstdeviceproviderfactory.lo `test -f 'gstdeviceproviderfactory.c' || echo '$(srcdir)/'`gstdeviceproviderfactory.c
 
 libgstreamer_@GST_API_VERSION@_la-gstelement.lo: gstelement.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstelement.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstelement.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstelement.lo `test -f 'gstelement.c' || echo '$(srcdir)/'`gstelement.c
@@ -1242,13 +1271,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstghostpad.lo `test -f 'gstghostpad.c' || echo '$(srcdir)/'`gstghostpad.c
 
-libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.lo: gstglobaldevicemonitor.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.lo `test -f 'gstglobaldevicemonitor.c' || echo '$(srcdir)/'`gstglobaldevicemonitor.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstglobaldevicemonitor.c' object='libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstreamer_@GST_API_VERSION@_la-gstglobaldevicemonitor.lo `test -f 'gstglobaldevicemonitor.c' || echo '$(srcdir)/'`gstglobaldevicemonitor.c
-
 libgstreamer_@GST_API_VERSION@_la-gstinfo.lo: gstinfo.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstreamer_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstreamer_@GST_API_VERSION@_la-gstinfo.lo -MD -MP -MF $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstinfo.Tpo -c -o libgstreamer_@GST_API_VERSION@_la-gstinfo.lo `test -f 'gstinfo.c' || echo '$(srcdir)/'`gstinfo.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstinfo.Tpo $(DEPDIR)/libgstreamer_@GST_API_VERSION@_la-gstinfo.Plo
@@ -1590,6 +1612,27 @@
 	@list='$(libgstreamer_@GST_API_VERSION@include_HEADERS)'; test -n "$(libgstreamer_@GST_API_VERSION@includedir)" || list=; \
 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
 	dir='$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)'; $(am__uninstall_files_from_dir)
+install-nodist_configexecincludeHEADERS: $(nodist_configexecinclude_HEADERS)
+	@$(NORMAL_INSTALL)
+	@list='$(nodist_configexecinclude_HEADERS)'; test -n "$(configexecincludedir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(configexecincludedir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(configexecincludedir)" || exit 1; \
+	fi; \
+	for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(configexecincludedir)'"; \
+	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(configexecincludedir)" || exit $$?; \
+	done
+
+uninstall-nodist_configexecincludeHEADERS:
+	@$(NORMAL_UNINSTALL)
+	@list='$(nodist_configexecinclude_HEADERS)'; test -n "$(configexecincludedir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	dir='$(DESTDIR)$(configexecincludedir)'; $(am__uninstall_files_from_dir)
 install-nodist_libgstreamer_@GST_API_VERSION@includeHEADERS: $(nodist_libgstreamer_@GST_API_VERSION@include_HEADERS)
 	@$(NORMAL_INSTALL)
 	@list='$(nodist_libgstreamer_@GST_API_VERSION@include_HEADERS)'; test -n "$(libgstreamer_@GST_API_VERSION@includedir)" || list=; \
@@ -1772,7 +1815,7 @@
 all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) all-local
 installdirs: installdirs-recursive
 installdirs-am:
-	for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibsdir)" "$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)" "$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)"; do \
+	for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibsdir)" "$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)" "$(DESTDIR)$(configexecincludedir)" "$(DESTDIR)$(libgstreamer_@GST_API_VERSION@includedir)"; do \
 	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 	done
 install: $(BUILT_SOURCES)
@@ -1841,7 +1884,8 @@
 
 install-dvi-am:
 
-install-exec-am: install-libLTLIBRARIES
+install-exec-am: install-libLTLIBRARIES \
+	install-nodist_configexecincludeHEADERS
 
 install-html: install-html-recursive
 
@@ -1883,6 +1927,7 @@
 
 uninstall-am: uninstall-girDATA uninstall-libLTLIBRARIES \
 	uninstall-libgstreamer_@GST_API_VERSION@includeHEADERS \
+	uninstall-nodist_configexecincludeHEADERS \
 	uninstall-nodist_libgstreamer_@GST_API_VERSION@includeHEADERS \
 	uninstall-typelibsDATA
 
@@ -1899,7 +1944,7 @@
 	install-html install-html-am install-info install-info-am \
 	install-libLTLIBRARIES \
 	install-libgstreamer_@GST_API_VERSION@includeHEADERS \
-	install-man \
+	install-man install-nodist_configexecincludeHEADERS \
 	install-nodist_libgstreamer_@GST_API_VERSION@includeHEADERS \
 	install-pdf install-pdf-am install-ps install-ps-am \
 	install-strip install-typelibsDATA installcheck \
@@ -1909,6 +1954,7 @@
 	tags tags-am uninstall uninstall-am uninstall-girDATA \
 	uninstall-libLTLIBRARIES \
 	uninstall-libgstreamer_@GST_API_VERSION@includeHEADERS \
+	uninstall-nodist_configexecincludeHEADERS \
 	uninstall-nodist_libgstreamer_@GST_API_VERSION@includeHEADERS \
 	uninstall-typelibsDATA
 
diff --git a/gst/gst.c b/gst/gst.c
index f160772..cd91242 100644
--- a/gst/gst.c
+++ b/gst/gst.c
@@ -26,7 +26,7 @@
  *                     graphs.
  *
  * GStreamer is a framework for constructing graphs of various filters
- * (termed elements here) that will handle streaming media.  Any discreet
+ * (termed elements here) that will handle streaming media.  Any discrete
  * (packetizable) media type is supported, with provisions for automatically
  * determining source type.  Formatting/framing information is provided with
  * a powerful negotiation framework.  Plugins are heavily used to provide for
@@ -318,14 +318,18 @@
 gboolean
 gst_init_check (int *argc, char **argv[], GError ** err)
 {
+  static GMutex init_lock;
 #ifndef GST_DISABLE_OPTION_PARSING
   GOptionGroup *group;
   GOptionContext *ctx;
 #endif
   gboolean res;
 
+  g_mutex_lock (&init_lock);
+
   if (gst_initialized) {
     GST_DEBUG ("already initialized gst");
+    g_mutex_unlock (&init_lock);
     return TRUE;
   }
 #ifndef GST_DISABLE_OPTION_PARSING
@@ -344,11 +348,7 @@
 
   gst_initialized = res;
 
-  if (res) {
-    GST_INFO ("initialized GStreamer successfully");
-  } else {
-    GST_INFO ("failed to initialize GStreamer");
-  }
+  g_mutex_unlock (&init_lock);
 
   return res;
 }
@@ -676,11 +676,11 @@
   _priv_gst_sample_initialize ();
   _priv_gst_context_initialize ();
   _priv_gst_date_time_initialize ();
+  _priv_gst_tag_initialize ();
   _priv_gst_toc_initialize ();
   _priv_gst_value_initialize ();
 
   g_type_class_ref (gst_param_spec_fraction_get_type ());
-  _priv_gst_tag_initialize ();
   gst_parse_context_get_type ();
 
   _priv_gst_plugin_initialize ();
@@ -709,6 +709,7 @@
       glib_minor_version, glib_micro_version);
   GST_INFO ("GLib headers version: %d.%d.%d", GLIB_MAJOR_VERSION,
       GLIB_MINOR_VERSION, GLIB_MICRO_VERSION);
+  GST_INFO ("initialized GStreamer successfully");
 
   return TRUE;
 }
diff --git a/gst/gst.h b/gst/gst.h
index 9b20ba1..e4e2a1c 100644
--- a/gst/gst.h
+++ b/gst/gst.h
@@ -31,6 +31,7 @@
 #include <gst/gstenumtypes.h>
 #include <gst/gstversion.h>
 
+#include <gst/gstatomicqueue.h>
 #include <gst/gstbin.h>
 #include <gst/gstbuffer.h>
 #include <gst/gstbufferlist.h>
@@ -44,12 +45,12 @@
 #include <gst/gstdebugutils.h>
 #include <gst/gstdevice.h>
 #include <gst/gstdevicemonitor.h>
+#include <gst/gstdeviceprovider.h>
 #include <gst/gstelement.h>
 #include <gst/gstelementmetadata.h>
 #include <gst/gsterror.h>
 #include <gst/gstevent.h>
 #include <gst/gstghostpad.h>
-#include <gst/gstglobaldevicemonitor.h>
 #include <gst/gstinfo.h>
 #include <gst/gstiterator.h>
 #include <gst/gstmessage.h>
diff --git a/gst/gst_private.h b/gst/gst_private.h
index e85d5c5..d0aefb4 100644
--- a/gst/gst_private.h
+++ b/gst/gst_private.h
@@ -54,8 +54,8 @@
 /* for GstElement */
 #include "gstelement.h"
 
-/* for GstDeviceMonitor */
-#include "gstdevicemonitor.h"
+/* for GstDeviceProvider */
+#include "gstdeviceprovider.h"
 
 /* for GstToc */
 #include "gsttoc.h"
@@ -180,6 +180,12 @@
 G_GNUC_INTERNAL
 gchar * __gst_date_time_serialize (GstDateTime * datetime, gboolean with_usecs);
 
+/* Non-static, for access from the testsuite, but not for external use */
+gboolean
+_priv_gst_do_linear_regression (GstClockTime *times, guint n,
+    GstClockTime * m_num, GstClockTime * m_denom, GstClockTime * b,
+    GstClockTime * xbase, gdouble * r_squared);
+
 #ifndef GST_DISABLE_REGISTRY
 /* Secret variable to initialise gst without registry cache */
 GST_EXPORT gboolean _gst_disable_registry_cache;
@@ -244,6 +250,8 @@
 #define GST_CAT_POLL _priv_GST_CAT_POLL
 extern GstDebugCategory *_priv_GST_CAT_POLL;
 
+extern GstClockTime _priv_gst_info_start_time;
+
 #else
 
 #define GST_CAT_GST_INIT         NULL
@@ -399,24 +407,27 @@
   gpointer _gst_reserved[GST_PADDING];
 };
 
-struct _GstDeviceMonitorFactory {
+struct _GstDeviceProviderFactory {
   GstPluginFeature           feature;
   /* <private> */
 
   GType                      type;              /* unique GType the device factory or 0 if not loaded */
 
-  volatile GstDeviceMonitor *monitor;
+  volatile GstDeviceProvider *provider;
   gpointer                   metadata;
 
   gpointer _gst_reserved[GST_PADDING];
 };
 
-struct _GstDeviceMonitorFactoryClass {
+struct _GstDeviceProviderFactoryClass {
   GstPluginFeatureClass         parent;
   /* <private> */
 
   gpointer _gst_reserved[GST_PADDING];
 };
 
+/* privat flag used by GstBus / GstMessage */
+#define GST_MESSAGE_FLAG_ASYNC_DELIVERY (GST_MINI_OBJECT_FLAG_LAST << 0)
+
 G_END_DECLS
 #endif /* __GST_PRIVATE_H__ */
diff --git a/gst/gstallocator.c b/gst/gstallocator.c
index cbcb1e4..c6763e1 100644
--- a/gst/gstallocator.c
+++ b/gst/gstallocator.c
@@ -221,8 +221,9 @@
  * Find a previously registered allocator with @name. When @name is %NULL, the
  * default allocator will be returned.
  *
- * Returns: (transfer full): a #GstAllocator or %NULL when the allocator with @name was not
- * registered. Use gst_object_unref() to release the allocator after usage.
+ * Returns: (transfer full) (nullable): a #GstAllocator or %NULL when
+ * the allocator with @name was not registered. Use gst_object_unref()
+ * to release the allocator after usage.
  */
 GstAllocator *
 gst_allocator_find (const gchar * name)
diff --git a/gst/gstatomicqueue.c b/gst/gstatomicqueue.c
index 72ad2e3..a80089c 100644
--- a/gst/gstatomicqueue.c
+++ b/gst/gstatomicqueue.c
@@ -214,8 +214,8 @@
  *
  * Peek the head element of the queue without removing it from the queue.
  *
- * Returns: (transfer none): the head element of @queue or %NULL when
- * the queue is empty.
+ * Returns: (transfer none) (nullable): the head element of @queue or
+ * %NULL when the queue is empty.
  */
 gpointer
 gst_atomic_queue_peek (GstAtomicQueue * queue)
diff --git a/gst/gstbin.c b/gst/gstbin.c
index 77bbc3e..28b0436 100644
--- a/gst/gstbin.c
+++ b/gst/gstbin.c
@@ -537,7 +537,7 @@
 
 /**
  * gst_bin_new:
- * @name: the name of the new bin
+ * @name: (allow-none): the name of the new bin
  *
  * Creates a new bin with the given name.
  *
@@ -1633,7 +1633,8 @@
  *
  * MT safe.  Caller owns returned value.
  *
- * Returns: (transfer full): a #GstIterator of #GstElement, or %NULL
+ * Returns: (transfer full) (nullable): a #GstIterator of #GstElement,
+ * or %NULL
  */
 GstIterator *
 gst_bin_iterate_elements (GstBin * bin)
@@ -1673,7 +1674,8 @@
  *
  * MT safe.  Caller owns returned value.
  *
- * Returns: (transfer full): a #GstIterator of #GstElement, or %NULL
+ * Returns: (transfer full) (nullable): a #GstIterator of #GstElement,
+ * or %NULL
  */
 GstIterator *
 gst_bin_iterate_recurse (GstBin * bin)
@@ -1730,7 +1732,8 @@
  *
  * MT safe.  Caller owns returned value.
  *
- * Returns: (transfer full): a #GstIterator of #GstElement, or %NULL
+ * Returns: (transfer full) (nullable): a #GstIterator of #GstElement,
+ * or %NULL
  */
 GstIterator *
 gst_bin_iterate_sinks (GstBin * bin)
@@ -1790,7 +1793,8 @@
  *
  * MT safe.  Caller owns returned value.
  *
- * Returns: (transfer full): a #GstIterator of #GstElement, or %NULL
+ * Returns: (transfer full) (nullable): a #GstIterator of #GstElement,
+ * or %NULL
  */
 GstIterator *
 gst_bin_iterate_sources (GstBin * bin)
@@ -2166,7 +2170,8 @@
  *
  * MT safe.  Caller owns returned value.
  *
- * Returns: (transfer full): a #GstIterator of #GstElement, or %NULL
+ * Returns: (transfer full) (nullable): a #GstIterator of #GstElement,
+ * or %NULL
  */
 GstIterator *
 gst_bin_iterate_sorted (GstBin * bin)
@@ -3883,7 +3888,7 @@
         fold->max = max;
       else if (max < fold->max)
         fold->max = max;
-      if (fold->live == FALSE)
+      if (!fold->live)
         fold->live = live;
     }
   } else {
@@ -3931,7 +3936,7 @@
 static gboolean
 bin_iterate_fold (GstBin * bin, GstIterator * iter, QueryInitFunction fold_init,
     QueryDoneFunction fold_done, GstIteratorFoldFunction fold_func,
-    QueryFold fold_data, gboolean default_return)
+    QueryFold * fold_data, gboolean default_return)
 {
   gboolean res = default_return;
   GValue ret = { 0 };
@@ -3942,20 +3947,20 @@
   while (TRUE) {
     GstIteratorResult ires;
 
-    ires = gst_iterator_fold (iter, fold_func, &ret, &fold_data);
+    ires = gst_iterator_fold (iter, fold_func, &ret, fold_data);
 
     switch (ires) {
       case GST_ITERATOR_RESYNC:
         gst_iterator_resync (iter);
         if (fold_init)
-          fold_init (bin, &fold_data);
+          fold_init (bin, fold_data);
         g_value_set_boolean (&ret, res);
         break;
       case GST_ITERATOR_OK:
       case GST_ITERATOR_DONE:
         res = g_value_get_boolean (&ret);
         if (fold_done != NULL && res)
-          fold_done (bin, &fold_data);
+          fold_done (bin, fold_data);
         goto done;
       default:
         res = FALSE;
@@ -4053,7 +4058,7 @@
     fold_init (bin, &fold_data);
 
   res =
-      bin_iterate_fold (bin, iter, fold_init, fold_done, fold_func, fold_data,
+      bin_iterate_fold (bin, iter, fold_init, fold_done, fold_func, &fold_data,
       default_return);
   gst_iterator_free (iter);
 
@@ -4062,7 +4067,7 @@
     iter = gst_element_iterate_src_pads (element);
     src_pads_query_result =
         bin_iterate_fold (bin, iter, fold_init, fold_done, fold_func,
-        fold_data, default_return);
+        &fold_data, default_return);
     gst_iterator_free (iter);
 
     if (src_pads_query_result)
@@ -4126,7 +4131,8 @@
  *
  * MT safe.  Caller owns returned reference.
  *
- * Returns: (transfer full): the #GstElement with the given name, or %NULL
+ * Returns: (transfer full) (nullable): the #GstElement with the given
+ * name, or %NULL
  */
 GstElement *
 gst_bin_get_by_name (GstBin * bin, const gchar * name)
@@ -4169,7 +4175,8 @@
  *
  * MT safe.  Caller owns returned reference.
  *
- * Returns: (transfer full): the #GstElement with the given name, or %NULL
+ * Returns: (transfer full) (nullable): the #GstElement with the given
+ * name, or %NULL
  */
 GstElement *
 gst_bin_get_by_name_recurse_up (GstBin * bin, const gchar * name)
@@ -4269,8 +4276,9 @@
  *
  * MT safe.  Caller owns returned value.
  *
- * Returns: (transfer full): a #GstIterator of #GstElement for all elements
- *          in the bin implementing the given interface, or %NULL
+ * Returns: (transfer full) (nullable): a #GstIterator of #GstElement
+ *     for all elements in the bin implementing the given interface,
+ *     or %NULL
  */
 GstIterator *
 gst_bin_iterate_all_by_interface (GstBin * bin, GType iface)
diff --git a/gst/gstbuffer.c b/gst/gstbuffer.c
index 8aef1c2..74f86d0 100644
--- a/gst/gstbuffer.c
+++ b/gst/gstbuffer.c
@@ -397,7 +397,11 @@
 
   if (flags & GST_BUFFER_COPY_FLAGS) {
     /* copy flags */
-    GST_MINI_OBJECT_FLAGS (dest) = GST_MINI_OBJECT_FLAGS (src);
+    guint flags_mask = ~GST_BUFFER_FLAG_TAG_MEMORY;
+
+    GST_MINI_OBJECT_FLAGS (dest) =
+        (GST_MINI_OBJECT_FLAGS (src) & flags_mask) |
+        (GST_MINI_OBJECT_FLAGS (dest) & ~flags_mask);
   }
 
   if (flags & GST_BUFFER_COPY_TIMESTAMPS) {
@@ -504,7 +508,7 @@
 }
 
 static GstBuffer *
-_gst_buffer_copy (GstBuffer * buffer)
+gst_buffer_copy_with_flags (const GstBuffer * buffer, GstBufferCopyFlags flags)
 {
   GstBuffer *copy;
 
@@ -513,8 +517,9 @@
   /* create a fresh new buffer */
   copy = gst_buffer_new ();
 
-  /* we simply copy everything from our parent */
-  if (!gst_buffer_copy_into (copy, buffer, GST_BUFFER_COPY_ALL, 0, -1))
+  /* copy what the 'flags' want from our parent */
+  /* FIXME why we can't pass const to gst_buffer_copy_into() ? */
+  if (!gst_buffer_copy_into (copy, (GstBuffer *) buffer, flags, 0, -1))
     gst_buffer_replace (&copy, NULL);
 
   if (copy)
@@ -523,6 +528,28 @@
   return copy;
 }
 
+static GstBuffer *
+_gst_buffer_copy (const GstBuffer * buffer)
+{
+  return gst_buffer_copy_with_flags (buffer, GST_BUFFER_COPY_ALL);
+}
+
+/**
+ * gst_buffer_copy_deep:
+ * @buf: a #GstBuffer.
+ *
+ * Create a copy of the given buffer. This will make a newly allocated
+ * copy of the data the source buffer contains.
+ *
+ * Returns: (transfer full): a new copy of @buf.
+ */
+GstBuffer *
+gst_buffer_copy_deep (const GstBuffer * buffer)
+{
+  return gst_buffer_copy_with_flags (buffer,
+      GST_BUFFER_COPY_ALL | GST_BUFFER_COPY_DEEP);
+}
+
 /* the default dispose function revives the buffer and returns it to the
  * pool when there is a pool */
 static gboolean
@@ -650,8 +677,8 @@
  *
  * MT safe.
  *
- * Returns: (transfer full): a new #GstBuffer, or %NULL if the memory couldn't
- *     be allocated.
+ * Returns: (transfer full) (nullable): a new #GstBuffer, or %NULL if
+ *     the memory couldn't be allocated.
  */
 GstBuffer *
 gst_buffer_new_allocate (GstAllocator * allocator, gsize size,
@@ -1110,9 +1137,9 @@
  * in @buffer.
  *
  * When this function returns %TRUE, @idx will contain the index of the first
- * memory bock where the byte for @offset can be found and @length contains the
+ * memory block where the byte for @offset can be found and @length contains the
  * number of memory blocks containing the @size remaining bytes. @skip contains
- * the number of bytes to skip in the memory bock at @idx to get to the byte
+ * the number of bytes to skip in the memory block at @idx to get to the byte
  * for @offset.
  *
  * @size can be -1 to get all the memory blocks after @idx.
@@ -1235,8 +1262,8 @@
 /**
  * gst_buffer_get_sizes:
  * @buffer: a #GstBuffer.
- * @offset: (out): a pointer to the offset
- * @maxsize: (out): a pointer to the maxsize
+ * @offset: (out) (allow-none): a pointer to the offset
+ * @maxsize: (out) (allow-none): a pointer to the maxsize
  *
  * Get the total size of the memory blocks in @b.
  *
@@ -1273,8 +1300,8 @@
  * @buffer: a #GstBuffer.
  * @idx: an index
  * @length: a length
- * @offset: (out): a pointer to the offset
- * @maxsize: (out): a pointer to the maxsize
+ * @offset: (out) (allow-none): a pointer to the offset
+ * @maxsize: (out) (allow-none): a pointer to the maxsize
  *
  * Get the total size of @length memory blocks stating from @idx in @buffer.
  *
@@ -1829,7 +1856,8 @@
  * @flags: the #GstBufferCopyFlags
  * @offset: the offset into parent #GstBuffer at which the new sub-buffer 
  *          begins.
- * @size: the size of the new #GstBuffer sub-buffer, in bytes.
+ * @size: the size of the new #GstBuffer sub-buffer, in bytes. If -1, all
+ *        data is copied.
  *
  * Creates a sub-buffer from @parent at @offset and @size.
  * This sub-buffer uses the actual memory space of the parent buffer.
@@ -1931,10 +1959,14 @@
  * @buffer: a #GstBuffer
  * @api: the #GType of an API
  *
- * Get the metadata for @api on buffer. When there is no such
- * metadata, %NULL is returned.
+ * Get the metadata for @api on buffer. When there is no such metadata, %NULL is
+ * returned. If multiple metadata with the given @api are attached to this
+ * buffer only the first one is returned.  To handle multiple metadata with a
+ * given API use gst_buffer_iterate_meta() or gst_buffer_foreach_meta() instead
+ * and check the meta->info.api member for the API type.
  *
- * Returns: (transfer none): the metadata for @api on @buffer.
+ * Returns: (transfer none) (nullable): the metadata for @api on
+ * @buffer.
  */
 GstMeta *
 gst_buffer_get_meta (GstBuffer * buffer, GType api)
@@ -2063,8 +2095,8 @@
  *
  * @state will be updated with an opaque state pointer
  *
- * Returns: (transfer none): The next #GstMeta or %NULL when there are
- * no more items.
+ * Returns: (transfer none) (nullable): The next #GstMeta or %NULL
+ * when there are no more items.
  */
 GstMeta *
 gst_buffer_iterate_meta (GstBuffer * buffer, gpointer * state)
diff --git a/gst/gstbuffer.h b/gst/gstbuffer.h
index 0ebf142..dd7f237 100644
--- a/gst/gstbuffer.h
+++ b/gst/gstbuffer.h
@@ -365,8 +365,11 @@
  * gst_buffer_copy:
  * @buf: a #GstBuffer.
  *
- * Create a copy of the given buffer. This will also make a newly allocated
- * copy of the data the source buffer contains.
+ * Create a copy of the given buffer. This will only copy the buffer's
+ * data to a newly allocated memory if needed (if the type of memory
+ * requires it), otherwise the underlying data is just referenced.
+ * Check gst_buffer_copy_deep() if you want to force the data
+ * to be copied to newly allocated memory.
  *
  * Returns: (transfer full): a new copy of @buf.
  */
@@ -380,6 +383,7 @@
   return GST_BUFFER (gst_mini_object_copy (GST_MINI_OBJECT_CONST_CAST (buf)));
 }
 
+GstBuffer * gst_buffer_copy_deep (const GstBuffer * buf);
 
 /**
  * GstBufferCopyFlags:
@@ -457,8 +461,8 @@
 
 /**
  * gst_buffer_replace:
- * @obuf: (inout) (transfer full): pointer to a pointer to a #GstBuffer to be
- *     replaced.
+ * @obuf: (inout) (transfer full) (nullable): pointer to a pointer to
+ *     a #GstBuffer to be replaced.
  * @nbuf: (transfer none) (allow-none): pointer to a #GstBuffer that will
  *     replace the buffer pointed to by @obuf.
  *
@@ -496,7 +500,7 @@
 /**
  * GstBufferForeachMetaFunc:
  * @buffer: a #GstBuffer
- * @meta: a pointer to a #GstMeta
+ * @meta: (out) (nullable): a pointer to a #GstMeta
  * @user_data: user data passed to gst_buffer_foreach_meta()
  *
  * A function that will be called from gst_buffer_foreach_meta(). The @meta
diff --git a/gst/gstbufferlist.c b/gst/gstbufferlist.c
index dca866c..5319f70 100644
--- a/gst/gstbufferlist.c
+++ b/gst/gstbufferlist.c
@@ -1,6 +1,7 @@
 /* GStreamer
  * Copyright (C) 2009 Axis Communications <dev-gstreamer at axis dot com>
  * @author Jonas Holmberg <jonas dot holmberg at axis dot com>
+ * Copyright (C) 2014 Tim-Philipp Müller <tim at centricular dot com>
  *
  * gstbufferlist.c: Buffer list
  *
@@ -38,9 +39,13 @@
 
 #include "gstbuffer.h"
 #include "gstbufferlist.h"
+#include "gstutils.h"
 
 #define GST_CAT_DEFAULT GST_CAT_BUFFER_LIST
 
+#define GST_BUFFER_LIST_IS_USING_DYNAMIC_ARRAY(list) \
+    ((list)->buffers != &(list)->arr[0])
+
 /**
  * GstBufferList:
  *
@@ -50,7 +55,16 @@
 {
   GstMiniObject mini_object;
 
-  GArray *array;
+  GstBuffer **buffers;
+  guint n_buffers;
+  guint n_allocated;
+
+  gsize slice_size;
+
+  /* one-item array, in reality more items are pre-allocated
+   * as part of the GstBufferList structure, and that
+   * pre-allocated array extends beyond the declared struct */
+  GstBuffer *arr[1];
 };
 
 GType _gst_buffer_list_type = 0;
@@ -69,15 +83,15 @@
   GstBufferList *copy;
   guint i, len;
 
-  len = list->array->len;
-  copy = gst_buffer_list_new_sized (len);
+  len = list->n_buffers;
+  copy = gst_buffer_list_new_sized (list->n_allocated);
 
   /* add and ref all buffers in the array */
-  for (i = 0; i < len; i++) {
-    GstBuffer *buf = g_array_index (list->array, GstBuffer *, i);
-    buf = gst_buffer_ref (buf);
-    g_array_append_val (copy->array, buf);
-  }
+  for (i = 0; i < len; i++)
+    copy->buffers[i] = gst_buffer_ref (list->buffers[i]);
+
+  copy->n_buffers = len;
+
   return copy;
 }
 
@@ -85,25 +99,31 @@
 _gst_buffer_list_free (GstBufferList * list)
 {
   guint i, len;
+
   GST_LOG ("free %p", list);
 
   /* unrefs all buffers too */
-  len = list->array->len;
+  len = list->n_buffers;
   for (i = 0; i < len; i++)
-    gst_buffer_unref (g_array_index (list->array, GstBuffer *, i));
-  g_array_free (list->array, TRUE);
+    gst_buffer_unref (list->buffers[i]);
 
-  g_slice_free1 (sizeof (GstBufferList), list);
+  if (GST_BUFFER_LIST_IS_USING_DYNAMIC_ARRAY (list))
+    g_free (list->buffers);
+
+  g_slice_free1 (list->slice_size, list);
 }
 
 static void
-gst_buffer_list_init (GstBufferList * list, guint asize)
+gst_buffer_list_init (GstBufferList * list, guint n_allocated, gsize slice_size)
 {
   gst_mini_object_init (GST_MINI_OBJECT_CAST (list), 0, _gst_buffer_list_type,
       (GstMiniObjectCopyFunction) _gst_buffer_list_copy, NULL,
       (GstMiniObjectFreeFunction) _gst_buffer_list_free);
 
-  list->array = g_array_sized_new (FALSE, FALSE, sizeof (GstBuffer *), asize);
+  list->buffers = &list->arr[0];
+  list->n_buffers = 0;
+  list->n_allocated = n_allocated;
+  list->slice_size = slice_size;
 
   GST_LOG ("init %p", list);
 }
@@ -125,12 +145,18 @@
 gst_buffer_list_new_sized (guint size)
 {
   GstBufferList *list;
+  gsize slice_size;
+  guint n_allocated;
 
-  list = g_slice_new0 (GstBufferList);
+  n_allocated = GST_ROUND_UP_16 (size);
+
+  slice_size = sizeof (GstBufferList) + (n_allocated - 1) * sizeof (gpointer);
+
+  list = g_slice_alloc0 (slice_size);
 
   GST_LOG ("new %p", list);
 
-  gst_buffer_list_init (list, size);
+  gst_buffer_list_init (list, n_allocated, slice_size);
 
   return list;
 }
@@ -165,7 +191,26 @@
 {
   g_return_val_if_fail (GST_IS_BUFFER_LIST (list), 0);
 
-  return list->array->len;
+  return list->n_buffers;
+}
+
+static inline void
+gst_buffer_list_remove_range_internal (GstBufferList * list, guint idx,
+    guint length, gboolean unref_old)
+{
+  guint i;
+
+  if (unref_old) {
+    for (i = idx; i < idx + length; ++i)
+      gst_buffer_unref (list->buffers[i]);
+  }
+
+  if (idx + length != list->n_buffers) {
+    memmove (&list->buffers[idx], &list->buffers[idx + length],
+        (list->n_buffers - (idx + length)) * sizeof (void *));
+  }
+
+  list->n_buffers -= length;
 }
 
 /**
@@ -193,20 +238,20 @@
   g_return_val_if_fail (GST_IS_BUFFER_LIST (list), FALSE);
   g_return_val_if_fail (func != NULL, FALSE);
 
-  len = list->array->len;
+  len = list->n_buffers;
   for (i = 0; i < len;) {
     GstBuffer *buf, *buf_ret;
 
-    buf = buf_ret = g_array_index (list->array, GstBuffer *, i);
+    buf = buf_ret = list->buffers[i];
     ret = func (&buf_ret, i, user_data);
 
     /* Check if the function changed the buffer */
     if (buf != buf_ret) {
       if (buf_ret == NULL) {
-        g_array_remove_index (list->array, i);
-        len--;
+        gst_buffer_list_remove_range_internal (list, i, 1, FALSE);
+        --len;
       } else {
-        g_array_index (list->array, GstBuffer *, i) = buf_ret;
+        list->buffers[i] = buf_ret;
       }
     }
 
@@ -227,20 +272,17 @@
  *
  * Get the buffer at @idx.
  *
- * Returns: (transfer none): the buffer at @idx in @group or %NULL when there
- *     is no buffer. The buffer remains valid as long as @list is valid.
+ * Returns: (transfer none) (nullable): the buffer at @idx in @group
+ *     or %NULL when there is no buffer. The buffer remains valid as
+ *     long as @list is valid.
  */
 GstBuffer *
 gst_buffer_list_get (GstBufferList * list, guint idx)
 {
-  GstBuffer *buf;
-
   g_return_val_if_fail (GST_IS_BUFFER_LIST (list), NULL);
-  g_return_val_if_fail (idx < list->array->len, NULL);
+  g_return_val_if_fail (idx < list->n_buffers, NULL);
 
-  buf = g_array_index (list->array, GstBuffer *, idx);
-
-  return buf;
+  return list->buffers[idx];
 }
 
 /**
@@ -264,15 +306,42 @@
 void
 gst_buffer_list_insert (GstBufferList * list, gint idx, GstBuffer * buffer)
 {
+  guint want_alloc;
+
   g_return_if_fail (GST_IS_BUFFER_LIST (list));
   g_return_if_fail (buffer != NULL);
 
-  if (idx == -1)
-    g_array_append_val (list->array, buffer);
-  else {
-    g_return_if_fail (idx < list->array->len);
-    g_array_insert_val (list->array, idx, buffer);
+  if (idx == -1 && list->n_buffers < list->n_allocated) {
+    list->buffers[list->n_buffers++] = buffer;
+    return;
   }
+
+  if (idx == -1 || idx > list->n_buffers)
+    idx = list->n_buffers;
+
+  want_alloc = list->n_buffers + 1;
+
+  if (want_alloc > list->n_allocated) {
+    want_alloc = MAX (GST_ROUND_UP_16 (want_alloc), list->n_allocated * 2);
+
+    if (GST_BUFFER_LIST_IS_USING_DYNAMIC_ARRAY (list)) {
+      list->buffers = g_renew (GstBuffer *, list->buffers, want_alloc);
+    } else {
+      list->buffers = g_new0 (GstBuffer *, want_alloc);
+      memcpy (list->buffers, &list->arr[0], list->n_buffers * sizeof (void *));
+      GST_CAT_LOG (GST_CAT_PERFORMANCE, "exceeding pre-alloced array");
+    }
+
+    list->n_allocated = want_alloc;
+  }
+
+  if (idx < list->n_buffers) {
+    memmove (&list->buffers[idx + 1], &list->buffers[idx],
+        (list->n_buffers - idx) * sizeof (void *));
+  }
+
+  ++list->n_buffers;
+  list->buffers[idx] = buffer;
 }
 
 /**
@@ -287,15 +356,9 @@
 void
 gst_buffer_list_remove (GstBufferList * list, guint idx, guint length)
 {
-  GstBuffer *buf;
-  gint i;
-
   g_return_if_fail (GST_IS_BUFFER_LIST (list));
-  g_return_if_fail (idx < list->array->len);
+  g_return_if_fail (idx < list->n_buffers);
+  g_return_if_fail (idx + length <= list->n_buffers);
 
-  for (i = idx; i < idx + length; ++i) {
-    buf = g_array_index (list->array, GstBuffer *, i);
-    gst_buffer_unref (buf);
-  }
-  g_array_remove_range (list->array, idx, length);
+  gst_buffer_list_remove_range_internal (list, idx, length, TRUE);
 }
diff --git a/gst/gstbufferlist.h b/gst/gstbufferlist.h
index df8c455..e5ddb08 100644
--- a/gst/gstbufferlist.h
+++ b/gst/gstbufferlist.h
@@ -38,7 +38,7 @@
 
 /**
  * GstBufferListFunc:
- * @buffer: pointer the buffer
+ * @buffer: (out) (nullable): pointer the buffer
  * @idx: the index of @buffer
  * @user_data: user data passed to gst_buffer_list_foreach()
  *
diff --git a/gst/gstbufferpool.c b/gst/gstbufferpool.c
index 6c14ce4..f865790 100644
--- a/gst/gstbufferpool.c
+++ b/gst/gstbufferpool.c
@@ -227,6 +227,9 @@
   *buffer =
       gst_buffer_new_allocate (priv->allocator, priv->size, &priv->params);
 
+  if (!*buffer)
+    return GST_FLOW_ERROR;
+
   return GST_FLOW_OK;
 }
 
@@ -606,9 +609,9 @@
  *
  * Set the configuration of the pool. If the pool is already configured, and
  * the configuration haven't change, this function will return %TRUE. If the
- * pool is active, this function will try deactivating it. Buffers allocated
- * form this pool must be returned or else this function will do nothing and
- * return %FALSE.
+ * pool is active, this method will return %FALSE and active configuration
+ * will remain. Buffers allocated form this pool must be returned or else this
+ * function will do nothing and return %FALSE.
  *
  * @config is a #GstStructure that contains the configuration parameters for
  * the pool. A default and mandatory set of parameters can be configured with
@@ -642,18 +645,8 @@
     goto config_unchanged;
 
   /* can't change the settings when active */
-  if (priv->active) {
-    GST_BUFFER_POOL_UNLOCK (pool);
-    if (!gst_buffer_pool_set_active (pool, FALSE)) {
-      GST_BUFFER_POOL_LOCK (pool);
-      goto was_active;
-    }
-    GST_BUFFER_POOL_LOCK (pool);
-
-    /* not likely but as we released the lock */
-    if (priv->active)
-      goto was_active;
-  }
+  if (priv->active)
+    goto was_active;
 
   /* we can't change when outstanding buffers */
   if (g_atomic_int_get (&priv->outstanding) != 0)
@@ -691,7 +684,7 @@
 was_active:
   {
     gst_structure_free (config);
-    GST_WARNING_OBJECT (pool, "can't change config, we are active");
+    GST_INFO_OBJECT (pool, "can't change config, we are active");
     GST_BUFFER_POOL_UNLOCK (pool);
     return FALSE;
   }
@@ -823,8 +816,8 @@
 /**
  * gst_buffer_pool_config_set_allocator:
  * @config: a #GstBufferPool configuration
- * @allocator: a #GstAllocator
- * @params: #GstAllocationParams
+ * @allocator: (allow-none): a #GstAllocator
+ * @params: (allow-none): #GstAllocationParams
  *
  * Set the @allocator and @params on @config.
  *
@@ -1046,9 +1039,11 @@
  * Validate that changes made to @config are still valid in the context of the
  * expected parameters. This function is a helper that can be used to validate
  * changes made by a pool to a config when gst_buffer_pool_set_config()
- * returns %FALSE. This expects that @caps and @size haven't changed, and that
- * @min_buffers aren't lower then what we initially expected. This does not check
- * if options or allocator parameters.
+ * returns %FALSE. This expects that @caps haven't changed and that
+ * @min_buffers aren't lower then what we initially expected.
+ * This does not check if options or allocator parameters are still valid,
+ * won't check if size have changed, since changing the size is valid to adapt
+ * padding.
  *
  * Since: 1.4
  *
@@ -1066,7 +1061,7 @@
 
   gst_buffer_pool_config_get_params (config, &newcaps, &newsize, &newmin, NULL);
 
-  if (gst_caps_is_equal (caps, newcaps) && (size == newsize)
+  if (gst_caps_is_equal (caps, newcaps) && (newsize >= size)
       && (newmin >= min_buffers))
     ret = TRUE;
 
@@ -1225,17 +1220,17 @@
       GST_MINI_OBJECT_FLAGS (buffer));
 
   /* memory should be untouched */
-  if (GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_TAG_MEMORY))
-    goto discard;
+  if (G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_TAG_MEMORY)))
+    goto memory_tagged;
 
   /* size should have been reset. This is not a catch all, pool with
    * size requirement per memory should do their own check. */
-  if (gst_buffer_get_size (buffer) != pool->priv->size)
-    goto discard;
+  if (G_UNLIKELY (gst_buffer_get_size (buffer) != pool->priv->size))
+    goto size_changed;
 
   /* all memory should be exclusive to this buffer (and thus be writable) */
-  if (!gst_buffer_is_all_memory_writable (buffer))
-    goto discard;
+  if (G_UNLIKELY (!gst_buffer_is_all_memory_writable (buffer)))
+    goto not_writable;
 
   /* keep it around in our queue */
   gst_atomic_queue_push (pool->priv->queue, buffer);
@@ -1243,6 +1238,25 @@
 
   return;
 
+memory_tagged:
+  {
+    GST_CAT_DEBUG_OBJECT (GST_CAT_PERFORMANCE, pool,
+        "discarding buffer %p: memory tag set", buffer);
+    goto discard;
+  }
+size_changed:
+  {
+    GST_CAT_DEBUG_OBJECT (GST_CAT_PERFORMANCE, pool,
+        "discarding buffer %p: size %" G_GSIZE_FORMAT " != %u",
+        buffer, gst_buffer_get_size (buffer), pool->priv->size);
+    goto discard;
+  }
+not_writable:
+  {
+    GST_CAT_DEBUG_OBJECT (GST_CAT_PERFORMANCE, pool,
+        "discarding buffer %p: memory not writable", buffer);
+    goto discard;
+  }
 discard:
   {
     do_free_buffer (pool, buffer);
@@ -1294,7 +1308,7 @@
  * @pool: a #GstBufferPool
  * @flushing: whether to start or stop flushing
  *
- * Enabled or disable the flushing state of a @pool without freeing or
+ * Enable or disable the flushing state of a @pool without freeing or
  * allocating buffers.
  *
  * Since: 1.4
diff --git a/gst/gstbus.c b/gst/gstbus.c
index 69cf6b9..7865079 100644
--- a/gst/gstbus.c
+++ b/gst/gstbus.c
@@ -111,11 +111,10 @@
   gpointer sync_handler_data;
   GDestroyNotify sync_handler_notify;
 
-  guint signal_watch_id;
   guint num_signal_watchers;
 
   guint num_sync_message_emitters;
-  GSource *watch_id;
+  GSource *signal_watch;
 
   gboolean enable_async;
   GstPoll *poll;
@@ -309,6 +308,10 @@
   GST_DEBUG_OBJECT (bus, "[msg %p] posting on bus %" GST_PTR_FORMAT, message,
       message);
 
+  /* check we didn't accidentally add a public flag that maps to same value */
+  g_assert (!GST_MINI_OBJECT_FLAG_IS_SET (message,
+          GST_MESSAGE_FLAG_ASYNC_DELIVERY));
+
   GST_OBJECT_LOCK (bus);
   /* check if the bus is flushing */
   if (GST_OBJECT_FLAG_IS_SET (bus, GST_BUS_FLUSHING))
@@ -358,6 +361,8 @@
       g_cond_init (cond);
       g_mutex_init (lock);
 
+      GST_MINI_OBJECT_FLAG_SET (message, GST_MESSAGE_FLAG_ASYNC_DELIVERY);
+
       GST_DEBUG_OBJECT (bus, "[msg %p] waiting for async delivery", message);
 
       /* now we lock the message mutex, send the message to the async
@@ -370,12 +375,18 @@
 
       /* now block till the message is freed */
       g_cond_wait (cond, lock);
+
+      /* we acquired a new ref from gst_message_dispose() so we can clean up */
       g_mutex_unlock (lock);
 
       GST_DEBUG_OBJECT (bus, "[msg %p] delivered asynchronously", message);
 
+      GST_MINI_OBJECT_FLAG_UNSET (message, GST_MESSAGE_FLAG_ASYNC_DELIVERY);
+
       g_mutex_clear (lock);
       g_cond_clear (cond);
+
+      gst_message_unref (message);
       break;
     }
     default:
@@ -388,8 +399,8 @@
 is_flushing:
   {
     GST_DEBUG_OBJECT (bus, "bus is flushing");
-    gst_message_unref (message);
     GST_OBJECT_UNLOCK (bus);
+    gst_message_unref (message);
 
     return FALSE;
   }
@@ -435,6 +446,7 @@
 gst_bus_set_flushing (GstBus * bus, gboolean flushing)
 {
   GstMessage *message;
+  GList *message_list = NULL;
 
   GST_OBJECT_LOCK (bus);
 
@@ -444,13 +456,15 @@
     GST_DEBUG_OBJECT (bus, "set bus flushing");
 
     while ((message = gst_bus_pop (bus)))
-      gst_message_unref (message);
+      message_list = g_list_prepend (message_list, message);
   } else {
     GST_DEBUG_OBJECT (bus, "unset bus flushing");
     GST_OBJECT_FLAG_UNSET (bus, GST_BUS_FLUSHING);
   }
 
   GST_OBJECT_UNLOCK (bus);
+
+  g_list_free_full (message_list, (GDestroyNotify) gst_message_unref);
 }
 
 /**
@@ -467,10 +481,11 @@
  * @timeout is #GST_CLOCK_TIME_NONE, this function will block forever until a
  * matching message was posted on the bus.
  *
- * Returns: (transfer full): a #GstMessage matching the filter in @types,
- *     or %NULL if no matching message was found on the bus until the timeout
- *     expired. The message is taken from the bus and needs to be unreffed
- *     with gst_message_unref() after usage.
+ * Returns: (transfer full) (nullable): a #GstMessage matching the
+ *     filter in @types, or %NULL if no matching message was found on
+ *     the bus until the timeout expired. The message is taken from
+ *     the bus and needs to be unreffed with gst_message_unref() after
+ *     usage.
  *
  * MT safe.
  */
@@ -505,7 +520,7 @@
       if ((GST_MESSAGE_TYPE (message) & types) != 0) {
         /* Extra check to ensure extended types don't get matched unless
          * asked for */
-        if ((GST_MESSAGE_TYPE_IS_EXTENDED (message) == FALSE)
+        if ((!GST_MESSAGE_TYPE_IS_EXTENDED (message))
             || (types & GST_MESSAGE_EXTENDED)) {
           /* exit the loop, we have a message */
           goto beach;
@@ -568,10 +583,10 @@
  * #GST_CLOCK_TIME_NONE, this function will block forever until a message was
  * posted on the bus.
  *
- * Returns: (transfer full): the #GstMessage that is on the bus after the
- *     specified timeout or %NULL if the bus is empty after the timeout expired.
- * The message is taken from the bus and needs to be unreffed with
- * gst_message_unref() after usage.
+ * Returns: (transfer full) (nullable): the #GstMessage that is on the
+ *     bus after the specified timeout or %NULL if the bus is empty
+ *     after the timeout expired.  The message is taken from the bus
+ *     and needs to be unreffed with gst_message_unref() after usage.
  *
  * MT safe.
  */
@@ -594,10 +609,10 @@
  * the bus, all messages will be discarded. It is not possible to use message
  * enums beyond #GST_MESSAGE_EXTENDED in the @events mask.
  *
- * Returns: (transfer full): the next #GstMessage matching @type that is on
- *     the bus, or %NULL if the bus is empty or there is no message matching
- *     @type. The message is taken from the bus and needs to be unreffed with
- *     gst_message_unref() after usage.
+ * Returns: (transfer full) (nullable): the next #GstMessage matching
+ *     @type that is on the bus, or %NULL if the bus is empty or there
+ *     is no message matching @type. The message is taken from the bus
+ *     and needs to be unreffed with gst_message_unref() after usage.
  *
  * MT safe.
  */
@@ -616,9 +631,10 @@
  *
  * Get a message from the bus.
  *
- * Returns: (transfer full): the #GstMessage that is on the bus, or %NULL if the
- *     bus is empty. The message is taken from the bus and needs to be unreffed
- *     with gst_message_unref() after usage.
+ * Returns: (transfer full) (nullable): the #GstMessage that is on the
+ *     bus, or %NULL if the bus is empty. The message is taken from
+ *     the bus and needs to be unreffed with gst_message_unref() after
+ *     usage.
  *
  * MT safe.
  */
@@ -638,8 +654,8 @@
  * on the bus' message queue. A reference is returned, and needs to be unreffed
  * by the caller.
  *
- * Returns: (transfer full): the #GstMessage that is on the bus, or %NULL if the
- *     bus is empty.
+ * Returns: (transfer full) (nullable): the #GstMessage that is on the
+ *     bus, or %NULL if the bus is empty.
  *
  * MT safe.
  */
@@ -797,8 +813,8 @@
   GST_DEBUG_OBJECT (bus, "finalize source %p", source);
 
   GST_OBJECT_LOCK (bus);
-  if (bus->priv->watch_id == source)
-    bus->priv->watch_id = NULL;
+  if (bus->priv->signal_watch == source)
+    bus->priv->signal_watch = NULL;
   GST_OBJECT_UNLOCK (bus);
 
   gst_object_unref (bsource->bus);
@@ -850,7 +866,7 @@
   guint id;
   GSource *source;
 
-  if (bus->priv->watch_id) {
+  if (bus->priv->signal_watch) {
     GST_ERROR_OBJECT (bus,
         "Tried to add new watch while one was already there");
     return 0;
@@ -868,7 +884,7 @@
   g_source_unref (source);
 
   if (id) {
-    bus->priv->watch_id = source;
+    bus->priv->signal_watch = source;
   }
 
   GST_DEBUG_OBJECT (bus, "New source %p with id %u", source, id);
@@ -876,7 +892,7 @@
 }
 
 /**
- * gst_bus_add_watch_full:
+ * gst_bus_add_watch_full: (rename-to gst_bus_add_watch)
  * @bus: a #GstBus to create the watch for.
  * @priority: The priority of the watch.
  * @func: A function to call when a message is received.
@@ -896,13 +912,13 @@
  * When @func is called, the message belongs to the caller; if you want to
  * keep a copy of it, call gst_message_ref() before leaving @func.
  *
- * The watch can be removed using g_source_remove() or by returning %FALSE
- * from @func.
+ * The watch can be removed using gst_bus_remove_watch() or by returning %FALSE
+ * from @func. If the watch was added to the default main context it is also
+ * possible to remove the watch using g_source_remove().
  *
  * MT safe.
  *
- * Returns: The event source id.
- * Rename to: gst_bus_add_watch
+ * Returns: The event source id or 0 if @bus already got an event source.
  */
 guint
 gst_bus_add_watch_full (GstBus * bus, gint priority,
@@ -935,10 +951,11 @@
  * There can only be a single bus watch per bus, you must remove it before you
  * can set a new one.
  *
- * The watch can be removed using g_source_remove() or by returning %FALSE
- * from @func.
+ * The watch can be removed using gst_bus_remove_watch() or by returning %FALSE
+ * from @func. If the watch was added to the default main context it is also
+ * possible to remove the watch using g_source_remove().
  *
- * Returns: The event source id.
+ * Returns: The event source id or 0 if @bus already got an event source.
  *
  * MT safe.
  */
@@ -949,6 +966,45 @@
       user_data, NULL);
 }
 
+/**
+ * gst_bus_remove_watch:
+ * @bus: a #GstBus to remove the watch from.
+ *
+ * Removes an installed bus watch from @bus.
+ *
+ * Returns: %TRUE on success or %FALSE if @bus has no event source.
+ *
+ * Since: 1.6
+ *
+ */
+gboolean
+gst_bus_remove_watch (GstBus * bus)
+{
+  GSource *watch_id;
+
+  g_return_val_if_fail (GST_IS_BUS (bus), FALSE);
+
+  GST_OBJECT_LOCK (bus);
+
+  if (bus->priv->signal_watch == NULL) {
+    GST_ERROR_OBJECT (bus, "no bus watch was present");
+    goto no_watch;
+  }
+
+  watch_id = bus->priv->signal_watch;
+
+  GST_OBJECT_UNLOCK (bus);
+
+  g_source_destroy (watch_id);
+
+  return TRUE;
+
+no_watch:
+  GST_OBJECT_UNLOCK (bus);
+
+  return FALSE;
+}
+
 typedef struct
 {
   GMainLoop *loop;
@@ -1054,9 +1110,10 @@
  * better handled by setting up an asynchronous bus watch and doing things
  * from there.
  *
- * Returns: (transfer full): the message that was received, or %NULL if the
- *     poll timed out. The message is taken from the bus and needs to be
- *     unreffed with gst_message_unref() after usage.
+ * Returns: (transfer full) (nullable): the message that was received,
+ *     or %NULL if the poll timed out. The message is taken from the
+ *     bus and needs to be unreffed with gst_message_unref() after
+ *     usage.
  */
 GstMessage *
 gst_bus_poll (GstBus * bus, GstMessageType events, GstClockTime timeout)
@@ -1252,13 +1309,12 @@
     goto done;
 
   /* this should not fail because the counter above takes care of it */
-  g_assert (bus->priv->signal_watch_id == 0);
+  g_assert (!bus->priv->signal_watch);
 
-  bus->priv->signal_watch_id =
-      gst_bus_add_watch_full_unlocked (bus, priority, gst_bus_async_signal_func,
+  gst_bus_add_watch_full_unlocked (bus, priority, gst_bus_async_signal_func,
       NULL, NULL);
 
-  if (G_UNLIKELY (bus->priv->signal_watch_id == 0))
+  if (G_UNLIKELY (!bus->priv->signal_watch))
     goto add_failed;
 
 done:
@@ -1313,7 +1369,7 @@
 void
 gst_bus_remove_signal_watch (GstBus * bus)
 {
-  guint id = 0;
+  GSource *source = NULL;
 
   g_return_if_fail (GST_IS_BUS (bus));
 
@@ -1328,16 +1384,16 @@
   if (bus->priv->num_signal_watchers > 0)
     goto done;
 
-  id = bus->priv->signal_watch_id;
-  bus->priv->signal_watch_id = 0;
+  GST_DEBUG_OBJECT (bus, "removing signal watch %u",
+      g_source_get_id (bus->priv->signal_watch));
 
-  GST_DEBUG_OBJECT (bus, "removing signal watch %u", id);
+  source = bus->priv->signal_watch;
 
 done:
   GST_OBJECT_UNLOCK (bus);
 
-  if (id)
-    g_source_remove (id);
+  if (source)
+    g_source_destroy (source);
 
   return;
 
diff --git a/gst/gstbus.h b/gst/gstbus.h
index 92d2160..d369682 100644
--- a/gst/gstbus.h
+++ b/gst/gstbus.h
@@ -159,6 +159,7 @@
 guint                   gst_bus_add_watch               (GstBus * bus,
                                                          GstBusFunc func,
                                                          gpointer user_data);
+gboolean                gst_bus_remove_watch            (GstBus * bus);
 
 /* polling the bus */
 GstMessage*             gst_bus_poll                    (GstBus *bus, GstMessageType events,
diff --git a/gst/gstcaps.c b/gst/gstcaps.c
index 4525ead..147b32c 100644
--- a/gst/gstcaps.c
+++ b/gst/gstcaps.c
@@ -484,8 +484,6 @@
   return s;
 }
 
-
-
 /**
  * gst_caps_steal_structure:
  * @caps: the #GstCaps to retrieve from
@@ -901,8 +899,10 @@
   if (features)
     gst_caps_features_set_parent_refcount (features, &GST_CAPS_REFCOUNT (caps));
 
-  if (old)
+  if (old) {
+    gst_caps_features_set_parent_refcount (old, NULL);
     gst_caps_features_free (old);
+  }
 }
 
 /**
@@ -2356,3 +2356,151 @@
   g_value_take_string (dest_value,
       gst_caps_to_string (gst_value_get_caps (src_value)));
 }
+
+/**
+ * gst_caps_foreach:
+ * @caps: a #GstCaps
+ * @func: (scope call): a function to call for each field
+ * @user_data: (closure): private data
+ *
+ * Calls the provided function once for each structure and caps feature in the
+ * #GstCaps. The function must not modify the fields.
+ * Also see gst_caps_map_in_place() and gst_caps_filter_and_map_in_place().
+ *
+ * Returns: %TRUE if the supplied function returns %TRUE for each call,
+ * %FALSE otherwise.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_caps_foreach (const GstCaps * caps, GstCapsForeachFunc func,
+    gpointer user_data)
+{
+  guint i, n;
+  GstCapsFeatures *features;
+  GstStructure *structure;
+  gboolean ret;
+
+  g_return_val_if_fail (GST_IS_CAPS (caps), FALSE);
+  g_return_val_if_fail (func != NULL, FALSE);
+
+  n = GST_CAPS_LEN (caps);
+
+  for (i = 0; i < n; i++) {
+    features = gst_caps_get_features_unchecked (caps, i);
+    structure = gst_caps_get_structure_unchecked (caps, i);
+
+    ret = func (features, structure, user_data);
+    if (G_UNLIKELY (!ret))
+      return FALSE;
+  }
+
+  return TRUE;
+}
+
+/**
+ * gst_caps_map_in_place:
+ * @caps: a #GstCaps
+ * @func: (scope call): a function to call for each field
+ * @user_data: (closure): private data
+ *
+ * Calls the provided function once for each structure and caps feature in the
+ * #GstCaps. In contrast to gst_caps_foreach(), the function may modify but not
+ * delete the structures and features. The caps must be mutable.
+ *
+ * Returns: %TRUE if the supplied function returns %TRUE for each call,
+ * %FALSE otherwise.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_caps_map_in_place (GstCaps * caps, GstCapsMapFunc func, gpointer user_data)
+{
+  guint i, n;
+  GstCapsFeatures *features;
+  GstStructure *structure;
+  gboolean ret;
+
+  g_return_val_if_fail (GST_IS_CAPS (caps), FALSE);
+  g_return_val_if_fail (gst_caps_is_writable (caps), FALSE);
+  g_return_val_if_fail (func != NULL, FALSE);
+
+  n = GST_CAPS_LEN (caps);
+
+  for (i = 0; i < n; i++) {
+    features = gst_caps_get_features_unchecked (caps, i);
+    structure = gst_caps_get_structure_unchecked (caps, i);
+
+    /* Provide sysmem features if there are none yet */
+    if (!features) {
+      features =
+          gst_caps_features_copy (GST_CAPS_FEATURES_MEMORY_SYSTEM_MEMORY);
+      gst_caps_set_features (caps, i, features);
+    }
+
+    ret = func (features, structure, user_data);
+    if (G_UNLIKELY (!ret))
+      return FALSE;
+  }
+
+  return TRUE;
+}
+
+/**
+ * gst_caps_filter_and_map_in_place:
+ * @caps: a #GstCaps
+ * @func: (scope call): a function to call for each field
+ * @user_data: (closure): private data
+ *
+ * Calls the provided function once for each structure and caps feature in the
+ * #GstCaps. In contrast to gst_caps_foreach(), the function may modify the
+ * structure and features. In contrast to gst_caps_filter_and_map_in_place(),
+ * the structure and features are removed from the caps if %FALSE is returned
+ * from the function.
+ * The caps must be mutable.
+ *
+ * Since: 1.6
+ */
+void
+gst_caps_filter_and_map_in_place (GstCaps * caps, GstCapsFilterMapFunc func,
+    gpointer user_data)
+{
+  guint i, n;
+  GstCapsFeatures *features;
+  GstStructure *structure;
+  gboolean ret;
+
+  g_return_if_fail (GST_IS_CAPS (caps));
+  g_return_if_fail (gst_caps_is_writable (caps));
+  g_return_if_fail (func != NULL);
+
+  n = GST_CAPS_LEN (caps);
+
+  for (i = 0; i < n;) {
+    features = gst_caps_get_features_unchecked (caps, i);
+    structure = gst_caps_get_structure_unchecked (caps, i);
+
+    /* Provide sysmem features if there are none yet */
+    if (!features) {
+      features =
+          gst_caps_features_copy (GST_CAPS_FEATURES_MEMORY_SYSTEM_MEMORY);
+      gst_caps_set_features (caps, i, features);
+    }
+
+    ret = func (features, structure, user_data);
+    if (!ret) {
+      GST_CAPS_ARRAY (caps) = g_array_remove_index (GST_CAPS_ARRAY (caps), i);
+
+      gst_structure_set_parent_refcount (structure, NULL);
+      gst_structure_free (structure);
+      if (features) {
+        gst_caps_features_set_parent_refcount (features, NULL);
+        gst_caps_features_free (features);
+      }
+
+      n = GST_CAPS_LEN (caps);
+    } else {
+      i++;
+    }
+  }
+}
diff --git a/gst/gstcaps.h b/gst/gstcaps.h
index e29da34..5cd1b78 100644
--- a/gst/gstcaps.h
+++ b/gst/gstcaps.h
@@ -288,17 +288,17 @@
 
 /**
  * gst_caps_replace:
- * @old_caps: (inout) (transfer full): pointer to a pointer to a #GstCaps to be
- *     replaced.
+ * @old_caps: (inout) (transfer full) (nullable): pointer to a pointer
+ *     to a #GstCaps to be replaced.
  * @new_caps: (transfer none) (allow-none): pointer to a #GstCaps that will
- *     replace the caps pointed to by @ocaps.
+ *     replace the caps pointed to by @old_caps.
  *
  * Modifies a pointer to a #GstCaps to point to a different #GstCaps. The
  * modification is done atomically (so this is useful for ensuring thread safety
  * in some cases), and the reference counts are updated appropriately (the old
  * caps is unreffed, the new is reffed).
  *
- * Either @ncaps or the #GstCaps pointed to by @ocaps may be %NULL.
+ * Either @new_caps or the #GstCaps pointed to by @old_caps may be %NULL.
  *
  * Returns: %TRUE if @new_caps was different from @old_caps
  */
@@ -317,7 +317,7 @@
  * @old_caps: (inout) (transfer full): pointer to a pointer to a #GstCaps to be
  *     replaced.
  * @new_caps: (transfer full) (allow-none): pointer to a #GstCaps that will
- *     replace the caps pointed to by @ocaps.
+ *     replace the caps pointed to by @old_caps.
  *
  * Modifies a pointer to a #GstCaps to point to a different #GstCaps. This
  * function is similar to gst_caps_replace() except that it takes ownership
@@ -363,6 +363,58 @@
   gpointer _gst_reserved[GST_PADDING];
 };
 
+/**
+ * GstCapsForeachFunc:
+ * @features: the #GstCapsFeatures
+ * @structure: the #GstStructure
+ * @user_data: user data
+ *
+ * A function that will be called in gst_caps_foreach(). The function may
+ * not modify @features or @structure.
+ *
+ * Returns: %TRUE if the foreach operation should continue, %FALSE if
+ * the foreach operation should stop with %FALSE.
+ *
+ * Since: 1.6
+ */
+typedef gboolean (*GstCapsForeachFunc) (GstCapsFeatures *features,
+                                        GstStructure    *structure,
+                                        gpointer         user_data);
+
+/**
+ * GstCapsMapFunc:
+ * @features: the #GstCapsFeatures
+ * @structure: the #GstStructure
+ * @user_data: user data
+ *
+ * A function that will be called in gst_caps_map_in_place(). The function
+ * may modify @features and @structure.
+ *
+ * Returns: %TRUE if the map operation should continue, %FALSE if
+ * the map operation should stop with %FALSE.
+ */
+typedef gboolean (*GstCapsMapFunc)     (GstCapsFeatures *features,
+                                        GstStructure    *structure,
+                                        gpointer         user_data);
+
+/**
+ * GstCapsFilterMapFunc:
+ * @features: the #GstCapsFeatures
+ * @structure: the #GstStructure
+ * @user_data: user data
+ *
+ * A function that will be called in gst_caps_filter_and_map_in_place().
+ * The function may modify @features and @structure, and both will be
+ * removed from the caps if %FALSE is returned.
+ *
+ * Returns: %TRUE if the features and structure should be preserved,
+ * %FALSE if it should be removed.
+ */
+typedef gboolean (*GstCapsFilterMapFunc) (GstCapsFeatures *features,
+                                          GstStructure    *structure,
+                                          gpointer user_data);
+
+
 GType             gst_caps_get_type                (void);
 
 GstCaps *         gst_caps_new_empty               (void);
@@ -417,6 +469,18 @@
                                                     const char    *field,
                                                     va_list        varargs);
 
+gboolean          gst_caps_foreach                 (const GstCaps       *caps,
+                                                    GstCapsForeachFunc   func,
+                                                    gpointer             user_data);
+
+gboolean          gst_caps_map_in_place            (GstCaps        *caps,
+                                                    GstCapsMapFunc  func,
+                                                    gpointer        user_data);
+
+void              gst_caps_filter_and_map_in_place (GstCaps              *caps,
+                                                    GstCapsFilterMapFunc  func,
+                                                    gpointer              user_data);
+
 /* tests */
 gboolean          gst_caps_is_any                  (const GstCaps *caps);
 gboolean          gst_caps_is_empty                (const GstCaps *caps);
diff --git a/gst/gstcapsfeatures.c b/gst/gstcapsfeatures.c
index e1e8f90..dade216 100644
--- a/gst/gstcapsfeatures.c
+++ b/gst/gstcapsfeatures.c
@@ -471,8 +471,9 @@
  *
  * Free-function: gst_caps_features_free
  *
- * Returns: (transfer full): a new #GstCapsFeatures or %NULL when the string could
- *     not be parsed. Free with gst_caps_features_free() after use.
+ * Returns: (transfer full) (nullable): a new #GstCapsFeatures or
+ *     %NULL when the string could not be parsed. Free with
+ *     gst_caps_features_free() after use.
  *
  * Since: 1.2
  */
diff --git a/gst/gstchildproxy.c b/gst/gstchildproxy.c
index a83356a..f2a2595 100644
--- a/gst/gstchildproxy.c
+++ b/gst/gstchildproxy.c
@@ -108,8 +108,8 @@
  * together with gst_object_get_name(). If the interface is to be used with
  * #GObjects, this methods needs to be overridden.
  *
- * Returns: (transfer full): the child object or %NULL if not found. Unref
- *     after usage.
+ * Returns: (transfer full) (nullable): the child object or %NULL if
+ *     not found. Unref after usage.
  *
  * MT safe.
  */
@@ -129,8 +129,8 @@
  *
  * Fetches a child by its number.
  *
- * Returns: (transfer full): the child object or %NULL if not found (index
- *     too high). Unref after usage.
+ * Returns: (transfer full) (nullable): the child object or %NULL if
+ *     not found (index too high). Unref after usage.
  *
  * MT safe.
  */
diff --git a/gst/gstclock-linreg.c b/gst/gstclock-linreg.c
new file mode 100644
index 0000000..874917f
--- /dev/null
+++ b/gst/gstclock-linreg.c
@@ -0,0 +1,241 @@
+/* GStreamer
+ * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
+ *                    2000 Wim Taymans <wtay@chello.be>
+ *                    2004 Wim Taymans <wim@fluendo.com>
+ *                    2015 Jan Schmidt <jan@centricular.com>
+ *
+ * gstclock-linreg.c: Linear regression implementation, used in clock slaving
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include "gst_private.h"
+#include <time.h>
+
+#include "gstclock.h"
+#include "gstinfo.h"
+#include "gstutils.h"
+#include "glib-compat-private.h"
+
+/* Compute log2 of the passed 64-bit number by finding the highest set bit */
+static guint
+gst_log2 (GstClockTime in)
+{
+  const guint64 b[] =
+      { 0x2, 0xC, 0xF0, 0xFF00, 0xFFFF0000, 0xFFFFFFFF00000000LL };
+  const guint64 S[] = { 1, 2, 4, 8, 16, 32 };
+  int i;
+
+  guint count = 0;
+  for (i = 5; i >= 0; i--) {
+    if (in & b[i]) {
+      in >>= S[i];
+      count |= S[i];
+    }
+  }
+
+  return count;
+}
+
+/* http://mathworld.wolfram.com/LeastSquaresFitting.html
+ * with SLAVE_LOCK
+ */
+gboolean
+_priv_gst_do_linear_regression (GstClockTime * times, guint n,
+    GstClockTime * m_num, GstClockTime * m_denom, GstClockTime * b,
+    GstClockTime * xbase, gdouble * r_squared)
+{
+  GstClockTime *newx, *newy;
+  GstClockTime xmin, ymin, xbar, ybar, xbar4, ybar4;
+  GstClockTime xmax, ymax;
+  GstClockTimeDiff sxx, sxy, syy;
+  GstClockTime *x, *y;
+  gint i, j;
+  gint pshift = 0;
+  gint max_bits;
+
+  xbar = ybar = sxx = syy = sxy = 0;
+
+  x = times;
+  y = times + 2;
+
+  xmin = ymin = G_MAXUINT64;
+  xmax = ymax = 0;
+  for (i = j = 0; i < n; i++, j += 4) {
+    xmin = MIN (xmin, x[j]);
+    ymin = MIN (ymin, y[j]);
+
+    xmax = MAX (xmax, x[j]);
+    ymax = MAX (ymax, y[j]);
+  }
+
+  newx = times + 1;
+  newy = times + 3;
+
+  /* strip off unnecessary bits of precision */
+  for (i = j = 0; i < n; i++, j += 4) {
+    newx[j] = x[j] - xmin;
+    newy[j] = y[j] - ymin;
+  }
+
+#ifdef DEBUGGING_ENABLED
+  GST_CAT_DEBUG (GST_CAT_CLOCK, "reduced numbers:");
+  for (i = j = 0; i < n; i++, j += 4)
+    GST_CAT_DEBUG (GST_CAT_CLOCK,
+        "  %" G_GUINT64_FORMAT "  %" G_GUINT64_FORMAT, newx[j], newy[j]);
+#endif
+
+  /* have to do this precisely otherwise the results are pretty much useless.
+   * should guarantee that none of these accumulators can overflow */
+
+  /* quantities on the order of 1e10 to 1e13 -> 30-35 bits;
+   * window size a max of 2^10, so
+   this addition could end up around 2^45 or so -- ample headroom */
+  for (i = j = 0; i < n; i++, j += 4) {
+    /* Just in case assumptions about headroom prove false, let's check */
+    if ((newx[j] > 0 && G_MAXUINT64 - xbar <= newx[j]) ||
+        (newy[j] > 0 && G_MAXUINT64 - ybar <= newy[j])) {
+      GST_CAT_WARNING (GST_CAT_CLOCK,
+          "Regression overflowed in clock slaving! xbar %"
+          G_GUINT64_FORMAT " newx[j] %" G_GUINT64_FORMAT " ybar %"
+          G_GUINT64_FORMAT " newy[j] %" G_GUINT64_FORMAT, xbar, newx[j], ybar,
+          newy[j]);
+      return FALSE;
+    }
+
+    xbar += newx[j];
+    ybar += newy[j];
+  }
+  xbar /= n;
+  ybar /= n;
+
+  /* multiplying directly would give quantities on the order of 1e20-1e26 ->
+   * 60 bits to 70 bits times the window size that's 80 which is too much.
+   * Instead we (1) subtract off the xbar*ybar in the loop instead of after,
+   * to avoid accumulation; (2) shift off some estimated number of bits from
+   * each multiplicand to limit the expected ceiling. For strange
+   * distributions of input values, things can still overflow, in which
+   * case we drop precision and retry - at most a few times, in practice rarely
+   */
+
+  /* Guess how many bits we might need for the usual distribution of input,
+   * with a fallback loop that drops precision if things go pear-shaped */
+  max_bits = gst_log2 (MAX (xmax - xmin, ymax - ymin)) * 7 / 8 + gst_log2 (n);
+  if (max_bits > 64)
+    pshift = max_bits - 64;
+
+  i = 0;
+  do {
+#ifdef DEBUGGING_ENABLED
+    GST_CAT_DEBUG (GST_CAT_CLOCK,
+        "Restarting regression with precision shift %u", pshift);
+#endif
+
+    xbar4 = xbar >> pshift;
+    ybar4 = ybar >> pshift;
+    sxx = syy = sxy = 0;
+    for (i = j = 0; i < n; i++, j += 4) {
+      GstClockTime newx4, newy4;
+      GstClockTimeDiff tmp;
+
+      newx4 = newx[j] >> pshift;
+      newy4 = newy[j] >> pshift;
+
+      tmp = (newx4 + xbar4) * (newx4 - xbar4);
+      if (G_UNLIKELY (tmp > 0 && sxx > 0 && (G_MAXINT64 - sxx <= tmp))) {
+        do {
+          /* Drop some precision and restart */
+          pshift++;
+          sxx /= 4;
+          tmp /= 4;
+        } while (G_MAXINT64 - sxx <= tmp);
+        break;
+      } else if (G_UNLIKELY (tmp < 0 && sxx < 0 && (G_MAXINT64 - sxx >= tmp))) {
+        do {
+          /* Drop some precision and restart */
+          pshift++;
+          sxx /= 4;
+          tmp /= 4;
+        } while (G_MININT64 - sxx >= tmp);
+        break;
+      }
+      sxx += tmp;
+
+      tmp = newy4 * newy4 - ybar4 * ybar4;
+      if (G_UNLIKELY (tmp > 0 && syy > 0 && (G_MAXINT64 - syy <= tmp))) {
+        do {
+          pshift++;
+          syy /= 4;
+          tmp /= 4;
+        } while (G_MAXINT64 - syy <= tmp);
+        break;
+      } else if (G_UNLIKELY (tmp < 0 && syy < 0 && (G_MAXINT64 - syy >= tmp))) {
+        do {
+          pshift++;
+          syy /= 4;
+          tmp /= 4;
+        } while (G_MININT64 - syy >= tmp);
+        break;
+      }
+      syy += tmp;
+
+      tmp = newx4 * newy4 - xbar4 * ybar4;
+      if (G_UNLIKELY (tmp > 0 && sxy > 0 && (G_MAXINT64 - sxy <= tmp))) {
+        do {
+          pshift++;
+          sxy /= 4;
+          tmp /= 4;
+        } while (G_MAXINT64 - sxy <= tmp);
+        break;
+      } else if (G_UNLIKELY (tmp < 0 && sxy < 0 && (G_MININT64 - sxy >= tmp))) {
+        do {
+          pshift++;
+          sxy /= 4;
+          tmp /= 4;
+        } while (G_MININT64 - sxy >= tmp);
+        break;
+      }
+      sxy += tmp;
+    }
+  } while (i < n);
+
+  if (G_UNLIKELY (sxx == 0))
+    goto invalid;
+
+  *m_num = sxy;
+  *m_denom = sxx;
+  *b = (ymin + ybar) - gst_util_uint64_scale (xbar, *m_num, *m_denom);
+  /* Report base starting from the most recent observation */
+  *xbase = xmax;
+  *b += gst_util_uint64_scale (xmax - xmin, *m_num, *m_denom);
+
+  *r_squared = ((double) sxy * (double) sxy) / ((double) sxx * (double) syy);
+
+#ifdef DEBUGGING_ENABLED
+  GST_CAT_DEBUG (GST_CAT_CLOCK, "  m      = %g", ((double) *m_num) / *m_denom);
+  GST_CAT_DEBUG (GST_CAT_CLOCK, "  b      = %" G_GUINT64_FORMAT, *b);
+  GST_CAT_DEBUG (GST_CAT_CLOCK, "  xbase  = %" G_GUINT64_FORMAT, *xbase);
+  GST_CAT_DEBUG (GST_CAT_CLOCK, "  r2     = %g", *r_squared);
+#endif
+
+  return TRUE;
+
+invalid:
+  {
+    GST_CAT_DEBUG (GST_CAT_CLOCK, "sxx == 0, regression failed");
+    return FALSE;
+  }
+}
diff --git a/gst/gstclock.c b/gst/gstclock.c
index 9f5b6fd..2d8de0f 100644
--- a/gst/gstclock.c
+++ b/gst/gstclock.c
@@ -100,7 +100,6 @@
  * defines the minimum number of samples before the calibration is performed.
  */
 
-
 #include "gst_private.h"
 #include <time.h>
 
@@ -818,6 +817,60 @@
 }
 
 /**
+ * gst_clock_adjust_with_calibration:
+ * @clock: a #GstClock to use
+ * @internal_target: a clock time
+ * @cinternal: a reference internal time
+ * @cexternal: a reference external time
+ * @cnum: the numerator of the rate of the clock relative to its
+ *        internal time
+ * @cdenom: the denominator of the rate of the clock
+ *
+ * Converts the given @internal_target clock time to the external time,
+ * using the passed calibration parameters. This function performs the
+ * same calculation as gst_clock_adjust_unlocked() when called using the
+ * current calibration parameters, but doesn't ensure a monotonically
+ * increasing result as gst_clock_adjust_unlocked() does.
+ *
+ * Returns: the converted time of the clock.
+ *
+ * Since: 1.6
+ */
+GstClockTime
+gst_clock_adjust_with_calibration (GstClock * clock,
+    GstClockTime internal_target, GstClockTime cinternal,
+    GstClockTime cexternal, GstClockTime cnum, GstClockTime cdenom)
+{
+  GstClockTime ret;
+
+  /* avoid divide by 0 */
+  if (G_UNLIKELY (cdenom == 0))
+    cnum = cdenom = 1;
+
+  /* The formula is (internal - cinternal) * cnum / cdenom + cexternal
+   *
+   * Since we do math on unsigned 64-bit ints we have to special case for
+   * internal < cinternal to get the sign right. this case is not very common,
+   * though.
+   */
+  if (G_LIKELY (internal_target >= cinternal)) {
+    ret = internal_target - cinternal;
+    ret = gst_util_uint64_scale (ret, cnum, cdenom);
+    ret += cexternal;
+  } else {
+    ret = cinternal - internal_target;
+    ret = gst_util_uint64_scale (ret, cnum, cdenom);
+    /* clamp to 0 */
+    if (G_LIKELY (cexternal > ret))
+      ret = cexternal - ret;
+    else
+      ret = 0;
+  }
+
+  return ret;
+}
+
+/**
  * gst_clock_adjust_unlocked:
  * @clock: a #GstClock to use
  * @internal: a clock time
@@ -843,29 +896,9 @@
   cnum = priv->rate_numerator;
   cdenom = priv->rate_denominator;
 
-  /* avoid divide by 0 */
-  if (G_UNLIKELY (cdenom == 0))
-    cnum = cdenom = 1;
-
-  /* The formula is (internal - cinternal) * cnum / cdenom + cexternal
-   *
-   * Since we do math on unsigned 64-bit ints we have to special case for
-   * internal < cinternal to get the sign right. this case is not very common,
-   * though.
-   */
-  if (G_LIKELY (internal >= cinternal)) {
-    ret = internal - cinternal;
-    ret = gst_util_uint64_scale (ret, cnum, cdenom);
-    ret += cexternal;
-  } else {
-    ret = cinternal - internal;
-    ret = gst_util_uint64_scale (ret, cnum, cdenom);
-    /* clamp to 0 */
-    if (G_LIKELY (cexternal > ret))
-      ret = cexternal - ret;
-    else
-      ret = 0;
-  }
+  ret =
+      gst_clock_adjust_with_calibration (clock, internal, cinternal, cexternal,
+      cnum, cdenom);
 
   /* make sure the time is increasing */
   priv->last_time = MAX (ret, priv->last_time);
@@ -1204,8 +1237,9 @@
  * Get the master clock that @clock is slaved to or %NULL when the clock is
  * not slaved to any master clock.
  *
- * Returns: (transfer full): a master #GstClock or %NULL when this clock is
- *     not slaved to a master clock. Unref after usage.
+ * Returns: (transfer full) (nullable): a master #GstClock or %NULL
+ *     when this clock is not slaved to a master clock. Unref after
+ *     usage.
  *
  * MT safe.
  */
@@ -1227,132 +1261,6 @@
   return result;
 }
 
-/* http://mathworld.wolfram.com/LeastSquaresFitting.html
- * with SLAVE_LOCK
- */
-static gboolean
-do_linear_regression (GstClock * clock, GstClockTime * m_num,
-    GstClockTime * m_denom, GstClockTime * b, GstClockTime * xbase,
-    gdouble * r_squared)
-{
-  GstClockTime *newx, *newy;
-  GstClockTime xmin, ymin, xbar, ybar, xbar4, ybar4;
-  GstClockTimeDiff sxx, sxy, syy;
-  GstClockTime *x, *y;
-  gint i, j;
-  guint n;
-  GstClockPrivate *priv;
-
-  xbar = ybar = sxx = syy = sxy = 0;
-
-  priv = clock->priv;
-
-  x = priv->times;
-  y = priv->times + 2;
-  n = priv->filling ? priv->time_index : priv->window_size;
-
-#ifdef DEBUGGING_ENABLED
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "doing regression on:");
-  for (i = j = 0; i < n; i++, j += 4)
-    GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock,
-        "  %" G_GUINT64_FORMAT "  %" G_GUINT64_FORMAT, x[j], y[j]);
-#endif
-
-  xmin = ymin = G_MAXUINT64;
-  for (i = j = 0; i < n; i++, j += 4) {
-    xmin = MIN (xmin, x[j]);
-    ymin = MIN (ymin, y[j]);
-  }
-
-#ifdef DEBUGGING_ENABLED
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "min x: %" G_GUINT64_FORMAT,
-      xmin);
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "min y: %" G_GUINT64_FORMAT,
-      ymin);
-#endif
-
-  newx = priv->times + 1;
-  newy = priv->times + 3;
-
-  /* strip off unnecessary bits of precision */
-  for (i = j = 0; i < n; i++, j += 4) {
-    newx[j] = x[j] - xmin;
-    newy[j] = y[j] - ymin;
-  }
-
-#ifdef DEBUGGING_ENABLED
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "reduced numbers:");
-  for (i = j = 0; i < n; i++, j += 4)
-    GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock,
-        "  %" G_GUINT64_FORMAT "  %" G_GUINT64_FORMAT, newx[j], newy[j]);
-#endif
-
-  /* have to do this precisely otherwise the results are pretty much useless.
-   * should guarantee that none of these accumulators can overflow */
-
-  /* quantities on the order of 1e10 -> 30 bits; window size a max of 2^10, so
-     this addition could end up around 2^40 or so -- ample headroom */
-  for (i = j = 0; i < n; i++, j += 4) {
-    xbar += newx[j];
-    ybar += newy[j];
-  }
-  xbar /= n;
-  ybar /= n;
-
-#ifdef DEBUGGING_ENABLED
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "  xbar  = %" G_GUINT64_FORMAT,
-      xbar);
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "  ybar  = %" G_GUINT64_FORMAT,
-      ybar);
-#endif
-
-  /* multiplying directly would give quantities on the order of 1e20 -> 60 bits;
-     times the window size that's 70 which is too much. Instead we (1) subtract
-     off the xbar*ybar in the loop instead of after, to avoid accumulation; (2)
-     shift off 4 bits from each multiplicand, giving an expected ceiling of 52
-     bits, which should be enough. Need to check the incoming range and domain
-     to ensure this is an appropriate loss of precision though. */
-  xbar4 = xbar >> 4;
-  ybar4 = ybar >> 4;
-  for (i = j = 0; i < n; i++, j += 4) {
-    GstClockTime newx4, newy4;
-
-    newx4 = newx[j] >> 4;
-    newy4 = newy[j] >> 4;
-
-    sxx += newx4 * newx4 - xbar4 * xbar4;
-    syy += newy4 * newy4 - ybar4 * ybar4;
-    sxy += newx4 * newy4 - xbar4 * ybar4;
-  }
-
-  if (G_UNLIKELY (sxx == 0))
-    goto invalid;
-
-  *m_num = sxy;
-  *m_denom = sxx;
-  *xbase = xmin;
-  *b = (ybar + ymin) - gst_util_uint64_scale (xbar, *m_num, *m_denom);
-  *r_squared = ((double) sxy * (double) sxy) / ((double) sxx * (double) syy);
-
-#ifdef DEBUGGING_ENABLED
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "  m      = %g",
-      ((double) *m_num) / *m_denom);
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "  b      = %" G_GUINT64_FORMAT,
-      *b);
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "  xbase  = %" G_GUINT64_FORMAT,
-      *xbase);
-  GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "  r2     = %g", *r_squared);
-#endif
-
-  return TRUE;
-
-invalid:
-  {
-    GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "sxx == 0, regression failed");
-    return FALSE;
-  }
-}
-
 /**
  * gst_clock_add_observation:
  * @clock: a #GstClock 
@@ -1381,7 +1289,46 @@
     GstClockTime master, gdouble * r_squared)
 {
   GstClockTime m_num, m_denom, b, xbase;
+
+  if (!gst_clock_add_observation_unapplied (clock, slave, master, r_squared,
+          &xbase, &b, &m_num, &m_denom))
+    return FALSE;
+
+  /* if we have a valid regression, adjust the clock */
+  gst_clock_set_calibration (clock, xbase, b, m_num, m_denom);
+
+  return TRUE;
+}
+
+/**
+ * gst_clock_add_observation_unapplied:
+ * @clock: a #GstClock
+ * @slave: a time on the slave
+ * @master: a time on the master
+ * @r_squared: (out): a pointer to hold the result
+ * @internal: (out) (allow-none): a location to store the internal time
+ * @external: (out) (allow-none): a location to store the external time
+ * @rate_num: (out) (allow-none): a location to store the rate numerator
+ * @rate_denom: (out) (allow-none): a location to store the rate denominator
+ *
+ * Add a clock observation to the internal slaving algorithm the same as
+ * gst_clock_add_observation(), and return the result of the master clock
+ * estimation, without updating the internal calibration.
+ *
+ * The caller can then take the results and call gst_clock_set_calibration()
+ * with the values, or some modified version of them.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_clock_add_observation_unapplied (GstClock * clock, GstClockTime slave,
+    GstClockTime master, gdouble * r_squared,
+    GstClockTime * internal, GstClockTime * external,
+    GstClockTime * rate_num, GstClockTime * rate_denom)
+{
+  GstClockTime m_num, m_denom, b, xbase;
   GstClockPrivate *priv;
+  guint n;
 
   g_return_val_if_fail (GST_IS_CLOCK (clock), FALSE);
   g_return_val_if_fail (r_squared != NULL, FALSE);
@@ -1406,7 +1353,9 @@
   if (G_UNLIKELY (priv->filling && priv->time_index < priv->window_threshold))
     goto filling;
 
-  if (!do_linear_regression (clock, &m_num, &m_denom, &b, &xbase, r_squared))
+  n = priv->filling ? priv->time_index : priv->window_size;
+  if (!_priv_gst_do_linear_regression (priv->times, n, &m_num, &m_denom, &b,
+          &xbase, r_squared))
     goto invalid;
 
   GST_CLOCK_SLAVE_UNLOCK (clock);
@@ -1415,8 +1364,14 @@
       "adjusting clock to m=%" G_GUINT64_FORMAT "/%" G_GUINT64_FORMAT ", b=%"
       G_GUINT64_FORMAT " (rsquared=%g)", m_num, m_denom, b, *r_squared);
 
-  /* if we have a valid regression, adjust the clock */
-  gst_clock_set_calibration (clock, xbase, b, m_num, m_denom);
+  if (internal)
+    *internal = xbase;
+  if (external)
+    *external = b;
+  if (rate_num)
+    *rate_num = m_num;
+  if (rate_denom)
+    *rate_denom = m_denom;
 
   return TRUE;
 
diff --git a/gst/gstclock.h b/gst/gstclock.h
index 2fbe90c..c2239e5 100644
--- a/gst/gstclock.h
+++ b/gst/gstclock.h
@@ -478,10 +478,22 @@
 gboolean                gst_clock_add_observation       (GstClock *clock, GstClockTime slave,
                                                          GstClockTime master, gdouble *r_squared);
 
+gboolean                gst_clock_add_observation_unapplied (GstClock *clock, GstClockTime slave,
+                                                         GstClockTime master, gdouble *r_squared,
+                                                         GstClockTime *internal,
+                                                         GstClockTime *external,
+                                                         GstClockTime *rate_num,
+                                                         GstClockTime *rate_denom);
 
 /* getting and adjusting internal/external time */
 GstClockTime            gst_clock_get_internal_time     (GstClock *clock);
 GstClockTime            gst_clock_adjust_unlocked       (GstClock *clock, GstClockTime internal);
+GstClockTime            gst_clock_adjust_with_calibration (GstClock *clock,
+                                                         GstClockTime internal_target,
+                                                         GstClockTime cinternal,
+                                                         GstClockTime cexternal,
+                                                         GstClockTime cnum,
+                                                         GstClockTime cdenom);
 GstClockTime            gst_clock_unadjust_unlocked     (GstClock * clock, GstClockTime external);
 
 
diff --git a/gst/gstcontrolbinding.c b/gst/gstcontrolbinding.c
index 4981c89..11bd65d 100644
--- a/gst/gstcontrolbinding.c
+++ b/gst/gstcontrolbinding.c
@@ -259,8 +259,8 @@
  *
  * Gets the value for the given controlled property at the requested time.
  *
- * Returns: the GValue of the property at the given time, or %NULL if the
- * property isn't controlled.
+ * Returns: (nullable): the GValue of the property at the given time,
+ * or %NULL if the property isn't controlled.
  */
 GValue *
 gst_control_binding_get_value (GstControlBinding * binding,
@@ -468,5 +468,5 @@
 gst_control_binding_is_disabled (GstControlBinding * binding)
 {
   g_return_val_if_fail (GST_IS_CONTROL_BINDING (binding), TRUE);
-  return (binding->disabled == TRUE);
+  return ! !binding->disabled;
 }
diff --git a/gst/gstdatetime.c b/gst/gstdatetime.c
index d21cca4..8c0eda5 100644
--- a/gst/gstdatetime.c
+++ b/gst/gstdatetime.c
@@ -76,7 +76,8 @@
  *
  * Free-function: gst_date_time_unref
  *
- * Returns: (transfer full): a newly created #GstDateTime, or %NULL on error
+ * Returns: (transfer full) (nullable): a newly created #GstDateTime,
+ * or %NULL on error
  */
 GstDateTime *
 gst_date_time_new_from_g_date_time (GDateTime * dt)
@@ -104,7 +105,8 @@
  *
  * Free-function: g_date_time_unref
  *
- * Returns: (transfer full): a newly created #GDateTime, or %NULL on error
+ * Returns: (transfer full) (nullable): a newly created #GDateTime, or
+ * %NULL on error
  */
 GDateTime *
 gst_date_time_to_g_date_time (GstDateTime * datetime)
@@ -725,9 +727,10 @@
  * are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z,
  * 2012-06-23T23:30+0100, 2012-06-23T23:30:59Z, 2012-06-23T23:30:59+0100
  *
- * Returns: a newly allocated string formatted according to ISO 8601 and
- *     only including the datetime fields that are valid, or %NULL in case
- *     there was an error. The string should be freed with g_free().
+ * Returns: (nullable): a newly allocated string formatted according
+ *     to ISO 8601 and only including the datetime fields that are
+ *     valid, or %NULL in case there was an error. The string should
+ *     be freed with g_free().
  */
 gchar *
 gst_date_time_to_iso8601_string (GstDateTime * datetime)
@@ -749,7 +752,8 @@
  *
  * Free-function: gst_date_time_unref
  *
- * Returns: (transfer full): a newly created #GstDateTime, or %NULL on error
+ * Returns: (transfer full) (nullable): a newly created #GstDateTime,
+ * or %NULL on error
  */
 GstDateTime *
 gst_date_time_new_from_iso8601_string (const gchar * string)
diff --git a/gst/gstdatetime.h b/gst/gstdatetime.h
index 251dce1..f2bfd02 100644
--- a/gst/gstdatetime.h
+++ b/gst/gstdatetime.h
@@ -20,8 +20,11 @@
 #ifndef __GST_DATE_TIME_H__
 #define __GST_DATE_TIME_H__
 
+#include <gst/gstconfig.h>
+
 #include <time.h>
 #include <glib.h>
+#include <glib-object.h>
 
 G_BEGIN_DECLS
 
diff --git a/gst/gstdebugutils.c b/gst/gstdebugutils.c
index 7b3ebf9..4e5dcd2 100644
--- a/gst/gstdebugutils.c
+++ b/gst/gstdebugutils.c
@@ -56,6 +56,8 @@
 
 extern const gchar *priv_gst_dump_dot_dir;      /* NULL *//* set from gst.c */
 
+#define PARAM_MAX_LENGTH 80
+
 const gchar spaces[] = {
   "                                "    /* 32 */
       "                                "        /* 64 */
@@ -63,8 +65,6 @@
       "                                "        /* 128 */
 };
 
-extern GstClockTime _priv_gst_info_start_time;
-
 static gchar *
 debug_dump_make_object_name (GstObject * obj)
 {
@@ -92,13 +92,15 @@
 }
 
 static gchar *
-debug_dump_get_element_params (GstElement * element)
+debug_dump_get_element_params (GstElement * element,
+    GstDebugGraphDetails details)
 {
   gchar *param_name = NULL;
   GParamSpec **properties, *property;
   GValue value = { 0, };
   guint i, number_of_properties;
   gchar *tmp, *value_str;
+  const gchar *ellipses;
 
   /* get paramspecs and show non-default properties */
   properties =
@@ -108,7 +110,7 @@
     for (i = 0; i < number_of_properties; i++) {
       property = properties[i];
 
-      /* ski some properties */
+      /* skip some properties */
       if (!(property->flags & G_PARAM_READABLE))
         continue;
       if (!strcmp (property->name, "name"))
@@ -120,14 +122,31 @@
         tmp = g_strdup_value_contents (&value);
         value_str = g_strescape (tmp, NULL);
         g_free (tmp);
-        if (param_name) {
+
+        /* too long, ellipsize */
+        if (!(details & GST_DEBUG_GRAPH_SHOW_FULL_PARAMS) &&
+            strlen (value_str) > PARAM_MAX_LENGTH)
+          ellipses = "…";
+        else
+          ellipses = "";
+
+        if (param_name)
           tmp = param_name;
-          param_name = g_strdup_printf ("%s\\n%s=%s",
-              tmp, property->name, value_str);
-          g_free (tmp);
+        else
+          tmp = (char *) "";
+
+        if (details & GST_DEBUG_GRAPH_SHOW_FULL_PARAMS) {
+          param_name = g_strdup_printf ("%s\\n%s=%s", tmp, property->name,
+              value_str);
         } else {
-          param_name = g_strdup_printf ("\\n%s=%s", property->name, value_str);
+          param_name = g_strdup_printf ("%s\\n%s=%."
+              G_STRINGIFY (PARAM_MAX_LENGTH) "s%s", tmp, property->name,
+              value_str, ellipses);
         }
+
+        if (tmp[0] != '\0')
+          g_free (tmp);
+
         g_free (value_str);
       }
       g_value_unset (&value);
@@ -139,7 +158,7 @@
 
 static void
 debug_dump_pad (GstPad * pad, const gchar * color_name,
-    const gchar * element_name, GstDebugGraphDetails details, FILE * out,
+    const gchar * element_name, GstDebugGraphDetails details, GString * str,
     const gint indent)
 {
   GstPadTemplate *pad_templ;
@@ -154,6 +173,7 @@
   style_name = "filled,solid";
   if ((pad_templ = gst_pad_get_pad_template (pad))) {
     presence = GST_PAD_TEMPLATE_PRESENCE (pad_templ);
+    gst_object_unref (pad_templ);
     if (presence == GST_PAD_SOMETIMES) {
       style_name = "filled,dotted";
     } else if (presence == GST_PAD_REQUEST) {
@@ -192,12 +212,12 @@
         GST_OBJECT_FLAG_IS_SET (pad, GST_PAD_FLAG_BLOCKING) ? 'B' : 'b';
     pad_flags[3] = '\0';
 
-    fprintf (out,
+    g_string_append_printf (str,
         "%s  %s_%s [color=black, fillcolor=\"%s\", label=\"%s\\n[%c][%s]%s\", height=\"0.2\", style=\"%s\"];\n",
         spc, element_name, pad_name, color_name, GST_OBJECT_NAME (pad),
         activation_mode[pad->mode], pad_flags, task_mode, style_name);
   } else {
-    fprintf (out,
+    g_string_append_printf (str,
         "%s  %s_%s [color=black, fillcolor=\"%s\", label=\"%s\", height=\"0.2\", style=\"%s\"];\n",
         spc, element_name, pad_name, color_name, GST_OBJECT_NAME (pad),
         style_name);
@@ -208,7 +228,7 @@
 
 static void
 debug_dump_element_pad (GstPad * pad, GstElement * element,
-    GstDebugGraphDetails details, FILE * out, const gint indent)
+    GstDebugGraphDetails details, GString * str, const gint indent)
 {
   GstElement *target_element;
   GstPad *target_pad, *tmp_pad;
@@ -236,15 +256,17 @@
           target_element_name = g_strdup ("");
         }
         debug_dump_pad (target_pad, color_name, target_element_name, details,
-            out, indent);
+            str, indent);
         /* src ghostpad relationship */
         pad_name = debug_dump_make_object_name (GST_OBJECT (pad));
         target_pad_name = debug_dump_make_object_name (GST_OBJECT (target_pad));
         if (dir == GST_PAD_SRC) {
-          fprintf (out, "%s%s_%s -> %s_%s [style=dashed, minlen=0]\n", spc,
+          g_string_append_printf (str,
+              "%s%s_%s -> %s_%s [style=dashed, minlen=0]\n", spc,
               target_element_name, target_pad_name, element_name, pad_name);
         } else {
-          fprintf (out, "%s%s_%s -> %s_%s [style=dashed, minlen=0]\n", spc,
+          g_string_append_printf (str,
+              "%s%s_%s -> %s_%s [style=dashed, minlen=0]\n", spc,
               element_name, pad_name, target_element_name, target_pad_name);
         }
         g_free (target_pad_name);
@@ -262,7 +284,7 @@
             GST_PAD_SINK) ? "#aaaaff" : "#cccccc");
   }
   /* pads */
-  debug_dump_pad (pad, color_name, element_name, details, out, indent);
+  debug_dump_pad (pad, color_name, element_name, details, str, indent);
   g_free (element_name);
 }
 
@@ -358,7 +380,7 @@
 
 static void
 debug_dump_element_pad_link (GstPad * pad, GstElement * element,
-    GstDebugGraphDetails details, FILE * out, const gint indent)
+    GstDebugGraphDetails details, GString * str, const gint indent)
 {
   GstElement *peer_element;
   GstPad *peer_pad;
@@ -415,13 +437,14 @@
 
     /* pad link */
     if (media) {
-      fprintf (out, "%s%s_%s -> %s_%s [label=\"%s\"]\n", spc,
+      g_string_append_printf (str, "%s%s_%s -> %s_%s [label=\"%s\"]\n", spc,
           element_name, pad_name, peer_element_name, peer_pad_name, media);
       g_free (media);
     } else if (media_src && media_sink) {
       /* dot has some issues with placement of head and taillabels,
        * we need an empty label to make space */
-      fprintf (out, "%s%s_%s -> %s_%s [labeldistance=\"10\", labelangle=\"0\", "
+      g_string_append_printf (str,
+          "%s%s_%s -> %s_%s [labeldistance=\"10\", labelangle=\"0\", "
           "label=\"                                                  \", "
           "taillabel=\"%s\", headlabel=\"%s\"]\n",
           spc, element_name, pad_name, peer_element_name, peer_pad_name,
@@ -429,7 +452,7 @@
       g_free (media_src);
       g_free (media_sink);
     } else {
-      fprintf (out, "%s%s_%s -> %s_%s\n", spc,
+      g_string_append_printf (str, "%s%s_%s -> %s_%s\n", spc,
           element_name, pad_name, peer_element_name, peer_pad_name);
     }
 
@@ -445,7 +468,7 @@
 
 static void
 debug_dump_element_pads (GstIterator * pad_iter, GstPad * pad,
-    GstElement * element, GstDebugGraphDetails details, FILE * out,
+    GstElement * element, GstDebugGraphDetails details, GString * str,
     const gint indent, guint * src_pads, guint * sink_pads)
 {
   GValue item = { 0, };
@@ -457,7 +480,7 @@
     switch (gst_iterator_next (pad_iter, &item)) {
       case GST_ITERATOR_OK:
         pad = g_value_get_object (&item);
-        debug_dump_element_pad (pad, element, details, out, indent);
+        debug_dump_element_pad (pad, element, details, str, indent);
         dir = gst_pad_get_direction (pad);
         if (dir == GST_PAD_SRC)
           (*src_pads)++;
@@ -485,8 +508,8 @@
  * Helper for gst_debug_bin_to_dot_file() to recursively dump a pipeline.
  */
 static void
-debug_dump_element (GstBin * bin, GstDebugGraphDetails details, FILE * out,
-    const gint indent)
+debug_dump_element (GstBin * bin, GstDebugGraphDetails details,
+    GString * str, const gint indent)
 {
   GstIterator *element_iter, *pad_iter;
   gboolean elements_done, pads_done;
@@ -512,15 +535,18 @@
           state_name = debug_dump_get_element_state (GST_ELEMENT (element));
         }
         if (details & GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS) {
-          param_name = debug_dump_get_element_params (GST_ELEMENT (element));
+          param_name = debug_dump_get_element_params (GST_ELEMENT (element),
+              details);
         }
         /* elements */
-        fprintf (out, "%ssubgraph cluster_%s {\n", spc, element_name);
-        fprintf (out, "%s  fontname=\"Bitstream Vera Sans\";\n", spc);
-        fprintf (out, "%s  fontsize=\"8\";\n", spc);
-        fprintf (out, "%s  style=filled;\n", spc);
-        fprintf (out, "%s  color=black;\n\n", spc);
-        fprintf (out, "%s  label=\"%s\\n%s%s%s\";\n", spc,
+        g_string_append_printf (str, "%ssubgraph cluster_%s {\n", spc,
+            element_name);
+        g_string_append_printf (str, "%s  fontname=\"Bitstream Vera Sans\";\n",
+            spc);
+        g_string_append_printf (str, "%s  fontsize=\"8\";\n", spc);
+        g_string_append_printf (str, "%s  style=filled;\n", spc);
+        g_string_append_printf (str, "%s  color=black;\n\n", spc);
+        g_string_append_printf (str, "%s  label=\"%s\\n%s%s%s\";\n", spc,
             G_OBJECT_TYPE_NAME (element), GST_OBJECT_NAME (element),
             (state_name ? state_name : ""), (param_name ? param_name : "")
             );
@@ -536,30 +562,30 @@
 
         src_pads = sink_pads = 0;
         if ((pad_iter = gst_element_iterate_sink_pads (element))) {
-          debug_dump_element_pads (pad_iter, pad, element, details, out, indent,
-              &src_pads, &sink_pads);
+          debug_dump_element_pads (pad_iter, pad, element, details, str,
+              indent, &src_pads, &sink_pads);
           gst_iterator_free (pad_iter);
         }
         if ((pad_iter = gst_element_iterate_src_pads (element))) {
-          debug_dump_element_pads (pad_iter, pad, element, details, out, indent,
-              &src_pads, &sink_pads);
+          debug_dump_element_pads (pad_iter, pad, element, details, str,
+              indent, &src_pads, &sink_pads);
           gst_iterator_free (pad_iter);
         }
         if (GST_IS_BIN (element)) {
-          fprintf (out, "%s  fillcolor=\"#ffffff\";\n", spc);
+          g_string_append_printf (str, "%s  fillcolor=\"#ffffff\";\n", spc);
           /* recurse */
-          debug_dump_element (GST_BIN (element), details, out, indent + 1);
+          debug_dump_element (GST_BIN (element), details, str, indent + 1);
         } else {
           if (src_pads && !sink_pads)
-            fprintf (out, "%s  fillcolor=\"#ffaaaa\";\n", spc);
+            g_string_append_printf (str, "%s  fillcolor=\"#ffaaaa\";\n", spc);
           else if (!src_pads && sink_pads)
-            fprintf (out, "%s  fillcolor=\"#aaaaff\";\n", spc);
+            g_string_append_printf (str, "%s  fillcolor=\"#aaaaff\";\n", spc);
           else if (src_pads && sink_pads)
-            fprintf (out, "%s  fillcolor=\"#aaffaa\";\n", spc);
+            g_string_append_printf (str, "%s  fillcolor=\"#aaffaa\";\n", spc);
           else
-            fprintf (out, "%s  fillcolor=\"#ffffff\";\n", spc);
+            g_string_append_printf (str, "%s  fillcolor=\"#ffffff\";\n", spc);
         }
-        fprintf (out, "%s}\n\n", spc);
+        g_string_append_printf (str, "%s}\n\n", spc);
         if ((pad_iter = gst_element_iterate_pads (element))) {
           pads_done = FALSE;
           while (!pads_done) {
@@ -568,7 +594,7 @@
                 pad = g_value_get_object (&item2);
                 if (gst_pad_is_linked (pad)) {
                   if (gst_pad_get_direction (pad) == GST_PAD_SRC) {
-                    debug_dump_element_pad_link (pad, element, details, out,
+                    debug_dump_element_pad_link (pad, element, details, str,
                         indent);
                   } else {
                     GstPad *peer_pad = gst_pad_get_peer (pad);
@@ -577,7 +603,7 @@
                       if (!GST_IS_GHOST_PAD (peer_pad)
                           && GST_IS_PROXY_PAD (peer_pad)) {
                         debug_dump_element_pad_link (peer_pad, NULL, details,
-                            out, indent);
+                            str, indent);
                       }
                       gst_object_unref (peer_pad);
                     }
@@ -613,6 +639,80 @@
   gst_iterator_free (element_iter);
 }
 
+static void
+debug_dump_header (GstBin * bin, GstDebugGraphDetails details, GString * str)
+{
+  gchar *state_name = NULL;
+  gchar *param_name = NULL;
+
+  if (details & GST_DEBUG_GRAPH_SHOW_STATES) {
+    state_name = debug_dump_get_element_state (GST_ELEMENT (bin));
+  }
+  if (details & GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS) {
+    param_name = debug_dump_get_element_params (GST_ELEMENT (bin), details);
+  }
+
+  /* write header */
+  g_string_append_printf (str,
+      "digraph pipeline {\n"
+      "  rankdir=LR;\n"
+      "  fontname=\"sans\";\n"
+      "  fontsize=\"10\";\n"
+      "  labelloc=t;\n"
+      "  nodesep=.1;\n"
+      "  ranksep=.2;\n"
+      "  label=\"<%s>\\n%s%s%s\";\n"
+      "  node [style=filled, shape=box, fontsize=\"9\", fontname=\"sans\", margin=\"0.0,0.0\"];\n"
+      "  edge [labelfontsize=\"6\", fontsize=\"9\", fontname=\"monospace\"];\n"
+      "  \n"
+      "  legend [\n"
+      "    pos=\"0,0!\",\n"
+      "    margin=\"0.05,0.05\",\n"
+      "    label=\"Legend\\lElement-States: [~] void-pending, [0] null, [-] ready, [=] paused, [>] playing\\lPad-Activation: [-] none, [>] push, [<] pull\\lPad-Flags: [b]locked, [f]lushing, [b]locking; upper-case is set\\lPad-Task: [T] has started task, [t] has paused task\\l\"\n,"
+      "  ];"
+      "\n", G_OBJECT_TYPE_NAME (bin), GST_OBJECT_NAME (bin),
+      (state_name ? state_name : ""), (param_name ? param_name : "")
+      );
+
+  if (state_name)
+    g_free (state_name);
+  if (param_name)
+    g_free (param_name);
+}
+
+static void
+debug_dump_footer (GString * str)
+{
+  g_string_append_printf (str, "}\n");
+}
+
+/*
+ * gst_debug_bin_to_dot_data:
+ * @bin: the top-level pipeline that should be analyzed
+ *
+ * To aid debugging applications one can use this method to obtain the whole
+ * network of gstreamer elements that form the pipeline into an dot file.
+ * This data can be processed with graphviz to get an image.
+ *
+ * Returns: (transfer full): a string containing the pipeline in graphviz
+ * dot format.
+ */
+gchar *
+gst_debug_bin_to_dot_data (GstBin * bin, GstDebugGraphDetails details)
+{
+  GString *str;
+
+  g_return_val_if_fail (GST_IS_BIN (bin), NULL);
+
+  str = g_string_new (NULL);
+
+  debug_dump_header (bin, details, str);
+  debug_dump_element (bin, details, str, 1);
+  debug_dump_footer (str);
+
+  return g_string_free (str, FALSE);
+}
+
 /*
  * gst_debug_bin_to_dot_file:
  * @bin: the top-level pipeline that should be analyzed
@@ -647,47 +747,14 @@
       priv_gst_dump_dot_dir, file_name);
 
   if ((out = fopen (full_file_name, "wb"))) {
-    gchar *state_name = NULL;
-    gchar *param_name = NULL;
+    gchar *buf;
 
-    if (details & GST_DEBUG_GRAPH_SHOW_STATES) {
-      state_name = debug_dump_get_element_state (GST_ELEMENT (bin));
-    }
-    if (details & GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS) {
-      param_name = debug_dump_get_element_params (GST_ELEMENT (bin));
-    }
+    buf = gst_debug_bin_to_dot_data (bin, details);
+    fputs (buf, out);
 
-    /* write header */
-    fprintf (out,
-        "digraph pipeline {\n"
-        "  rankdir=LR;\n"
-        "  fontname=\"sans\";\n"
-        "  fontsize=\"10\";\n"
-        "  labelloc=t;\n"
-        "  nodesep=.1;\n"
-        "  ranksep=.2;\n"
-        "  label=\"<%s>\\n%s%s%s\";\n"
-        "  node [style=filled, shape=box, fontsize=\"9\", fontname=\"sans\", margin=\"0.0,0.0\"];\n"
-        "  edge [labelfontsize=\"6\", fontsize=\"9\", fontname=\"monospace\"];\n"
-        "  \n"
-        "  legend [\n"
-        "    pos=\"0,0!\",\n"
-        "    margin=\"0.05,0.05\",\n"
-        "    label=\"Legend\\lElement-States: [~] void-pending, [0] null, [-] ready, [=] paused, [>] playing\\lPad-Activation: [-] none, [>] push, [<] pull\\lPad-Flags: [b]locked, [f]lushing, [b]locking; upper-case is set\\lPad-Task: [T] has started task, [t] has paused task\\l\"\n,"
-        "  ];"
-        "\n", G_OBJECT_TYPE_NAME (bin), GST_OBJECT_NAME (bin),
-        (state_name ? state_name : ""), (param_name ? param_name : "")
-        );
-    if (state_name)
-      g_free (state_name);
-    if (param_name)
-      g_free (param_name);
-
-    debug_dump_element (bin, details, out, 1);
-
-    /* write footer */
-    fprintf (out, "}\n");
+    g_free (buf);
     fclose (out);
+
     GST_INFO ("wrote bin graph to : '%s'", full_file_name);
   } else {
     GST_WARNING ("Failed to open file '%s' for writing: %s", full_file_name,
diff --git a/gst/gstdebugutils.h b/gst/gstdebugutils.h
index ee0d193..06618f9 100644
--- a/gst/gstdebugutils.h
+++ b/gst/gstdebugutils.h
@@ -33,9 +33,14 @@
  * GstDebugGraphDetails:
  * @GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE: show caps-name on edges
  * @GST_DEBUG_GRAPH_SHOW_CAPS_DETAILS: show caps-details on edges
- * @GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS: show modified parameters on elements
+ * @GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS: show modified parameters on
+ *                                           elements
  * @GST_DEBUG_GRAPH_SHOW_STATES: show element states
- * @GST_DEBUG_GRAPH_SHOW_ALL: show all details
+ * @GST_DEBUG_GRAPH_SHOW_FULL_PARAMS: show full element parameter values even
+ *                                    if they are very long
+ * @GST_DEBUG_GRAPH_SHOW_ALL: show all the typical details that one might want
+ * @GST_DEBUG_GRAPH_SHOW_VERBOSE: show all details regardless of how large or
+ *                                verbose they make the resulting output
  *
  * Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE()
  * and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS().
@@ -45,12 +50,15 @@
   GST_DEBUG_GRAPH_SHOW_CAPS_DETAILS       = (1<<1),
   GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS = (1<<2),
   GST_DEBUG_GRAPH_SHOW_STATES             = (1<<3),
-  GST_DEBUG_GRAPH_SHOW_ALL                = ((1<<4)-1)
+  GST_DEBUG_GRAPH_SHOW_FULL_PARAMS        = (1<<4),
+  GST_DEBUG_GRAPH_SHOW_ALL                = ((1<<4)-1),
+  GST_DEBUG_GRAPH_SHOW_VERBOSE            = (-1)
 } GstDebugGraphDetails;
 
 
 /********** pipeline graphs **********/
 
+gchar * gst_debug_bin_to_dot_data (GstBin *bin, GstDebugGraphDetails details);
 void gst_debug_bin_to_dot_file (GstBin *bin, GstDebugGraphDetails details, const gchar *file_name);
 void gst_debug_bin_to_dot_file_with_ts (GstBin *bin, GstDebugGraphDetails details, const gchar *file_name);
 
diff --git a/gst/gstdevice.c b/gst/gstdevice.c
index 9119ba9..6274c93 100644
--- a/gst/gstdevice.c
+++ b/gst/gstdevice.c
@@ -22,14 +22,14 @@
 /**
  * SECTION:gstdevice
  * @short_description: Object representing a device
- * @see_also: #GstDeviceMonitor
+ * @see_also: #GstDeviceProvider
  *
  * #GstDevice are objects representing a device, they contain
  * relevant metadata about the device, such as its class and the #GstCaps
  * representing the media types it can produce or handle.
  *
- * #GstDevice are created by #GstDeviceMonitor objects which can be
- * aggregated by #GstGlobalDeviceMonitor objects.
+ * #GstDevice are created by #GstDeviceProvider objects which can be
+ * aggregated by #GstDeviceMonitor objects.
  *
  * Since: 1.4
  */
@@ -190,6 +190,8 @@
 {
   GstDeviceClass *klass = GST_DEVICE_GET_CLASS (device);
 
+  g_return_val_if_fail (GST_IS_DEVICE (device), NULL);
+
   if (klass->create_element)
     return klass->create_element (device, name);
   else
@@ -210,6 +212,8 @@
 GstCaps *
 gst_device_get_caps (GstDevice * device)
 {
+  g_return_val_if_fail (GST_IS_DEVICE (device), NULL);
+
   if (device->priv->caps)
     return gst_caps_ref (device->priv->caps);
   else
@@ -229,6 +233,8 @@
 gchar *
 gst_device_get_display_name (GstDevice * device)
 {
+  g_return_val_if_fail (GST_IS_DEVICE (device), NULL);
+
   return
       g_strdup (device->priv->display_name ? device->priv->display_name : "");
 }
@@ -239,7 +245,7 @@
  *
  * Gets the "class" of a device. This is a "/" separated list of
  * classes that represent this device. They are a subset of the
- * classes of the #GstDeviceMonitor that produced this device.
+ * classes of the #GstDeviceProvider that produced this device.
  *
  * Returns: The device class. Free with g_free() after use.
  *
@@ -248,6 +254,8 @@
 gchar *
 gst_device_get_device_class (GstDevice * device)
 {
+  g_return_val_if_fail (GST_IS_DEVICE (device), NULL);
+
   if (device->priv->device_class != NULL)
     return g_strdup (device->priv->device_class);
   else
@@ -276,6 +284,8 @@
 {
   GstDeviceClass *klass = GST_DEVICE_GET_CLASS (device);
 
+  g_return_val_if_fail (GST_IS_DEVICE (device), FALSE);
+
   if (klass->reconfigure_element)
     return klass->reconfigure_element (device, element);
   else
@@ -285,7 +295,7 @@
 /**
  * gst_device_has_classesv:
  * @device: a #GstDevice
- * @classes: (array zero-terminated=1): a %NULL terminated array of klasses to match, only match if all
+ * @classes: (array zero-terminated=1): a %NULL terminated array of classes to match, only match if all
  *   classes are matched
  *
  * Check if @factory matches all of the given classes
@@ -299,6 +309,8 @@
 {
   g_return_val_if_fail (GST_IS_DEVICE (device), FALSE);
 
+  if (!classes)
+    return TRUE;
 
   for (; classes[0]; classes++) {
     const gchar *found;
@@ -340,6 +352,11 @@
   gchar **classesv;
   gboolean res;
 
+  g_return_val_if_fail (GST_IS_DEVICE (device), FALSE);
+
+  if (!classes)
+    return TRUE;
+
   classesv = g_strsplit (classes, "/", 0);
 
   res = gst_device_has_classesv (device, classesv);
diff --git a/gst/gstdevicemonitor.c b/gst/gstdevicemonitor.c
index 6fabe11..a1b1180 100644
--- a/gst/gstdevicemonitor.c
+++ b/gst/gstdevicemonitor.c
@@ -1,7 +1,7 @@
 /* GStreamer
- * Copyright (C) 2012 Olivier Crete <olivier.crete@collabora.com>
+ * Copyright (C) 2013 Olivier Crete <olivier.crete@collabora.com>
  *
- * gstdevicemonitor.c: Device probing and monitoring
+ * gstdevicemonitor.c: device monitor
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -22,321 +22,231 @@
 /**
  * SECTION:gstdevicemonitor
  * @short_description: A device monitor and prober
- * @see_also: #GstDevice, #GstGlobalDeviceMonitor
+ * @see_also: #GstDevice, #GstDeviceProvider
  *
- * A #GstDeviceMonitor subclass is provided by a plugin that handles devices
- * if there is a way to programatically list connected devices. It can also
- * optionally provide updates to the list of connected devices.
+ * Applications should create a #GstDeviceMonitor when they want
+ * to probe, list and monitor devices of a specific type. The
+ * #GstDeviceMonitor will create the appropriate
+ * #GstDeviceProvider objects and manage them. It will then post
+ * messages on its #GstBus for devices that have been added and
+ * removed.
  *
- * Each #GstDeviceMonitor subclass is a singleton, a plugin should
- * normally provide a single subclass for all devices.
+ * The device monitor will monitor all devices matching the filters that
+ * the application has set.
  *
- * Applications would normally use a #GstGlobalDeviceMonitor to monitor devices
- * from all revelant monitors.
+ *
+ * The basic use pattern of a device monitor is as follows:
+ * |[
+ *   static gboolean
+ *   my_bus_func (GstBus * bus, GstMessage * message, gpointer user_data)
+ *   {
+ *      GstDevice *device;
+ *      gchar *name;
+ *
+ *      switch (GST_MESSAGE_TYPE (message)) {
+ *        case GST_MESSAGE_DEVICE_ADDED:
+ *          gst_message_parse_device_added (message, &device);
+ *          name = gst_device_get_display_name (device);
+ *          g_print("Device added: %s\n", name);
+ *          g_free (name);
+ *          break;
+ *        case GST_MESSAGE_DEVICE_REMOVED:
+ *          gst_message_parse_device_removed (message, &device);
+ *          name = gst_device_get_display_name (device);
+ *          g_print("Device removed: %s\n", name);
+ *          g_free (name);
+ *          break;
+ *        default:
+ *          break;
+ *      }
+ *
+ *      return G_SOURCE_CONTINUE;
+ *   }
+ *
+ *   GstDeviceMonitor *
+ *   setup_raw_video_source_device_monitor (void) {
+ *      GstDeviceMonitor *monitor;
+ *      GstBus *bus;
+ *      GstCaps *caps;
+ *
+ *      monitor = gst_device_monitor_new ();
+ *
+ *      bus = gst_device_monitor_get_bus (monitor);
+ *      gst_bus_add_watch (bus, my_bus_func, NULL);
+ *      gst_object_unref (bus);
+ *
+ *      caps = gst_caps_new_empty_simple ("video/x-raw");
+ *      gst_device_monitor_add_filter (monitor, "Video/Source", caps);
+ *      gst_caps_unref (caps);
+ *
+ *      gst_device_monitor_start (monitor);
+ *
+ *      return monitor;
+ *   }
+ * ]|
  *
  * Since: 1.4
  */
 
+
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 
 #include "gst_private.h"
-
 #include "gstdevicemonitor.h"
 
-#include "gstelementmetadata.h"
-#include "gstquark.h"
-
 struct _GstDeviceMonitorPrivate
 {
+  gboolean started;
+
   GstBus *bus;
 
-  GMutex start_lock;
+  GPtrArray *providers;
+  guint cookie;
 
-  gboolean started_count;
+  GPtrArray *filters;
+
+  guint last_id;
 };
 
-/* this is used in gstelementfactory.c:gst_element_register() */
-GQuark __gst_devicemonitorclass_factory = 0;
 
-static void gst_device_monitor_class_init (GstDeviceMonitorClass * klass);
-static void gst_device_monitor_init (GstDeviceMonitor * element);
-static void gst_device_monitor_base_class_init (gpointer g_class);
-static void gst_device_monitor_base_class_finalize (gpointer g_class);
+G_DEFINE_TYPE (GstDeviceMonitor, gst_device_monitor, GST_TYPE_OBJECT);
+
 static void gst_device_monitor_dispose (GObject * object);
-static void gst_device_monitor_finalize (GObject * object);
 
-static gpointer gst_device_monitor_parent_class = NULL;
-
-GType
-gst_device_monitor_get_type (void)
+struct DeviceFilter
 {
-  static volatile gsize gst_device_monitor_type = 0;
+  guint id;
 
-  if (g_once_init_enter (&gst_device_monitor_type)) {
-    GType _type;
-    static const GTypeInfo element_info = {
-      sizeof (GstDeviceMonitorClass),
-      gst_device_monitor_base_class_init,
-      gst_device_monitor_base_class_finalize,
-      (GClassInitFunc) gst_device_monitor_class_init,
-      NULL,
-      NULL,
-      sizeof (GstDeviceMonitor),
-      0,
-      (GInstanceInitFunc) gst_device_monitor_init,
-      NULL
-    };
-
-    _type = g_type_register_static (GST_TYPE_OBJECT, "GstDeviceMonitor",
-        &element_info, G_TYPE_FLAG_ABSTRACT);
-
-    __gst_devicemonitorclass_factory =
-        g_quark_from_static_string ("GST_DEVICEMONITORCLASS_FACTORY");
-    g_once_init_leave (&gst_device_monitor_type, _type);
-  }
-  return gst_device_monitor_type;
-}
+  gchar **classesv;
+  GstCaps *caps;
+};
 
 static void
-gst_device_monitor_base_class_init (gpointer g_class)
+device_filter_free (struct DeviceFilter *filter)
 {
-  GstDeviceMonitorClass *klass = GST_DEVICE_MONITOR_CLASS (g_class);
+  g_strfreev (filter->classesv);
+  gst_caps_unref (filter->caps);
 
-  /* Copy the element details here so elements can inherit the
-   * details from their base class and classes only need to set
-   * the details in class_init instead of base_init */
-  klass->metadata =
-      klass->metadata ? gst_structure_copy (klass->metadata) :
-      gst_structure_new_empty ("metadata");
-
-  klass->factory = g_type_get_qdata (G_TYPE_FROM_CLASS (klass),
-      __gst_devicemonitorclass_factory);
-}
-
-static void
-gst_device_monitor_base_class_finalize (gpointer g_class)
-{
-  GstDeviceMonitorClass *klass = GST_DEVICE_MONITOR_CLASS (g_class);
-
-  gst_structure_free (klass->metadata);
+  g_slice_free (struct DeviceFilter, filter);
 }
 
 static void
 gst_device_monitor_class_init (GstDeviceMonitorClass * klass)
 {
-  GObjectClass *gobject_class = (GObjectClass *) klass;
-
-  gst_device_monitor_parent_class = g_type_class_peek_parent (klass);
+  GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
   g_type_class_add_private (klass, sizeof (GstDeviceMonitorPrivate));
 
-  gobject_class->dispose = gst_device_monitor_dispose;
-  gobject_class->finalize = gst_device_monitor_finalize;
+  object_class->dispose = gst_device_monitor_dispose;
 }
 
 static void
-gst_device_monitor_init (GstDeviceMonitor * monitor)
+bus_sync_message (GstBus * bus, GstMessage * message,
+    GstDeviceMonitor * monitor)
 {
-  monitor->priv = G_TYPE_INSTANCE_GET_PRIVATE (monitor,
-      GST_TYPE_DEVICE_MONITOR, GstDeviceMonitorPrivate);
+  GstMessageType type = GST_MESSAGE_TYPE (message);
 
-  g_mutex_init (&monitor->priv->start_lock);
+  if (type == GST_MESSAGE_DEVICE_ADDED || type == GST_MESSAGE_DEVICE_REMOVED) {
+    gboolean matches;
+    GstDevice *device;
 
-  monitor->priv->bus = gst_bus_new ();
-  gst_bus_set_flushing (monitor->priv->bus, TRUE);
+    if (type == GST_MESSAGE_DEVICE_ADDED)
+      gst_message_parse_device_added (message, &device);
+    else
+      gst_message_parse_device_removed (message, &device);
+
+    GST_OBJECT_LOCK (monitor);
+    if (monitor->priv->filters->len) {
+      guint i;
+
+      for (i = 0; i < monitor->priv->filters->len; i++) {
+        struct DeviceFilter *filter =
+            g_ptr_array_index (monitor->priv->filters, i);
+        GstCaps *caps;
+
+        caps = gst_device_get_caps (device);
+        matches = gst_caps_can_intersect (filter->caps, caps) &&
+            gst_device_has_classesv (device, filter->classesv);
+        gst_caps_unref (caps);
+        if (matches)
+          break;
+      }
+    } else {
+      matches = TRUE;
+    }
+    GST_OBJECT_UNLOCK (monitor);
+
+    gst_object_unref (device);
+
+    if (matches)
+      gst_bus_post (monitor->priv->bus, gst_message_ref (message));
+  }
 }
 
 
 static void
+gst_device_monitor_init (GstDeviceMonitor * self)
+{
+  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
+      GST_TYPE_DEVICE_MONITOR, GstDeviceMonitorPrivate);
+
+  self->priv->bus = gst_bus_new ();
+  gst_bus_set_flushing (self->priv->bus, TRUE);
+
+  self->priv->providers = g_ptr_array_new ();
+  self->priv->filters = g_ptr_array_new_with_free_func (
+      (GDestroyNotify) device_filter_free);
+
+  self->priv->last_id = 1;
+}
+
+
+static void
+gst_device_monitor_remove (GstDeviceMonitor * self, guint i)
+{
+  GstDeviceProvider *provider = g_ptr_array_index (self->priv->providers, i);
+  GstBus *bus;
+
+  g_ptr_array_remove_index_fast (self->priv->providers, i);
+
+  bus = gst_device_provider_get_bus (provider);
+  g_signal_handlers_disconnect_by_func (bus, bus_sync_message, self);
+  gst_object_unref (bus);
+
+  gst_object_unref (provider);
+}
+
+static void
 gst_device_monitor_dispose (GObject * object)
 {
-  GstDeviceMonitor *monitor = GST_DEVICE_MONITOR (object);
+  GstDeviceMonitor *self = GST_DEVICE_MONITOR (object);
 
-  gst_object_replace ((GstObject **) & monitor->priv->bus, NULL);
+  g_return_if_fail (!self->priv->started);
 
-  GST_OBJECT_LOCK (monitor);
-  g_list_free_full (monitor->devices, (GDestroyNotify) gst_object_unparent);
-  monitor->devices = NULL;
-  GST_OBJECT_UNLOCK (monitor);
+  if (self->priv->providers) {
+    while (self->priv->providers->len)
+      gst_device_monitor_remove (self, self->priv->providers->len - 1);
+    g_ptr_array_unref (self->priv->providers);
+    self->priv->providers = NULL;
+  }
+
+  if (self->priv->filters) {
+    g_ptr_array_unref (self->priv->filters);
+    self->priv->filters = NULL;
+  }
+
+  gst_object_replace ((GstObject **) & self->priv->bus, NULL);
 
   G_OBJECT_CLASS (gst_device_monitor_parent_class)->dispose (object);
 }
 
-static void
-gst_device_monitor_finalize (GObject * object)
-{
-  GstDeviceMonitor *monitor = GST_DEVICE_MONITOR (object);
-
-  g_mutex_clear (&monitor->priv->start_lock);
-
-  G_OBJECT_CLASS (gst_device_monitor_parent_class)->finalize (object);
-}
-
-/**
- * gst_device_monitor_class_add_metadata:
- * @klass: class to set metadata for
- * @key: the key to set
- * @value: the value to set
- *
- * Set @key with @value as metadata in @klass.
- */
-void
-gst_device_monitor_class_add_metadata (GstDeviceMonitorClass * klass,
-    const gchar * key, const gchar * value)
-{
-  g_return_if_fail (GST_IS_DEVICE_MONITOR_CLASS (klass));
-  g_return_if_fail (key != NULL);
-  g_return_if_fail (value != NULL);
-
-  gst_structure_set ((GstStructure *) klass->metadata,
-      key, G_TYPE_STRING, value, NULL);
-}
-
-/**
- * gst_device_monitor_class_add_static_metadata:
- * @klass: class to set metadata for
- * @key: the key to set
- * @value: the value to set
- *
- * Set @key with @value as metadata in @klass.
- *
- * Same as gst_device_monitor_class_add_metadata(), but @value must be a static string
- * or an inlined string, as it will not be copied. (GStreamer plugins will
- * be made resident once loaded, so this function can be used even from
- * dynamically loaded plugins.)
- *
- * Since: 1.4
- */
-void
-gst_device_monitor_class_add_static_metadata (GstDeviceMonitorClass * klass,
-    const gchar * key, const gchar * value)
-{
-  GValue val = G_VALUE_INIT;
-
-  g_return_if_fail (GST_IS_DEVICE_MONITOR_CLASS (klass));
-  g_return_if_fail (key != NULL);
-  g_return_if_fail (value != NULL);
-
-  g_value_init (&val, G_TYPE_STRING);
-  g_value_set_static_string (&val, value);
-  gst_structure_take_value ((GstStructure *) klass->metadata, key, &val);
-}
-
-/**
- * gst_device_monitor_class_set_metadata:
- * @klass: class to set metadata for
- * @longname: The long English name of the device monitor. E.g. "File Sink"
- * @classification: String describing the type of device monitor, as an unordered list
- * separated with slashes ('/'). See draft-klass.txt of the design docs
- * for more details and common types. E.g: "Sink/File"
- * @description: Sentence describing the purpose of the device monitor.
- * E.g: "Write stream to a file"
- * @author: Name and contact details of the author(s). Use \n to separate
- * multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;"
- *
- * Sets the detailed information for a #GstDeviceMonitorClass.
- * <note>This function is for use in _class_init functions only.</note>
- *
- * Since: 1.4
- */
-void
-gst_device_monitor_class_set_metadata (GstDeviceMonitorClass * klass,
-    const gchar * longname, const gchar * classification,
-    const gchar * description, const gchar * author)
-{
-  g_return_if_fail (GST_IS_DEVICE_MONITOR_CLASS (klass));
-  g_return_if_fail (longname != NULL && *longname != '\0');
-  g_return_if_fail (classification != NULL && *classification != '\0');
-  g_return_if_fail (description != NULL && *description != '\0');
-  g_return_if_fail (author != NULL && *author != '\0');
-
-  gst_structure_id_set ((GstStructure *) klass->metadata,
-      GST_QUARK (ELEMENT_METADATA_LONGNAME), G_TYPE_STRING, longname,
-      GST_QUARK (ELEMENT_METADATA_KLASS), G_TYPE_STRING, classification,
-      GST_QUARK (ELEMENT_METADATA_DESCRIPTION), G_TYPE_STRING, description,
-      GST_QUARK (ELEMENT_METADATA_AUTHOR), G_TYPE_STRING, author, NULL);
-}
-
-/**
- * gst_device_monitor_class_set_static_metadata:
- * @klass: class to set metadata for
- * @longname: The long English name of the element. E.g. "File Sink"
- * @classification: String describing the type of element, as an unordered list
- * separated with slashes ('/'). See draft-klass.txt of the design docs
- * for more details and common types. E.g: "Sink/File"
- * @description: Sentence describing the purpose of the element.
- * E.g: "Write stream to a file"
- * @author: Name and contact details of the author(s). Use \n to separate
- * multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;"
- *
- * Sets the detailed information for a #GstDeviceMonitorClass.
- * <note>This function is for use in _class_init functions only.</note>
- *
- * Same as gst_device_monitor_class_set_metadata(), but @longname, @classification,
- * @description, and @author must be static strings or inlined strings, as
- * they will not be copied. (GStreamer plugins will be made resident once
- * loaded, so this function can be used even from dynamically loaded plugins.)
- *
- * Since: 1.4
- */
-void
-gst_device_monitor_class_set_static_metadata (GstDeviceMonitorClass * klass,
-    const gchar * longname, const gchar * classification,
-    const gchar * description, const gchar * author)
-{
-  GstStructure *s = (GstStructure *) klass->metadata;
-  GValue val = G_VALUE_INIT;
-
-  g_return_if_fail (GST_IS_DEVICE_MONITOR_CLASS (klass));
-  g_return_if_fail (longname != NULL && *longname != '\0');
-  g_return_if_fail (classification != NULL && *classification != '\0');
-  g_return_if_fail (description != NULL && *description != '\0');
-  g_return_if_fail (author != NULL && *author != '\0');
-
-  g_value_init (&val, G_TYPE_STRING);
-
-  g_value_set_static_string (&val, longname);
-  gst_structure_id_set_value (s, GST_QUARK (ELEMENT_METADATA_LONGNAME), &val);
-
-  g_value_set_static_string (&val, classification);
-  gst_structure_id_set_value (s, GST_QUARK (ELEMENT_METADATA_KLASS), &val);
-
-  g_value_set_static_string (&val, description);
-  gst_structure_id_set_value (s, GST_QUARK (ELEMENT_METADATA_DESCRIPTION),
-      &val);
-
-  g_value_set_static_string (&val, author);
-  gst_structure_id_take_value (s, GST_QUARK (ELEMENT_METADATA_AUTHOR), &val);
-}
-
-/**
- * gst_device_monitor_class_get_metadata:
- * @klass: class to get metadata for
- * @key: the key to get
- *
- * Get metadata with @key in @klass.
- *
- * Returns: the metadata for @key.
- *
- * Since: 1.4
- */
-const gchar *
-gst_device_monitor_class_get_metadata (GstDeviceMonitorClass * klass,
-    const gchar * key)
-{
-  g_return_val_if_fail (GST_IS_DEVICE_MONITOR_CLASS (klass), NULL);
-  g_return_val_if_fail (key != NULL, NULL);
-
-  return gst_structure_get_string ((GstStructure *) klass->metadata, key);
-}
-
 /**
  * gst_device_monitor_get_devices:
- * @monitor: A #GstDeviceMonitor
+ * @monitor: A #GstDeviceProvider
  *
- * Gets a list of devices that this monitor understands. This may actually
+ * Gets a list of devices from all of the relevant monitors. This may actually
  * probe the hardware if the monitor is not currently started.
  *
  * Returns: (transfer full) (element-type GstDevice): a #GList of
@@ -348,26 +258,71 @@
 GList *
 gst_device_monitor_get_devices (GstDeviceMonitor * monitor)
 {
-  GstDeviceMonitorClass *klass;
   GList *devices = NULL;
-  gboolean started;
-  GList *item;
+  guint i;
+  guint cookie;
 
   g_return_val_if_fail (GST_IS_DEVICE_MONITOR (monitor), NULL);
-  klass = GST_DEVICE_MONITOR_GET_CLASS (monitor);
 
-  g_mutex_lock (&monitor->priv->start_lock);
-  started = (monitor->priv->started_count > 0);
+  GST_OBJECT_LOCK (monitor);
 
-  if (started) {
-    GST_OBJECT_LOCK (monitor);
-    for (item = monitor->devices; item; item = item->next)
-      devices = g_list_prepend (devices, gst_object_ref (item->data));
+  if (monitor->priv->filters->len == 0) {
     GST_OBJECT_UNLOCK (monitor);
-  } else if (klass->probe)
-    devices = klass->probe (monitor);
+    GST_WARNING_OBJECT (monitor, "No filters have been set");
+    return FALSE;
+  }
 
-  g_mutex_unlock (&monitor->priv->start_lock);
+  if (monitor->priv->providers->len == 0) {
+    GST_OBJECT_UNLOCK (monitor);
+    GST_WARNING_OBJECT (monitor, "No providers match the current filters");
+    return FALSE;
+  }
+
+again:
+
+  g_list_free_full (devices, gst_object_unref);
+  devices = NULL;
+
+  cookie = monitor->priv->cookie;
+
+  for (i = 0; i < monitor->priv->providers->len; i++) {
+    GList *tmpdev;
+    GstDeviceProvider *provider =
+        gst_object_ref (g_ptr_array_index (monitor->priv->providers, i));
+    GList *item;
+
+    GST_OBJECT_UNLOCK (monitor);
+
+    tmpdev = gst_device_provider_get_devices (provider);
+
+    GST_OBJECT_LOCK (monitor);
+
+    for (item = tmpdev; item; item = item->next) {
+      GstDevice *dev = GST_DEVICE (item->data);
+      GstCaps *caps = gst_device_get_caps (dev);
+      guint j;
+
+      for (j = 0; j < monitor->priv->filters->len; j++) {
+        struct DeviceFilter *filter =
+            g_ptr_array_index (monitor->priv->filters, j);
+        if (gst_caps_can_intersect (filter->caps, caps) &&
+            gst_device_has_classesv (dev, filter->classesv)) {
+          devices = g_list_prepend (devices, gst_object_ref (dev));
+          break;
+        }
+      }
+      gst_caps_unref (caps);
+    }
+
+    g_list_free_full (tmpdev, gst_object_unref);
+    gst_object_unref (provider);
+
+
+    if (monitor->priv->cookie != cookie)
+      goto again;
+  }
+
+  GST_OBJECT_UNLOCK (monitor);
 
   return devices;
 }
@@ -376,14 +331,9 @@
  * gst_device_monitor_start:
  * @monitor: A #GstDeviceMonitor
  *
- * Starts monitoring the devices. This will cause #GST_MESSAGE_DEVICE messages
- * to be posted on the monitor's bus when devices are added or removed from
- * the system.
- *
- * Since the #GstDeviceMonitor is a singleton,
- * gst_device_monitor_start() may already have been called by another
- * user of the object, gst_device_monitor_stop() needs to be called the same
- * number of times.
+ * Starts monitoring the devices, one this has succeeded, the
+ * %GST_MESSAGE_DEVICE_ADDED and %GST_MESSAGE_DEVICE_REMOVED messages
+ * will be emitted on the bus when the list of devices changes.
  *
  * Returns: %TRUE if the device monitoring could be started
  *
@@ -393,118 +343,262 @@
 gboolean
 gst_device_monitor_start (GstDeviceMonitor * monitor)
 {
-  GstDeviceMonitorClass *klass;
-  gboolean ret = FALSE;
+  guint i;
 
   g_return_val_if_fail (GST_IS_DEVICE_MONITOR (monitor), FALSE);
-  klass = GST_DEVICE_MONITOR_GET_CLASS (monitor);
 
-  g_mutex_lock (&monitor->priv->start_lock);
+  GST_OBJECT_LOCK (monitor);
 
-  if (monitor->priv->started_count > 0) {
-    ret = TRUE;
-    goto started;
+  if (monitor->priv->filters->len == 0) {
+    GST_OBJECT_UNLOCK (monitor);
+    GST_WARNING_OBJECT (monitor, "No filters have been set, will expose all "
+        "devices found");
+    gst_device_monitor_add_filter (monitor, NULL, NULL);
+    GST_OBJECT_LOCK (monitor);
   }
 
-  if (klass->start)
-    ret = klass->start (monitor);
-
-  if (ret) {
-    monitor->priv->started_count++;
-    gst_bus_set_flushing (monitor->priv->bus, FALSE);
+  if (monitor->priv->providers->len == 0) {
+    GST_OBJECT_UNLOCK (monitor);
+    GST_WARNING_OBJECT (monitor, "No providers match the current filters");
+    return FALSE;
   }
 
-started:
+  gst_bus_set_flushing (monitor->priv->bus, FALSE);
 
-  g_mutex_unlock (&monitor->priv->start_lock);
+  for (i = 0; i < monitor->priv->providers->len; i++) {
+    GstDeviceProvider *provider =
+        g_ptr_array_index (monitor->priv->providers, i);
 
-  return ret;
+    if (gst_device_provider_can_monitor (provider)) {
+      if (!gst_device_provider_start (provider)) {
+        gst_bus_set_flushing (monitor->priv->bus, TRUE);
+
+        for (; i != 0; i--)
+          gst_device_provider_stop (g_ptr_array_index (monitor->priv->providers,
+                  i - 1));
+
+        GST_OBJECT_UNLOCK (monitor);
+        return FALSE;
+      }
+    }
+  }
+
+  monitor->priv->started = TRUE;
+  GST_OBJECT_UNLOCK (monitor);
+
+  return TRUE;
 }
 
 /**
  * gst_device_monitor_stop:
- * @monitor: A #GstDeviceMonitor
+ * @monitor: A #GstDeviceProvider
  *
- * Decreases the use-count by one. If the use count reaches zero, this
- * #GstDeviceMonitor will stop monitoring the devices. This needs to be
- * called the same number of times that gst_device_monitor_start() was called.
+ * Stops monitoring the devices.
  *
  * Since: 1.4
  */
-
 void
 gst_device_monitor_stop (GstDeviceMonitor * monitor)
 {
-  GstDeviceMonitorClass *klass;
+  guint i;
 
   g_return_if_fail (GST_IS_DEVICE_MONITOR (monitor));
-  klass = GST_DEVICE_MONITOR_GET_CLASS (monitor);
 
-  g_mutex_lock (&monitor->priv->start_lock);
+  gst_bus_set_flushing (monitor->priv->bus, TRUE);
 
-  if (monitor->priv->started_count == 1) {
-    gst_bus_set_flushing (monitor->priv->bus, TRUE);
-    if (klass->stop)
-      klass->stop (monitor);
-    GST_OBJECT_LOCK (monitor);
-    g_list_free_full (monitor->devices, (GDestroyNotify) gst_object_unparent);
-    monitor->devices = NULL;
-    GST_OBJECT_UNLOCK (monitor);
-  } else if (monitor->priv->started_count < 1) {
-    g_critical ("Trying to stop a GstDeviceMonitor %s which is already stopped",
-        GST_OBJECT_NAME (monitor));
+  GST_OBJECT_LOCK (monitor);
+  for (i = 0; i < monitor->priv->providers->len; i++) {
+    GstDeviceProvider *provider =
+        g_ptr_array_index (monitor->priv->providers, i);
+
+    if (gst_device_provider_can_monitor (provider))
+      gst_device_provider_stop (provider);
   }
+  monitor->priv->started = FALSE;
+  GST_OBJECT_UNLOCK (monitor);
 
-  monitor->priv->started_count--;
-  g_mutex_unlock (&monitor->priv->start_lock);
 }
 
-
 /**
- * gst_device_monitor_get_factory:
- * @monitor: a #GstDeviceMonitor to request the device monitor factory of.
+ * gst_device_monitor_add_filter:
+ * @monitor: a device monitor
+ * @classes: (allow-none): device classes to use as filter or %NULL for any class
+ * @caps: (allow-none): the #GstCaps to filter or %NULL for ANY
  *
- * Retrieves the factory that was used to create this device monitor.
+ * Adds a filter for which #GstDevice will be monitored, any device that matches
+ * all classes and the #GstCaps will be returned.
  *
- * Returns: (transfer none): the #GstDeviceMonitorFactory used for creating this
- *     device monitor. no refcounting is needed.
+ * Filters must be added before the #GstDeviceMonitor is started.
+ *
+ * Returns: The id of the new filter or %0 if no provider matched the filter's
+ *  classes.
  *
  * Since: 1.4
  */
-GstDeviceMonitorFactory *
-gst_device_monitor_get_factory (GstDeviceMonitor * monitor)
+guint
+gst_device_monitor_add_filter (GstDeviceMonitor * monitor,
+    const gchar * classes, GstCaps * caps)
 {
-  g_return_val_if_fail (GST_IS_DEVICE_MONITOR (monitor), NULL);
+  GList *factories = NULL;
+  struct DeviceFilter *filter;
+  guint id = 0;
+  gboolean matched = FALSE;
 
-  return GST_DEVICE_MONITOR_GET_CLASS (monitor)->factory;
+  g_return_val_if_fail (GST_IS_DEVICE_MONITOR (monitor), 0);
+  g_return_val_if_fail (!monitor->priv->started, 0);
+
+  GST_OBJECT_LOCK (monitor);
+
+  filter = g_slice_new0 (struct DeviceFilter);
+  filter->id = monitor->priv->last_id++;
+  if (caps)
+    filter->caps = gst_caps_ref (caps);
+  else
+    filter->caps = gst_caps_new_any ();
+  if (classes)
+    filter->classesv = g_strsplit (classes, "/", 0);
+
+  factories = gst_device_provider_factory_list_get_device_providers (1);
+
+  while (factories) {
+    GstDeviceProviderFactory *factory = factories->data;
+
+
+    if (gst_device_provider_factory_has_classesv (factory, filter->classesv)) {
+      GstDeviceProvider *provider;
+
+      provider = gst_device_provider_factory_get (factory);
+
+      if (provider) {
+        guint i;
+
+        for (i = 0; i < monitor->priv->providers->len; i++) {
+          if (g_ptr_array_index (monitor->priv->providers, i) == provider) {
+            gst_object_unref (provider);
+            provider = NULL;
+            matched = TRUE;
+            break;
+          }
+        }
+      }
+
+      if (provider) {
+        GstBus *bus = gst_device_provider_get_bus (provider);
+
+        matched = TRUE;
+        gst_bus_enable_sync_message_emission (bus);
+        g_signal_connect (bus, "sync-message",
+            G_CALLBACK (bus_sync_message), monitor);
+        gst_object_unref (bus);
+        g_ptr_array_add (monitor->priv->providers, provider);
+        monitor->priv->cookie++;
+      }
+    }
+
+    factories = g_list_remove (factories, factory);
+    gst_object_unref (factory);
+  }
+
+  /* Ensure there is no leak here */
+  g_assert (factories == NULL);
+
+  if (matched) {
+    id = filter->id;
+    g_ptr_array_add (monitor->priv->filters, filter);
+  } else {
+    device_filter_free (filter);
+  }
+
+  GST_OBJECT_UNLOCK (monitor);
+
+  return id;
 }
 
 /**
- * gst_device_monitor_can_monitor:
- * @monitor: a #GstDeviceMonitor
+ * gst_device_monitor_remove_filter:
+ * @monitor: a device monitor
+ * @filter_id: the id of the filter
  *
- * If this function returns %TRUE, then the device monitor can monitor if
- * devices are added or removed. Otherwise, it can only do static probing.
+ * Removes a filter from the #GstDeviceMonitor using the id that was returned
+ * by gst_device_monitor_add_filter().
  *
- * Returns: %TRUE if the #GstDeviceMonitor support monitoring, %FALSE otherwise
+ * Returns: %TRUE of the filter id was valid, %FALSE otherwise
+ *
+ * Since: 1.4
  */
 gboolean
-gst_device_monitor_can_monitor (GstDeviceMonitor * monitor)
+gst_device_monitor_remove_filter (GstDeviceMonitor * monitor, guint filter_id)
 {
-  GstDeviceMonitorClass *klass;
+  guint i, j;
+  gboolean removed = FALSE;
 
   g_return_val_if_fail (GST_IS_DEVICE_MONITOR (monitor), FALSE);
-  klass = GST_DEVICE_MONITOR_GET_CLASS (monitor);
+  g_return_val_if_fail (!monitor->priv->started, FALSE);
+  g_return_val_if_fail (filter_id > 0, FALSE);
 
-  if (klass->start)
-    return TRUE;
-  else
-    return FALSE;
+  GST_OBJECT_LOCK (monitor);
+  for (i = 0; i < monitor->priv->filters->len; i++) {
+    struct DeviceFilter *filter = g_ptr_array_index (monitor->priv->filters, i);
+
+    if (filter->id == filter_id) {
+      g_ptr_array_remove_index (monitor->priv->filters, i);
+      removed = TRUE;
+      break;
+    }
+  }
+
+  if (removed) {
+    for (i = 0; i < monitor->priv->providers->len; i++) {
+      GstDeviceProvider *provider =
+          g_ptr_array_index (monitor->priv->providers, i);
+      GstDeviceProviderFactory *factory =
+          gst_device_provider_get_factory (provider);
+      gboolean valid = FALSE;
+
+      for (j = 0; j < monitor->priv->filters->len; j++) {
+        struct DeviceFilter *filter =
+            g_ptr_array_index (monitor->priv->filters, j);
+
+        if (gst_device_provider_factory_has_classesv (factory,
+                filter->classesv)) {
+          valid = TRUE;
+          break;
+        }
+      }
+
+      if (!valid) {
+        monitor->priv->cookie++;
+        gst_device_monitor_remove (monitor, i);
+        i--;
+      }
+    }
+  }
+
+  GST_OBJECT_UNLOCK (monitor);
+
+  return removed;
+}
+
+
+
+/**
+ * gst_device_monitor_new:
+ *
+ * Create a new #GstDeviceMonitor
+ *
+ * Returns: (transfer full): a new device monitor.
+ *
+ * Since: 1.4
+ */
+GstDeviceMonitor *
+gst_device_monitor_new (void)
+{
+  return g_object_new (GST_TYPE_DEVICE_MONITOR, NULL);
 }
 
 /**
  * gst_device_monitor_get_bus:
- * @monitor: a #GstDeviceMonitor
+ * @monitor: a #GstDeviceProvider
  *
  * Gets the #GstBus of this #GstDeviceMonitor
  *
@@ -519,69 +613,3 @@
 
   return gst_object_ref (monitor->priv->bus);
 }
-
-/**
- * gst_device_monitor_device_add:
- * @monitor: a #GstDeviceMonitor
- * @device: (transfer full): a #GstDevice that has been added
- *
- * Posts a message on the monitor's #GstBus to inform applications that
- * a new device has been added.
- *
- * This is for use by subclasses.
- *
- * Since: 1.4
- */
-void
-gst_device_monitor_device_add (GstDeviceMonitor * monitor, GstDevice * device)
-{
-  GstMessage *message;
-
-  if (!gst_object_set_parent (GST_OBJECT (device), GST_OBJECT (monitor))) {
-    GST_WARNING_OBJECT (monitor, "Could not parent device %p to monitor,"
-        " it already has a parent", device);
-    return;
-  }
-
-  GST_OBJECT_LOCK (monitor);
-  monitor->devices = g_list_prepend (monitor->devices, gst_object_ref (device));
-  GST_OBJECT_UNLOCK (monitor);
-
-  message = gst_message_new_device_added (GST_OBJECT (monitor), device);
-  gst_bus_post (monitor->priv->bus, message);
-  gst_object_unref (device);
-}
-
-
-/**
- * gst_device_monitor_device_remove:
- * @monitor: a #GstDeviceMonitor
- * @device: a #GstDevice that has been removed
- *
- * Posts a message on the monitor's #GstBus to inform applications that
- * a device has been removed.
- *
- * This is for use by subclasses.
- *
- * Since: 1.4
- */
-void
-gst_device_monitor_device_remove (GstDeviceMonitor * monitor,
-    GstDevice * device)
-{
-  GstMessage *message;
-  GList *item;
-
-  GST_OBJECT_LOCK (monitor);
-  item = g_list_find (monitor->devices, device);
-  if (item) {
-    monitor->devices = g_list_delete_link (monitor->devices, item);
-  }
-  GST_OBJECT_UNLOCK (monitor);
-
-  message = gst_message_new_device_removed (GST_OBJECT (monitor), device);
-  g_signal_emit_by_name (device, "removed");
-  gst_bus_post (monitor->priv->bus, message);
-  if (item)
-    gst_object_unparent (GST_OBJECT (device));
-}
diff --git a/gst/gstdevicemonitor.h b/gst/gstdevicemonitor.h
index f5c3307..2df07e4 100644
--- a/gst/gstdevicemonitor.h
+++ b/gst/gstdevicemonitor.h
@@ -1,7 +1,7 @@
 /* GStreamer
- * Copyright (C) 2012 Olivier Crete <olivier.crete@collabora.com>
+ * Copyright (C) 2013 Olivier Crete <olivier.crete@collabora.com>
  *
- * gstdevicemonitor.h: Device probing and monitoring
+ * gstdevicemonitor.c: Device monitor
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -19,19 +19,20 @@
  * Boston, MA 02111-1307, USA.
  */
 
-#include <gst/gstdevicemonitorfactory.h>
-
 
 #ifndef __GST_DEVICE_MONITOR_H__
 #define __GST_DEVICE_MONITOR_H__
 
-#include <gst/gstelement.h>
+#include <gst/gstobject.h>
+#include <gst/gstdevice.h>
+#include <gst/gstdeviceprovider.h>
+#include <gst/gstdeviceproviderfactory.h>
 
 G_BEGIN_DECLS
 
 typedef struct _GstDeviceMonitor GstDeviceMonitor;
-typedef struct _GstDeviceMonitorClass GstDeviceMonitorClass;
 typedef struct _GstDeviceMonitorPrivate GstDeviceMonitorPrivate;
+typedef struct _GstDeviceMonitorClass GstDeviceMonitorClass;
 
 #define GST_TYPE_DEVICE_MONITOR                 (gst_device_monitor_get_type())
 #define GST_IS_DEVICE_MONITOR(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_DEVICE_MONITOR))
@@ -41,21 +42,16 @@
 #define GST_DEVICE_MONITOR_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_DEVICE_MONITOR, GstDeviceMonitorClass))
 #define GST_DEVICE_MONITOR_CAST(obj)            ((GstDeviceMonitor *)(obj))
 
-
 /**
  * GstDeviceMonitor:
- * @parent: The parent #GstObject
- * @devices: a #GList of the #GstDevice objects
+ * @parent: the parent #GstObject structure
  *
- * The structure of the base #GstDeviceMonitor
+ * Opaque device monitor object structure.
  *
  * Since: 1.4
  */
 struct _GstDeviceMonitor {
-  GstObject         parent;
-
-  /* Protected by the Object lock */
-  GList *devices;
+  GstObject                parent;
 
   /*< private >*/
 
@@ -67,75 +63,37 @@
 /**
  * GstDeviceMonitorClass:
  * @parent_class: the parent #GstObjectClass structure
- * @factory: a pointer to the #GstDeviceMonitorFactory that creates this
- *  monitor
- * @probe: Returns a list of devices that are currently available.
- *  This should never block.
- * @start: Starts monitoring for new devices. Only subclasses that can know
- *  that devices have been added or remove need to implement this method.
- * @stop: Stops monitoring for new devices. Only subclasses that implement
- *  the start() method need to implement this method.
  *
- * The structure of the base #GstDeviceMonitorClass
+ * Opaque device monitor class structure.
  *
  * Since: 1.4
  */
-
 struct _GstDeviceMonitorClass {
-  GstObjectClass    parent_class;
-
-  GstDeviceMonitorFactory     *factory;
-
-  GList*      (*probe) (GstDeviceMonitor * monitor);
-
-  gboolean    (*start) (GstDeviceMonitor * monitor);
-  void        (*stop)  (GstDeviceMonitor * monitor);
-
-  /*< private >*/
-  gpointer metadata;
+  GstObjectClass           parent_class;
 
   /*< private >*/
   gpointer _gst_reserved[GST_PADDING];
 };
 
-GType       gst_device_monitor_get_type (void);
+GType     gst_device_monitor_get_type (void);
+
+GstDeviceMonitor * gst_device_monitor_new  (void);
+
+GstBus *  gst_device_monitor_get_bus (GstDeviceMonitor * monitor);
+
+GList *   gst_device_monitor_get_devices (GstDeviceMonitor * monitor);
 
 
-GList *     gst_device_monitor_get_devices    (GstDeviceMonitor * monitor);
+gboolean  gst_device_monitor_start (GstDeviceMonitor * monitor);
 
-gboolean    gst_device_monitor_start          (GstDeviceMonitor * monitor);
-void        gst_device_monitor_stop           (GstDeviceMonitor * monitor);
-
-gboolean    gst_device_monitor_can_monitor    (GstDeviceMonitor * monitor);
-
-GstBus *    gst_device_monitor_get_bus        (GstDeviceMonitor * monitor);
-
-void        gst_device_monitor_device_add     (GstDeviceMonitor * monitor,
-                                               GstDevice * device);
-void        gst_device_monitor_device_remove  (GstDeviceMonitor * monitor,
-                                               GstDevice * device);
+void      gst_device_monitor_stop  (GstDeviceMonitor * monitor);
 
 
-/* device monitor class meta data */
-void        gst_device_monitor_class_set_metadata          (GstDeviceMonitorClass *klass,
-                                                            const gchar     *longname,
-                                                            const gchar     *classification,
-                                                            const gchar     *description,
-                                                            const gchar     *author);
-void        gst_device_monitor_class_set_static_metadata   (GstDeviceMonitorClass *klass,
-                                                            const gchar     *longname,
-                                                            const gchar     *classification,
-                                                            const gchar     *description,
-                                                            const gchar     *author);
-void        gst_device_monitor_class_add_metadata          (GstDeviceMonitorClass * klass,
-                                                            const gchar * key, const gchar * value);
-void        gst_device_monitor_class_add_static_metadata   (GstDeviceMonitorClass * klass,
-                                                            const gchar * key, const gchar * value);
-const gchar * gst_device_monitor_class_get_metadata        (GstDeviceMonitorClass * klass,
-                                                              const gchar * key);
-
-/* factory management */
-GstDeviceMonitorFactory * gst_device_monitor_get_factory   (GstDeviceMonitor * monitor);
+guint     gst_device_monitor_add_filter (GstDeviceMonitor * monitor,
+                                         const gchar      * classes,
+                                         GstCaps          * caps);
+gboolean  gst_device_monitor_remove_filter (GstDeviceMonitor * monitor,
+                                            guint filter_id);
 
 G_END_DECLS
 
diff --git a/gst/gstdevicemonitorfactory.c b/gst/gstdevicemonitorfactory.c
deleted file mode 100644
index f8c9826..0000000
--- a/gst/gstdevicemonitorfactory.c
+++ /dev/null
@@ -1,594 +0,0 @@
-/* GStreamer
- * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
- *                    2000 Wim Taymans <wtay@chello.be>
- *                    2003 Benjamin Otte <in7y118@public.uni-hamburg.de>
- *
- * gstdevicemonitorfactory.c: GstDeviceMonitorFactory object, support routines
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:gstdevicemonitorfactory
- * @short_description: Create GstDeviceMonitors from a factory
- * @see_also: #GstDeviceMonitor, #GstPlugin, #GstPluginFeature, #GstPadTemplate.
- *
- * #GstDeviceMonitorFactory is used to create instances of device monitors. A
- * GstDeviceMonitorfactory can be added to a #GstPlugin as it is also a
- * #GstPluginFeature.
- *
- * Use the gst_device_monitor_factory_find() and gst_device_monitor_factory_create()
- * functions to create device monitor instances or use gst_device_monitor_factory_make() as a
- * convenient shortcut.
- *
- * Since: 1.4
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "gst_private.h"
-
-#include "gstdevicemonitorfactory.h"
-#include "gst.h"
-
-#include "glib-compat-private.h"
-
-GST_DEBUG_CATEGORY_STATIC (device_monitor_factory_debug);
-#define GST_CAT_DEFAULT device_monitor_factory_debug
-
-static void gst_device_monitor_factory_finalize (GObject * object);
-static void gst_device_monitor_factory_cleanup (GstDeviceMonitorFactory *
-    factory);
-
-/* static guint gst_device_monitor_factory_signals[LAST_SIGNAL] = { 0 }; */
-
-/* this is defined in gstelement.c */
-extern GQuark __gst_devicemonitorclass_factory;
-
-#define _do_init \
-{ \
-  GST_DEBUG_CATEGORY_INIT (device_monitor_factory_debug, "GST_DEVICE_MONITOR_FACTORY", \
-      GST_DEBUG_BOLD | GST_DEBUG_FG_WHITE | GST_DEBUG_BG_RED, \
-      "device monitor factories keep information about installed device monitors"); \
-}
-
-G_DEFINE_TYPE_WITH_CODE (GstDeviceMonitorFactory, gst_device_monitor_factory,
-    GST_TYPE_PLUGIN_FEATURE, _do_init);
-
-static void
-gst_device_monitor_factory_class_init (GstDeviceMonitorFactoryClass * klass)
-{
-  GObjectClass *gobject_class = (GObjectClass *) klass;
-
-  gobject_class->finalize = gst_device_monitor_factory_finalize;
-}
-
-static void
-gst_device_monitor_factory_init (GstDeviceMonitorFactory * factory)
-{
-}
-
-static void
-gst_device_monitor_factory_finalize (GObject * object)
-{
-  GstDeviceMonitorFactory *factory = GST_DEVICE_MONITOR_FACTORY (object);
-  GstDeviceMonitor *monitor;
-
-  gst_device_monitor_factory_cleanup (factory);
-
-  monitor = g_atomic_pointer_get (&factory->monitor);
-  if (monitor)
-    gst_object_unref (monitor);
-
-  G_OBJECT_CLASS (gst_device_monitor_factory_parent_class)->finalize (object);
-}
-
-/**
- * gst_device_monitor_factory_find:
- * @name: name of factory to find
- *
- * Search for an device monitor factory of the given name. Refs the returned
- * device monitor factory; caller is responsible for unreffing.
- *
- * Returns: (transfer full): #GstDeviceMonitorFactory if found, %NULL otherwise
- *
- * Since: 1.4
- */
-GstDeviceMonitorFactory *
-gst_device_monitor_factory_find (const gchar * name)
-{
-  GstPluginFeature *feature;
-
-  g_return_val_if_fail (name != NULL, NULL);
-
-  feature = gst_registry_find_feature (gst_registry_get (), name,
-      GST_TYPE_DEVICE_MONITOR_FACTORY);
-  if (feature)
-    return GST_DEVICE_MONITOR_FACTORY (feature);
-
-  /* this isn't an error, for instance when you query if an device monitor factory is
-   * present */
-  GST_LOG ("no such device monitor factory \"%s\"", name);
-
-  return NULL;
-}
-
-static void
-gst_device_monitor_factory_cleanup (GstDeviceMonitorFactory * factory)
-{
-  if (factory->metadata) {
-    gst_structure_free ((GstStructure *) factory->metadata);
-    factory->metadata = NULL;
-  }
-  if (factory->type) {
-    factory->type = G_TYPE_INVALID;
-  }
-}
-
-#define CHECK_METADATA_FIELD(klass, name, key)                                 \
-  G_STMT_START {                                                               \
-    const gchar *metafield = gst_device_monitor_class_get_metadata (klass, key);      \
-    if (G_UNLIKELY (metafield == NULL || *metafield == '\0')) {                \
-      g_warning ("Device monitor factory metadata for '%s' has no valid %s field", name, key);    \
-      goto detailserror;                                                       \
-    } \
-  } G_STMT_END;
-
-/**
- * gst_device_monitor_register:
- * @plugin: (allow-none): #GstPlugin to register the device monitor with, or %NULL for
- *     a static device monitor.
- * @name: name of device monitors of this type
- * @rank: rank of device monitor (higher rank means more importance when autoplugging)
- * @type: GType of device monitor to register
- *
- * Create a new device monitorfactory capable of instantiating objects of the
- * @type and add the factory to @plugin.
- *
- * Returns: %TRUE, if the registering succeeded, %FALSE on error
- *
- * Since: 1.4
- */
-gboolean
-gst_device_monitor_register (GstPlugin * plugin, const gchar * name, guint rank,
-    GType type)
-{
-  GstPluginFeature *existing_feature;
-  GstRegistry *registry;
-  GstDeviceMonitorFactory *factory;
-  GstDeviceMonitorClass *klass;
-
-  g_return_val_if_fail (name != NULL, FALSE);
-  g_return_val_if_fail (g_type_is_a (type, GST_TYPE_DEVICE_MONITOR), FALSE);
-
-  registry = gst_registry_get ();
-
-  /* check if feature already exists, if it exists there is no need to update it
-   * when the registry is getting updated, outdated plugins and all their
-   * features are removed and readded.
-   */
-  existing_feature = gst_registry_lookup_feature (registry, name);
-  if (existing_feature) {
-    GST_DEBUG_OBJECT (registry, "update existing feature %p (%s)",
-        existing_feature, name);
-    factory = GST_DEVICE_MONITOR_FACTORY_CAST (existing_feature);
-    factory->type = type;
-    existing_feature->loaded = TRUE;
-    g_type_set_qdata (type, __gst_devicemonitorclass_factory, factory);
-    gst_object_unref (existing_feature);
-    return TRUE;
-  }
-
-  factory =
-      GST_DEVICE_MONITOR_FACTORY_CAST (g_object_newv
-      (GST_TYPE_DEVICE_MONITOR_FACTORY, 0, NULL));
-  gst_plugin_feature_set_name (GST_PLUGIN_FEATURE_CAST (factory), name);
-  GST_LOG_OBJECT (factory, "Created new device monitorfactory for type %s",
-      g_type_name (type));
-
-  /* provide info needed during class structure setup */
-  g_type_set_qdata (type, __gst_devicemonitorclass_factory, factory);
-  klass = GST_DEVICE_MONITOR_CLASS (g_type_class_ref (type));
-
-  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_LONGNAME);
-  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_KLASS);
-  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_DESCRIPTION);
-  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_AUTHOR);
-
-  factory->type = type;
-  factory->metadata = gst_structure_copy ((GstStructure *) klass->metadata);
-
-  if (plugin && plugin->desc.name) {
-    GST_PLUGIN_FEATURE_CAST (factory)->plugin_name = plugin->desc.name;
-    GST_PLUGIN_FEATURE_CAST (factory)->plugin = plugin;
-    g_object_add_weak_pointer ((GObject *) plugin,
-        (gpointer *) & GST_PLUGIN_FEATURE_CAST (factory)->plugin);
-  } else {
-    GST_PLUGIN_FEATURE_CAST (factory)->plugin_name = "NULL";
-    GST_PLUGIN_FEATURE_CAST (factory)->plugin = NULL;
-  }
-  gst_plugin_feature_set_rank (GST_PLUGIN_FEATURE_CAST (factory), rank);
-  GST_PLUGIN_FEATURE_CAST (factory)->loaded = TRUE;
-
-  gst_registry_add_feature (registry, GST_PLUGIN_FEATURE_CAST (factory));
-
-  return TRUE;
-
-  /* ERRORS */
-detailserror:
-  {
-    gst_device_monitor_factory_cleanup (factory);
-    return FALSE;
-  }
-}
-
-/**
- * gst_device_monitor_factory_get:
- * @factory: factory to instantiate
- *
- * Returns the device monitor of the type defined by the given device
- * monitorfactory.
- *
- * Returns: (transfer full): the #GstDeviceMonitor or %NULL if the
- *     device monitor couldn't be created
- *
- * Since: 1.4
- */
-GstDeviceMonitor *
-gst_device_monitor_factory_get (GstDeviceMonitorFactory * factory)
-{
-  GstDeviceMonitor *device_monitor;
-  GstDeviceMonitorClass *oclass;
-  GstDeviceMonitorFactory *newfactory;
-
-  g_return_val_if_fail (factory != NULL, NULL);
-
-  newfactory =
-      GST_DEVICE_MONITOR_FACTORY (gst_plugin_feature_load (GST_PLUGIN_FEATURE
-          (factory)));
-
-  if (newfactory == NULL)
-    goto load_failed;
-
-  factory = newfactory;
-
-  GST_INFO ("getting device monitor \"%s\"", GST_OBJECT_NAME (factory));
-
-  if (factory->type == 0)
-    goto no_type;
-
-  device_monitor = g_atomic_pointer_get (&newfactory->monitor);
-  if (device_monitor)
-    return gst_object_ref (device_monitor);
-
-  /* create an instance of the device monitor, cast so we don't assert on NULL
-   * also set name as early as we can
-   */
-  device_monitor = GST_DEVICE_MONITOR_CAST (g_object_newv (factory->type, 0,
-          NULL));
-  if (G_UNLIKELY (device_monitor == NULL))
-    goto no_device_monitor;
-
-  /* fill in the pointer to the factory in the device monitor class. The
-   * class will not be unreffed currently.
-   * Be thread safe as there might be 2 threads creating the first instance of
-   * an device monitor at the same moment
-   */
-  oclass = GST_DEVICE_MONITOR_GET_CLASS (device_monitor);
-  if (!g_atomic_pointer_compare_and_exchange (&oclass->factory, NULL, factory))
-    gst_object_unref (factory);
-
-  gst_object_ref_sink (device_monitor);
-
-  /* We use an atomic to make sure we don't create two in parallel */
-  if (!g_atomic_pointer_compare_and_exchange (&newfactory->monitor, NULL,
-          device_monitor)) {
-    gst_object_unref (device_monitor);
-
-    device_monitor = g_atomic_pointer_get (&newfactory->monitor);
-  }
-
-  GST_DEBUG ("created device monitor \"%s\"", GST_OBJECT_NAME (factory));
-
-  return gst_object_ref (device_monitor);
-
-  /* ERRORS */
-load_failed:
-  {
-    GST_WARNING_OBJECT (factory,
-        "loading plugin containing feature %s returned NULL!",
-        GST_OBJECT_NAME (factory));
-    return NULL;
-  }
-no_type:
-  {
-    GST_WARNING_OBJECT (factory, "factory has no type");
-    gst_object_unref (factory);
-    return NULL;
-  }
-no_device_monitor:
-  {
-    GST_WARNING_OBJECT (factory, "could not create device monitor");
-    gst_object_unref (factory);
-    return NULL;
-  }
-}
-
-/**
- * gst_device_monitor_factory_get_by_name:
- * @factoryname: a named factory to instantiate
- *
- * Returns the device monitor of the type defined by the given device
- * monitor factory.
- *
- * Returns: (transfer full): a #GstDeviceMonitor or %NULL if unable to
- * create device monitor
- *
- * Since: 1.4
- */
-GstDeviceMonitor *
-gst_device_monitor_factory_get_by_name (const gchar * factoryname)
-{
-  GstDeviceMonitorFactory *factory;
-  GstDeviceMonitor *device_monitor;
-
-  g_return_val_if_fail (factoryname != NULL, NULL);
-  g_return_val_if_fail (gst_is_initialized (), NULL);
-
-  GST_LOG ("gstdevicemonitorfactory: get_by_name \"%s\"", factoryname);
-
-  factory = gst_device_monitor_factory_find (factoryname);
-  if (factory == NULL)
-    goto no_factory;
-
-  GST_LOG_OBJECT (factory, "found factory %p", factory);
-  device_monitor = gst_device_monitor_factory_get (factory);
-  if (device_monitor == NULL)
-    goto create_failed;
-
-  gst_object_unref (factory);
-  return device_monitor;
-
-  /* ERRORS */
-no_factory:
-  {
-    GST_INFO ("no such device monitor factory \"%s\"!", factoryname);
-    return NULL;
-  }
-create_failed:
-  {
-    GST_INFO_OBJECT (factory, "couldn't create instance!");
-    gst_object_unref (factory);
-    return NULL;
-  }
-}
-
-/**
- * gst_device_monitor_factory_get_device_monitor_type:
- * @factory: factory to get managed #GType from
- *
- * Get the #GType for device monitors managed by this factory. The type can
- * only be retrieved if the device monitor factory is loaded, which can be
- * assured with gst_plugin_feature_load().
- *
- * Returns: the #GType for device monitors managed by this factory or 0 if
- * the factory is not loaded.
- *
- * Since: 1.4
- */
-GType
-gst_device_monitor_factory_get_device_monitor_type (GstDeviceMonitorFactory *
-    factory)
-{
-  g_return_val_if_fail (GST_IS_DEVICE_MONITOR_FACTORY (factory), 0);
-
-  return factory->type;
-}
-
-/**
- * gst_device_monitor_factory_get_metadata:
- * @factory: a #GstDeviceMonitorFactory
- * @key: a key
- *
- * Get the metadata on @factory with @key.
- *
- * Returns: the metadata with @key on @factory or %NULL when there was no
- * metadata with the given @key.
- *
- * Since: 1.4
- */
-const gchar *
-gst_device_monitor_factory_get_metadata (GstDeviceMonitorFactory * factory,
-    const gchar * key)
-{
-  return gst_structure_get_string ((GstStructure *) factory->metadata, key);
-}
-
-/**
- * gst_device_monitor_factory_get_metadata_keys:
- * @factory: a #GstDeviceMonitorFactory
- *
- * Get the available keys for the metadata on @factory.
- *
- * Returns: (transfer full) (element-type utf8) (array zero-terminated=1):
- * a %NULL-terminated array of key strings, or %NULL when there is no
- * metadata. Free with g_strfreev() when no longer needed.
- *
- * Since: 1.4
- */
-gchar **
-gst_device_monitor_factory_get_metadata_keys (GstDeviceMonitorFactory * factory)
-{
-  GstStructure *metadata;
-  gchar **arr;
-  gint i, num;
-
-  g_return_val_if_fail (GST_IS_DEVICE_MONITOR_FACTORY (factory), NULL);
-
-  metadata = (GstStructure *) factory->metadata;
-  if (metadata == NULL)
-    return NULL;
-
-  num = gst_structure_n_fields (metadata);
-  if (num == 0)
-    return NULL;
-
-  arr = g_new (gchar *, num + 1);
-  for (i = 0; i < num; ++i) {
-    arr[i] = g_strdup (gst_structure_nth_field_name (metadata, i));
-  }
-  arr[i] = NULL;
-  return arr;
-}
-
-/**
- * gst_device_monitor_factory_has_classesv:
- * @factory: a #GstDeviceMonitorFactory
- * @classes: (array zero-terminated=1): a %NULL terminated array of
- *   klasses to match, only match if all classes are matched
- *
- * Check if @factory matches all of the given classes
- *
- * Returns: %TRUE if @factory matches.
- *
- * Since: 1.4
- */
-gboolean
-gst_device_monitor_factory_has_classesv (GstDeviceMonitorFactory * factory,
-    gchar ** classes)
-{
-  const gchar *klass;
-
-  g_return_val_if_fail (GST_IS_DEVICE_MONITOR_FACTORY (factory), FALSE);
-
-  klass = gst_device_monitor_factory_get_metadata (factory,
-      GST_ELEMENT_METADATA_KLASS);
-
-  if (klass == NULL) {
-    GST_ERROR_OBJECT (factory,
-        "device monitor factory is missing klass identifiers");
-    return FALSE;
-  }
-
-  for (; classes[0]; classes++) {
-    const gchar *found;
-    guint len;
-
-    if (classes[0] == '\0')
-      continue;
-
-    found = strstr (klass, classes[0]);
-
-    if (!found)
-      return FALSE;
-    if (found != klass && *(found - 1) != '/')
-      return FALSE;
-
-    len = strlen (classes[0]);
-    if (found[len] != 0 && found[len] != '/')
-      return FALSE;
-  }
-
-  return TRUE;
-}
-
-/**
- * gst_device_monitor_factory_has_classes:
- * @factory: a #GstDeviceMonitorFactory
- * @classes: a "/" separate list of klasses to match, only match if all classes
- *  are matched
- *
- * Check if @factory matches all of the given @classes
- *
- * Returns: %TRUE if @factory matches.
- *
- * Since: 1.4
- */
-gboolean
-gst_device_monitor_factory_has_classes (GstDeviceMonitorFactory * factory,
-    const gchar * classes)
-{
-  gchar **classesv;
-  gboolean res;
-
-  classesv = g_strsplit (classes, "/", 0);
-
-  res = gst_device_monitor_factory_has_classesv (factory, classesv);
-
-  g_strfreev (classesv);
-
-  return res;
-}
-
-typedef struct
-{
-  const char *classes;
-  GstRank minrank;
-} FilterData;
-
-static gboolean
-device_monitor_filter (GstPluginFeature * feature, FilterData * data)
-{
-  gboolean res;
-
-  /* we only care about device monitor factories */
-  if (G_UNLIKELY (!GST_IS_DEVICE_MONITOR_FACTORY (feature)))
-    return FALSE;
-
-  res = (gst_plugin_feature_get_rank (feature) >= data->minrank) &&
-      gst_device_monitor_factory_has_classes (GST_DEVICE_MONITOR_FACTORY_CAST
-      (feature), data->classes);
-
-  return res;
-}
-
-/**
- * gst_device_monitor_factory_list_get_device_monitors:
- * @classes: a "/" separate list of klasses to match, only match if all classes
- *  are matched
- * @minrank: Minimum rank
- *
- * Get a list of factories that match all of the given @classes. Only
- * device monitors with a rank greater or equal to @minrank will be
- * returned.  The list of factories is returned by decreasing rank.
- *
- * Returns: (transfer full) (element-type Gst.DeviceMonitorFactory): a #GList of
- *     #GstDeviceMonitorFactory device monitors. Use gst_plugin_feature_list_free() after
- *     usage.
- *
- * Since: 1.4
- */
-GList *gst_device_monitor_factory_list_get_device_monitors
-    (const gchar * classes, GstRank minrank)
-{
-  GList *result;
-  FilterData data;
-
-  /* prepare type */
-  data.classes = classes;
-  data.minrank = minrank;
-
-  /* get the feature list using the filter */
-  result = gst_registry_feature_filter (gst_registry_get (),
-      (GstPluginFeatureFilter) device_monitor_filter, FALSE, &data);
-
-  /* sort on rank and name */
-  result = g_list_sort (result, gst_plugin_feature_rank_compare_func);
-
-  return result;
-}
diff --git a/gst/gstdevicemonitorfactory.h b/gst/gstdevicemonitorfactory.h
deleted file mode 100644
index 02bf04a..0000000
--- a/gst/gstdevicemonitorfactory.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/* GStreamer
- * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
- *               2000,2004 Wim Taymans <wim@fluendo.com>
- *               2012 Olivier Crete <olivier.crete@collabora.com>
- *
- * gstdevicemonitorfactory.h: Header for GstDeviceMonitorFactory
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-
-#ifndef __GST_DEVICE_MONITOR_FACTORY_H__
-#define __GST_DEVICE_MONITOR_FACTORY_H__
-
-/**
- * GstDeviceMonitorFactory:
- *
- * The opaque #GstDeviceMonitorFactory data structure.
- *
- * Since: 1.4
- */
-
-/**
- * GstDeviceMonitorFactoryClass:
- *
- * The opaque #GstDeviceMonitorFactoryClass data structure.
- *
- * Since: 1.4
- */
-typedef struct _GstDeviceMonitorFactory GstDeviceMonitorFactory;
-typedef struct _GstDeviceMonitorFactoryClass GstDeviceMonitorFactoryClass;
-
-#include <gst/gstconfig.h>
-#include <gst/gstplugin.h>
-#include <gst/gstpluginfeature.h>
-#include <gst/gstdevicemonitor.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_DEVICE_MONITOR_FACTORY            (gst_device_monitor_factory_get_type())
-#define GST_DEVICE_MONITOR_FACTORY(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DEVICE_MONITOR_FACTORY,\
-                                                 GstDeviceMonitorFactory))
-#define GST_DEVICE_MONITOR_FACTORY_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DEVICE_MONITOR_FACTORY,\
-                                                 GstDeviceMonitorFactoryClass))
-#define GST_IS_DEVICE_MONITOR_FACTORY(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DEVICE_MONITOR_FACTORY))
-#define GST_IS_DEVICE_MONITOR_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DEVICE_MONITOR_FACTORY))
-#define GST_DEVICE_MONITOR_FACTORY_CAST(obj)       ((GstDeviceMonitorFactory *)(obj))
-
-GType                   gst_device_monitor_factory_get_type          (void);
-
-GstDeviceMonitorFactory * gst_device_monitor_factory_find            (const gchar *name);
-
-GType                   gst_device_monitor_factory_get_device_monitor_type (GstDeviceMonitorFactory *factory);
-
-const gchar *           gst_device_monitor_factory_get_metadata       (GstDeviceMonitorFactory *factory, const gchar *key);
-gchar **                gst_device_monitor_factory_get_metadata_keys  (GstDeviceMonitorFactory *factory);
-
-GstDeviceMonitor*       gst_device_monitor_factory_get                (GstDeviceMonitorFactory *factory) G_GNUC_MALLOC;
-GstDeviceMonitor*       gst_device_monitor_factory_get_by_name        (const gchar *factoryname) G_GNUC_MALLOC;
-
-gboolean                gst_device_monitor_register                   (GstPlugin *plugin, const gchar *name,
-                                                                       guint rank,
-                                                                       GType type);
-
-gboolean      gst_device_monitor_factory_has_classesv (GstDeviceMonitorFactory * factory,
-                                                       gchar ** classes);
-
-gboolean      gst_device_monitor_factory_has_classes (GstDeviceMonitorFactory *factory,
-                                                      const gchar * classes);
-
-GList *       gst_device_monitor_factory_list_get_device_monitors (const gchar *classes,
-                                                                   GstRank minrank) G_GNUC_MALLOC;
-
-G_END_DECLS
-
-#endif /* __GST_DEVICE_MONITOR_FACTORY_H__ */
diff --git a/gst/gstdeviceprovider.c b/gst/gstdeviceprovider.c
new file mode 100644
index 0000000..8ad737c
--- /dev/null
+++ b/gst/gstdeviceprovider.c
@@ -0,0 +1,594 @@
+/* GStreamer
+ * Copyright (C) 2012 Olivier Crete <olivier.crete@collabora.com>
+ *
+ * gstdeviceprovider.c: Device probing and monitoring
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/**
+ * SECTION:gstdeviceprovider
+ * @short_description: A device provider
+ * @see_also: #GstDevice, #GstDeviceMonitor
+ *
+ * A #GstDeviceProvider subclass is provided by a plugin that handles devices
+ * if there is a way to programatically list connected devices. It can also
+ * optionally provide updates to the list of connected devices.
+ *
+ * Each #GstDeviceProvider subclass is a singleton, a plugin should
+ * normally provide a single subclass for all devices.
+ *
+ * Applications would normally use a #GstDeviceMonitor to monitor devices
+ * from all relevant providers.
+ *
+ * Since: 1.4
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "gst_private.h"
+
+#include "gstdeviceprovider.h"
+
+#include "gstelementmetadata.h"
+#include "gstquark.h"
+
+struct _GstDeviceProviderPrivate
+{
+  GstBus *bus;
+
+  GMutex start_lock;
+
+  gboolean started_count;
+};
+
+/* this is used in gstelementfactory.c:gst_element_register() */
+GQuark __gst_deviceproviderclass_factory = 0;
+
+static void gst_device_provider_class_init (GstDeviceProviderClass * klass);
+static void gst_device_provider_init (GstDeviceProvider * element);
+static void gst_device_provider_base_class_init (gpointer g_class);
+static void gst_device_provider_base_class_finalize (gpointer g_class);
+static void gst_device_provider_dispose (GObject * object);
+static void gst_device_provider_finalize (GObject * object);
+
+static gpointer gst_device_provider_parent_class = NULL;
+
+GType
+gst_device_provider_get_type (void)
+{
+  static volatile gsize gst_device_provider_type = 0;
+
+  if (g_once_init_enter (&gst_device_provider_type)) {
+    GType _type;
+    static const GTypeInfo element_info = {
+      sizeof (GstDeviceProviderClass),
+      gst_device_provider_base_class_init,
+      gst_device_provider_base_class_finalize,
+      (GClassInitFunc) gst_device_provider_class_init,
+      NULL,
+      NULL,
+      sizeof (GstDeviceProvider),
+      0,
+      (GInstanceInitFunc) gst_device_provider_init,
+      NULL
+    };
+
+    _type = g_type_register_static (GST_TYPE_OBJECT, "GstDeviceProvider",
+        &element_info, G_TYPE_FLAG_ABSTRACT);
+
+    __gst_deviceproviderclass_factory =
+        g_quark_from_static_string ("GST_DEVICEPROVIDERCLASS_FACTORY");
+    g_once_init_leave (&gst_device_provider_type, _type);
+  }
+  return gst_device_provider_type;
+}
+
+static void
+gst_device_provider_base_class_init (gpointer g_class)
+{
+  GstDeviceProviderClass *klass = GST_DEVICE_PROVIDER_CLASS (g_class);
+
+  /* Copy the element details here so elements can inherit the
+   * details from their base class and classes only need to set
+   * the details in class_init instead of base_init */
+  klass->metadata =
+      klass->metadata ? gst_structure_copy (klass->metadata) :
+      gst_structure_new_empty ("metadata");
+
+  klass->factory = g_type_get_qdata (G_TYPE_FROM_CLASS (klass),
+      __gst_deviceproviderclass_factory);
+}
+
+static void
+gst_device_provider_base_class_finalize (gpointer g_class)
+{
+  GstDeviceProviderClass *klass = GST_DEVICE_PROVIDER_CLASS (g_class);
+
+  gst_structure_free (klass->metadata);
+}
+
+static void
+gst_device_provider_class_init (GstDeviceProviderClass * klass)
+{
+  GObjectClass *gobject_class = (GObjectClass *) klass;
+
+  gst_device_provider_parent_class = g_type_class_peek_parent (klass);
+
+  g_type_class_add_private (klass, sizeof (GstDeviceProviderPrivate));
+
+  gobject_class->dispose = gst_device_provider_dispose;
+  gobject_class->finalize = gst_device_provider_finalize;
+}
+
+static void
+gst_device_provider_init (GstDeviceProvider * provider)
+{
+  provider->priv = G_TYPE_INSTANCE_GET_PRIVATE (provider,
+      GST_TYPE_DEVICE_PROVIDER, GstDeviceProviderPrivate);
+
+  g_mutex_init (&provider->priv->start_lock);
+
+  provider->priv->bus = gst_bus_new ();
+  gst_bus_set_flushing (provider->priv->bus, TRUE);
+}
+
+
+static void
+gst_device_provider_dispose (GObject * object)
+{
+  GstDeviceProvider *provider = GST_DEVICE_PROVIDER (object);
+
+  gst_object_replace ((GstObject **) & provider->priv->bus, NULL);
+
+  GST_OBJECT_LOCK (provider);
+  g_list_free_full (provider->devices, (GDestroyNotify) gst_object_unparent);
+  provider->devices = NULL;
+  GST_OBJECT_UNLOCK (provider);
+
+  G_OBJECT_CLASS (gst_device_provider_parent_class)->dispose (object);
+}
+
+static void
+gst_device_provider_finalize (GObject * object)
+{
+  GstDeviceProvider *provider = GST_DEVICE_PROVIDER (object);
+
+  g_mutex_clear (&provider->priv->start_lock);
+
+  G_OBJECT_CLASS (gst_device_provider_parent_class)->finalize (object);
+}
+
+/**
+ * gst_device_provider_class_add_metadata:
+ * @klass: class to set metadata for
+ * @key: the key to set
+ * @value: the value to set
+ *
+ * Set @key with @value as metadata in @klass.
+ *
+ * Since: 1.4
+ */
+void
+gst_device_provider_class_add_metadata (GstDeviceProviderClass * klass,
+    const gchar * key, const gchar * value)
+{
+  g_return_if_fail (GST_IS_DEVICE_PROVIDER_CLASS (klass));
+  g_return_if_fail (key != NULL);
+  g_return_if_fail (value != NULL);
+
+  gst_structure_set ((GstStructure *) klass->metadata,
+      key, G_TYPE_STRING, value, NULL);
+}
+
+/**
+ * gst_device_provider_class_add_static_metadata:
+ * @klass: class to set metadata for
+ * @key: the key to set
+ * @value: (transfer full): the value to set
+ *
+ * Set @key with @value as metadata in @klass.
+ *
+ * Same as gst_device_provider_class_add_metadata(), but @value must be a static string
+ * or an inlined string, as it will not be copied. (GStreamer plugins will
+ * be made resident once loaded, so this function can be used even from
+ * dynamically loaded plugins.)
+ *
+ * Since: 1.4
+ */
+void
+gst_device_provider_class_add_static_metadata (GstDeviceProviderClass * klass,
+    const gchar * key, const gchar * value)
+{
+  GValue val = G_VALUE_INIT;
+
+  g_return_if_fail (GST_IS_DEVICE_PROVIDER_CLASS (klass));
+  g_return_if_fail (key != NULL);
+  g_return_if_fail (value != NULL);
+
+  g_value_init (&val, G_TYPE_STRING);
+  g_value_set_static_string (&val, value);
+  gst_structure_take_value ((GstStructure *) klass->metadata, key, &val);
+}
+
+/**
+ * gst_device_provider_class_set_metadata:
+ * @klass: class to set metadata for
+ * @longname: The long English name of the device provider. E.g. "File Sink"
+ * @classification: String describing the type of device provider, as an
+ *  unordered list separated with slashes ('/'). See draft-klass.txt of the
+ *  design docs
+ * for more details and common types. E.g: "Sink/File"
+ * @description: Sentence describing the purpose of the device provider.
+ * E.g: "Write stream to a file"
+ * @author: Name and contact details of the author(s). Use \n to separate
+ * multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;"
+ *
+ * Sets the detailed information for a #GstDeviceProviderClass.
+ * <note>This function is for use in _class_init functions only.</note>
+ *
+ * Since: 1.4
+ */
+void
+gst_device_provider_class_set_metadata (GstDeviceProviderClass * klass,
+    const gchar * longname, const gchar * classification,
+    const gchar * description, const gchar * author)
+{
+  g_return_if_fail (GST_IS_DEVICE_PROVIDER_CLASS (klass));
+  g_return_if_fail (longname != NULL && *longname != '\0');
+  g_return_if_fail (classification != NULL && *classification != '\0');
+  g_return_if_fail (description != NULL && *description != '\0');
+  g_return_if_fail (author != NULL && *author != '\0');
+
+  gst_structure_id_set ((GstStructure *) klass->metadata,
+      GST_QUARK (ELEMENT_METADATA_LONGNAME), G_TYPE_STRING, longname,
+      GST_QUARK (ELEMENT_METADATA_KLASS), G_TYPE_STRING, classification,
+      GST_QUARK (ELEMENT_METADATA_DESCRIPTION), G_TYPE_STRING, description,
+      GST_QUARK (ELEMENT_METADATA_AUTHOR), G_TYPE_STRING, author, NULL);
+}
+
+/**
+ * gst_device_provider_class_set_static_metadata:
+ * @klass: class to set metadata for
+ * @longname: (transfer full): The long English name of the element. E.g. "File Sink"
+ * @classification: (transfer full): String describing the type of element, as
+ * an unordered list separated with slashes ('/'). See draft-klass.txt of the
+ * design docs for more details and common types. E.g: "Sink/File"
+ * @description: (transfer full): Sentence describing the purpose of the
+ * element.  E.g: "Write stream to a file"
+ * @author: (transfer full): Name and contact details of the author(s). Use \n
+ * to separate multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at
+ * foo.com&gt;"
+ *
+ * Sets the detailed information for a #GstDeviceProviderClass.
+ * <note>This function is for use in _class_init functions only.</note>
+ *
+ * Same as gst_device_provider_class_set_metadata(), but @longname, @classification,
+ * @description, and @author must be static strings or inlined strings, as
+ * they will not be copied. (GStreamer plugins will be made resident once
+ * loaded, so this function can be used even from dynamically loaded plugins.)
+ *
+ * Since: 1.4
+ */
+void
+gst_device_provider_class_set_static_metadata (GstDeviceProviderClass * klass,
+    const gchar * longname, const gchar * classification,
+    const gchar * description, const gchar * author)
+{
+  GstStructure *s = (GstStructure *) klass->metadata;
+  GValue val = G_VALUE_INIT;
+
+  g_return_if_fail (GST_IS_DEVICE_PROVIDER_CLASS (klass));
+  g_return_if_fail (longname != NULL && *longname != '\0');
+  g_return_if_fail (classification != NULL && *classification != '\0');
+  g_return_if_fail (description != NULL && *description != '\0');
+  g_return_if_fail (author != NULL && *author != '\0');
+
+  g_value_init (&val, G_TYPE_STRING);
+
+  g_value_set_static_string (&val, longname);
+  gst_structure_id_set_value (s, GST_QUARK (ELEMENT_METADATA_LONGNAME), &val);
+
+  g_value_set_static_string (&val, classification);
+  gst_structure_id_set_value (s, GST_QUARK (ELEMENT_METADATA_KLASS), &val);
+
+  g_value_set_static_string (&val, description);
+  gst_structure_id_set_value (s, GST_QUARK (ELEMENT_METADATA_DESCRIPTION),
+      &val);
+
+  g_value_set_static_string (&val, author);
+  gst_structure_id_take_value (s, GST_QUARK (ELEMENT_METADATA_AUTHOR), &val);
+}
+
+/**
+ * gst_device_provider_class_get_metadata:
+ * @klass: class to get metadata for
+ * @key: the key to get
+ *
+ * Get metadata with @key in @klass.
+ *
+ * Returns: the metadata for @key.
+ *
+ * Since: 1.4
+ */
+const gchar *
+gst_device_provider_class_get_metadata (GstDeviceProviderClass * klass,
+    const gchar * key)
+{
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER_CLASS (klass), NULL);
+  g_return_val_if_fail (key != NULL, NULL);
+
+  return gst_structure_get_string ((GstStructure *) klass->metadata, key);
+}
+
+/**
+ * gst_device_provider_get_devices:
+ * @provider: A #GstDeviceProvider
+ *
+ * Gets a list of devices that this provider understands. This may actually
+ * probe the hardware if the provider is not currently started.
+ *
+ * Returns: (transfer full) (element-type GstDevice): a #GList of
+ *   #GstDevice
+ *
+ * Since: 1.4
+ */
+
+GList *
+gst_device_provider_get_devices (GstDeviceProvider * provider)
+{
+  GstDeviceProviderClass *klass;
+  GList *devices = NULL;
+  gboolean started;
+  GList *item;
+
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER (provider), NULL);
+  klass = GST_DEVICE_PROVIDER_GET_CLASS (provider);
+
+  g_mutex_lock (&provider->priv->start_lock);
+  started = (provider->priv->started_count > 0);
+
+  if (started) {
+    GST_OBJECT_LOCK (provider);
+    for (item = provider->devices; item; item = item->next)
+      devices = g_list_prepend (devices, gst_object_ref (item->data));
+    GST_OBJECT_UNLOCK (provider);
+  } else if (klass->probe)
+    devices = klass->probe (provider);
+
+  g_mutex_unlock (&provider->priv->start_lock);
+
+  return devices;
+}
+
+/**
+ * gst_device_provider_start:
+ * @provider: A #GstDeviceProvider
+ *
+ * Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED
+ * and #GST_MESSAGE_DEVICE_REMOVED messages to be posted on the provider's bus
+ * when devices are added or removed from the system.
+ *
+ * Since the #GstDeviceProvider is a singleton,
+ * gst_device_provider_start() may already have been called by another
+ * user of the object, gst_device_provider_stop() needs to be called the same
+ * number of times.
+ *
+ * Returns: %TRUE if the device providering could be started
+ *
+ * Since: 1.4
+ */
+
+gboolean
+gst_device_provider_start (GstDeviceProvider * provider)
+{
+  GstDeviceProviderClass *klass;
+  gboolean ret = FALSE;
+
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER (provider), FALSE);
+  klass = GST_DEVICE_PROVIDER_GET_CLASS (provider);
+
+  g_mutex_lock (&provider->priv->start_lock);
+
+  if (provider->priv->started_count > 0) {
+    ret = TRUE;
+    goto started;
+  }
+
+  if (klass->start)
+    ret = klass->start (provider);
+
+  if (ret) {
+    provider->priv->started_count++;
+    gst_bus_set_flushing (provider->priv->bus, FALSE);
+  }
+
+started:
+
+  g_mutex_unlock (&provider->priv->start_lock);
+
+  return ret;
+}
+
+/**
+ * gst_device_provider_stop:
+ * @provider: A #GstDeviceProvider
+ *
+ * Decreases the use-count by one. If the use count reaches zero, this
+ * #GstDeviceProvider will stop providering the devices. This needs to be
+ * called the same number of times that gst_device_provider_start() was called.
+ *
+ * Since: 1.4
+ */
+
+void
+gst_device_provider_stop (GstDeviceProvider * provider)
+{
+  GstDeviceProviderClass *klass;
+
+  g_return_if_fail (GST_IS_DEVICE_PROVIDER (provider));
+  klass = GST_DEVICE_PROVIDER_GET_CLASS (provider);
+
+  g_mutex_lock (&provider->priv->start_lock);
+
+  if (provider->priv->started_count == 1) {
+    gst_bus_set_flushing (provider->priv->bus, TRUE);
+    if (klass->stop)
+      klass->stop (provider);
+    GST_OBJECT_LOCK (provider);
+    g_list_free_full (provider->devices, (GDestroyNotify) gst_object_unparent);
+    provider->devices = NULL;
+    GST_OBJECT_UNLOCK (provider);
+  } else if (provider->priv->started_count < 1) {
+    g_critical
+        ("Trying to stop a GstDeviceProvider %s which is already stopped",
+        GST_OBJECT_NAME (provider));
+  }
+
+  provider->priv->started_count--;
+  g_mutex_unlock (&provider->priv->start_lock);
+}
+
+
+/**
+ * gst_device_provider_get_factory:
+ * @provider: a #GstDeviceProvider to request the device provider factory of.
+ *
+ * Retrieves the factory that was used to create this device provider.
+ *
+ * Returns: (transfer none): the #GstDeviceProviderFactory used for
+ *     creating this device provider. no refcounting is needed.
+ *
+ * Since: 1.4
+ */
+GstDeviceProviderFactory *
+gst_device_provider_get_factory (GstDeviceProvider * provider)
+{
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER (provider), NULL);
+
+  return GST_DEVICE_PROVIDER_GET_CLASS (provider)->factory;
+}
+
+/**
+ * gst_device_provider_can_provider:
+ * @provider: a #GstDeviceProvider
+ *
+ * If this function returns %TRUE, then the device provider can provider if
+ * devices are added or removed. Otherwise, it can only do static probing.
+ *
+ * Returns: %TRUE if the #GstDeviceProvider support providering, %FALSE otherwise
+ */
+gboolean
+gst_device_provider_can_monitor (GstDeviceProvider * provider)
+{
+  GstDeviceProviderClass *klass;
+
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER (provider), FALSE);
+  klass = GST_DEVICE_PROVIDER_GET_CLASS (provider);
+
+  if (klass->start)
+    return TRUE;
+  else
+    return FALSE;
+}
+
+/**
+ * gst_device_provider_get_bus:
+ * @provider: a #GstDeviceProvider
+ *
+ * Gets the #GstBus of this #GstDeviceProvider
+ *
+ * Returns: (transfer full): a #GstBus
+ *
+ * Since: 1.4
+ */
+GstBus *
+gst_device_provider_get_bus (GstDeviceProvider * provider)
+{
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER (provider), NULL);
+
+  return gst_object_ref (provider->priv->bus);
+}
+
+/**
+ * gst_device_provider_device_add:
+ * @provider: a #GstDeviceProvider
+ * @device: (transfer full): a #GstDevice that has been added
+ *
+ * Posts a message on the provider's #GstBus to inform applications that
+ * a new device has been added.
+ *
+ * This is for use by subclasses.
+ *
+ * Since: 1.4
+ */
+void
+gst_device_provider_device_add (GstDeviceProvider * provider,
+    GstDevice * device)
+{
+  GstMessage *message;
+
+  if (!gst_object_set_parent (GST_OBJECT (device), GST_OBJECT (provider))) {
+    GST_WARNING_OBJECT (provider, "Could not parent device %p to provider,"
+        " it already has a parent", device);
+    return;
+  }
+
+  GST_OBJECT_LOCK (provider);
+  provider->devices = g_list_prepend (provider->devices,
+      gst_object_ref (device));
+  GST_OBJECT_UNLOCK (provider);
+
+  message = gst_message_new_device_added (GST_OBJECT (provider), device);
+  gst_bus_post (provider->priv->bus, message);
+  gst_object_unref (device);
+}
+
+
+/**
+ * gst_device_provider_device_remove:
+ * @provider: a #GstDeviceProvider
+ * @device: a #GstDevice that has been removed
+ *
+ * Posts a message on the provider's #GstBus to inform applications that
+ * a device has been removed.
+ *
+ * This is for use by subclasses.
+ *
+ * Since: 1.4
+ */
+void
+gst_device_provider_device_remove (GstDeviceProvider * provider,
+    GstDevice * device)
+{
+  GstMessage *message;
+  GList *item;
+
+  GST_OBJECT_LOCK (provider);
+  item = g_list_find (provider->devices, device);
+  if (item) {
+    provider->devices = g_list_delete_link (provider->devices, item);
+  }
+  GST_OBJECT_UNLOCK (provider);
+
+  message = gst_message_new_device_removed (GST_OBJECT (provider), device);
+  g_signal_emit_by_name (device, "removed");
+  gst_bus_post (provider->priv->bus, message);
+  if (item)
+    gst_object_unparent (GST_OBJECT (device));
+}
diff --git a/gst/gstdeviceprovider.h b/gst/gstdeviceprovider.h
new file mode 100644
index 0000000..6370afc
--- /dev/null
+++ b/gst/gstdeviceprovider.h
@@ -0,0 +1,142 @@
+/* GStreamer
+ * Copyright (C) 2012 Olivier Crete <olivier.crete@collabora.com>
+ *
+ * gstdeviceprovider.h: Device probing and monitoring
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <gst/gstdeviceproviderfactory.h>
+
+
+#ifndef __GST_DEVICE_PROVIDER_H__
+#define __GST_DEVICE_PROVIDER_H__
+
+#include <gst/gstelement.h>
+
+G_BEGIN_DECLS
+
+typedef struct _GstDeviceProvider GstDeviceProvider;
+typedef struct _GstDeviceProviderClass GstDeviceProviderClass;
+typedef struct _GstDeviceProviderPrivate GstDeviceProviderPrivate;
+
+#define GST_TYPE_DEVICE_PROVIDER                 (gst_device_provider_get_type())
+#define GST_IS_DEVICE_PROVIDER(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_DEVICE_PROVIDER))
+#define GST_IS_DEVICE_PROVIDER_CLASS(klass)      (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_DEVICE_PROVIDER))
+#define GST_DEVICE_PROVIDER_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_DEVICE_PROVIDER, GstDeviceProviderClass))
+#define GST_DEVICE_PROVIDER(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_DEVICE_PROVIDER, GstDeviceProvider))
+#define GST_DEVICE_PROVIDER_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_DEVICE_PROVIDER, GstDeviceProviderClass))
+#define GST_DEVICE_PROVIDER_CAST(obj)            ((GstDeviceProvider *)(obj))
+
+
+/**
+ * GstDeviceProvider:
+ * @parent: The parent #GstObject
+ * @devices: a #GList of the #GstDevice objects
+ *
+ * The structure of the base #GstDeviceProvider
+ *
+ * Since: 1.4
+ */
+struct _GstDeviceProvider {
+  GstObject         parent;
+
+  /* Protected by the Object lock */
+  GList *devices;
+
+  /*< private >*/
+
+  GstDeviceProviderPrivate *priv;
+
+  gpointer _gst_reserved[GST_PADDING];
+};
+
+/**
+ * GstDeviceProviderClass:
+ * @parent_class: the parent #GstObjectClass structure
+ * @factory: a pointer to the #GstDeviceProviderFactory that creates this
+ *  provider
+ * @probe: Returns a list of devices that are currently available.
+ *  This should never block.
+ * @start: Starts monitoring for new devices. Only subclasses that can know
+ *  that devices have been added or remove need to implement this method.
+ * @stop: Stops monitoring for new devices. Only subclasses that implement
+ *  the start() method need to implement this method.
+ *
+ * The structure of the base #GstDeviceProviderClass
+ *
+ * Since: 1.4
+ */
+
+struct _GstDeviceProviderClass {
+  GstObjectClass    parent_class;
+
+  GstDeviceProviderFactory     *factory;
+
+  GList*      (*probe) (GstDeviceProvider * provider);
+
+  gboolean    (*start) (GstDeviceProvider * provider);
+  void        (*stop)  (GstDeviceProvider * provider);
+
+  /*< private >*/
+  gpointer metadata;
+
+  /*< private >*/
+  gpointer _gst_reserved[GST_PADDING];
+};
+
+GType       gst_device_provider_get_type (void);
+
+
+GList *     gst_device_provider_get_devices    (GstDeviceProvider * provider);
+
+gboolean    gst_device_provider_start          (GstDeviceProvider * provider);
+void        gst_device_provider_stop           (GstDeviceProvider * provider);
+
+gboolean    gst_device_provider_can_monitor    (GstDeviceProvider * provider);
+
+GstBus *    gst_device_provider_get_bus        (GstDeviceProvider * provider);
+
+void        gst_device_provider_device_add     (GstDeviceProvider * provider,
+                                               GstDevice * device);
+void        gst_device_provider_device_remove  (GstDeviceProvider * provider,
+                                               GstDevice * device);
+
+
+/* device provider class meta data */
+void        gst_device_provider_class_set_metadata          (GstDeviceProviderClass *klass,
+                                                            const gchar     *longname,
+                                                            const gchar     *classification,
+                                                            const gchar     *description,
+                                                            const gchar     *author);
+void        gst_device_provider_class_set_static_metadata   (GstDeviceProviderClass *klass,
+                                                            const gchar     *longname,
+                                                            const gchar     *classification,
+                                                            const gchar     *description,
+                                                            const gchar     *author);
+void        gst_device_provider_class_add_metadata          (GstDeviceProviderClass * klass,
+                                                            const gchar * key, const gchar * value);
+void        gst_device_provider_class_add_static_metadata   (GstDeviceProviderClass * klass,
+                                                            const gchar * key, const gchar * value);
+const gchar * gst_device_provider_class_get_metadata        (GstDeviceProviderClass * klass,
+                                                              const gchar * key);
+
+/* factory management */
+GstDeviceProviderFactory * gst_device_provider_get_factory   (GstDeviceProvider * provider);
+
+G_END_DECLS
+
+#endif /* __GST_DEVICE_PROVIDER_H__ */
diff --git a/gst/gstdeviceproviderfactory.c b/gst/gstdeviceproviderfactory.c
new file mode 100644
index 0000000..a28a0bd
--- /dev/null
+++ b/gst/gstdeviceproviderfactory.c
@@ -0,0 +1,580 @@
+/* GStreamer
+ * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
+ *                    2000 Wim Taymans <wtay@chello.be>
+ *                    2003 Benjamin Otte <in7y118@public.uni-hamburg.de>
+ *
+ * gstdeviceproviderfactory.c: GstDeviceProviderFactory object, support routines
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/**
+ * SECTION:gstdeviceproviderfactory
+ * @short_description: Create GstDeviceProviders from a factory
+ * @see_also: #GstDeviceProvider, #GstPlugin, #GstPluginFeature, #GstPadTemplate.
+ *
+ * #GstDeviceProviderFactory is used to create instances of device providers. A
+ * GstDeviceProviderfactory can be added to a #GstPlugin as it is also a
+ * #GstPluginFeature.
+ *
+ * Use the gst_device_provider_factory_find() and
+ * gst_device_provider_factory_get() functions to create device
+ * provider instances or use gst_device_provider_factory_get_by_name() as a
+ * convenient shortcut.
+ *
+ * Since: 1.4
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "gst_private.h"
+
+#include "gstdeviceproviderfactory.h"
+#include "gst.h"
+
+#include "glib-compat-private.h"
+
+GST_DEBUG_CATEGORY_STATIC (device_provider_factory_debug);
+#define GST_CAT_DEFAULT device_provider_factory_debug
+
+static void gst_device_provider_factory_finalize (GObject * object);
+static void gst_device_provider_factory_cleanup (GstDeviceProviderFactory *
+    factory);
+
+/* static guint gst_device_provider_factory_signals[LAST_SIGNAL] = { 0 }; */
+
+/* this is defined in gstelement.c */
+extern GQuark __gst_deviceproviderclass_factory;
+
+#define _do_init \
+{ \
+  GST_DEBUG_CATEGORY_INIT (device_provider_factory_debug, "GST_DEVICE_PROVIDER_FACTORY", \
+      GST_DEBUG_BOLD | GST_DEBUG_FG_WHITE | GST_DEBUG_BG_RED, \
+      "device provider factories keep information about installed device providers"); \
+}
+
+G_DEFINE_TYPE_WITH_CODE (GstDeviceProviderFactory, gst_device_provider_factory,
+    GST_TYPE_PLUGIN_FEATURE, _do_init);
+
+static void
+gst_device_provider_factory_class_init (GstDeviceProviderFactoryClass * klass)
+{
+  GObjectClass *gobject_class = (GObjectClass *) klass;
+
+  gobject_class->finalize = gst_device_provider_factory_finalize;
+}
+
+static void
+gst_device_provider_factory_init (GstDeviceProviderFactory * factory)
+{
+}
+
+static void
+gst_device_provider_factory_finalize (GObject * object)
+{
+  GstDeviceProviderFactory *factory = GST_DEVICE_PROVIDER_FACTORY (object);
+  GstDeviceProvider *provider;
+
+  gst_device_provider_factory_cleanup (factory);
+
+  provider = g_atomic_pointer_get (&factory->provider);
+  if (provider)
+    gst_object_unref (provider);
+
+  G_OBJECT_CLASS (gst_device_provider_factory_parent_class)->finalize (object);
+}
+
+/**
+ * gst_device_provider_factory_find:
+ * @name: name of factory to find
+ *
+ * Search for an device provider factory of the given name. Refs the returned
+ * device provider factory; caller is responsible for unreffing.
+ *
+ * Returns: (transfer full) (nullable): #GstDeviceProviderFactory if
+ * found, %NULL otherwise
+ *
+ * Since: 1.4
+ */
+GstDeviceProviderFactory *
+gst_device_provider_factory_find (const gchar * name)
+{
+  GstPluginFeature *feature;
+
+  g_return_val_if_fail (name != NULL, NULL);
+
+  feature = gst_registry_find_feature (gst_registry_get (), name,
+      GST_TYPE_DEVICE_PROVIDER_FACTORY);
+  if (feature)
+    return GST_DEVICE_PROVIDER_FACTORY (feature);
+
+  /* this isn't an error, for instance when you query if an device provider factory is
+   * present */
+  GST_LOG ("no such device provider factory \"%s\"", name);
+
+  return NULL;
+}
+
+static void
+gst_device_provider_factory_cleanup (GstDeviceProviderFactory * factory)
+{
+  if (factory->metadata) {
+    gst_structure_free ((GstStructure *) factory->metadata);
+    factory->metadata = NULL;
+  }
+  if (factory->type) {
+    factory->type = G_TYPE_INVALID;
+  }
+}
+
+#define CHECK_METADATA_FIELD(klass, name, key)                                 \
+  G_STMT_START {                                                               \
+    const gchar *metafield = gst_device_provider_class_get_metadata (klass, key);      \
+    if (G_UNLIKELY (metafield == NULL || *metafield == '\0')) {                \
+      g_warning ("Device provider factory metadata for '%s' has no valid %s field", name, key);    \
+      goto detailserror;                                                       \
+    } \
+  } G_STMT_END;
+
+/**
+ * gst_device_provider_register:
+ * @plugin: (allow-none): #GstPlugin to register the device provider with, or %NULL for
+ *     a static device provider.
+ * @name: name of device providers of this type
+ * @rank: rank of device provider (higher rank means more importance when autoplugging)
+ * @type: GType of device provider to register
+ *
+ * Create a new device providerfactory capable of instantiating objects of the
+ * @type and add the factory to @plugin.
+ *
+ * Returns: %TRUE, if the registering succeeded, %FALSE on error
+ *
+ * Since: 1.4
+ */
+gboolean
+gst_device_provider_register (GstPlugin * plugin, const gchar * name,
+    guint rank, GType type)
+{
+  GstPluginFeature *existing_feature;
+  GstRegistry *registry;
+  GstDeviceProviderFactory *factory;
+  GstDeviceProviderClass *klass;
+
+  g_return_val_if_fail (name != NULL, FALSE);
+  g_return_val_if_fail (g_type_is_a (type, GST_TYPE_DEVICE_PROVIDER), FALSE);
+
+  registry = gst_registry_get ();
+
+  /* check if feature already exists, if it exists there is no need to update it
+   * when the registry is getting updated, outdated plugins and all their
+   * features are removed and readded.
+   */
+  existing_feature = gst_registry_lookup_feature (registry, name);
+  if (existing_feature) {
+    GST_DEBUG_OBJECT (registry, "update existing feature %p (%s)",
+        existing_feature, name);
+    factory = GST_DEVICE_PROVIDER_FACTORY_CAST (existing_feature);
+    factory->type = type;
+    existing_feature->loaded = TRUE;
+    g_type_set_qdata (type, __gst_deviceproviderclass_factory, factory);
+    gst_object_unref (existing_feature);
+    return TRUE;
+  }
+
+  factory =
+      GST_DEVICE_PROVIDER_FACTORY_CAST (g_object_newv
+      (GST_TYPE_DEVICE_PROVIDER_FACTORY, 0, NULL));
+  gst_plugin_feature_set_name (GST_PLUGIN_FEATURE_CAST (factory), name);
+  GST_LOG_OBJECT (factory, "Created new device providerfactory for type %s",
+      g_type_name (type));
+
+  /* provide info needed during class structure setup */
+  g_type_set_qdata (type, __gst_deviceproviderclass_factory, factory);
+  klass = GST_DEVICE_PROVIDER_CLASS (g_type_class_ref (type));
+
+  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_LONGNAME);
+  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_KLASS);
+  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_DESCRIPTION);
+  CHECK_METADATA_FIELD (klass, name, GST_ELEMENT_METADATA_AUTHOR);
+
+  factory->type = type;
+  factory->metadata = gst_structure_copy ((GstStructure *) klass->metadata);
+
+  if (plugin && plugin->desc.name) {
+    GST_PLUGIN_FEATURE_CAST (factory)->plugin_name = plugin->desc.name;
+    GST_PLUGIN_FEATURE_CAST (factory)->plugin = plugin;
+    g_object_add_weak_pointer ((GObject *) plugin,
+        (gpointer *) & GST_PLUGIN_FEATURE_CAST (factory)->plugin);
+  } else {
+    GST_PLUGIN_FEATURE_CAST (factory)->plugin_name = "NULL";
+    GST_PLUGIN_FEATURE_CAST (factory)->plugin = NULL;
+  }
+  gst_plugin_feature_set_rank (GST_PLUGIN_FEATURE_CAST (factory), rank);
+  GST_PLUGIN_FEATURE_CAST (factory)->loaded = TRUE;
+
+  gst_registry_add_feature (registry, GST_PLUGIN_FEATURE_CAST (factory));
+
+  return TRUE;
+
+  /* ERRORS */
+detailserror:
+  {
+    gst_device_provider_factory_cleanup (factory);
+    return FALSE;
+  }
+}
+
+/**
+ * gst_device_provider_factory_get:
+ * @factory: factory to instantiate
+ *
+ * Returns the device provider of the type defined by the given device
+ * providerfactory.
+ *
+ * Returns: (transfer full) (nullable): the #GstDeviceProvider or %NULL
+ * if the device provider couldn't be created
+ *
+ * Since: 1.4
+ */
+GstDeviceProvider *
+gst_device_provider_factory_get (GstDeviceProviderFactory * factory)
+{
+  GstDeviceProvider *device_provider;
+  GstDeviceProviderClass *oclass;
+  GstDeviceProviderFactory *newfactory;
+
+  g_return_val_if_fail (factory != NULL, NULL);
+
+  newfactory =
+      GST_DEVICE_PROVIDER_FACTORY (gst_plugin_feature_load (GST_PLUGIN_FEATURE
+          (factory)));
+
+  if (newfactory == NULL)
+    goto load_failed;
+
+  factory = newfactory;
+
+  GST_INFO ("getting device provider \"%s\"", GST_OBJECT_NAME (factory));
+
+  if (factory->type == 0)
+    goto no_type;
+
+  device_provider = g_atomic_pointer_get (&newfactory->provider);
+  if (device_provider)
+    return gst_object_ref (device_provider);
+
+  /* create an instance of the device provider, cast so we don't assert on NULL
+   * also set name as early as we can
+   */
+  device_provider = GST_DEVICE_PROVIDER_CAST (g_object_newv (factory->type, 0,
+          NULL));
+  if (G_UNLIKELY (device_provider == NULL))
+    goto no_device_provider;
+
+  /* fill in the pointer to the factory in the device provider class. The
+   * class will not be unreffed currently.
+   * Be thread safe as there might be 2 threads creating the first instance of
+   * an device provider at the same moment
+   */
+  oclass = GST_DEVICE_PROVIDER_GET_CLASS (device_provider);
+  if (!g_atomic_pointer_compare_and_exchange (&oclass->factory, NULL, factory))
+    gst_object_unref (factory);
+
+  gst_object_ref_sink (device_provider);
+
+  /* We use an atomic to make sure we don't create two in parallel */
+  if (!g_atomic_pointer_compare_and_exchange (&newfactory->provider, NULL,
+          device_provider)) {
+    gst_object_unref (device_provider);
+
+    device_provider = g_atomic_pointer_get (&newfactory->provider);
+  }
+
+  GST_DEBUG ("created device provider \"%s\"", GST_OBJECT_NAME (factory));
+
+  return gst_object_ref (device_provider);
+
+  /* ERRORS */
+load_failed:
+  {
+    GST_WARNING_OBJECT (factory,
+        "loading plugin containing feature %s returned NULL!",
+        GST_OBJECT_NAME (factory));
+    return NULL;
+  }
+no_type:
+  {
+    GST_WARNING_OBJECT (factory, "factory has no type");
+    gst_object_unref (factory);
+    return NULL;
+  }
+no_device_provider:
+  {
+    GST_WARNING_OBJECT (factory, "could not create device provider");
+    gst_object_unref (factory);
+    return NULL;
+  }
+}
+
+/**
+ * gst_device_provider_factory_get_by_name:
+ * @factoryname: a named factory to instantiate
+ *
+ * Returns the device provider of the type defined by the given device
+ * provider factory.
+ *
+ * Returns: (transfer full) (nullable): a #GstDeviceProvider or %NULL
+ * if unable to create device provider
+ *
+ * Since: 1.4
+ */
+GstDeviceProvider *
+gst_device_provider_factory_get_by_name (const gchar * factoryname)
+{
+  GstDeviceProviderFactory *factory;
+  GstDeviceProvider *device_provider;
+
+  g_return_val_if_fail (factoryname != NULL, NULL);
+  g_return_val_if_fail (gst_is_initialized (), NULL);
+
+  GST_LOG ("gstdeviceproviderfactory: get_by_name \"%s\"", factoryname);
+
+  factory = gst_device_provider_factory_find (factoryname);
+  if (factory == NULL)
+    goto no_factory;
+
+  GST_LOG_OBJECT (factory, "found factory %p", factory);
+  device_provider = gst_device_provider_factory_get (factory);
+  if (device_provider == NULL)
+    goto create_failed;
+
+  gst_object_unref (factory);
+  return device_provider;
+
+  /* ERRORS */
+no_factory:
+  {
+    GST_INFO ("no such device provider factory \"%s\"!", factoryname);
+    return NULL;
+  }
+create_failed:
+  {
+    GST_INFO_OBJECT (factory, "couldn't create instance!");
+    gst_object_unref (factory);
+    return NULL;
+  }
+}
+
+/**
+ * gst_device_provider_factory_get_device_provider_type:
+ * @factory: factory to get managed #GType from
+ *
+ * Get the #GType for device providers managed by this factory. The type can
+ * only be retrieved if the device provider factory is loaded, which can be
+ * assured with gst_plugin_feature_load().
+ *
+ * Returns: the #GType for device providers managed by this factory.
+ *
+ * Since: 1.4
+ */
+GType
+gst_device_provider_factory_get_device_provider_type (GstDeviceProviderFactory *
+    factory)
+{
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER_FACTORY (factory),
+      G_TYPE_INVALID);
+
+  return factory->type;
+}
+
+/**
+ * gst_device_provider_factory_get_metadata:
+ * @factory: a #GstDeviceProviderFactory
+ * @key: a key
+ *
+ * Get the metadata on @factory with @key.
+ *
+ * Returns: (nullable): the metadata with @key on @factory or %NULL
+ * when there was no metadata with the given @key.
+ *
+ * Since: 1.4
+ */
+const gchar *
+gst_device_provider_factory_get_metadata (GstDeviceProviderFactory * factory,
+    const gchar * key)
+{
+  return gst_structure_get_string ((GstStructure *) factory->metadata, key);
+}
+
+/**
+ * gst_device_provider_factory_get_metadata_keys:
+ * @factory: a #GstDeviceProviderFactory
+ *
+ * Get the available keys for the metadata on @factory.
+ *
+ * Returns: (transfer full) (element-type utf8) (array zero-terminated=1) (nullable):
+ * a %NULL-terminated array of key strings, or %NULL when there is no
+ * metadata. Free with g_strfreev() when no longer needed.
+ *
+ * Since: 1.4
+ */
+gchar **
+gst_device_provider_factory_get_metadata_keys (GstDeviceProviderFactory *
+    factory)
+{
+  GstStructure *metadata;
+  gchar **arr;
+  gint i, num;
+
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER_FACTORY (factory), NULL);
+
+  metadata = (GstStructure *) factory->metadata;
+  if (metadata == NULL)
+    return NULL;
+
+  num = gst_structure_n_fields (metadata);
+  if (num == 0)
+    return NULL;
+
+  arr = g_new (gchar *, num + 1);
+  for (i = 0; i < num; ++i) {
+    arr[i] = g_strdup (gst_structure_nth_field_name (metadata, i));
+  }
+  arr[i] = NULL;
+  return arr;
+}
+
+/**
+ * gst_device_provider_factory_has_classesv:
+ * @factory: a #GstDeviceProviderFactory
+ * @classes: (array zero-terminated=1) (allow-none): a %NULL terminated array
+ *   of classes to match, only match if all classes are matched
+ *
+ * Check if @factory matches all of the given classes
+ *
+ * Returns: %TRUE if @factory matches.
+ *
+ * Since: 1.4
+ */
+gboolean
+gst_device_provider_factory_has_classesv (GstDeviceProviderFactory * factory,
+    gchar ** classes)
+{
+  const gchar *klass;
+
+  g_return_val_if_fail (GST_IS_DEVICE_PROVIDER_FACTORY (factory), FALSE);
+
+  klass = gst_device_provider_factory_get_metadata (factory,
+      GST_ELEMENT_METADATA_KLASS);
+
+  if (klass == NULL) {
+    GST_ERROR_OBJECT (factory,
+        "device provider factory is missing klass identifiers");
+    return FALSE;
+  }
+
+  for (; classes != NULL && classes[0] != NULL; classes++) {
+    const gchar *found;
+    guint len;
+
+    if (classes[0] == '\0')
+      continue;
+
+    found = strstr (klass, classes[0]);
+
+    if (!found)
+      return FALSE;
+    if (found != klass && *(found - 1) != '/')
+      return FALSE;
+
+    len = strlen (classes[0]);
+    if (found[len] != 0 && found[len] != '/')
+      return FALSE;
+  }
+
+  return TRUE;
+}
+
+/**
+ * gst_device_provider_factory_has_classes:
+ * @factory: a #GstDeviceProviderFactory
+ * @classes: (allow-none): a "/" separate list of classes to match, only match
+ *     if all classes are matched
+ *
+ * Check if @factory matches all of the given @classes
+ *
+ * Returns: %TRUE if @factory matches or if @classes is %NULL.
+ *
+ * Since: 1.4
+ */
+gboolean
+gst_device_provider_factory_has_classes (GstDeviceProviderFactory * factory,
+    const gchar * classes)
+{
+  gchar **classesv;
+  gboolean res;
+
+  if (classes == NULL)
+    return TRUE;
+
+  classesv = g_strsplit (classes, "/", 0);
+
+  res = gst_device_provider_factory_has_classesv (factory, classesv);
+
+  g_strfreev (classesv);
+
+  return res;
+}
+
+static gboolean
+device_provider_filter (GstPluginFeature * feature, GstRank * minrank)
+{
+  /* we only care about device provider factories */
+  if (G_UNLIKELY (!GST_IS_DEVICE_PROVIDER_FACTORY (feature)))
+    return FALSE;
+
+  return (gst_plugin_feature_get_rank (feature) >= *minrank);
+}
+
+/**
+ * gst_device_provider_factory_list_get_device_providers:
+ * @minrank: Minimum rank
+ *
+ * Get a list of factories with a rank greater or equal to @minrank.
+ * The list of factories is returned by decreasing rank.
+ *
+ * Returns: (transfer full) (element-type Gst.DeviceProviderFactory):
+ * a #GList of #GstDeviceProviderFactory device providers. Use
+ * gst_plugin_feature_list_free() after usage.
+ *
+ * Since: 1.4
+ */
+GList *
+gst_device_provider_factory_list_get_device_providers (GstRank minrank)
+{
+  GList *result;
+
+  /* get the feature list using the filter */
+  result = gst_registry_feature_filter (gst_registry_get (),
+      (GstPluginFeatureFilter) device_provider_filter, FALSE, &minrank);
+
+  /* sort on rank and name */
+  result = g_list_sort (result, gst_plugin_feature_rank_compare_func);
+
+  return result;
+}
diff --git a/gst/gstdeviceproviderfactory.h b/gst/gstdeviceproviderfactory.h
new file mode 100644
index 0000000..edda736
--- /dev/null
+++ b/gst/gstdeviceproviderfactory.h
@@ -0,0 +1,90 @@
+/* GStreamer
+ * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
+ *               2000,2004 Wim Taymans <wim@fluendo.com>
+ *               2012 Olivier Crete <olivier.crete@collabora.com>
+ *
+ * gstdeviceproviderfactory.h: Header for GstDeviceProviderFactory
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+
+
+#ifndef __GST_DEVICE_PROVIDER_FACTORY_H__
+#define __GST_DEVICE_PROVIDER_FACTORY_H__
+
+/**
+ * GstDeviceProviderFactory:
+ *
+ * The opaque #GstDeviceProviderFactory data structure.
+ *
+ * Since: 1.4
+ */
+
+/**
+ * GstDeviceProviderFactoryClass:
+ *
+ * The opaque #GstDeviceProviderFactoryClass data structure.
+ *
+ * Since: 1.4
+ */
+typedef struct _GstDeviceProviderFactory GstDeviceProviderFactory;
+typedef struct _GstDeviceProviderFactoryClass GstDeviceProviderFactoryClass;
+
+#include <gst/gstconfig.h>
+#include <gst/gstplugin.h>
+#include <gst/gstpluginfeature.h>
+#include <gst/gstdeviceprovider.h>
+
+G_BEGIN_DECLS
+
+#define GST_TYPE_DEVICE_PROVIDER_FACTORY            (gst_device_provider_factory_get_type())
+#define GST_DEVICE_PROVIDER_FACTORY(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DEVICE_PROVIDER_FACTORY,\
+                                                 GstDeviceProviderFactory))
+#define GST_DEVICE_PROVIDER_FACTORY_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DEVICE_PROVIDER_FACTORY,\
+                                                 GstDeviceProviderFactoryClass))
+#define GST_IS_DEVICE_PROVIDER_FACTORY(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DEVICE_PROVIDER_FACTORY))
+#define GST_IS_DEVICE_PROVIDER_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DEVICE_PROVIDER_FACTORY))
+#define GST_DEVICE_PROVIDER_FACTORY_CAST(obj)       ((GstDeviceProviderFactory *)(obj))
+
+GType                   gst_device_provider_factory_get_type          (void);
+
+GstDeviceProviderFactory * gst_device_provider_factory_find            (const gchar *name);
+
+GType                   gst_device_provider_factory_get_device_provider_type (GstDeviceProviderFactory *factory);
+
+const gchar *           gst_device_provider_factory_get_metadata       (GstDeviceProviderFactory *factory, const gchar *key);
+gchar **                gst_device_provider_factory_get_metadata_keys  (GstDeviceProviderFactory *factory);
+
+GstDeviceProvider*       gst_device_provider_factory_get                (GstDeviceProviderFactory *factory) G_GNUC_MALLOC;
+GstDeviceProvider*       gst_device_provider_factory_get_by_name        (const gchar *factoryname) G_GNUC_MALLOC;
+
+gboolean                gst_device_provider_register                   (GstPlugin *plugin, const gchar *name,
+                                                                       guint rank,
+                                                                       GType type);
+
+gboolean      gst_device_provider_factory_has_classesv (GstDeviceProviderFactory * factory,
+                                                       gchar ** classes);
+
+gboolean      gst_device_provider_factory_has_classes (GstDeviceProviderFactory *factory,
+                                                       const gchar * classes);
+
+GList *       gst_device_provider_factory_list_get_device_providers (
+                                                       GstRank minrank) G_GNUC_MALLOC;
+
+G_END_DECLS
+
+#endif /* __GST_DEVICE_PROVIDER_FACTORY_H__ */
diff --git a/gst/gstelement.c b/gst/gstelement.c
index 25870f5..0a5cdb0 100644
--- a/gst/gstelement.c
+++ b/gst/gstelement.c
@@ -342,8 +342,8 @@
  * <note>An element is only required to provide a clock in the PAUSED
  * state. Some elements can provide a clock in other states.</note>
  *
- * Returns: (transfer full): the GstClock provided by the element or %NULL
- * if no clock could be provided.  Unref after usage.
+ * Returns: (transfer full) (nullable): the GstClock provided by the
+ * element or %NULL if no clock could be provided.  Unref after usage.
  *
  * MT safe.
  */
@@ -583,8 +583,8 @@
  *
  * Gets the index from the element.
  *
- * Returns: (transfer full): a #GstIndex or %NULL when no index was set on the
- * element. unref after usage.
+ * Returns: (transfer full) (nullable): a #GstIndex or %NULL when no
+ * index was set on the element. unref after usage.
  *
  * MT safe.
  */
@@ -795,7 +795,6 @@
       break;
   }
   element->pads = g_list_remove (element->pads, pad);
-  GST_OBJECT_FLAG_UNSET (pad, GST_PAD_FLAG_NEED_PARENT);
   element->numpads--;
   element->pads_cookie++;
   GST_OBJECT_UNLOCK (element);
@@ -865,8 +864,8 @@
  * Retrieves a pad from @element by name. This version only retrieves
  * already-existing (i.e. 'static') pads.
  *
- * Returns: (transfer full): the requested #GstPad if found, otherwise %NULL.
- *     unref after usage.
+ * Returns: (transfer full) (nullable): the requested #GstPad if
+ *     found, otherwise %NULL.  unref after usage.
  *
  * MT safe.
  */
@@ -949,7 +948,7 @@
     pad = gst_element_get_static_pad (element, name);
     if (pad) {
       gst_object_unref (pad);
-      /* FIXME 0.11: Change this to g_return_val_if_fail() */
+      /* FIXME 2.0: Change this to g_return_val_if_fail() */
       g_critical ("Element %s already has a pad named %s, the behaviour of "
           " gst_element_get_request_pad() for existing pads is undefined!",
           GST_ELEMENT_NAME (element), name);
@@ -975,11 +974,12 @@
  * retrieves request pads. The pad should be released with
  * gst_element_release_request_pad().
  *
- * This method is slow and will be deprecated in the future. New code should
- * use gst_element_request_pad() with the requested template.
+ * This method is slower than manually getting the pad template and calling
+ * gst_element_request_pad() if the pads should have a specific name (e.g.
+ * @name is "src_1" instead of "src_\%u").
  *
- * Returns: (transfer full): requested #GstPad if found, otherwise %NULL.
- *     Release after usage.
+ * Returns: (transfer full) (nullable): requested #GstPad if found,
+ *     otherwise %NULL.  Release after usage.
  */
 GstPad *
 gst_element_get_request_pad (GstElement * element, const gchar * name)
@@ -1083,8 +1083,8 @@
  *
  * The pad should be released with gst_element_release_request_pad().
  *
- * Returns: (transfer full): requested #GstPad if found, otherwise %NULL.
- *     Release after usage.
+ * Returns: (transfer full) (nullable): requested #GstPad if found,
+ *     otherwise %NULL.  Release after usage.
  */
 GstPad *
 gst_element_request_pad (GstElement * element,
@@ -1396,8 +1396,9 @@
  * that has subclasses, make sure to pass the g_class parameter of the
  * #GInstanceInitFunc here.</note>
  *
- * Returns: (transfer none): the #GstPadTemplate with the given name, or %NULL
- *     if none was found. No unreferencing is necessary.
+ * Returns: (transfer none) (nullable): the #GstPadTemplate with the
+ *     given name, or %NULL if none was found. No unreferencing is
+ *     necessary.
  */
 GstPadTemplate *
 gst_element_class_get_pad_template (GstElementClass *
@@ -1504,8 +1505,8 @@
   GstPad *pad;
 
   pad = GST_EVENT_IS_DOWNSTREAM (event) ?
-      gst_element_get_random_pad (element, TRUE, GST_PAD_SRC) :
-      gst_element_get_random_pad (element, TRUE, GST_PAD_SINK);
+      gst_element_get_random_pad (element, TRUE, GST_PAD_SINK) :
+      gst_element_get_random_pad (element, TRUE, GST_PAD_SRC);
 
   if (pad) {
     GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS,
@@ -1514,7 +1515,7 @@
         (GST_PAD_DIRECTION (pad) == GST_PAD_SRC ? "src" : "sink"),
         GST_DEBUG_PAD_NAME (pad));
 
-    result = gst_pad_push_event (pad, event);
+    result = gst_pad_send_event (pad, event);
     gst_object_unref (pad);
   } else {
     GST_CAT_INFO (GST_CAT_ELEMENT_PADS, "can't send %s event on element %s",
@@ -1531,7 +1532,7 @@
  *
  * Sends an event to an element. If the element doesn't implement an
  * event handler, the event will be pushed on a random linked sink pad for
- * upstream events or a random linked source pad for downstream events.
+ * downstream events or a random linked source pad for upstream events.
  *
  * This function takes ownership of the provided event so you should
  * gst_event_ref() it if you want to reuse the event after this call.
@@ -1730,12 +1731,12 @@
 
 /**
  * _gst_element_error_printf:
- * @format: the printf-like format to use, or %NULL
+ * @format: (allow-none): the printf-like format to use, or %NULL
  *
  * This function is only used internally by the gst_element_error() macro.
  *
- * Returns: (transfer full): a newly allocated string, or %NULL if the format
- *     was %NULL or ""
+ * Returns: (transfer full) (nullable): a newly allocated string, or
+ *     %NULL if the format was %NULL or ""
  *
  * MT safe.
  */
diff --git a/gst/gstelement.h b/gst/gstelement.h
index 408d10c..bdd7215 100644
--- a/gst/gstelement.h
+++ b/gst/gstelement.h
@@ -694,7 +694,8 @@
  * For a nameless element, this returns %NULL, which you can safely g_free()
  * as well.
  *
- * Returns: (transfer full): the name of @elem. g_free() after usage. MT safe.
+ * Returns: (transfer full) (nullable): the name of @elem. g_free()
+ * after usage. MT safe.
  *
  */
 #define                 gst_element_get_name(elem)      gst_object_get_name(GST_OBJECT_CAST(elem))
diff --git a/gst/gstelementfactory.c b/gst/gstelementfactory.c
index aa0c5af..b1f737b 100644
--- a/gst/gstelementfactory.c
+++ b/gst/gstelementfactory.c
@@ -123,7 +123,8 @@
  * Search for an element factory of the given name. Refs the returned
  * element factory; caller is responsible for unreffing.
  *
- * Returns: (transfer full): #GstElementFactory if found, %NULL otherwise
+ * Returns: (transfer full) (nullable): #GstElementFactory if found,
+ * %NULL otherwise
  */
 GstElementFactory *
 gst_element_factory_find (const gchar * name)
@@ -335,8 +336,8 @@
  * It will be given the name supplied, since all elements require a name as
  * their first argument.
  *
- * Returns: (transfer floating): new #GstElement or %NULL if the element couldn't
- *     be created
+ * Returns: (transfer floating) (nullable): new #GstElement or %NULL
+ *     if the element couldn't be created
  */
 GstElement *
 gst_element_factory_create (GstElementFactory * factory, const gchar * name)
@@ -422,7 +423,8 @@
  * consisting of the element factory name and a number.
  * If name is given, it will be given the name supplied.
  *
- * Returns: (transfer floating): new #GstElement or %NULL if unable to create element
+ * Returns: (transfer floating) (nullable): new #GstElement or %NULL
+ * if unable to create element
  */
 GstElement *
 gst_element_factory_make (const gchar * factoryname, const gchar * name)
@@ -500,8 +502,8 @@
  *
  * Get the metadata on @factory with @key.
  *
- * Returns: the metadata with @key on @factory or %NULL when there was no
- * metadata with the given @key.
+ * Returns: (nullable): the metadata with @key on @factory or %NULL
+ * when there was no metadata with the given @key.
  */
 const gchar *
 gst_element_factory_get_metadata (GstElementFactory * factory,
@@ -516,7 +518,7 @@
  *
  * Get the available keys for the metadata on @factory.
  *
- * Returns: (transfer full) (element-type utf8) (array zero-terminated=1):
+ * Returns: (transfer full) (element-type utf8) (array zero-terminated=1) (nullable):
  * a %NULL-terminated array of key strings, or %NULL when there is no
  * metadata. Free with g_strfreev() when no longer needed.
  */
diff --git a/gst/gsterror.c b/gst/gsterror.c
index 0cf5285..6c0ef77 100644
--- a/gst/gsterror.c
+++ b/gst/gsterror.c
@@ -96,13 +96,13 @@
  * </itemizedlist>
  */
 
-/* FIXME 0.11: the entire error system needs an overhaul - it's not very
+/* FIXME 2.0: the entire error system needs an overhaul - it's not very
  * useful the way it is. Also, we need to be able to specify additional
  * 'details' for errors (e.g. disk/file/resource error -> out-of-space; or
  * put the url/filename/device name that caused the error somewhere)
  * without having to add enums for every little thing.
  *
- * FIXME 0.11: get rid of GST_{CORE,LIBRARY,RESOURCE,STREAM}_ERROR_NUM_ERRORS.
+ * FIXME 2.0: get rid of GST_{CORE,LIBRARY,RESOURCE,STREAM}_ERROR_NUM_ERRORS.
  * Maybe also replace _quark() functions with g_quark_from_static_string()?
  */
 #ifdef HAVE_CONFIG_H
diff --git a/gst/gstevent.c b/gst/gstevent.c
index 2217968..4d48b9a 100644
--- a/gst/gstevent.c
+++ b/gst/gstevent.c
@@ -715,7 +715,7 @@
  * downstream synchronized with the buffer flow and contains timing information
  * and playback properties for the buffers that will follow.
  *
- * The newsegment event marks the range of buffers to be processed. All
+ * The segment event marks the range of buffers to be processed. All
  * data not within the segment range is not to be processed. This can be
  * used intelligently by plugins to apply more efficient methods of skipping
  * unneeded data. The valid range is expressed with the @start and @stop
@@ -736,10 +736,10 @@
  * stream. (@rate * @applied_rate) should always equal the rate that has been
  * requested for playback. For example, if an element has an input segment
  * with intended playback @rate of 2.0 and applied_rate of 1.0, it can adjust
- * incoming timestamps and buffer content by half and output a newsegment event
+ * incoming timestamps and buffer content by half and output a segment event
  * with @rate of 1.0 and @applied_rate of 2.0
  *
- * After a newsegment event, the buffer stream time is calculated with:
+ * After a segment event, the buffer stream time is calculated with:
  *
  *   time + (TIMESTAMP(buf) - start) * ABS (rate * applied_rate)
  *
@@ -1390,7 +1390,7 @@
  *
  * Returns: (transfer full): a new #GstEvent
  */
-/* FIXME 0.11: take ownership of msg for consistency? */
+/* FIXME 2.0: take ownership of msg for consistency? */
 GstEvent *
 gst_event_new_sink_message (const gchar * name, GstMessage * msg)
 {
@@ -1440,7 +1440,7 @@
  *
  * Source elements, demuxers and other elements that create new streams
  * are supposed to send this event as the first event of a new stream. It
- * should not be send after a flushing seek or in similar situations
+ * should not be sent after a flushing seek or in similar situations
  * and is used to mark the beginning of a new logical stream. Elements
  * combining multiple streams must ensure that this event is only forwarded
  * downstream once and not for every single input stream.
@@ -1669,7 +1669,7 @@
 /**
  * gst_event_parse_toc_select:
  * @event: a TOC select event.
- * @uid: (out): storage for the selection UID.
+ * @uid: (out) (transfer full) (allow-none): storage for the selection UID.
  *
  * Parse a TOC select @event and store the results in the given @uid location.
  */
diff --git a/gst/gstevent.h b/gst/gstevent.h
index 2ee38eb..ee7e8e0 100644
--- a/gst/gstevent.h
+++ b/gst/gstevent.h
@@ -275,8 +275,8 @@
 #define         gst_event_make_writable(ev)   GST_EVENT_CAST (gst_mini_object_make_writable (GST_MINI_OBJECT_CAST (ev)))
 /**
  * gst_event_replace:
- * @old_event: (inout) (transfer full): pointer to a pointer to a #GstEvent
- *     to be replaced.
+ * @old_event: (inout) (transfer full) (nullable): pointer to a
+ *     pointer to a #GstEvent to be replaced.
  * @new_event: (allow-none) (transfer none): pointer to a #GstEvent that will
  *     replace the event pointed to by @old_event.
  *
@@ -301,8 +301,8 @@
 
 /**
  * gst_event_steal:
- * @old_event: (inout) (transfer full): pointer to a pointer to a #GstEvent
- *     to be stolen.
+ * @old_event: (inout) (transfer full) (nullable): pointer to a
+ *     pointer to a #GstEvent to be stolen.
  *
  * Atomically replace the #GstEvent pointed to by @old_event with %NULL and
  * return the original event.
@@ -321,8 +321,8 @@
 
 /**
  * gst_event_take:
- * @old_event: (inout) (transfer full): pointer to a pointer to a #GstEvent
- *     to be stolen.
+ * @old_event: (inout) (transfer full) (nullable): pointer to a
+ *     pointer to a #GstEvent to be stolen.
  * @new_event: (allow-none) (transfer full): pointer to a #GstEvent that will
  *     replace the event pointed to by @old_event.
  *
@@ -346,15 +346,15 @@
 
 /**
  * GstQOSType:
- * @GST_QOS_TYPE_OVERFLOW: The QoS event type that is produced when downstream
+ * @GST_QOS_TYPE_OVERFLOW: The QoS event type that is produced when upstream
  *    elements are producing data too quickly and the element can't keep up
- *    processing the data. Upstream should reduce their processing rate. This
+ *    processing the data. Upstream should reduce their production rate. This
  *    type is also used when buffers arrive early or in time.
- * @GST_QOS_TYPE_UNDERFLOW: The QoS event type that is produced when downstream
- *    elements are producing data too slowly and need to speed up their processing
- *    rate.
+ * @GST_QOS_TYPE_UNDERFLOW: The QoS event type that is produced when upstream
+ *    elements are producing data too slowly and need to speed up their
+ *    production rate.
  * @GST_QOS_TYPE_THROTTLE: The QoS event type that is produced when the
- *    application enabled throttling to limit the datarate.
+ *    application enabled throttling to limit the data rate.
  *
  * The different types of QoS events that can be given to the
  * gst_event_new_qos() method.
diff --git a/gst/gstformat.c b/gst/gstformat.c
index 69600cd..aeae6c6 100644
--- a/gst/gstformat.c
+++ b/gst/gstformat.c
@@ -85,8 +85,8 @@
  *
  * Get a printable name for the given format. Do not modify or free.
  *
- * Returns: a reference to the static name of the format or %NULL if
- * the format is unknown.
+ * Returns: (nullable): a reference to the static name of the format
+ * or %NULL if the format is unknown.
  */
 const gchar *
 gst_format_get_name (GstFormat format)
@@ -225,7 +225,8 @@
  *
  * Get details about the given format.
  *
- * Returns: The #GstFormatDefinition for @format or %NULL on failure.
+ * Returns: (nullable): The #GstFormatDefinition for @format or %NULL
+ * on failure.
  *
  * MT safe.
  */
diff --git a/gst/gstghostpad.c b/gst/gstghostpad.c
index cac0d51..22644fc 100644
--- a/gst/gstghostpad.c
+++ b/gst/gstghostpad.c
@@ -79,8 +79,8 @@
  *
  * Invoke the default iterate internal links function of the proxy pad.
  *
- * Returns: a #GstIterator of #GstPad, or %NULL if @pad has no parent. Unref each
- * returned pad with gst_object_unref().
+ * Returns: (nullable): a #GstIterator of #GstPad, or %NULL if @pad
+ * has no parent. Unref each returned pad with gst_object_unref().
  */
 GstIterator *
 gst_proxy_pad_iterate_internal_links_default (GstPad * pad, GstObject * parent)
@@ -208,8 +208,8 @@
  * The internal pad of a #GstGhostPad is the internally used
  * pad of opposite direction, which is used to link to the target.
  *
- * Returns: (transfer full): the target #GstProxyPad, can be %NULL.
- * Unref target pad after usage.
+ * Returns: (transfer full) (nullable): the target #GstProxyPad, can
+ * be %NULL.  Unref target pad after usage.
  */
 GstProxyPad *
 gst_proxy_pad_get_internal (GstProxyPad * pad)
@@ -533,8 +533,7 @@
   GstPad *pad, *internal;
 
   g_return_val_if_fail (GST_IS_GHOST_PAD (gpad), FALSE);
-  g_return_val_if_fail (GST_GHOST_PAD_PRIVATE (gpad)->constructed == FALSE,
-      FALSE);
+  g_return_val_if_fail (!GST_GHOST_PAD_PRIVATE (gpad)->constructed, FALSE);
 
   g_object_get (gpad, "direction", &dir, "template", &templ, NULL);
 
@@ -653,7 +652,8 @@
  *
  * The created ghostpad will not have a padtemplate.
  *
- * Returns: (transfer full): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer full) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  */
 GstPad *
 gst_ghost_pad_new_no_target (const gchar * name, GstPadDirection dir)
@@ -679,7 +679,8 @@
  *
  * Will ref the target.
  *
- * Returns: (transfer floating): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer floating) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  */
 GstPad *
 gst_ghost_pad_new (const gchar * name, GstPad * target)
@@ -719,7 +720,8 @@
  *
  * Will ref the target.
  *
- * Returns: (transfer full): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer full) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  */
 
 GstPad *
@@ -761,7 +763,8 @@
  * Create a new ghostpad based on @templ, without setting a target. The
  * direction will be taken from the @templ.
  *
- * Returns: (transfer full): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer full) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  */
 GstPad *
 gst_ghost_pad_new_no_target_from_template (const gchar * name,
@@ -783,8 +786,9 @@
  *
  * Get the target pad of @gpad. Unref target pad after usage.
  *
- * Returns: (transfer full): the target #GstPad, can be %NULL if the ghostpad
- * has no target set. Unref target pad after usage.
+ * Returns: (transfer full) (nullable): the target #GstPad, can be
+ * %NULL if the ghostpad has no target set. Unref target pad after
+ * usage.
  */
 GstPad *
 gst_ghost_pad_get_target (GstGhostPad * gpad)
diff --git a/gst/gstglobaldevicemonitor.c b/gst/gstglobaldevicemonitor.c
deleted file mode 100644
index 68900ef..0000000
--- a/gst/gstglobaldevicemonitor.c
+++ /dev/null
@@ -1,501 +0,0 @@
-/* GStreamer
- * Copyright (C) 2013 Olivier Crete <olivier.crete@collabora.com>
- *
- * gstglobaldevicemonitor.c: Global device monitor
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:gstglobaldevicemonitor
- * @short_description: A global device monitor and prober
- * @see_also: #GstDevice, #GstDeviceMonitor
- *
- * Applications should create a #GstGlobalDeviceMonitor when they want
- * to probe, list and monitor devices of a specific type. The
- * #GstGlobalDeviceMonitor will create the appropriate
- * #GstDeviceMonitor objects and manage them. It will then post
- * messages on its #GstBus for devices that have been added and
- * removed.
- *
- * Since: 1.4
- */
-
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "gst_private.h"
-#include "gstglobaldevicemonitor.h"
-
-struct _GstGlobalDeviceMonitorPrivate
-{
-  gboolean started;
-
-  GstBus *bus;
-
-  GPtrArray *monitors;
-  guint cookie;
-
-  GstCaps *caps;
-  gchar *classes;
-};
-
-
-G_DEFINE_TYPE (GstGlobalDeviceMonitor, gst_global_device_monitor,
-    GST_TYPE_OBJECT);
-
-static void gst_global_device_monitor_dispose (GObject * object);
-
-static void
-gst_global_device_monitor_class_init (GstGlobalDeviceMonitorClass * klass)
-{
-  GObjectClass *object_class = G_OBJECT_CLASS (klass);
-
-  g_type_class_add_private (klass, sizeof (GstGlobalDeviceMonitorPrivate));
-
-  object_class->dispose = gst_global_device_monitor_dispose;
-}
-
-static void
-bus_sync_message (GstBus * bus, GstMessage * message,
-    GstGlobalDeviceMonitor * monitor)
-{
-  GstMessageType type = GST_MESSAGE_TYPE (message);
-
-  if (type == GST_MESSAGE_DEVICE_ADDED || type == GST_MESSAGE_DEVICE_REMOVED) {
-    gboolean matches;
-    GstCaps *caps;
-    GstDevice *device;
-
-    if (type == GST_MESSAGE_DEVICE_ADDED)
-      gst_message_parse_device_added (message, &device);
-    else
-      gst_message_parse_device_removed (message, &device);
-
-    GST_OBJECT_LOCK (monitor);
-    caps = gst_device_get_caps (device);
-    matches = gst_caps_can_intersect (monitor->priv->caps, caps) &&
-        gst_device_has_classes (device, monitor->priv->classes);
-    gst_caps_unref (caps);
-    GST_OBJECT_UNLOCK (monitor);
-
-    if (matches)
-      gst_bus_post (monitor->priv->bus, gst_message_ref (message));
-  }
-}
-
-
-static void
-gst_global_device_monitor_init (GstGlobalDeviceMonitor * self)
-{
-  GList *factories;
-
-  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
-      GST_TYPE_GLOBAL_DEVICE_MONITOR, GstGlobalDeviceMonitorPrivate);
-
-  self->priv->bus = gst_bus_new ();
-  gst_bus_set_flushing (self->priv->bus, TRUE);
-
-  self->priv->monitors = g_ptr_array_new ();
-  self->priv->caps = gst_caps_new_any ();
-  self->priv->classes = g_strdup ("");
-
-  factories =
-      gst_device_monitor_factory_list_get_device_monitors (self->priv->classes,
-      1);
-
-  while (factories) {
-    GstDeviceMonitorFactory *factory = factories->data;
-    GstDeviceMonitor *monitor;
-
-    factories = g_list_remove (factories, factory);
-
-    monitor = gst_device_monitor_factory_get (factory);
-    if (monitor) {
-      GstBus *bus = gst_device_monitor_get_bus (monitor);
-
-      gst_bus_enable_sync_message_emission (bus);
-      g_signal_connect (bus, "sync-message",
-          G_CALLBACK (bus_sync_message), self);
-      g_ptr_array_add (self->priv->monitors, monitor);
-    }
-
-    gst_object_unref (factory);
-  }
-}
-
-
-static void
-gst_global_device_monitor_remove (GstGlobalDeviceMonitor * self, guint i)
-{
-  GstDeviceMonitor *monitor = g_ptr_array_index (self->priv->monitors, i);
-  GstBus *bus;
-
-  g_ptr_array_remove_index_fast (self->priv->monitors, i);
-
-  bus = gst_device_monitor_get_bus (monitor);
-  g_signal_handlers_disconnect_by_func (bus, bus_sync_message, self);
-  gst_object_unref (bus);
-
-  gst_object_unref (monitor);
-}
-
-static void
-gst_global_device_monitor_dispose (GObject * object)
-{
-  GstGlobalDeviceMonitor *self = GST_GLOBAL_DEVICE_MONITOR (object);
-
-  g_return_if_fail (self->priv->started == FALSE);
-
-  if (self->priv->monitors) {
-    while (self->priv->monitors->len)
-      gst_global_device_monitor_remove (self, self->priv->monitors->len - 1);
-    g_ptr_array_unref (self->priv->monitors);
-    self->priv->monitors = NULL;
-  }
-
-  gst_caps_replace (&self->priv->caps, NULL);
-  g_free (self->priv->classes);
-  gst_object_replace ((GstObject **) & self->priv->bus, NULL);
-
-  G_OBJECT_CLASS (gst_global_device_monitor_parent_class)->dispose (object);
-}
-
-/**
- * gst_global_device_monitor_get_devices:
- * @monitor: A #GstDeviceMonitor
- *
- * Gets a list of devices from all of the relevant monitors. This may actually
- * probe the hardware if the global monitor is not currently started.
- *
- * Returns: (transfer full) (element-type GstDevice): a #GList of
- *   #GstDevice
- *
- * Since: 1.4
- */
-
-GList *
-gst_global_device_monitor_get_devices (GstGlobalDeviceMonitor * monitor)
-{
-  GList *devices = NULL;
-  guint i;
-  guint cookie;
-
-  g_return_val_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor), NULL);
-
-  GST_OBJECT_LOCK (monitor);
-
-again:
-
-  g_list_free_full (devices, gst_object_unref);
-  devices = NULL;
-
-  cookie = monitor->priv->cookie;
-
-  for (i = 0; i < monitor->priv->monitors->len; i++) {
-    GList *tmpdev;
-    GstDeviceMonitor *device_monitor =
-        gst_object_ref (g_ptr_array_index (monitor->priv->monitors, i));
-    GList *item;
-
-    GST_OBJECT_UNLOCK (monitor);
-
-    tmpdev = gst_device_monitor_get_devices (device_monitor);
-
-    for (item = tmpdev; item; item = item->next) {
-      GstDevice *dev = GST_DEVICE (item->data);
-      GstCaps *caps = gst_device_get_caps (dev);
-
-      if (gst_caps_can_intersect (monitor->priv->caps, caps) &&
-          gst_device_has_classes (dev, monitor->priv->classes))
-        devices = g_list_prepend (devices, gst_object_ref (dev));
-      gst_caps_unref (caps);
-    }
-
-    g_list_free_full (tmpdev, gst_object_unref);
-    gst_object_unref (device_monitor);
-
-    GST_OBJECT_LOCK (monitor);
-
-    if (monitor->priv->cookie != cookie)
-      goto again;
-  }
-
-  GST_OBJECT_UNLOCK (monitor);
-
-  return devices;
-}
-
-/**
- * gst_global_device_monitor_start:
- * @monitor: A #GstGlobalDeviceMonitor
- *
- * Starts monitoring the devices, one this has succeeded, the
- * %GST_MESSAGE_DEVICE_ADDED and %GST_MESSAGE_DEVICE_REMOVED messages
- * will be emitted on the bus when the list of devices changes.
- *
- * Returns: %TRUE if the device monitoring could be started
- *
- * Since: 1.4
- */
-
-gboolean
-gst_global_device_monitor_start (GstGlobalDeviceMonitor * monitor)
-{
-  guint i;
-
-  g_return_val_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor), FALSE);
-
-  GST_OBJECT_LOCK (monitor);
-
-  if (monitor->priv->monitors->len == 0) {
-    GST_OBJECT_UNLOCK (monitor);
-    return FALSE;
-  }
-
-  gst_bus_set_flushing (monitor->priv->bus, FALSE);
-
-  for (i = 0; i < monitor->priv->monitors->len; i++) {
-    if (!gst_device_monitor_start (g_ptr_array_index (monitor->priv->monitors,
-                i))) {
-      gst_bus_set_flushing (monitor->priv->bus, TRUE);
-
-      for (; i != 0; i--)
-        gst_device_monitor_stop (g_ptr_array_index (monitor->priv->monitors,
-                i - 1));
-
-      GST_OBJECT_UNLOCK (monitor);
-      return FALSE;
-    }
-  }
-
-  monitor->priv->started = TRUE;
-  GST_OBJECT_UNLOCK (monitor);
-
-  return TRUE;
-}
-
-/**
- * gst_global_device_monitor_stop:
- * @monitor: A #GstDeviceMonitor
- *
- * Stops monitoring the devices.
- *
- * Since: 1.4
- */
-void
-gst_global_device_monitor_stop (GstGlobalDeviceMonitor * monitor)
-{
-  guint i;
-
-  g_return_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor));
-
-  gst_bus_set_flushing (monitor->priv->bus, TRUE);
-
-  GST_OBJECT_LOCK (monitor);
-  for (i = 0; i < monitor->priv->monitors->len; i++)
-    gst_device_monitor_stop (g_ptr_array_index (monitor->priv->monitors, i));
-  monitor->priv->started = FALSE;
-  GST_OBJECT_UNLOCK (monitor);
-
-}
-
-/**
- * gst_global_device_monitor_set_classes_filter:
- * @monitor: the global device monitor
- * @classes: device classes to use as filter
- *
- * Filter devices monitored by device class, e.g. in case you are only
- * interested in a certain type of device like audio devices or
- * video sources.
- *
- * Since: 1.4
- */
-void
-gst_global_device_monitor_set_classes_filter (GstGlobalDeviceMonitor * monitor,
-    const gchar * classes)
-{
-  GList *factories = NULL;
-  guint i;
-
-  g_return_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor));
-  g_return_if_fail (!monitor->priv->started);
-
-  GST_OBJECT_LOCK (monitor);
-  if (!strcmp (monitor->priv->classes, classes)) {
-    GST_OBJECT_UNLOCK (monitor);
-    return;
-  }
-
-  g_free (monitor->priv->classes);
-  monitor->priv->classes = g_strdup (classes);
-
-  factories = gst_device_monitor_factory_list_get_device_monitors (classes, 1);
-
-  for (i = 0; i < monitor->priv->monitors->len; i++) {
-    GstDeviceMonitor *dev_monitor;
-    GstDeviceMonitorFactory *f;
-    GList *item;
-
-    dev_monitor = g_ptr_array_index (monitor->priv->monitors, i);
-    f = gst_device_monitor_get_factory (dev_monitor);
-
-    item = g_list_find (factories, f);
-
-    if (item) {
-      /* If the item is in our list, then remove it from the list of factories,
-       * we don't have it to re-create it later
-       */
-      factories = g_list_remove_link (factories, item);
-      gst_object_unref (f);
-    } else {
-      /* If it's not in our list, them remove it from the list of monitors.
-       */
-
-      monitor->priv->cookie++;
-      gst_global_device_monitor_remove (monitor, i);
-      i--;
-    }
-  }
-
-  while (factories) {
-    GstDeviceMonitorFactory *factory = factories->data;
-    GstDeviceMonitor *device_monitor;
-
-    factories = g_list_remove (factories, factory);
-
-    device_monitor = gst_device_monitor_factory_get (factory);
-    if (device_monitor) {
-      GstBus *bus = gst_device_monitor_get_bus (device_monitor);
-
-      gst_bus_enable_sync_message_emission (bus);
-      g_signal_connect (bus, "sync-message",
-          G_CALLBACK (bus_sync_message), monitor);
-      gst_object_unref (bus);
-      g_ptr_array_add (monitor->priv->monitors, device_monitor);
-      monitor->priv->cookie++;
-    }
-
-    gst_object_unref (factory);
-  }
-
-  GST_OBJECT_UNLOCK (monitor);
-}
-
-/**
- * gst_global_device_monitor_get_classes_filter:
- * @monitor: the global device monitor
- *
- * Return the type (device classes) filter active for device filtering.
- *
- * Returns: string of device classes that are being filtered.
- *
- * Since: 1.4
- */
-gchar *
-gst_global_device_monitor_get_classes_filter (GstGlobalDeviceMonitor * monitor)
-{
-  gchar *res;
-
-  g_return_val_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor), 0);
-
-  GST_OBJECT_LOCK (monitor);
-  res = g_strdup (monitor->priv->classes);
-  GST_OBJECT_UNLOCK (monitor);
-
-  return res;
-}
-
-/**
- * gst_global_device_monitor_set_caps_filter:
- * @monitor: the global device monitor
- * @caps: caps to filter
- *
- * Set caps to use as filter for devices. By default ANY caps are used,
- * meaning no caps filter is active.
- *
- * Since: 1.4
- */
-void
-gst_global_device_monitor_set_caps_filter (GstGlobalDeviceMonitor * monitor,
-    GstCaps * caps)
-{
-  g_return_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor));
-  g_return_if_fail (GST_IS_CAPS (caps));
-
-  GST_OBJECT_LOCK (monitor);
-  gst_caps_replace (&monitor->priv->caps, caps);
-  GST_OBJECT_UNLOCK (monitor);
-}
-
-/**
- * gst_global_device_monitor_get_caps_filter:
- * @monitor: a global device monitor
- *
- * Get the #GstCaps filter set by gst_global_device_monitor_set_caps_filter().
- *
- * Returns: (transfer full): the filter caps that are active (or ANY caps)
- *
- * Since: 1.4
- */
-GstCaps *
-gst_global_device_monitor_get_caps_filter (GstGlobalDeviceMonitor * monitor)
-{
-  GstCaps *res;
-
-  g_return_val_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor), NULL);
-
-  GST_OBJECT_LOCK (monitor);
-  res = gst_caps_ref (monitor->priv->caps);
-  GST_OBJECT_UNLOCK (monitor);
-
-  return res;
-}
-
-/**
- * gst_global_device_monitor_new:
- *
- * Create a new #GstGlobalDeviceMonitor
- *
- * Returns: (transfer full): a new global device monitor.
- *
- * Since: 1.4
- */
-GstGlobalDeviceMonitor *
-gst_global_device_monitor_new (void)
-{
-  return g_object_new (GST_TYPE_GLOBAL_DEVICE_MONITOR, NULL);
-}
-
-/**
- * gst_global_device_monitor_get_bus:
- * @monitor: a #GstDeviceMonitor
- *
- * Gets the #GstBus of this #GstGlobalDeviceMonitor
- *
- * Returns: (transfer full): a #GstBus
- *
- * Since: 1.4
- */
-GstBus *
-gst_global_device_monitor_get_bus (GstGlobalDeviceMonitor * monitor)
-{
-  g_return_val_if_fail (GST_IS_GLOBAL_DEVICE_MONITOR (monitor), NULL);
-
-  return gst_object_ref (monitor->priv->bus);
-}
diff --git a/gst/gstglobaldevicemonitor.h b/gst/gstglobaldevicemonitor.h
deleted file mode 100644
index b92fd40..0000000
--- a/gst/gstglobaldevicemonitor.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/* GStreamer
- * Copyright (C) 2013 Olivier Crete <olivier.crete@collabora.com>
- *
- * gstglobaldevicemonitor.c: Global device monitor
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_GLOBAL_DEVICE_MONITOR_H__
-#define __GST_GLOBAL_DEVICE_MONITOR_H__
-
-#include <gst/gstobject.h>
-#include <gst/gstdevice.h>
-#include <gst/gstdevicemonitor.h>
-#include <gst/gstdevicemonitorfactory.h>
-
-G_BEGIN_DECLS
-
-typedef struct _GstGlobalDeviceMonitor GstGlobalDeviceMonitor;
-typedef struct _GstGlobalDeviceMonitorPrivate GstGlobalDeviceMonitorPrivate;
-typedef struct _GstGlobalDeviceMonitorClass GstGlobalDeviceMonitorClass;
-
-#define GST_TYPE_GLOBAL_DEVICE_MONITOR                 (gst_global_device_monitor_get_type())
-#define GST_IS_GLOBAL_DEVICE_MONITOR(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GLOBAL_DEVICE_MONITOR))
-#define GST_IS_GLOBAL_DEVICE_MONITOR_CLASS(klass)      (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_GLOBAL_DEVICE_MONITOR))
-#define GST_GLOBAL_DEVICE_MONITOR_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_GLOBAL_DEVICE_MONITOR, GstGlobalDeviceMonitorClass))
-#define GST_GLOBAL_DEVICE_MONITOR(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_GLOBAL_DEVICE_MONITOR, GstGlobalDeviceMonitor))
-#define GST_GLOBAL_DEVICE_MONITOR_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_GLOBAL_DEVICE_MONITOR, GstGlobalDeviceMonitorClass))
-#define GST_GLOBAL_DEVICE_MONITOR_CAST(obj)            ((GstGlobalDeviceMonitor *)(obj))
-
-/**
- * GstGlobalDeviceMonitor:
- * @parent: the parent #GstObject structure
- *
- * Opaque global device monitor object structure.
- *
- * Since: 1.4
- */
-struct _GstGlobalDeviceMonitor {
-  GstObject                parent;
-
-  /*< private >*/
-
-  GstGlobalDeviceMonitorPrivate *priv;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-/**
- * GstGlobalDeviceMonitorClass:
- * @parent_class: the parent #GstObjectClass structure
- *
- * Opaque global device monitor class structure.
- *
- * Since: 1.4
- */
-struct _GstGlobalDeviceMonitorClass {
-  GstObjectClass           parent_class;
-
-  /*< private >*/
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-GType     gst_global_device_monitor_get_type (void);
-
-GstGlobalDeviceMonitor * gst_global_device_monitor_new  (void);
-
-GstBus *  gst_global_device_monitor_get_bus (GstGlobalDeviceMonitor * monitor);
-
-GList *   gst_global_device_monitor_get_devices (GstGlobalDeviceMonitor * monitor);
-
-
-gboolean  gst_global_device_monitor_start (GstGlobalDeviceMonitor * monitor);
-
-void      gst_global_device_monitor_stop  (GstGlobalDeviceMonitor * monitor);
-
-
-void      gst_global_device_monitor_set_classes_filter (GstGlobalDeviceMonitor * monitor,
-                                                        const gchar            * classes);
-
-gchar *   gst_global_device_monitor_get_classes_filter (GstGlobalDeviceMonitor * monitor);
-
-
-void      gst_global_device_monitor_set_caps_filter (GstGlobalDeviceMonitor * monitor,
-                                                     GstCaps                * caps);
-
-GstCaps * gst_global_device_monitor_get_caps_filter (GstGlobalDeviceMonitor * monitor);
-
-G_END_DECLS
-
-#endif /* __GST_GLOBAL_DEVICE_MONITOR_H__ */
diff --git a/gst/gstinfo.c b/gst/gstinfo.c
index 3f56686..f40a281 100644
--- a/gst/gstinfo.c
+++ b/gst/gstinfo.c
@@ -264,8 +264,6 @@
 static volatile gint G_GNUC_MAY_ALIAS __default_level = GST_LEVEL_DEFAULT;
 static volatile gint G_GNUC_MAY_ALIAS __use_color = GST_DEBUG_COLOR_MODE_ON;
 
-static FILE *log_file;
-
 /* FIXME: export this? */
 gboolean
 _priv_gst_in_valgrind (void)
@@ -282,9 +280,6 @@
 #ifdef HAVE_VALGRIND_VALGRIND_H
     if (RUNNING_ON_VALGRIND) {
       GST_CAT_INFO (GST_CAT_GST_INIT, "we're running inside valgrind");
-      printf ("GStreamer has detected that it is running inside valgrind.\n");
-      printf ("It might now take different code paths to ease debugging.\n");
-      printf ("Of course, this may also lead to different bugs.\n");
       in_valgrind = GST_VG_INSIDE;
     } else {
       GST_CAT_LOG (GST_CAT_GST_INIT, "not doing extra valgrind stuff");
@@ -304,6 +299,7 @@
 _priv_gst_debug_init (void)
 {
   const gchar *env;
+  FILE *log_file;
 
   env = g_getenv ("GST_DEBUG_FILE");
   if (env != NULL && *env != '\0') {
@@ -333,7 +329,7 @@
   _GST_CAT_DEBUG = _gst_debug_category_new ("GST_DEBUG",
       GST_DEBUG_BOLD | GST_DEBUG_FG_YELLOW, "debugging subsystem");
 
-  gst_debug_add_log_function (gst_debug_log_default, NULL, NULL);
+  gst_debug_add_log_function (gst_debug_log_default, log_file, NULL);
 
   /* FIXME: add descriptions here */
   GST_CAT_GST_INIT = _gst_debug_category_new ("GST_INIT",
@@ -448,7 +444,6 @@
   va_end (var_args);
 }
 
-#ifdef G_OS_WIN32
 /* based on g_basename(), which we can't use because it was deprecated */
 static inline const gchar *
 gst_path_basename (const gchar * file_name)
@@ -471,7 +466,6 @@
 
   return file_name;
 }
-#endif
 
 /**
  * gst_debug_log_valist:
@@ -497,17 +491,14 @@
   GSList *handler;
 
   g_return_if_fail (category != NULL);
+
+  if (level > gst_debug_category_get_threshold (category))
+    return;
+
   g_return_if_fail (file != NULL);
   g_return_if_fail (function != NULL);
   g_return_if_fail (format != NULL);
 
-  /* The predefined macro __FILE__ is always the exact path given to the
-   * compiler with MSVC, which may or may not be the basename.  We work
-   * around it at runtime to improve the readability. */
-#ifdef G_OS_WIN32
-  file = gst_path_basename (file);
-#endif
-
   message.message = NULL;
   message.format = format;
   G_VA_COPY (message.arguments, args);
@@ -585,7 +576,7 @@
 gst_info_structure_to_string (const GstStructure * s)
 {
   if (G_LIKELY (s)) {
-    gchar *str = gst_structure_to_string (s);;
+    gchar *str = gst_structure_to_string (s);
     if (G_UNLIKELY (pretty_tags && s->name == GST_QUARK (TAGLIST)))
       return prettify_structure_string (str);
     else
@@ -597,14 +588,29 @@
 static inline gchar *
 gst_info_describe_buffer (GstBuffer * buffer)
 {
+  const gchar *offset_str = "none";
+  const gchar *offset_end_str = "none";
+  gchar offset_buf[32], offset_end_buf[32];
+
+  if (GST_BUFFER_OFFSET_IS_VALID (buffer)) {
+    g_snprintf (offset_buf, sizeof (offset_buf), "%" G_GUINT64_FORMAT,
+        GST_BUFFER_OFFSET (buffer));
+    offset_str = offset_buf;
+  }
+  if (GST_BUFFER_OFFSET_END_IS_VALID (buffer)) {
+    g_snprintf (offset_end_buf, sizeof (offset_end_buf), "%" G_GUINT64_FORMAT,
+        GST_BUFFER_OFFSET_END (buffer));
+    offset_end_str = offset_end_buf;
+  }
+
   return g_strdup_printf ("buffer: %p, pts %" GST_TIME_FORMAT ", dts %"
       GST_TIME_FORMAT ", dur %" GST_TIME_FORMAT ", size %" G_GSIZE_FORMAT
-      ", offset %" G_GUINT64_FORMAT ", offset_end %" G_GUINT64_FORMAT
-      ", flags 0x%x", buffer, GST_TIME_ARGS (GST_BUFFER_PTS (buffer)),
+      ", offset %s, offset_end %s, flags 0x%x", buffer,
+      GST_TIME_ARGS (GST_BUFFER_PTS (buffer)),
       GST_TIME_ARGS (GST_BUFFER_DTS (buffer)),
       GST_TIME_ARGS (GST_BUFFER_DURATION (buffer)),
-      gst_buffer_get_size (buffer), GST_BUFFER_OFFSET (buffer),
-      GST_BUFFER_OFFSET_END (buffer), GST_BUFFER_FLAGS (buffer));
+      gst_buffer_get_size (buffer), offset_str, offset_end_str,
+      GST_BUFFER_FLAGS (buffer));
 }
 
 static inline gchar *
@@ -962,12 +968,13 @@
  * @message: the actual message
  * @object: (transfer none) (allow-none): the object this message relates to,
  *     or %NULL if none
- * @unused: an unused variable, reserved for some user_data.
+ * @user_data: the FILE* to log to
  *
  * The default logging handler used by GStreamer. Logging functions get called
- * whenever a macro like GST_DEBUG or similar is used. This function outputs the
- * message and additional info to stderr (or the log file specified via the
- * GST_DEBUG_FILE environment variable).
+ * whenever a macro like GST_DEBUG or similar is used. By default this function
+ * is setup to output the message and additional info to stderr (or the log file
+ * specified via the GST_DEBUG_FILE environment variable) as received via
+ * @user_data.
  *
  * You can add other handlers by using gst_debug_add_log_function().
  * And you can remove this handler by calling
@@ -976,15 +983,23 @@
 void
 gst_debug_log_default (GstDebugCategory * category, GstDebugLevel level,
     const gchar * file, const gchar * function, gint line,
-    GObject * object, GstDebugMessage * message, gpointer unused)
+    GObject * object, GstDebugMessage * message, gpointer user_data)
 {
   gint pid;
   GstClockTime elapsed;
   gchar *obj = NULL;
   GstDebugColorMode color_mode;
+  FILE *log_file = user_data ? user_data : stderr;
+  gchar c;
 
-  if (level > gst_debug_category_get_threshold (category))
-    return;
+  /* __FILE__ might be a file name or an absolute path or a
+   * relative path, irrespective of the exact compiler used,
+   * in which case we want to shorten it to the filename for
+   * readability. */
+  c = file[0];
+  if (c == '.' || c == '/' || c == '\\' || (c != '\0' && file[1] == ':')) {
+    file = gst_path_basename (file);
+  }
 
   pid = getpid ();
   color_mode = gst_debug_get_color_mode ();
@@ -992,7 +1007,7 @@
   if (object) {
     obj = gst_debug_print_object (object);
   } else {
-    obj = g_strdup ("");
+    obj = (gchar *) "";
   }
 
   elapsed = GST_CLOCK_DIFF (_priv_gst_info_start_time,
@@ -1075,7 +1090,8 @@
 #undef PRINT_FMT
   }
 
-  g_free (obj);
+  if (object != NULL)
+    g_free (obj);
 }
 
 /**
@@ -1801,7 +1817,7 @@
 
   g_assert (list);
 
-  if (reset == TRUE)
+  if (reset)
     gst_debug_set_default_threshold (0);
 
   split = g_strsplit (list, ",", 0);
diff --git a/gst/gstinfo.h b/gst/gstinfo.h
index 319e841..71cfa41 100644
--- a/gst/gstinfo.h
+++ b/gst/gstinfo.h
@@ -102,6 +102,22 @@
 #define GST_LEVEL_DEFAULT GST_LEVEL_NONE
 #endif
 
+/**
+ * GST_LEVEL_MAX:
+ *
+ * Defines the maximum debugging level to be enabled at compilation time. By default
+ * it is set such that all debugging statements will be enabled.
+ *
+ * If you wish to compile GStreamer and plugins with only some debugging statements
+ * (Such as just warnings and errors), you can define it at compile time to the
+ * maximum debug level. Any debug statements above that level will be compiled out.
+ *
+ * Since: 1.6
+ */
+#ifndef GST_LEVEL_MAX
+#define GST_LEVEL_MAX GST_LEVEL_COUNT
+#endif
+
 /* defines for format (colors etc)
  * don't change them around, it uses terminal layout
  * Terminal color strings:
@@ -197,7 +213,7 @@
 
 /**
  * GST_STR_NULL:
- * @str: The string to check.
+ * @str: (allow-none): The string to check.
  *
  * Macro to use when a string must not be %NULL, but may be %NULL. If the string
  * is %NULL, "(NULL)" is printed instead.
@@ -338,7 +354,7 @@
                                           gint               line,
                                           GObject          * object,
                                           GstDebugMessage  * message,
-                                          gpointer           unused) G_GNUC_NO_INSTRUMENT;
+                                          gpointer           user_data) G_GNUC_NO_INSTRUMENT;
 
 const gchar *   gst_debug_level_get_name (GstDebugLevel level);
 
@@ -520,7 +536,7 @@
  */
 #ifdef G_HAVE_ISO_VARARGS
 #define GST_CAT_LEVEL_LOG(cat,level,object,...) G_STMT_START{		\
-  if (G_UNLIKELY (level <= _gst_debug_min)) {						\
+  if (G_UNLIKELY (level <= GST_LEVEL_MAX && level <= _gst_debug_min)) {						\
     gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__,	\
         (GObject *) (object), __VA_ARGS__);				\
   }									\
@@ -528,7 +544,7 @@
 #else /* G_HAVE_GNUC_VARARGS */
 #ifdef G_HAVE_GNUC_VARARGS
 #define GST_CAT_LEVEL_LOG(cat,level,object,args...) G_STMT_START{	\
-  if (G_UNLIKELY (level <= _gst_debug_min)) {						\
+  if (G_UNLIKELY (level <= GST_LEVEL_MAX && level <= _gst_debug_min)) {						\
     gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__,	\
         (GObject *) (object), ##args );					\
   }									\
@@ -538,7 +554,7 @@
 GST_CAT_LEVEL_LOG_valist (GstDebugCategory * cat,
     GstDebugLevel level, gpointer object, const char *format, va_list varargs)
 {
-  if (G_UNLIKELY (level <= _gst_debug_min)) {
+  if (G_UNLIKELY (level <= GST_LEVEL_MAX && level <= _gst_debug_min)) {
     gst_debug_log_valist (cat, level, "", "", 0, (GObject *) object, format,
         varargs);
   }
@@ -561,7 +577,8 @@
  * other macros and hence in a separate block right here. Docs chunks are
  * with the other doc chunks below though. */
 #define __GST_CAT_MEMDUMP_LOG(cat,object,msg,data,length) G_STMT_START{       \
-  if (G_UNLIKELY (GST_LEVEL_MEMDUMP <= _gst_debug_min)) {                    \
+    if (G_UNLIKELY (GST_LEVEL_MEMDUMP <= GST_LEVEL_MAX &&		      \
+		    GST_LEVEL_MEMDUMP <= _gst_debug_min)) {		      \
     _gst_debug_dump_mem ((cat), __FILE__, GST_FUNCTION, __LINE__,             \
         (GObject *) (object), (msg), (data), (length));                       \
   }                                                                           \
diff --git a/gst/gstiterator.c b/gst/gstiterator.c
index 4e5b1f5..4aed7c7 100644
--- a/gst/gstiterator.c
+++ b/gst/gstiterator.c
@@ -32,18 +32,20 @@
  * Various GStreamer objects provide access to their internal structures using
  * an iterator.
  *
- * In general, whenever calling a GstIterator function results in your code
- * receiving a refcounted object, the refcount for that object will have been
- * increased.  Your code is responsible for unreffing that object after use.
+ * Note that if calling a GstIterator function results in your code receiving
+ * a refcounted object (with, say, g_value_get_object()), the refcount for that
+ * object will not be increased. Your code is responsible for taking a reference
+ * if it wants to continue using it later.
  *
  * The basic use pattern of an iterator is as follows:
  * |[
  *   GstIterator *it = _get_iterator(object);
+ *   GValue item = G_VALUE_INIT;
  *   done = FALSE;
  *   while (!done) {
  *     switch (gst_iterator_next (it, &amp;item)) {
  *       case GST_ITERATOR_OK:
- *         ... use/change item here...
+ *         ...get/use/change item here...
  *         g_value_reset (&amp;item);
  *         break;
  *       case GST_ITERATOR_RESYNC:
diff --git a/gst/gstmemory.c b/gst/gstmemory.c
index c29fccd..9e97d1e 100644
--- a/gst/gstmemory.c
+++ b/gst/gstmemory.c
@@ -225,8 +225,8 @@
  * This function takes ownership of old @mem and returns a reference to a new
  * #GstMemory.
  *
- * Returns: (transfer full): a #GstMemory object mapped with @flags or %NULL when
- * a mapping is not possible.
+ * Returns: (transfer full) (nullable): a #GstMemory object mapped
+ * with @flags or %NULL when a mapping is not possible.
  */
 GstMemory *
 gst_memory_make_mapped (GstMemory * mem, GstMapInfo * info, GstMapFlags flags)
diff --git a/gst/gstmessage.c b/gst/gstmessage.c
index 5014016..51282b9 100644
--- a/gst/gstmessage.c
+++ b/gst/gstmessage.c
@@ -118,11 +118,6 @@
 
   GST_CAT_INFO (GST_CAT_GST_INIT, "init messages");
 
-  /* the GstMiniObject types need to be class_ref'd once before it can be
-   * done from multiple threads;
-   * see http://bugzilla.gnome.org/show_bug.cgi?id=304551 */
-  gst_message_get_type ();
-
   for (i = 0; message_quarks[i].name; i++) {
     message_quarks[i].quark =
         g_quark_from_static_string (message_quarks[i].name);
@@ -171,6 +166,28 @@
   return 0;
 }
 
+static gboolean
+_gst_message_dispose (GstMessage * message)
+{
+  gboolean do_free = TRUE;
+
+  if (GST_MINI_OBJECT_FLAG_IS_SET (message, GST_MESSAGE_FLAG_ASYNC_DELIVERY)) {
+    /* revive message, so bus can finish with it and clean it up */
+    gst_message_ref (message);
+
+    GST_INFO ("[msg %p] signalling async free", message);
+
+    GST_MESSAGE_LOCK (message);
+    GST_MESSAGE_SIGNAL (message);
+    GST_MESSAGE_UNLOCK (message);
+
+    /* don't free it yet, let bus finish with it first */
+    do_free = FALSE;
+  }
+
+  return do_free;
+}
+
 static void
 _gst_message_free (GstMessage * message)
 {
@@ -186,12 +203,6 @@
     GST_MESSAGE_SRC (message) = NULL;
   }
 
-  if (message->lock.p) {
-    GST_MESSAGE_LOCK (message);
-    GST_MESSAGE_SIGNAL (message);
-    GST_MESSAGE_UNLOCK (message);
-  }
-
   structure = GST_MESSAGE_STRUCTURE (message);
   if (structure) {
     gst_structure_set_parent_refcount (structure, NULL);
@@ -240,7 +251,8 @@
     GstObject * src)
 {
   gst_mini_object_init (GST_MINI_OBJECT_CAST (message), 0, _gst_message_type,
-      (GstMiniObjectCopyFunction) _gst_message_copy, NULL,
+      (GstMiniObjectCopyFunction) _gst_message_copy,
+      (GstMiniObjectDisposeFunction) _gst_message_dispose,
       (GstMiniObjectFreeFunction) _gst_message_free);
 
   GST_MESSAGE_TYPE (message) = type;
@@ -256,8 +268,8 @@
  * gst_message_new_custom:
  * @type: The #GstMessageType to distinguish messages
  * @src: The object originating the message.
- * @structure: (transfer full): the structure for the message. The message
- *     will take ownership of the structure.
+ * @structure: (transfer full) (allow-none): the structure for the
+ *     message. The message will take ownership of the structure.
  *
  * Create a new custom-typed message. This can be used for anything not
  * handled by other message-specific functions to pass a message to the
@@ -779,14 +791,16 @@
 GstMessage *
 gst_message_new_application (GstObject * src, GstStructure * structure)
 {
+  g_return_val_if_fail (structure != NULL, NULL);
+
   return gst_message_new_custom (GST_MESSAGE_APPLICATION, src, structure);
 }
 
 /**
  * gst_message_new_element:
  * @src: (transfer none): The object originating the message.
- * @structure: (transfer full): The structure for the message. The message
- *     will take ownership of the structure.
+ * @structure: (transfer full): The structure for the
+ *     message. The message will take ownership of the structure.
  *
  * Create a new element-specific message. This is meant as a generic way of
  * allowing one-way communication from an element to an application, for example
@@ -800,6 +814,8 @@
 GstMessage *
 gst_message_new_element (GstObject * src, GstStructure * structure)
 {
+  g_return_val_if_fail (structure != NULL, NULL);
+
   return gst_message_new_custom (GST_MESSAGE_ELEMENT, src, structure);
 }
 
@@ -2336,7 +2352,7 @@
  * @device: (transfer none): The new #GstDevice
  *
  * Creates a new device-added message. The device-added message is produced by
- * #GstDeviceMonitor or a #GstGlobalDeviceMonitor. They announce the appearance
+ * #GstDeviceProvider or a #GstDeviceMonitor. They announce the appearance
  * of monitored devices.
  *
  * Returns: a newly allocated #GstMessage
@@ -2366,7 +2382,7 @@
  *  pointer to the new #GstDevice, or %NULL
  * 
  * Parses a device-added message. The device-added message is produced by
- * #GstDeviceMonitor or a #GstGlobalDeviceMonitor. It announces the appearance
+ * #GstDeviceProvider or a #GstDeviceMonitor. It announces the appearance
  * of monitored devices.
  *
  * Since: 1.4
@@ -2388,7 +2404,7 @@
  * @device: (transfer none): The removed #GstDevice
  *
  * Creates a new device-removed message. The device-removed message is produced
- * by #GstDeviceMonitor or a #GstGlobalDeviceMonitor. They announce the
+ * by #GstDeviceProvider or a #GstDeviceMonitor. They announce the
  * disappearance of monitored devices.
  *
  * Returns: a newly allocated #GstMessage
@@ -2418,7 +2434,7 @@
  *  pointer to the removed #GstDevice, or %NULL
  *
  * Parses a device-removed message. The device-removed message is produced by
- * #GstDeviceMonitor or a #GstGlobalDeviceMonitor. It announces the
+ * #GstDeviceProvider or a #GstDeviceMonitor. It announces the
  * disappearance of monitored devices.
  *
  * Since: 1.4
diff --git a/gst/gstmessage.h b/gst/gstmessage.h
index 7433edc..fc5a7d8 100644
--- a/gst/gstmessage.h
+++ b/gst/gstmessage.h
@@ -105,9 +105,9 @@
  *     filter for GST_MESSAGE_EXTENDED and then check the result for the
  *     specific type. (Since 1.4)
  * @GST_MESSAGE_DEVICE_ADDED: Message indicating a #GstDevice was added to
- *     a #GstDeviceMonitor (Since 1.4)
+ *     a #GstDeviceProvider (Since 1.4)
  * @GST_MESSAGE_DEVICE_REMOVED: Message indicating a #GstDevice was removed
- *     from a #GstDeviceMonitor (Since 1.4)
+ *     from a #GstDeviceProvider (Since 1.4)
  * @GST_MESSAGE_ANY: mask for all of the above messages.
  *
  * The different message types that are available.
@@ -116,6 +116,9 @@
  * NOTE: keep GST_MESSAGE_ANY a valid gint to avoid compiler warnings.
  */
 /* FIXME: 2.0: Make it NOT flags, just a regular 1,2,3,4.. enumeration */
+/* FIXME: For GST_MESSAGE_ANY ~0 -> 0xffffffff see
+ *        https://bugzilla.gnome.org/show_bug.cgi?id=732633
+ */
 typedef enum
 {
   GST_MESSAGE_UNKNOWN           = 0,
@@ -153,7 +156,7 @@
   GST_MESSAGE_EXTENDED          = (1 << 31),
   GST_MESSAGE_DEVICE_ADDED      = GST_MESSAGE_EXTENDED + 1,
   GST_MESSAGE_DEVICE_REMOVED    = GST_MESSAGE_EXTENDED + 2,
-  GST_MESSAGE_ANY               = ~0
+  GST_MESSAGE_ANY               = (gint) (0xffffffff)
 } GstMessageType;
 
 #include <gst/gstminiobject.h>
@@ -404,8 +407,8 @@
 #define         gst_message_make_writable(msg)  GST_MESSAGE_CAST (gst_mini_object_make_writable (GST_MINI_OBJECT_CAST (msg)))
 /**
  * gst_message_replace:
- * @old_message: (inout) (transfer full): pointer to a pointer to a #GstMessage
- *     to be replaced.
+ * @old_message: (inout) (transfer full) (nullable): pointer to a
+ *     pointer to a #GstMessage to be replaced.
  * @new_message: (allow-none) (transfer none): pointer to a #GstMessage that will
  *     replace the message pointed to by @old_message.
  *
diff --git a/gst/gstmeta.c b/gst/gstmeta.c
index 0e0aca1..1269c56 100644
--- a/gst/gstmeta.c
+++ b/gst/gstmeta.c
@@ -205,8 +205,8 @@
  * Lookup a previously registered meta info structure by its implementation name
  * @impl.
  *
- * Returns: (transfer none): a #GstMetaInfo with @impl, or %NULL when no such
- * metainfo exists.
+ * Returns: (transfer none) (nullable): a #GstMetaInfo with @impl, or
+ * %NULL when no such metainfo exists.
  */
 const GstMetaInfo *
 gst_meta_get_info (const gchar * impl)
diff --git a/gst/gstminiobject.c b/gst/gstminiobject.c
index bece06a..d65bd02 100644
--- a/gst/gstminiobject.c
+++ b/gst/gstminiobject.c
@@ -469,9 +469,9 @@
 
 /**
  * gst_mini_object_replace:
- * @olddata: (inout) (transfer full): pointer to a pointer to a mini-object to
- *     be replaced
- * @newdata: pointer to new mini-object
+ * @olddata: (inout) (transfer full) (nullable): pointer to a pointer to a
+ *     mini-object to be replaced
+ * @newdata: (allow-none): pointer to new mini-object
  *
  * Atomically modifies a pointer to point to a new mini-object.
  * The reference count of @olddata is decreased and the reference count of
@@ -691,7 +691,8 @@
  * This function gets back user data pointers stored via
  * gst_mini_object_set_qdata().
  *
- * Returns: (transfer none): The user data pointer set, or %NULL
+ * Returns: (transfer none) (nullable): The user data pointer set, or
+ * %NULL
  */
 gpointer
 gst_mini_object_get_qdata (GstMiniObject * object, GQuark quark)
@@ -721,7 +722,8 @@
  * and removes the data from @object without invoking its destroy() function (if
  * any was set).
  *
- * Returns: (transfer full): The user data pointer set, or %NULL
+ * Returns: (transfer full) (nullable): The user data pointer set, or
+ * %NULL
  */
 gpointer
 gst_mini_object_steal_qdata (GstMiniObject * object, GQuark quark)
diff --git a/gst/gstobject.c b/gst/gstobject.c
index b997db6..198a7db 100644
--- a/gst/gstobject.c
+++ b/gst/gstobject.c
@@ -310,9 +310,9 @@
 
 /**
  * gst_object_replace:
- * @oldobj: (inout) (transfer full): pointer to a place of a #GstObject to
- *     replace
- * @newobj: (transfer none): a new #GstObject
+ * @oldobj: (inout) (transfer full) (nullable): pointer to a place of
+ *     a #GstObject to replace
+ * @newobj: (transfer none) (allow-none): a new #GstObject
  *
  * Atomically modifies a pointer to point to a new object.
  * The reference count of @oldobj is decreased and the reference count of
@@ -588,7 +588,7 @@
 /**
  * gst_object_set_name:
  * @object: a #GstObject
- * @name:   new name of object
+ * @name: (allow-none): new name of object
  *
  * Sets the name of @object, or gives @object a guaranteed unique
  * name (if @name is %NULL).
@@ -649,7 +649,8 @@
  *
  * Free-function: g_free
  *
- * Returns: (transfer full): the name of @object. g_free() after usage.
+ * Returns: (transfer full) (nullable): the name of @object. g_free()
+ * after usage.
  *
  * MT safe. This function grabs and releases @object's LOCK.
  */
@@ -724,8 +725,8 @@
  * Returns the parent of @object. This function increases the refcount
  * of the parent object so you should gst_object_unref() it after usage.
  *
- * Returns: (transfer full): parent of @object, this can be %NULL if @object
- *   has no parent. unref after usage.
+ * Returns: (transfer full) (nullable): parent of @object, this can be
+ *   %NULL if @object has no parent. unref after usage.
  *
  * MT safe. Grabs and releases @object's LOCK.
  */
@@ -778,6 +779,34 @@
 }
 
 /**
+ * gst_object_has_parent:
+ * @object: a #GstObject to check
+ * @parent: a #GstObject to check as parent
+ *
+ * Check if @parent is the parent of @object.
+ * E.g. a #GstElement can check if it owns a given #GstPad.
+ *
+ * Returns: %FALSE if either @object or @parent is %NULL. %TRUE if @parent is
+ *          the parent of @object. Otherwise %FALSE.
+ *
+ * MT safe. Grabs and releases @object's locks.
+ * Since: 1.6
+ */
+gboolean
+gst_object_has_parent (GstObject * object, GstObject * parent)
+{
+  gboolean result = FALSE;
+
+  if (G_LIKELY (GST_IS_OBJECT (object) && GST_IS_OBJECT (parent))) {
+    GST_OBJECT_LOCK (object);
+    result = GST_OBJECT_PARENT (object) == parent;
+    GST_OBJECT_UNLOCK (object);
+  }
+
+  return result;
+}
+
+/**
  * gst_object_has_ancestor:
  * @object: a #GstObject to check
  * @ancestor: a #GstObject to check as ancestor
@@ -992,8 +1021,8 @@
  *
  * Searches the list of properties under control.
  *
- * Returns: a #GstControlBinding or %NULL if the property is not being
- * controlled.
+ * Returns: (nullable): a #GstControlBinding or %NULL if the property
+ * is not being controlled.
  */
 static GstControlBinding *
 gst_object_find_control_binding (GstObject * self, const gchar * name)
@@ -1210,8 +1239,8 @@
  * Gets the corresponding #GstControlBinding for the property. This should be
  * unreferenced again after use.
  *
- * Returns: (transfer full): the #GstControlBinding for @property_name or %NULL if
- * the property is not controlled.
+ * Returns: (transfer full) (nullable): the #GstControlBinding for
+ * @property_name or %NULL if the property is not controlled.
  */
 GstControlBinding *
 gst_object_get_control_binding (GstObject * object, const gchar * property_name)
@@ -1271,8 +1300,8 @@
  *
  * Gets the value for the given controlled property at the requested time.
  *
- * Returns: the GValue of the property at the given time, or %NULL if the
- * property isn't controlled.
+ * Returns: (nullable): the GValue of the property at the given time,
+ * or %NULL if the property isn't controlled.
  */
 GValue *
 gst_object_get_value (GstObject * object, const gchar * property_name,
diff --git a/gst/gstobject.h b/gst/gstobject.h
index 86c5715..b9e6661 100644
--- a/gst/gstobject.h
+++ b/gst/gstobject.h
@@ -212,6 +212,7 @@
 gboolean	gst_object_set_parent		(GstObject *object, GstObject *parent);
 GstObject*	gst_object_get_parent		(GstObject *object);
 void		gst_object_unparent		(GstObject *object);
+gboolean	gst_object_has_parent		(GstObject *object, GstObject *parent);
 gboolean	gst_object_has_ancestor		(GstObject *object, GstObject *ancestor);
 
 void            gst_object_default_deep_notify  (GObject *object, GstObject *orig,
diff --git a/gst/gstpad.c b/gst/gstpad.c
index 09ce750..12a0833 100644
--- a/gst/gstpad.c
+++ b/gst/gstpad.c
@@ -115,7 +115,8 @@
   PAD_PROP_CAPS,
   PAD_PROP_DIRECTION,
   PAD_PROP_TEMPLATE,
-  /* FILL ME */
+  PAD_PROP_OFFSET
+      /* FILL ME */
 };
 
 #define GST_PAD_GET_PRIVATE(obj)  \
@@ -355,6 +356,18 @@
           "The GstPadTemplate of this pad", GST_TYPE_PAD_TEMPLATE,
           G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
+  /**
+   * GstPad:offset:
+   *
+   * The offset that will be applied to the running time of the pad.
+   *
+   * Since: 1.6
+   */
+  g_object_class_install_property (gobject_class, PAD_PROP_OFFSET,
+      g_param_spec_int64 ("offset", "Offset",
+          "The running time offset of the pad", 0, G_MAXINT64, 0,
+          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
   gstobject_class->path_string_separator = ".";
 
   /* Register common function pointer descriptions */
@@ -399,6 +412,7 @@
 {
   guint i, len;
   GArray *events;
+  gboolean notify = FALSE;
 
   events = pad->priv->events;
 
@@ -409,19 +423,24 @@
 
     ev->event = NULL;
 
-    if (event && GST_EVENT_TYPE (event) == GST_EVENT_CAPS) {
-      GST_OBJECT_UNLOCK (pad);
+    if (event && GST_EVENT_TYPE (event) == GST_EVENT_CAPS)
+      notify = TRUE;
 
-      GST_DEBUG_OBJECT (pad, "notify caps");
-      g_object_notify_by_pspec ((GObject *) pad, pspec_caps);
-
-      GST_OBJECT_LOCK (pad);
-    }
     gst_event_unref (event);
   }
+
   GST_OBJECT_FLAG_UNSET (pad, GST_PAD_FLAG_PENDING_EVENTS);
   g_array_set_size (events, 0);
   pad->priv->events_cookie++;
+
+  if (notify) {
+    GST_OBJECT_UNLOCK (pad);
+
+    GST_DEBUG_OBJECT (pad, "notify caps");
+    g_object_notify_by_pspec ((GObject *) pad, pspec_caps);
+
+    GST_OBJECT_LOCK (pad);
+  }
 }
 
 /* should be called with object lock */
@@ -600,39 +619,46 @@
 
 /* should be called with LOCK */
 static GstEvent *
-apply_pad_offset (GstPad * pad, GstEvent * event, gboolean upstream)
+_apply_pad_offset (GstPad * pad, GstEvent * event, gboolean upstream)
 {
-  /* check if we need to adjust the segment */
-  if (pad->offset != 0) {
-    gint64 offset;
+  gint64 offset;
 
-    GST_DEBUG_OBJECT (pad, "apply pad offset %" GST_TIME_FORMAT,
-        GST_TIME_ARGS (pad->offset));
+  GST_DEBUG_OBJECT (pad, "apply pad offset %" GST_TIME_FORMAT,
+      GST_TIME_ARGS (pad->offset));
 
-    if (GST_EVENT_TYPE (event) == GST_EVENT_SEGMENT) {
-      GstSegment segment;
+  if (GST_EVENT_TYPE (event) == GST_EVENT_SEGMENT) {
+    GstSegment segment;
 
-      g_assert (!upstream);
+    g_assert (!upstream);
 
-      /* copy segment values */
-      gst_event_copy_segment (event, &segment);
-      gst_event_unref (event);
+    /* copy segment values */
+    gst_event_copy_segment (event, &segment);
+    gst_event_unref (event);
 
-      gst_segment_offset_running_time (&segment, segment.format, pad->offset);
-      event = gst_event_new_segment (&segment);
-    }
-
-    event = gst_event_make_writable (event);
-    offset = gst_event_get_running_time_offset (event);
-    if (upstream)
-      offset -= pad->offset;
-    else
-      offset += pad->offset;
-    gst_event_set_running_time_offset (event, offset);
+    gst_segment_offset_running_time (&segment, segment.format, pad->offset);
+    event = gst_event_new_segment (&segment);
   }
+
+  event = gst_event_make_writable (event);
+  offset = gst_event_get_running_time_offset (event);
+  if (upstream)
+    offset -= pad->offset;
+  else
+    offset += pad->offset;
+  gst_event_set_running_time_offset (event, offset);
+
   return event;
 }
 
+static inline GstEvent *
+apply_pad_offset (GstPad * pad, GstEvent * event, gboolean upstream)
+{
+  if (G_UNLIKELY (pad->offset != 0))
+    return _apply_pad_offset (pad, event, upstream);
+  return event;
+}
+
+
 /* should be called with the OBJECT_LOCK */
 static GstCaps *
 get_pad_caps (GstPad * pad)
@@ -734,6 +760,9 @@
       gst_pad_set_pad_template (GST_PAD_CAST (object),
           (GstPadTemplate *) g_value_get_object (value));
       break;
+    case PAD_PROP_OFFSET:
+      gst_pad_set_offset (GST_PAD_CAST (object), g_value_get_int64 (value));
+      break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
       break;
@@ -758,6 +787,9 @@
     case PAD_PROP_TEMPLATE:
       g_value_set_object (value, GST_PAD_PAD_TEMPLATE (object));
       break;
+    case PAD_PROP_OFFSET:
+      g_value_set_int64 (value, gst_pad_get_offset (GST_PAD_CAST (object)));
+      break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
       break;
@@ -766,7 +798,7 @@
 
 /**
  * gst_pad_new:
- * @name: the name of the new pad.
+ * @name: (allow-none): the name of the new pad.
  * @direction: the #GstPadDirection of the pad.
  *
  * Creates a new pad with the given name in the given direction.
@@ -774,7 +806,8 @@
  * will be assigned.
  * This function makes a copy of the name so you can safely free the name.
  *
- * Returns: (transfer floating): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer floating) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  *
  * MT safe.
  */
@@ -788,14 +821,15 @@
 /**
  * gst_pad_new_from_template:
  * @templ: the pad template to use
- * @name: the name of the element
+ * @name: (allow-none): the name of the pad
  *
  * Creates a new pad with the given name from the given template.
  * If name is %NULL, a guaranteed unique name (across all pads)
  * will be assigned.
  * This function makes a copy of the name so you can safely free the name.
  *
- * Returns: (transfer floating): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer floating) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  */
 GstPad *
 gst_pad_new_from_template (GstPadTemplate * templ, const gchar * name)
@@ -809,14 +843,15 @@
 /**
  * gst_pad_new_from_static_template:
  * @templ: the #GstStaticPadTemplate to use
- * @name: the name of the element
+ * @name: the name of the pad
  *
  * Creates a new pad with the given name from the given static template.
  * If name is %NULL, a guaranteed unique name (across all pads)
  * will be assigned.
  * This function makes a copy of the name so you can safely free the name.
  *
- * Returns: (transfer floating): a new #GstPad, or %NULL in case of an error.
+ * Returns: (transfer floating) (nullable): a new #GstPad, or %NULL in
+ * case of an error.
  */
 GstPad *
 gst_pad_new_from_static_template (GstStaticPadTemplate * templ,
@@ -1276,7 +1311,7 @@
  *
  * Returns: an id or 0 if no probe is pending. The id can be used to remove the
  * probe with gst_pad_remove_probe(). When using GST_PAD_PROBE_TYPE_IDLE it can
- * happend that the probe can be run immediately and if the probe returns
+ * happen that the probe can be run immediately and if the probe returns
  * GST_PAD_PROBE_REMOVE this functions returns 0.
  *
  * MT safe.
@@ -2458,9 +2493,9 @@
  *
  * Gets the template for @pad.
  *
- * Returns: (transfer full): the #GstPadTemplate from which this pad was
- *     instantiated, or %NULL if this pad has no template. Unref after
- *     usage.
+ * Returns: (transfer full) (nullable): the #GstPadTemplate from which
+ *     this pad was instantiated, or %NULL if this pad has no
+ *     template. Unref after usage.
  */
 GstPadTemplate *
 gst_pad_get_pad_template (GstPad * pad)
@@ -2584,9 +2619,9 @@
  * calling gst_pad_query_caps() on @pad and its peer. The caller owns a reference
  * on the resulting caps.
  *
- * Returns: (transfer full): the allowed #GstCaps of the pad link. Unref the
- *     caps when you no longer need it. This function returns %NULL when @pad
- *     has no peer.
+ * Returns: (transfer full) (nullable): the allowed #GstCaps of the
+ *     pad link. Unref the caps when you no longer need it. This
+ *     function returns %NULL when @pad has no peer.
  *
  * MT safe.
  */
@@ -2641,8 +2676,8 @@
  *
  * The caller must free this iterator after use with gst_iterator_free().
  *
- * Returns: a #GstIterator of #GstPad, or %NULL if @pad has no parent. Unref each
- * returned pad with gst_object_unref().
+ * Returns: (nullable): a #GstIterator of #GstPad, or %NULL if @pad
+ * has no parent. Unref each returned pad with gst_object_unref().
  */
 GstIterator *
 gst_pad_iterate_internal_links_default (GstPad * pad, GstObject * parent)
@@ -2707,9 +2742,9 @@
  *
  * Free-function: gst_iterator_free
  *
- * Returns: (transfer full): a new #GstIterator of #GstPad or %NULL when the
- *     pad does not have an iterator function configured. Use
- *     gst_iterator_free() after usage.
+ * Returns: (transfer full) (nullable): a new #GstIterator of #GstPad
+ *     or %NULL when the pad does not have an iterator function
+ *     configured. Use gst_iterator_free() after usage.
  */
 GstIterator *
 gst_pad_iterate_internal_links (GstPad * pad)
@@ -2735,7 +2770,7 @@
   {
     GST_DEBUG_OBJECT (pad, "no parent");
     GST_OBJECT_UNLOCK (pad);
-    return FALSE;
+    return NULL;
   }
 }
 
@@ -3015,6 +3050,123 @@
   return TRUE;
 }
 
+/* Default latency implementation */
+typedef struct
+{
+  gboolean live;
+  GstClockTime min, max;
+} LatencyFoldData;
+
+static gboolean
+query_latency_default_fold (const GValue * item, GValue * ret,
+    gpointer user_data)
+{
+  GstPad *pad = g_value_get_object (item), *peer;
+  LatencyFoldData *fold_data = user_data;
+  GstQuery *query;
+  gboolean res = FALSE;
+
+  query = gst_query_new_latency ();
+
+  peer = gst_pad_get_peer (pad);
+  if (peer) {
+    res = gst_pad_peer_query (pad, query);
+  } else {
+    GST_LOG_OBJECT (pad, "No peer pad found, ignoring this pad");
+  }
+
+  if (res) {
+    gboolean live;
+    GstClockTime min, max;
+
+    gst_query_parse_latency (query, &live, &min, &max);
+
+    GST_LOG_OBJECT (pad, "got latency live:%s min:%" G_GINT64_FORMAT
+        " max:%" G_GINT64_FORMAT, live ? "true" : "false", min, max);
+
+    if (live) {
+      if (min > fold_data->min)
+        fold_data->min = min;
+
+      if (fold_data->max == GST_CLOCK_TIME_NONE)
+        fold_data->max = max;
+      else if (max < fold_data->max)
+        fold_data->max = max;
+
+      fold_data->live = TRUE;
+    }
+  } else if (peer) {
+    GST_DEBUG_OBJECT (pad, "latency query failed");
+    g_value_set_boolean (ret, FALSE);
+  }
+
+  gst_query_unref (query);
+  if (peer)
+    gst_object_unref (peer);
+
+  return TRUE;
+}
+
+static gboolean
+gst_pad_query_latency_default (GstPad * pad, GstQuery * query)
+{
+  GstIterator *it;
+  GstIteratorResult res;
+  GValue ret = G_VALUE_INIT;
+  gboolean query_ret;
+  LatencyFoldData fold_data;
+
+  it = gst_pad_iterate_internal_links (pad);
+  if (!it) {
+    GST_DEBUG_OBJECT (pad, "Can't iterate internal links");
+    return FALSE;
+  }
+
+  g_value_init (&ret, G_TYPE_BOOLEAN);
+
+retry:
+  fold_data.live = FALSE;
+  fold_data.min = 0;
+  fold_data.max = GST_CLOCK_TIME_NONE;
+
+  g_value_set_boolean (&ret, TRUE);
+  res = gst_iterator_fold (it, query_latency_default_fold, &ret, &fold_data);
+  switch (res) {
+    case GST_ITERATOR_OK:
+      g_assert_not_reached ();
+      break;
+    case GST_ITERATOR_DONE:
+      break;
+    case GST_ITERATOR_ERROR:
+      g_value_set_boolean (&ret, FALSE);
+      break;
+    case GST_ITERATOR_RESYNC:
+      gst_iterator_resync (it);
+      goto retry;
+    default:
+      g_assert_not_reached ();
+      break;
+  }
+  gst_iterator_free (it);
+
+  query_ret = g_value_get_boolean (&ret);
+  if (query_ret) {
+    GST_LOG_OBJECT (pad, "got latency live:%s min:%" G_GINT64_FORMAT
+        " max:%" G_GINT64_FORMAT, fold_data.live ? "true" : "false",
+        fold_data.min, fold_data.max);
+
+    if (fold_data.min > fold_data.max) {
+      GST_ERROR_OBJECT (pad, "minimum latency bigger than maximum latency");
+    }
+
+    gst_query_set_latency (query, fold_data.live, fold_data.min, fold_data.max);
+  } else {
+    GST_LOG_OBJECT (pad, "latency query failed");
+  }
+
+  return query_ret;
+}
+
 typedef struct
 {
   GstQuery *query;
@@ -3070,10 +3222,13 @@
       ret = gst_pad_query_caps_default (pad, query);
       forward = FALSE;
       break;
+    case GST_QUERY_LATENCY:
+      ret = gst_pad_query_latency_default (pad, query);
+      forward = FALSE;
+      break;
     case GST_QUERY_POSITION:
     case GST_QUERY_SEEKING:
     case GST_QUERY_FORMATS:
-    case GST_QUERY_LATENCY:
     case GST_QUERY_JITTER:
     case GST_QUERY_RATE:
     case GST_QUERY_CONVERT:
@@ -3206,10 +3361,11 @@
 #define PROBE_NO_DATA(pad,mask,label,defaultval)                \
   G_STMT_START {						\
     if (G_UNLIKELY (pad->num_probes)) {				\
+      GstFlowReturn pval = defaultval;				\
       /* pass NULL as the data item */                          \
       GstPadProbeInfo info = { mask, 0, NULL, 0, 0 };           \
       ret = do_probe_callbacks (pad, &info, defaultval);	\
-      if (G_UNLIKELY (ret != defaultval && ret != GST_FLOW_OK))	\
+      if (G_UNLIKELY (ret != pval && ret != GST_FLOW_OK))	\
         goto label;						\
     }								\
   } G_STMT_END
@@ -3634,11 +3790,8 @@
       GST_PAD_STREAM_UNLOCK (pad);
 
     /* if a probe dropped, we don't sent it further but assume that the probe
-     * answered the query and return TRUE */
-    if (ret == GST_FLOW_CUSTOM_SUCCESS)
-      res = TRUE;
-    else
-      res = FALSE;
+     * did not answer the query and return FALSE */
+    res = FALSE;
 
     return res;
   }
@@ -3751,11 +3904,8 @@
     GST_OBJECT_UNLOCK (pad);
 
     /* if a probe dropped, we don't sent it further but assume that the probe
-     * answered the query and return TRUE */
-    if (ret == GST_FLOW_CUSTOM_SUCCESS)
-      res = TRUE;
-    else
-      res = FALSE;
+     * did not answer the query and return FALSE */
+    res = FALSE;
 
     return res;
   }
@@ -4410,8 +4560,8 @@
   g_return_val_if_fail (GST_IS_PAD (pad), GST_FLOW_ERROR);
   g_return_val_if_fail (GST_PAD_IS_SRC (pad), GST_FLOW_ERROR);
   g_return_val_if_fail (buffer != NULL, GST_FLOW_ERROR);
-  g_return_val_if_fail (*buffer == NULL
-      || GST_IS_BUFFER (*buffer), GST_FLOW_ERROR);
+  g_return_val_if_fail (*buffer == NULL || (GST_IS_BUFFER (*buffer)
+          && gst_buffer_get_size (*buffer) >= size), GST_FLOW_ERROR);
 
   return gst_pad_get_range_unchecked (pad, offset, size, buffer);
 }
@@ -4465,8 +4615,8 @@
   g_return_val_if_fail (GST_IS_PAD (pad), GST_FLOW_ERROR);
   g_return_val_if_fail (GST_PAD_IS_SINK (pad), GST_FLOW_ERROR);
   g_return_val_if_fail (buffer != NULL, GST_FLOW_ERROR);
-  g_return_val_if_fail (*buffer == NULL
-      || GST_IS_BUFFER (*buffer), GST_FLOW_ERROR);
+  g_return_val_if_fail (*buffer == NULL || (GST_IS_BUFFER (*buffer)
+          && gst_buffer_get_size (*buffer) >= size), GST_FLOW_ERROR);
 
   GST_OBJECT_LOCK (pad);
   if (G_UNLIKELY (GST_PAD_IS_FLUSHING (pad)))
@@ -4765,6 +4915,9 @@
       type |= GST_PAD_PROBE_TYPE_EVENT_FLUSH;
       break;
     case GST_EVENT_FLUSH_STOP:
+      if (G_UNLIKELY (!GST_PAD_IS_ACTIVE (pad)))
+        goto inactive;
+
       GST_PAD_UNSET_FLUSHING (pad);
 
       /* Remove sticky EOS events */
@@ -4832,7 +4985,7 @@
   /* Note: we gave away ownership of the event at this point but we can still
    * print the old pointer */
   GST_LOG_OBJECT (pad,
-      "sent event %p to (%s) peerpad %" GST_PTR_FORMAT ", ret %s", event,
+      "sent event %p (%s) to peerpad %" GST_PTR_FORMAT ", ret %s", event,
       gst_event_type_get_name (event_type), peerpad, gst_flow_get_name (ret));
 
   gst_object_unref (peerpad);
@@ -4853,6 +5006,12 @@
     gst_event_unref (event);
     return GST_FLOW_FLUSHING;
   }
+inactive:
+  {
+    GST_DEBUG_OBJECT (pad, "flush-stop on inactive pad");
+    gst_event_unref (event);
+    return GST_FLOW_FLUSHING;
+  }
 probe_stopped:
   {
     GST_OBJECT_FLAG_SET (pad, GST_PAD_FLAG_PENDING_EVENTS);
@@ -5055,17 +5214,22 @@
           "have event type %d (FLUSH_START)", GST_EVENT_TYPE (event));
 
       /* can't even accept a flush begin event when flushing */
-      if (GST_PAD_IS_FLUSHING (pad))
+      if (G_UNLIKELY (GST_PAD_IS_FLUSHING (pad)))
         goto flushing;
 
       GST_PAD_SET_FLUSHING (pad);
       GST_CAT_DEBUG_OBJECT (GST_CAT_EVENT, pad, "set flush flag");
       break;
     case GST_EVENT_FLUSH_STOP:
-      if (G_LIKELY (GST_PAD_MODE (pad) != GST_PAD_MODE_NONE)) {
-        GST_PAD_UNSET_FLUSHING (pad);
-        GST_CAT_DEBUG_OBJECT (GST_CAT_EVENT, pad, "cleared flush flag");
-      }
+      /* we can't accept flush-stop on inactive pads else the flushing flag
+       * would be cleared and it would look like the pad can accept data.
+       * Also, some elements restart a streaming thread in flush-stop which we
+       * can't allow on inactive pads */
+      if (G_UNLIKELY (!GST_PAD_IS_ACTIVE (pad)))
+        goto inactive;
+
+      GST_PAD_UNSET_FLUSHING (pad);
+      GST_CAT_DEBUG_OBJECT (GST_CAT_EVENT, pad, "cleared flush flag");
       /* Remove pending EOS events */
       GST_LOG_OBJECT (pad, "Removing pending EOS and SEGMENT events");
       remove_event_by_type (pad, GST_EVENT_EOS);
@@ -5180,6 +5344,16 @@
     gst_event_unref (event);
     return GST_FLOW_FLUSHING;
   }
+inactive:
+  {
+    GST_OBJECT_UNLOCK (pad);
+    if (need_unlock)
+      GST_PAD_STREAM_UNLOCK (pad);
+    GST_CAT_INFO_OBJECT (GST_CAT_EVENT, pad,
+        "Received flush-stop on inactive pad. Discarding");
+    gst_event_unref (event);
+    return GST_FLOW_FLUSHING;
+  }
 eos:
   {
     GST_OBJECT_UNLOCK (pad);
@@ -5348,8 +5522,9 @@
  * Returns a new reference of the sticky event of type @event_type
  * from the event.
  *
- * Returns: (transfer full): a #GstEvent of type @event_type or %NULL when no
- * event of @event_type was on @pad. Unref after usage.
+ * Returns: (transfer full) (nullable): a #GstEvent of type
+ * @event_type or %NULL when no event of @event_type was on
+ * @pad. Unref after usage.
  */
 GstEvent *
 gst_pad_get_sticky_event (GstPad * pad, GstEventType event_type, guint idx)
diff --git a/gst/gstpad.h b/gst/gstpad.h
index bfb8b1a..696d79d 100644
--- a/gst/gstpad.h
+++ b/gst/gstpad.h
@@ -251,10 +251,10 @@
 /**
  * GstPadChainFunction:
  * @pad: the sink #GstPad that performed the chain.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
- * @buffer: the #GstBuffer that is chained, not %NULL.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
+ * @buffer: (transfer full): the #GstBuffer that is chained, not %NULL.
  *
  * A function that will be called on sinkpads when chaining buffers.
  * The function typically processes the data contained in the buffer and
@@ -274,10 +274,10 @@
 /**
  * GstPadChainListFunction:
  * @pad: the sink #GstPad that performed the chain.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
- * @list: the #GstBufferList that is chained, not %NULL.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
+ * @list: (transfer full): the #GstBufferList that is chained, not %NULL.
  *
  * A function that will be called on sinkpads when chaining buffer lists.
  * The function typically processes the data contained in the buffer list and
@@ -297,9 +297,9 @@
 /**
  * GstPadGetRangeFunction:
  * @pad: the src #GstPad to perform the getrange on.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
  * @offset: the offset of the range
  * @length: the length of the range
  * @buffer: a memory location to hold the result buffer, cannot be %NULL.
@@ -348,10 +348,10 @@
 /**
  * GstPadEventFunction:
  * @pad: the #GstPad to handle the event.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
- * @event: the #GstEvent to handle.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
+ * @event: (transfer full): the #GstEvent to handle.
  *
  * Function signature to handle an event for the pad.
  *
@@ -365,9 +365,9 @@
 /**
  * GstPadIterIntLinkFunction:
  * @pad: The #GstPad to query.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
  *
  * The signature of the internal pad link iterator function.
  *
@@ -382,9 +382,9 @@
 /**
  * GstPadQueryFunction:
  * @pad: the #GstPad to query.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
  * @query: the #GstQuery object to execute
  *
  * The signature of the query function.
@@ -399,9 +399,9 @@
 /**
  * GstPadLinkFunction:
  * @pad: the #GstPad that is linked.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
  * @peer: the peer #GstPad of the link
  *
  * Function signature to handle a new link on the pad.
@@ -412,9 +412,9 @@
 /**
  * GstPadUnlinkFunction:
  * @pad: the #GstPad that is linked.
- * @parent: the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set,
- *          @parent is guaranteed to be not-%NULL and remain valid during the
- *          execution of this function.
+ * @parent: (allow-none): the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+ *          flag is set, @parent is guaranteed to be not-%NULL and remain valid
+ *          during the execution of this function.
  *
  * Function signature to handle a unlinking the pad prom its peer.
  */
@@ -524,8 +524,8 @@
  * GstPadProbeInfo:
  * @type: the current probe type
  * @id: the id of the probe
- * @data: type specific data, check the @type field to know the datatype.
- *    This field can be %NULL.
+ * @data: (allow-none): type specific data, check the @type field to know the
+ *    datatype.  This field can be %NULL.
  * @offset: offset of pull probe, this field is valid when @type contains
  *    #GST_PAD_PROBE_TYPE_PULL
  * @size: size of pull probe, this field is valid when @type contains
@@ -581,7 +581,7 @@
 /**
  * GstPadStickyEventsForeachFunction:
  * @pad: the #GstPad.
- * @event: a sticky #GstEvent.
+ * @event: (allow-none): a sticky #GstEvent.
  * @user_data: the #gpointer to optional user data.
  *
  * Callback used by gst_pad_sticky_events_foreach().
@@ -1186,6 +1186,8 @@
  * Can return %NULL if the pad did not have a parent.
  *
  * MT safe.
+ *
+ * Returns: (nullable): the parent
  */
 #define gst_pad_get_parent(pad) gst_object_get_parent (GST_OBJECT_CAST (pad))
 
diff --git a/gst/gstpipeline.c b/gst/gstpipeline.c
index 21e0620..7c47ae7 100644
--- a/gst/gstpipeline.c
+++ b/gst/gstpipeline.c
@@ -365,6 +365,9 @@
       GST_OBJECT_LOCK (element);
       pipeline->priv->update_clock = TRUE;
       GST_OBJECT_UNLOCK (element);
+
+      /* READY to PAUSED starts running_time from 0 */
+      reset_start_time (pipeline, 0);
       break;
     case GST_STATE_CHANGE_PAUSED_TO_PLAYING:
     {
@@ -462,6 +465,8 @@
       break;
     }
     case GST_STATE_CHANGE_PAUSED_TO_READY:
+      reset_start_time (pipeline, 0);
+      break;
     case GST_STATE_CHANGE_READY_TO_NULL:
       break;
   }
@@ -472,11 +477,7 @@
     case GST_STATE_CHANGE_NULL_TO_READY:
       break;
     case GST_STATE_CHANGE_READY_TO_PAUSED:
-    {
-      /* READY to PAUSED starts running_time from 0 */
-      reset_start_time (pipeline, 0);
       break;
-    }
     case GST_STATE_CHANGE_PAUSED_TO_PLAYING:
       break;
     case GST_STATE_CHANGE_PLAYING_TO_PAUSED:
diff --git a/gst/gstplugin.c b/gst/gstplugin.c
index 9bfacc1..0ca5d8d 100644
--- a/gst/gstplugin.c
+++ b/gst/gstplugin.c
@@ -480,16 +480,18 @@
 {
   if (!gst_plugin_check_version (desc->major_version, desc->minor_version)) {
     if (GST_CAT_DEFAULT)
-      GST_WARNING ("plugin \"%s\" has incompatible version, not loading",
-          GST_STR_NULL (plugin->filename));
+      GST_WARNING ("plugin \"%s\" has incompatible version "
+          "(plugin: %d.%d, gst: %d,%d), not loading",
+          GST_STR_NULL (plugin->filename), desc->major_version,
+          desc->minor_version, GST_VERSION_MAJOR, GST_VERSION_MINOR);
     return NULL;
   }
 
   if (!desc->license || !desc->description || !desc->source ||
       !desc->package || !desc->origin) {
     if (GST_CAT_DEFAULT)
-      GST_WARNING ("plugin \"%s\" has incorrect GstPluginDesc, not loading",
-          GST_STR_NULL (plugin->filename));
+      GST_WARNING ("plugin \"%s\" has missing detail in GstPluginDesc, not "
+          "loading", GST_STR_NULL (plugin->filename));
     return NULL;
   }
 
@@ -706,7 +708,7 @@
   GST_CAT_DEBUG (GST_CAT_PLUGIN_LOADING, "attempt to load plugin \"%s\"",
       filename);
 
-  if (g_module_supported () == FALSE) {
+  if (!g_module_supported ()) {
     GST_CAT_DEBUG (GST_CAT_PLUGIN_LOADING, "module loading not supported");
     g_set_error (error,
         GST_PLUGIN_ERROR,
@@ -1006,7 +1008,8 @@
  *
  * There may be plugins that do not have a valid release date set on them.
  *
- * Returns: the date string of the plugin, or %NULL if not available.
+ * Returns: (nullable): the date string of the plugin, or %NULL if not
+ * available.
  */
 const gchar *
 gst_plugin_get_release_date_string (GstPlugin * plugin)
@@ -1039,7 +1042,8 @@
  * Gets the plugin specific data cache. If it is %NULL there is no cached data
  * stored. This is the case when the registry is getting rebuilt.
  *
- * Returns: (transfer none): The cached data as a #GstStructure or %NULL.
+ * Returns: (transfer none) (nullable): The cached data as a
+ * #GstStructure or %NULL.
  */
 const GstStructure *
 gst_plugin_get_cache_data (GstPlugin * plugin)
diff --git a/gst/gstplugin.h b/gst/gstplugin.h
index 500be30..6e49332 100644
--- a/gst/gstplugin.h
+++ b/gst/gstplugin.h
@@ -145,11 +145,12 @@
  * @source: source module plugin belongs to
  * @package: shipped package plugin belongs to
  * @origin: URL to provider of plugin
- * @release_datetime: date time string in ISO 8601 format (or rather, a
- *     subset thereof), or %NULL. Allowed are the following formats:
- *     "YYYY-MM-DD" and "YYY-MM-DDTHH:MMZ" (with 'T' a separator and 'Z'
- *     indicating UTC/Zulu time). This field should be set via the
- *     GST_PACKAGE_RELEASE_DATETIME preprocessor macro.
+ * @release_datetime: (allow-none): date time string in ISO 8601
+ *     format (or rather, a subset thereof), or %NULL. Allowed are the
+ *     following formats: "YYYY-MM-DD" and "YYY-MM-DDTHH:MMZ" (with
+ *     'T' a separator and 'Z' indicating UTC/Zulu time). This field
+ *     should be set via the %GST_PACKAGE_RELEASE_DATETIME
+ *     preprocessor macro.
  *
  * A plugin should export a variable of this type called plugin_desc. The plugin
  * loader will use the data provided there to initialize the plugin.
diff --git a/gst/gstpluginfeature.c b/gst/gstpluginfeature.c
index 6672f7b..ef24eaf 100644
--- a/gst/gstpluginfeature.c
+++ b/gst/gstpluginfeature.c
@@ -90,7 +90,8 @@
  * feature = loaded_feature;
  * ]|
  *
- * Returns: (transfer full): a reference to the loaded feature, or %NULL on error
+ * Returns: (transfer full) (nullable): a reference to the loaded
+ * feature, or %NULL on error
  */
 GstPluginFeature *
 gst_plugin_feature_load (GstPluginFeature * feature)
@@ -185,8 +186,9 @@
  *
  * Get the plugin that provides this feature.
  *
- * Returns: (transfer full): the plugin that provides this feature, or %NULL.
- *     Unref with gst_object_unref() when no longer needed.
+ * Returns: (transfer full) (nullable): the plugin that provides this
+ *     feature, or %NULL.  Unref with gst_object_unref() when no
+ *     longer needed.
  */
 GstPlugin *
 gst_plugin_feature_get_plugin (GstPluginFeature * feature)
@@ -205,8 +207,9 @@
  *
  * Get the name of the plugin that provides this feature.
  *
- * Returns: the name of the plugin that provides this feature, or %NULL if
- *     the feature is not associated with a plugin.
+ * Returns: (nullable): the name of the plugin that provides this
+ *     feature, or %NULL if the feature is not associated with a
+ *     plugin.
  *
  * Since: 1.2
  */
diff --git a/gst/gstpluginfeature.h b/gst/gstpluginfeature.h
index bc01969..08abb73 100644
--- a/gst/gstpluginfeature.h
+++ b/gst/gstpluginfeature.h
@@ -75,7 +75,7 @@
  * Returns the name of @feature.
  * For a nameless plugin feature, this returns %NULL.
  *
- * Returns: (transfer none): the name of @feature. MT safe.
+ * Returns: (transfer none) (nullable): the name of @feature. MT safe.
  *
  */
 #define                 gst_plugin_feature_get_name(feature)      GST_OBJECT_NAME(feature)
diff --git a/gst/gstpoll.c b/gst/gstpoll.c
index 6694a87..04165a5 100644
--- a/gst/gstpoll.c
+++ b/gst/gstpoll.c
@@ -170,7 +170,7 @@
 #define WAKE_EVENT(s)       (write ((s)->control_write_fd.fd, "W", 1) == 1)
 #define RELEASE_EVENT(s)    (read ((s)->control_read_fd.fd, (s)->buf, 1) == 1)
 #else
-#define WAKE_EVENT(s)       (SetEvent ((s)->wakeup_event), errno = GetLastError () == NO_ERROR ? 0 : EACCES, errno == 0 ? 1 : 0)
+#define WAKE_EVENT(s)       (SetLastError (0), SetEvent ((s)->wakeup_event), errno = GetLastError () == NO_ERROR ? 0 : EACCES, errno == 0 ? 1 : 0)
 #define RELEASE_EVENT(s)    (ResetEvent ((s)->wakeup_event))
 #endif
 
@@ -545,8 +545,8 @@
  *
  * Free-function: gst_poll_free
  *
- * Returns: (transfer full): a new #GstPoll, or %NULL in case of an error.
- *     Free with gst_poll_free().
+ * Returns: (transfer full) (nullable): a new #GstPoll, or %NULL in
+ *     case of an error.  Free with gst_poll_free().
  */
 GstPoll *
 gst_poll_new (gboolean controllable)
@@ -617,8 +617,8 @@
  *
  * Free-function: gst_poll_free
  *
- * Returns: (transfer full): a new #GstPoll, or %NULL in case of an error.
- *     Free with gst_poll_free().
+ * Returns: (transfer full) (nullable): a new #GstPoll, or %NULL in
+ *     case of an error.  Free with gst_poll_free().
  */
 GstPoll *
 gst_poll_new_timer (void)
diff --git a/gst/gstpreset.c b/gst/gstpreset.c
index 19f0fbb..1b42024 100644
--- a/gst/gstpreset.c
+++ b/gst/gstpreset.c
@@ -34,6 +34,9 @@
  * native preset format of those wrapped plugins.
  * One method that is useful to be overridden is gst_preset_get_property_names().
  * With that one can control which properties are saved and in which order.
+ * When implementing support for read-only presets, one should set the vmethods
+ * for gst_preset_save_preset() and gst_preset_delete_preset() to %NULL.
+ * Applications can use gst_preset_is_editable() to check for that.
  *
  * The default implementation supports presets located in a system directory, 
  * application specific directory and in the users home directory. When getting
@@ -101,8 +104,6 @@
 static GQuark preset_system_path_quark = 0;
 static GQuark preset_quark = 0;
 
-/*static GQuark property_list_quark = 0;*/
-
 /* the application can set a custom path that is checked in addition to standard
  * system and user dirs. This helps to develop new presets first local to the
  * application.
@@ -116,9 +117,9 @@
 /*
  * preset_get_paths:
  * @preset: a #GObject that implements #GstPreset
- * @preset_user_path: location for path or %NULL
- * @preset_app_path: location for path or %NULL
- * @preset_system_path: location for path or %NULL
+ * @preset_user_path: (out) (allow-none): location for path or %NULL
+ * @preset_app_path: (out) (allow-none): location for path or %NULL
+ * @preset_system_path: (out) (allow-none): location for path or %NULL
  *
  * Fetch the preset_path for user local, application specific and system wide
  * settings. Don't free after use.
@@ -394,7 +395,7 @@
         if (presets)
           g_key_file_free (presets);
         presets = in_app;
-        version = version_system;
+        version = version_app;
       }
     }
     if (in_user) {
@@ -427,6 +428,12 @@
   return presets;
 }
 
+static gint
+compare_strings (gchar ** a, gchar ** b, gpointer user_data)
+{
+  return g_strcmp0 (*a, *b);
+}
+
 /* get a list of all supported preset names for an element */
 static gchar **
 gst_preset_default_get_preset_names (GstPreset * preset)
@@ -455,9 +462,15 @@
       groups[num_groups] = NULL;
     }
   }
+  if (!num_groups) {
+    GST_INFO_OBJECT (preset, "Empty preset file");
+    g_strfreev (groups);
+    return NULL;
+  }
+
   /* sort the array now */
   g_qsort_with_data (groups, num_groups, sizeof (gchar *),
-      (GCompareDataFunc) strcmp, NULL);
+      (GCompareDataFunc) compare_strings, NULL);
 
   return groups;
 
@@ -1069,7 +1082,7 @@
  * @preset: a #GObject that implements #GstPreset
  * @name: preset name
  * @tag: meta data item name
- * @value: new value
+ * @value: (allow-none): new value
  *
  * Sets a new @value for an existing meta data item or adds a new item. Meta
  * data @tag names can be something like e.g. "comment". Supplying %NULL for the
@@ -1141,7 +1154,8 @@
  * Gets the directory for application specific presets if set by the
  * application.
  *
- * Returns: the directory or %NULL, don't free or modify the string
+ * Returns: (nullable): the directory or %NULL, don't free or modify
+ * the string
  */
 const gchar *
 gst_preset_get_app_dir (void)
@@ -1149,6 +1163,24 @@
   return preset_app_dir;
 }
 
+/**
+ * gst_preset_is_editable:
+ * @preset: a #GObject that implements #GstPreset
+ *
+ * Check if one can add new presets, change existing ones and remove presets.
+ *
+ * Returns: %TRUE if presets are editable or %FALSE if they are static
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_preset_is_editable (GstPreset * preset)
+{
+  GstPresetInterface *iface = GST_PRESET_GET_INTERFACE (preset);
+
+  return iface->save_preset && iface->delete_preset;
+}
+
 /* class internals */
 
 static void
@@ -1185,8 +1217,6 @@
         g_quark_from_static_string ("GstPreset::system_path");
 
 #if 0
-    property_list_quark = g_quark_from_static_string ("GstPreset::properties");
-
     /* create interface properties, each element would need to override this
      *   g_object_class_override_property(gobject_class, PROP_PRESET_NAME, "preset-name");
      * and in _set_property() do
diff --git a/gst/gstpreset.h b/gst/gstpreset.h
index 8e3ea2a..178eccd 100644
--- a/gst/gstpreset.h
+++ b/gst/gstpreset.h
@@ -97,6 +97,7 @@
 gboolean     gst_preset_set_app_dir        (const gchar *app_dir);
 const gchar *gst_preset_get_app_dir        (void);
 
+gboolean     gst_preset_is_editable        (GstPreset *preset);
 G_END_DECLS
 
 #endif /* __GST_PRESET_H__ */
diff --git a/gst/gstquery.c b/gst/gstquery.c
index 78a04fa..2828bd5 100644
--- a/gst/gstquery.c
+++ b/gst/gstquery.c
@@ -413,6 +413,7 @@
   GstStructure *structure;
 
   g_return_if_fail (GST_QUERY_TYPE (query) == GST_QUERY_LATENCY);
+  g_return_if_fail (GST_CLOCK_TIME_IS_VALID (min_latency));
 
   structure = GST_QUERY_STRUCTURE (query);
   gst_structure_id_set (structure,
@@ -1463,7 +1464,7 @@
 
 /**
  * gst_query_set_uri_redirection_permanent:
- * @query: a #GstQuery with query type GST_QUERY_URI
+ * @query: a #GstQuery with query type %GST_QUERY_URI
  * @permanent: whether the redirect is permanent or not
  *
  * Answer a URI query by setting the requested URI redirection
@@ -1584,7 +1585,7 @@
 /**
  * gst_query_add_allocation_pool:
  * @query: A valid #GstQuery of type GST_QUERY_ALLOCATION.
- * @pool: the #GstBufferPool
+ * @pool: (transfer none) (allow-none): the #GstBufferPool
  * @size: the size
  * @min_buffers: the min buffers
  * @max_buffers: the max buffers
@@ -1601,7 +1602,6 @@
 
   g_return_if_fail (GST_QUERY_TYPE (query) == GST_QUERY_ALLOCATION);
   g_return_if_fail (gst_query_is_writable (query));
-  g_return_if_fail (size != 0);
 
   structure = GST_QUERY_STRUCTURE (query);
   array = ensure_array (structure, GST_QUARK (POOL),
@@ -1687,7 +1687,7 @@
  * gst_query_set_nth_allocation_pool:
  * @index: index to modify
  * @query: A valid #GstQuery of type GST_QUERY_ALLOCATION.
- * @pool: the #GstBufferPool
+ * @pool: (transfer none) (allow-none): the #GstBufferPool
  * @size: the size
  * @min_buffers: the min buffers
  * @max_buffers: the max buffers
diff --git a/gst/gstquery.h b/gst/gstquery.h
index 3750a19..18a075c 100644
--- a/gst/gstquery.h
+++ b/gst/gstquery.h
@@ -276,8 +276,8 @@
 #define         gst_query_make_writable(q)      GST_QUERY_CAST (gst_mini_object_make_writable (GST_MINI_OBJECT_CAST (q)))
 /**
  * gst_query_replace:
- * @old_query: (inout) (transfer full): pointer to a pointer to a #GstQuery
- *     to be replaced.
+ * @old_query: (inout) (transfer full) (nullable): pointer to a pointer to a
+ *     #GstQuery to be replaced.
  * @new_query: (allow-none) (transfer none): pointer to a #GstQuery that will
  *     replace the query pointed to by @old_query.
  *
diff --git a/gst/gstregistry.c b/gst/gstregistry.c
index 2838737..27a3f76 100644
--- a/gst/gstregistry.c
+++ b/gst/gstregistry.c
@@ -127,7 +127,7 @@
 #include "gstinfo.h"
 #include "gsterror.h"
 #include "gstregistry.h"
-#include "gstdevicemonitorfactory.h"
+#include "gstdeviceproviderfactory.h"
 
 #include "gstpluginloader.h"
 
@@ -166,7 +166,7 @@
   guint32 efl_cookie;
   GList *typefind_factory_list;
   guint32 tfl_cookie;
-  GList *device_monitor_factory_list;
+  GList *device_provider_factory_list;
   guint32 dmfl_cookie;
 };
 
@@ -317,10 +317,10 @@
     gst_plugin_feature_list_free (registry->priv->typefind_factory_list);
   }
 
-  if (registry->priv->device_monitor_factory_list) {
+  if (registry->priv->device_provider_factory_list) {
     GST_DEBUG_OBJECT (registry,
-        "Cleaning up cached device monitor factory list");
-    gst_plugin_feature_list_free (registry->priv->device_monitor_factory_list);
+        "Cleaning up cached device provider factory list");
+    gst_plugin_feature_list_free (registry->priv->device_provider_factory_list);
   }
 
   G_OBJECT_CLASS (parent_class)->finalize (object);
@@ -789,20 +789,20 @@
 
 
 static GList *
-gst_registry_get_device_monitor_factory_list (GstRegistry * registry)
+gst_registry_get_device_provider_factory_list (GstRegistry * registry)
 {
   GList *list;
 
   GST_OBJECT_LOCK (registry);
 
   gst_registry_get_feature_list_or_create (registry,
-      &registry->priv->device_monitor_factory_list,
-      &registry->priv->dmfl_cookie, GST_TYPE_DEVICE_MONITOR_FACTORY);
+      &registry->priv->device_provider_factory_list,
+      &registry->priv->dmfl_cookie, GST_TYPE_DEVICE_PROVIDER_FACTORY);
 
   /* Return reffed copy */
   list =
       gst_plugin_feature_list_copy (registry->
-      priv->device_monitor_factory_list);
+      priv->device_provider_factory_list);
 
   GST_OBJECT_UNLOCK (registry);
 
@@ -868,8 +868,9 @@
  * Find the plugin with the given name in the registry.
  * The plugin will be reffed; caller is responsible for unreffing.
  *
- * Returns: (transfer full): the plugin with the given name or %NULL if the
- *     plugin was not found. gst_object_unref() after usage.
+ * Returns: (transfer full) (nullable): the plugin with the given name
+ *     or %NULL if the plugin was not found. gst_object_unref() after
+ *     usage.
  *
  * MT safe.
  */
@@ -902,8 +903,9 @@
  *
  * Find the pluginfeature with the given name and type in the registry.
  *
- * Returns: (transfer full): the pluginfeature with the given name and type
- *     or %NULL if the plugin was not found. gst_object_unref() after usage.
+ * Returns: (transfer full) (nullable): the pluginfeature with the
+ *     given name and type or %NULL if the plugin was not
+ *     found. gst_object_unref() after usage.
  *
  * MT safe.
  */
@@ -951,8 +953,8 @@
     return gst_registry_get_element_factory_list (registry);
   else if (type == GST_TYPE_TYPE_FIND_FACTORY)
     return gst_registry_get_typefind_factory_list (registry);
-  else if (type == GST_TYPE_DEVICE_MONITOR_FACTORY)
-    return gst_registry_get_device_monitor_factory_list (registry);
+  else if (type == GST_TYPE_DEVICE_PROVIDER_FACTORY)
+    return gst_registry_get_device_provider_factory_list (registry);
 
   data.type = type;
   data.name = NULL;
@@ -1055,8 +1057,8 @@
  * Look up a plugin in the given registry with the given filename.
  * If found, plugin is reffed.
  *
- * Returns: (transfer full): the #GstPlugin if found, or %NULL if not.
- *     gst_object_unref() after usage.
+ * Returns: (transfer full) (nullable): the #GstPlugin if found, or
+ *     %NULL if not.  gst_object_unref() after usage.
  */
 GstPlugin *
 gst_registry_lookup (GstRegistry * registry, const char *filename)
@@ -1245,7 +1247,7 @@
         g_free (filename);
         continue;
       }
-      /* FIXME 0.11: Don't recurse into directories, this behaviour
+      /* FIXME 2.0: Don't recurse into directories, this behaviour
        * is inconsistent with other PATH environment variables
        */
       if (level > 0) {
diff --git a/gst/gstregistrybinary.c b/gst/gstregistrybinary.c
index ee4a7a0..7b8556e 100644
--- a/gst/gstregistrybinary.c
+++ b/gst/gstregistrybinary.c
@@ -56,7 +56,7 @@
 #include <gst/gstelement.h>
 #include <gst/gsttypefind.h>
 #include <gst/gsttypefindfactory.h>
-#include <gst/gstdevicemonitorfactory.h>
+#include <gst/gstdeviceproviderfactory.h>
 #include <gst/gsturi.h>
 #include <gst/gstinfo.h>
 #include <gst/gstenumtypes.h>
@@ -526,7 +526,7 @@
   /* make sure these types exist */
   GST_TYPE_ELEMENT_FACTORY;
   GST_TYPE_TYPE_FIND_FACTORY;
-  GST_TYPE_DEVICE_MONITOR_FACTORY;
+  GST_TYPE_DEVICE_PROVIDER_FACTORY;
 
 #ifndef GST_DISABLE_GST_DEBUG
   timer = g_timer_new ();
diff --git a/gst/gstregistrychunks.c b/gst/gstregistrychunks.c
index fcacd6b..f854865 100644
--- a/gst/gstregistrychunks.c
+++ b/gst/gstregistrychunks.c
@@ -33,7 +33,7 @@
 #include <gst/gstelement.h>
 #include <gst/gsttypefind.h>
 #include <gst/gsttypefindfactory.h>
-#include <gst/gstdevicemonitorfactory.h>
+#include <gst/gstdeviceproviderfactory.h>
 #include <gst/gsturi.h>
 #include <gst/gstinfo.h>
 #include <gst/gstenumtypes.h>
@@ -333,17 +333,17 @@
     } else {
       gst_registry_chunks_save_const_string (list, "");
     }
-  } else if (GST_IS_DEVICE_MONITOR_FACTORY (feature)) {
-    GstRegistryChunkDeviceMonitorFactory *tff;
-    GstDeviceMonitorFactory *factory = GST_DEVICE_MONITOR_FACTORY (feature);
+  } else if (GST_IS_DEVICE_PROVIDER_FACTORY (feature)) {
+    GstRegistryChunkDeviceProviderFactory *tff;
+    GstDeviceProviderFactory *factory = GST_DEVICE_PROVIDER_FACTORY (feature);
 
     /* Initialize with zeroes because of struct padding and
      * valgrind complaining about copying unitialized memory
      */
-    tff = g_slice_new0 (GstRegistryChunkDeviceMonitorFactory);
+    tff = g_slice_new0 (GstRegistryChunkDeviceProviderFactory);
     chk =
         gst_registry_chunks_make_data (tff,
-        sizeof (GstRegistryChunkDeviceMonitorFactory));
+        sizeof (GstRegistryChunkDeviceProviderFactory));
     pf = (GstRegistryChunkPluginFeature *) tff;
 
 
@@ -668,16 +668,16 @@
         factory->extensions[i - 1] = str;
       }
     }
-  } else if (GST_IS_DEVICE_MONITOR_FACTORY (feature)) {
-    GstRegistryChunkDeviceMonitorFactory *dmf;
-    GstDeviceMonitorFactory *factory = GST_DEVICE_MONITOR_FACTORY (feature);
+  } else if (GST_IS_DEVICE_PROVIDER_FACTORY (feature)) {
+    GstRegistryChunkDeviceProviderFactory *dmf;
+    GstDeviceProviderFactory *factory = GST_DEVICE_PROVIDER_FACTORY (feature);
     const gchar *meta_data_str;
 
     align (*in);
     GST_DEBUG
         ("Reading/casting for GstRegistryChunkPluginFeature at address %p",
         *in);
-    unpack_element (*in, dmf, GstRegistryChunkDeviceMonitorFactory, end, fail);
+    unpack_element (*in, dmf, GstRegistryChunkDeviceProviderFactory, end, fail);
 
     pf = (GstRegistryChunkPluginFeature *) dmf;
 
diff --git a/gst/gstregistrychunks.h b/gst/gstregistrychunks.h
index e2c86ba..57ced70 100644
--- a/gst/gstregistrychunks.h
+++ b/gst/gstregistrychunks.h
@@ -132,15 +132,15 @@
 } GstRegistryChunkTypeFindFactory;
 
 /*
- * GstRegistryChunkDeviceMonitorFactory:
+ * GstRegistryChunkDeviceProviderFactory:
  *
- * A structure containing the device monitor factory fields
+ * A structure containing the device provider factory fields
  */
-typedef struct _GstRegistryChunkDeviceMonitorFactory
+typedef struct _GstRegistryChunkDeviceProviderFactory
 {
   GstRegistryChunkPluginFeature plugin_feature;
 
-} GstRegistryChunkDeviceMonitorFactory;
+} GstRegistryChunkDeviceProviderFactory;
 
 /*
  * GstRegistryChunkPadTemplate:
diff --git a/gst/gstsample.c b/gst/gstsample.c
index 76b76bd..ce8228a 100644
--- a/gst/gstsample.c
+++ b/gst/gstsample.c
@@ -143,10 +143,10 @@
  *
  * Get the buffer associated with @sample
  *
- * Returns: (transfer none): the buffer of @sample or %NULL when there
- *  is no buffer. The buffer remains valid as long as @sample is valid.
- *  If you need to hold on to it for longer than that, take a ref to
- *  the buffer with gst_buffer_ref().
+ * Returns: (transfer none) (nullable): the buffer of @sample or %NULL
+ *  when there is no buffer. The buffer remains valid as long as
+ *  @sample is valid.  If you need to hold on to it for longer than
+ *  that, take a ref to the buffer with gst_buffer_ref().
  */
 GstBuffer *
 gst_sample_get_buffer (GstSample * sample)
@@ -162,10 +162,10 @@
  *
  * Get the caps associated with @sample
  *
- * Returns: (transfer none): the caps of @sample or %NULL when there
- *  is no caps. The caps remain valid as long as @sample is valid.
- *  If you need to hold on to the caps for longer than that, take a ref to
- *  the caps with gst_caps_ref().
+ * Returns: (transfer none) (nullable): the caps of @sample or %NULL
+ *  when there is no caps. The caps remain valid as long as @sample is
+ *  valid.  If you need to hold on to the caps for longer than that,
+ *  take a ref to the caps with gst_caps_ref().
  */
 GstCaps *
 gst_sample_get_caps (GstSample * sample)
diff --git a/gst/gstsegment.c b/gst/gstsegment.c
index 3c4081b..fc52363 100644
--- a/gst/gstsegment.c
+++ b/gst/gstsegment.c
@@ -340,10 +340,14 @@
   segment->flags = GST_SEGMENT_FLAG_NONE;
   if ((flags & GST_SEEK_FLAG_FLUSH) != 0)
     segment->flags |= GST_SEGMENT_FLAG_RESET;
-  if ((flags & GST_SEEK_FLAG_SKIP) != 0)
-    segment->flags |= GST_SEGMENT_FLAG_SKIP;
+  if ((flags & GST_SEEK_FLAG_TRICKMODE) != 0)
+    segment->flags |= GST_SEGMENT_FLAG_TRICKMODE;
   if ((flags & GST_SEEK_FLAG_SEGMENT) != 0)
     segment->flags |= GST_SEGMENT_FLAG_SEGMENT;
+  if ((flags & GST_SEEK_FLAG_TRICKMODE_KEY_UNITS) != 0)
+    segment->flags |= GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS;
+  if ((flags & GST_SEEK_FLAG_TRICKMODE_NO_AUDIO) != 0)
+    segment->flags |= GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO;
 
   segment->rate = rate;
   segment->applied_rate = 1.0;
diff --git a/gst/gstsegment.h b/gst/gstsegment.h
index c9ec1e4..4787e49 100644
--- a/gst/gstsegment.h
+++ b/gst/gstsegment.h
@@ -56,9 +56,9 @@
  * @GST_SEEK_FLAG_KEY_UNIT: seek to the nearest keyframe. This might be
  *                     faster but less accurate.
  * @GST_SEEK_FLAG_SEGMENT: perform a segment seek.
- * @GST_SEEK_FLAG_SKIP: when doing fast forward or fast reverse playback, allow
+ * @GST_SEEK_FLAG_TRICKMODE: when doing fast forward or fast reverse playback, allow
  *                     elements to skip frames instead of generating all
- *                     frames.
+ *                     frames. (Since: 1.6)
  * @GST_SEEK_FLAG_SNAP_BEFORE: go to a location before the requested position,
  *                     if KEY_UNIT this means the keyframe at or before the
  *                     requested position the one at or before the seek target.
@@ -69,6 +69,15 @@
  *                     if KEY_UNIT this means the keyframe closest to the
  *                     requested position, if both keyframes are at an equal
  *                     distance, behaves like SNAP_BEFORE.
+ * @GST_SEEK_FLAG_TRICKMODE_KEY_UNITS: when doing fast forward or fast reverse
+ *                     playback, request that elements only decode keyframes
+ *                     and skip all other content, for formats that have
+ *                     keyframes. (Since: 1.6)
+ * @GST_SEEK_FLAG_TRICKMODE_NO_AUDIO: when doing fast forward or fast reverse
+ *                     playback, request that audio decoder elements skip
+ *                     decoding and output only gap events or silence. (Since: 1.6)
+ * @GST_SEEK_FLAG_SKIP: Deprecated backward compatibility flag, replaced
+ *                     by @GST_SEEK_FLAG_TRICKMODE
  *
  * Flags to be used with gst_element_seek() or gst_event_new_seek(). All flags
  * can be used together.
@@ -88,10 +97,15 @@
  * looping or simple linear editing.
  *
  * When doing fast forward (rate > 1.0) or fast reverse (rate < -1.0) trickmode
- * playback, the @GST_SEEK_FLAG_SKIP flag can be used to instruct decoders
+ * playback, the @GST_SEEK_FLAG_TRICKMODE flag can be used to instruct decoders
  * and demuxers to adjust the playback rate by skipping frames. This can improve
  * performance and decrease CPU usage because not all frames need to be decoded.
  *
+ * Beyond that, the @GST_SEEK_FLAG_TRICKMODE_KEY_UNITS flag can be used to
+ * request that decoders skip all frames except key units, and
+ * @GST_SEEK_FLAG_TRICKMODE_NO_AUDIO flags can be used to request that audio
+ * decoders do no decoding at all, and simple output silence.
+ *
  * The @GST_SEEK_FLAG_SNAP_BEFORE flag can be used to snap to the previous
  * relevant location, and the @GST_SEEK_FLAG_SNAP_AFTER flag can be used to
  * select the next relevant location. If KEY_UNIT is specified, the relevant
@@ -112,11 +126,16 @@
   GST_SEEK_FLAG_ACCURATE        = (1 << 1),
   GST_SEEK_FLAG_KEY_UNIT        = (1 << 2),
   GST_SEEK_FLAG_SEGMENT         = (1 << 3),
+  GST_SEEK_FLAG_TRICKMODE       = (1 << 4),
+  /* FIXME 2.0: Remove _SKIP flag,
+   * which was kept for backward compat when _TRICKMODE was added */
   GST_SEEK_FLAG_SKIP            = (1 << 4),
   GST_SEEK_FLAG_SNAP_BEFORE     = (1 << 5),
   GST_SEEK_FLAG_SNAP_AFTER      = (1 << 6),
   GST_SEEK_FLAG_SNAP_NEAREST    = GST_SEEK_FLAG_SNAP_BEFORE | GST_SEEK_FLAG_SNAP_AFTER,
   /* Careful to restart next flag with 1<<7 here */
+  GST_SEEK_FLAG_TRICKMODE_KEY_UNITS = (1 << 7),
+  GST_SEEK_FLAG_TRICKMODE_NO_AUDIO  = (1 << 8),
 } GstSeekFlags;
 
 /**
@@ -124,8 +143,14 @@
  * @GST_SEGMENT_FLAG_NONE: no flags
  * @GST_SEGMENT_FLAG_RESET: reset the pipeline running_time to the segment
  *                          running_time
- * @GST_SEGMENT_FLAG_SKIP: perform skip playback
+ * @GST_SEGMENT_FLAG_TRICKMODE: perform skip playback (Since: 1.6)
  * @GST_SEGMENT_FLAG_SEGMENT: send SEGMENT_DONE instead of EOS
+ * @GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS: Decode only keyframes, where
+ *                                        possible (Since: 1.6)
+ * @GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO: Do not decode any audio, where
+ *                                        possible (Since: 1.6)
+ * @GST_SEGMENT_FLAG_SKIP: Deprecated backward compatibility flag, replaced
+ *                         by @GST_SEGMENT_FLAG_TRICKMODE
  *
  * Flags for the GstSegment structure. Currently mapped to the corresponding
  * values of the seek flags.
@@ -134,8 +159,13 @@
 typedef enum { /*< flags >*/
   GST_SEGMENT_FLAG_NONE            = GST_SEEK_FLAG_NONE,
   GST_SEGMENT_FLAG_RESET           = GST_SEEK_FLAG_FLUSH,
-  GST_SEGMENT_FLAG_SKIP            = GST_SEEK_FLAG_SKIP,
-  GST_SEGMENT_FLAG_SEGMENT         = GST_SEEK_FLAG_SEGMENT
+  GST_SEGMENT_FLAG_TRICKMODE       = GST_SEEK_FLAG_TRICKMODE,
+  /* FIXME 2.0: Remove _SKIP flag,
+   * which was kept for backward compat when _TRICKMODE was added */
+  GST_SEGMENT_FLAG_SKIP            = GST_SEEK_FLAG_TRICKMODE,
+  GST_SEGMENT_FLAG_SEGMENT         = GST_SEEK_FLAG_SEGMENT,
+  GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS = GST_SEEK_FLAG_TRICKMODE_KEY_UNITS,
+  GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO      = GST_SEEK_FLAG_TRICKMODE_NO_AUDIO
 } GstSegmentFlags;
 
 /**
diff --git a/gst/gststructure.c b/gst/gststructure.c
index 5013860..8b0b54b 100644
--- a/gst/gststructure.c
+++ b/gst/gststructure.c
@@ -665,15 +665,9 @@
     GstStructureField field = { 0 };
 
     field.name = fieldname;
-
     type = va_arg (varargs, GType);
 
-#ifndef G_VALUE_COLLECT_INIT
-    g_value_init (&field.value, type);
-    G_VALUE_COLLECT (&field.value, varargs, 0, &err);
-#else
     G_VALUE_COLLECT_INIT (&field.value, type, varargs, 0, &err);
-#endif
     if (G_UNLIKELY (err)) {
       g_critical ("%s", err);
       return;
@@ -1106,7 +1100,8 @@
  * @user_data: (closure): private data
  *
  * Calls the provided function once for each field in the #GstStructure. The
- * function must not modify the fields. Also see gst_structure_map_in_place().
+ * function must not modify the fields. Also see gst_structure_map_in_place()
+ * and gst_structure_filter_and_map_in_place().
  *
  * Returns: %TRUE if the supplied function returns %TRUE For each of the fields,
  * %FALSE otherwise.
@@ -1173,6 +1168,51 @@
 }
 
 /**
+ * gst_structure_filter_and_map_in_place:
+ * @structure: a #GstStructure
+ * @func: (scope call): a function to call for each field
+ * @user_data: (closure): private data
+ *
+ * Calls the provided function once for each field in the #GstStructure. In
+ * contrast to gst_structure_foreach(), the function may modify the fields.
+ * In contrast to gst_structure_map_in_place(), the field is removed from
+ * the structure if %FALSE is returned from the function.
+ * The structure must be mutable.
+ *
+ * Since: 1.6
+ */
+void
+gst_structure_filter_and_map_in_place (GstStructure * structure,
+    GstStructureFilterMapFunc func, gpointer user_data)
+{
+  guint i, len;
+  GstStructureField *field;
+  gboolean ret;
+
+  g_return_if_fail (structure != NULL);
+  g_return_if_fail (IS_MUTABLE (structure));
+  g_return_if_fail (func != NULL);
+  len = GST_STRUCTURE_FIELDS (structure)->len;
+
+  for (i = 0; i < len;) {
+    field = GST_STRUCTURE_FIELD (structure, i);
+
+    ret = func (field->name, &field->value, user_data);
+
+    if (!ret) {
+      if (G_IS_VALUE (&field->value)) {
+        g_value_unset (&field->value);
+      }
+      GST_STRUCTURE_FIELDS (structure) =
+          g_array_remove_index (GST_STRUCTURE_FIELDS (structure), i);
+      len = GST_STRUCTURE_FIELDS (structure)->len;
+    } else {
+      i++;
+    }
+  }
+}
+
+/**
  * gst_structure_id_has_field:
  * @structure: a #GstStructure
  * @field: #GQuark of the field name
@@ -1368,14 +1408,14 @@
  * gst_structure_get_int64:
  * @structure: a #GstStructure
  * @fieldname: the name of a field
- * @value: (out): a pointer to an int64 to set
+ * @value: (out): a pointer to a #gint64 to set
  *
- * Sets the int64 pointed to by @value corresponding to the value of the
+ * Sets the #gint64 pointed to by @value corresponding to the value of the
  * given field. Caller is responsible for making sure the field exists
  * and has the correct type.
  *
  * Returns: %TRUE if the value could be set correctly. If there was no field
- * with @fieldname or the existing field did not contain an int64, this function
+ * with @fieldname or the existing field did not contain a #gint64, this function
  * returns %FALSE.
  *
  * Since: 1.4
@@ -1404,14 +1444,14 @@
  * gst_structure_get_uint64:
  * @structure: a #GstStructure
  * @fieldname: the name of a field
- * @value: (out): a pointer to a uint64 to set
+ * @value: (out): a pointer to a #guint64 to set
  *
- * Sets the uint64 pointed to by @value corresponding to the value of the
+ * Sets the #guint64 pointed to by @value corresponding to the value of the
  * given field. Caller is responsible for making sure the field exists
  * and has the correct type.
  *
  * Returns: %TRUE if the value could be set correctly. If there was no field
- * with @fieldname or the existing field did not contain a uint64, this function
+ * with @fieldname or the existing field did not contain a #guint64, this function
  * returns %FALSE.
  *
  * Since: 1.4
@@ -1512,7 +1552,7 @@
   if (!GST_VALUE_HOLDS_DATE_TIME (&field->value))
     return FALSE;
 
-  /* FIXME: 0.11 g_value_dup_boxed() -> g_value_get_boxed() */
+  /* FIXME 2.0: g_value_dup_boxed() -> g_value_get_boxed() */
   *value = g_value_dup_boxed (&field->value);
 
   return TRUE;
@@ -1585,8 +1625,8 @@
  * The string should not be modified, and remains valid until the next
  * call to a gst_structure_*() function with the given structure.
  *
- * Returns: a pointer to the string or %NULL when the field did not exist
- * or did not contain a string.
+ * Returns: (nullable): a pointer to the string or %NULL when the
+ * field did not exist or did not contain a string.
  */
 const gchar *
 gst_structure_get_string (const GstStructure * structure,
@@ -1928,8 +1968,11 @@
     while (*s != '"') {
       if (G_UNLIKELY (*s == 0))
         return FALSE;
-      if (G_UNLIKELY (*s == '\\'))
+      if (G_UNLIKELY (*s == '\\')) {
         s++;
+        if (G_UNLIKELY (*s == 0))
+          return FALSE;
+      }
       *w = *s;
       w++;
       s++;
@@ -1941,8 +1984,11 @@
     while (*s != '"') {
       if (G_UNLIKELY (*s == 0))
         return FALSE;
-      if (G_UNLIKELY (*s == '\\'))
+      if (G_UNLIKELY (*s == '\\')) {
         s++;
+        if (G_UNLIKELY (*s == 0))
+          return FALSE;
+      }
       s++;
     }
     s++;
@@ -1970,7 +2016,7 @@
   s++;
 
   ret = gst_structure_parse_value (s, &s, &value1, type);
-  if (ret == FALSE)
+  if (!ret)
     return FALSE;
 
   while (g_ascii_isspace (*s))
@@ -1984,7 +2030,7 @@
     s++;
 
   ret = gst_structure_parse_value (s, &s, &value2, type);
-  if (ret == FALSE)
+  if (!ret)
     return FALSE;
 
   while (g_ascii_isspace (*s))
@@ -2000,7 +2046,7 @@
         s++;
 
       ret = gst_structure_parse_value (s, &s, &value3, type);
-      if (ret == FALSE)
+      if (!ret)
         return FALSE;
 
       while (g_ascii_isspace (*s))
@@ -2084,7 +2130,7 @@
   }
 
   ret = gst_structure_parse_value (s, &s, &list_value, type);
-  if (ret == FALSE)
+  if (!ret)
     return FALSE;
 
   g_array_append_val (array, list_value);
@@ -2102,7 +2148,7 @@
 
     memset (&list_value, 0, sizeof (list_value));
     ret = gst_structure_parse_value (s, &s, &list_value, type);
-    if (ret == FALSE)
+    if (!ret)
       return FALSE;
 
     g_array_append_val (array, list_value);
@@ -2374,8 +2420,9 @@
  *
  * Free-function: gst_structure_free
  *
- * Returns: (transfer full): a new #GstStructure or %NULL when the string could
- *     not be parsed. Free with gst_structure_free() after use.
+ * Returns: (transfer full) (nullable): a new #GstStructure or %NULL
+ *     when the string could not be parsed. Free with
+ *     gst_structure_free() after use.
  *
  * Since: 1.2
  */
@@ -2396,8 +2443,9 @@
  *
  * Free-function: gst_structure_free
  *
- * Returns: (transfer full): a new #GstStructure or %NULL when the string could
- *     not be parsed. Free with gst_structure_free() after use.
+ * Returns: (transfer full) (nullable): a new #GstStructure or %NULL
+ *     when the string could not be parsed. Free with
+ *     gst_structure_free() after use.
  */
 GstStructure *
 gst_structure_from_string (const gchar * string, gchar ** end)
diff --git a/gst/gststructure.h b/gst/gststructure.h
index 6687970..014ef37 100644
--- a/gst/gststructure.h
+++ b/gst/gststructure.h
@@ -71,6 +71,23 @@
                                              gpointer user_data);
 
 /**
+ * GstStructureFilterMapFunc:
+ * @field_id: the #GQuark of the field name
+ * @value: the #GValue of the field
+ * @user_data: user data
+ *
+ * A function that will be called in gst_structure_filter_and_map_in_place().
+ * The function may modify @value, and the value will be removed from
+ * the structure if %FALSE is returned.
+ *
+ * Returns: %TRUE if the field should be preserved, %FALSE if it
+ * should be removed.
+ */
+typedef gboolean (*GstStructureFilterMapFunc) (GQuark   field_id,
+                                               GValue * value,
+                                               gpointer user_data);
+
+/**
  * GstStructure:
  * @type: the GType of a structure
  *
@@ -198,6 +215,10 @@
                                                           GstStructureMapFunc   func,
                                                           gpointer              user_data);
 
+void                  gst_structure_filter_and_map_in_place (GstStructure        * structure,
+                                                          GstStructureFilterMapFunc   func,
+                                                          gpointer              user_data);
+
 gint                  gst_structure_n_fields             (const GstStructure  * structure);
 
 const gchar *         gst_structure_nth_field_name       (const GstStructure  * structure,
diff --git a/gst/gstsystemclock.c b/gst/gstsystemclock.c
index 01beee7..0527af2 100644
--- a/gst/gstsystemclock.c
+++ b/gst/gstsystemclock.c
@@ -284,7 +284,7 @@
  * @new_clock: a #GstClock
  *
  * Sets the default system clock that can be obtained with
- * gst_system_clock_obtain.
+ * gst_system_clock_obtain().
  *
  * This is mostly used for testing and debugging purposes when you
  * want to have control over the time reported by the default system
@@ -339,7 +339,7 @@
 
   if (clock == NULL) {
     GST_CAT_DEBUG (GST_CAT_CLOCK, "creating new static system clock");
-    g_assert (_external_default_clock == FALSE);
+    g_assert (!_external_default_clock);
     clock = g_object_new (GST_TYPE_SYSTEM_CLOCK,
         "name", "GstSystemClock", NULL);
 
@@ -637,7 +637,8 @@
   GstClockTimeDiff diff;
   GstClockReturn status;
 
-  if (G_UNLIKELY (GET_ENTRY_STATUS (entry) == GST_CLOCK_UNSCHEDULED))
+  status = GET_ENTRY_STATUS (entry);
+  if (G_UNLIKELY (status == GST_CLOCK_UNSCHEDULED))
     return GST_CLOCK_UNSCHEDULED;
 
   /* need to call the overridden method because we want to sync against the time
@@ -737,8 +738,15 @@
 
         if (diff <= 0) {
           /* timeout, this is fine, we can report success now */
-          status = GST_CLOCK_OK;
-          SET_ENTRY_STATUS (entry, status);
+          if (G_UNLIKELY (!CAS_ENTRY_STATUS (entry, GST_CLOCK_DONE,
+                      GST_CLOCK_OK))) {
+            GST_CAT_DEBUG (GST_CAT_CLOCK, "unexpected status for entry %p",
+                entry);
+            status = GET_ENTRY_STATUS (entry);
+            goto done;
+          } else {
+            status = GST_CLOCK_OK;
+          }
 
           GST_CAT_DEBUG (GST_CAT_CLOCK,
               "entry %p finished, diff %" G_GINT64_FORMAT, entry, diff);
@@ -762,12 +770,21 @@
     }
   } else {
     /* we are right on time or too late */
-    if (G_UNLIKELY (diff == 0))
-      status = GST_CLOCK_OK;
-    else
-      status = GST_CLOCK_EARLY;
-
-    SET_ENTRY_STATUS (entry, status);
+    if (G_UNLIKELY (diff == 0)) {
+      if (G_UNLIKELY (!CAS_ENTRY_STATUS (entry, status, GST_CLOCK_OK))) {
+        GST_CAT_DEBUG (GST_CAT_CLOCK, "unexpected status for entry %p", entry);
+        status = GET_ENTRY_STATUS (entry);
+      } else {
+        status = GST_CLOCK_OK;
+      }
+    } else {
+      if (G_UNLIKELY (!CAS_ENTRY_STATUS (entry, status, GST_CLOCK_EARLY))) {
+        GST_CAT_DEBUG (GST_CAT_CLOCK, "unexpected status for entry %p", entry);
+        status = GET_ENTRY_STATUS (entry);
+      } else {
+        status = GST_CLOCK_EARLY;
+      }
+    }
   }
 done:
   return status;
diff --git a/gst/gsttaglist.c b/gst/gsttaglist.c
index c96cb56..ff2af18 100644
--- a/gst/gsttaglist.c
+++ b/gst/gsttaglist.c
@@ -844,8 +844,9 @@
  *
  * Serializes a tag list to a string.
  *
- * Returns: a newly-allocated string, or %NULL in case of an error. The
- *    string must be freed with g_free() when no longer needed.
+ * Returns: (nullable): a newly-allocated string, or %NULL in case of
+ *     an error. The string must be freed with g_free() when no longer
+ *     needed.
  */
 gchar *
 gst_tag_list_to_string (const GstTagList * list)
@@ -861,7 +862,8 @@
  *
  * Deserializes a tag list.
  *
- * Returns: a new #GstTagList, or %NULL in case of an error.
+ * Returns: (nullable): a new #GstTagList, or %NULL in case of an
+ * error.
  */
 GstTagList *
 gst_tag_list_new_from_string (const gchar * str)
@@ -1131,8 +1133,8 @@
 
 /**
  * gst_tag_list_merge:
- * @list1: first list to merge
- * @list2: second list to merge
+ * @list1: (allow-none): first list to merge
+ * @list2: (allow-none): second list to merge
  * @mode: the mode to use
  *
  * Merges the two given lists into a new list. If one of the lists is %NULL, a
@@ -1140,7 +1142,7 @@
  *
  * Free-function: gst_tag_list_unref
  *
- * Returns: (transfer full): the new list
+ * Returns: (transfer full) (nullable): the new list
  */
 GstTagList *
 gst_tag_list_merge (const GstTagList * list1, const GstTagList * list2,
@@ -1424,8 +1426,9 @@
  * Gets the value that is at the given index for the given tag in the given
  * list.
  *
- * Returns: (transfer none): The GValue for the specified entry or %NULL if the
- *          tag wasn't available or the tag doesn't have as many entries
+ * Returns: (transfer none) (nullable): The GValue for the specified
+ *          entry or %NULL if the tag wasn't available or the tag
+ *          doesn't have as many entries
  */
 const GValue *
 gst_tag_list_get_value_index (const GstTagList * list, const gchar * tag,
@@ -1496,7 +1499,7 @@
   return TRUE;
 }
 
-/* FIXME 0.11: this whole merge function business is overdesigned, and the
+/* FIXME 2.0: this whole merge function business is overdesigned, and the
  * _get_foo() API is misleading as well - how many application developers will
  * expect gst_tag_list_get_string (list, GST_TAG_ARTIST, &val) might return a
  * string with multiple comma-separated artists? _get_foo() should just be
@@ -1795,7 +1798,7 @@
 TAG_MERGE_FUNCS (string, gchar *, (*value != NULL));
 
 /*
- *FIXME 0.11: Instead of _peek (non-copy) and _get (copy), we could have
+ *FIXME 2.0: Instead of _peek (non-copy) and _get (copy), we could have
  *            _get (non-copy) and _dup (copy) for strings, seems more
  *            widely used
  */
diff --git a/gst/gsttagsetter.c b/gst/gsttagsetter.c
index b2955d6..7ed457e 100644
--- a/gst/gsttagsetter.c
+++ b/gst/gsttagsetter.c
@@ -340,8 +340,8 @@
  *
  * This function is not thread-safe.
  *
- * Returns: (transfer none): a current snapshot of the taglist used in the
- *          setter or %NULL if none is used.
+ * Returns: (transfer none) (nullable): a current snapshot of the
+ *          taglist used in the setter or %NULL if none is used.
  */
 const GstTagList *
 gst_tag_setter_get_tag_list (GstTagSetter * setter)
diff --git a/gst/gsttask.c b/gst/gsttask.c
index b562f6c..d9e5697 100644
--- a/gst/gsttask.c
+++ b/gst/gsttask.c
@@ -78,6 +78,10 @@
 #include <sys/prctl.h>
 #endif
 
+#ifdef HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID
+#include <pthread.h>
+#endif
+
 GST_DEBUG_CATEGORY_STATIC (task_debug);
 #define GST_CAT_DEFAULT (task_debug)
 
@@ -246,8 +250,19 @@
       GST_DEBUG_OBJECT (task, "Failed to set thread name");
   }
   GST_OBJECT_UNLOCK (task);
-#endif
-#ifdef _MSC_VER
+#elif defined(HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID)
+  const gchar *name;
+
+  GST_OBJECT_LOCK (task);
+  name = GST_OBJECT_NAME (task);
+
+  /* set the thread name to something easily identifiable */
+  GST_DEBUG_OBJECT (task, "Setting thread name to '%s'", name);
+  if (pthread_setname_np (name))
+    GST_DEBUG_OBJECT (task, "Failed to set thread name");
+
+  GST_OBJECT_UNLOCK (task);
+#elif defined (_MSC_VER)
   const gchar *name;
   name = GST_OBJECT_NAME (task);
 
@@ -292,31 +307,30 @@
   gst_task_configure_name (task);
 
   while (G_LIKELY (GET_TASK_STATE (task) != GST_TASK_STOPPED)) {
-    if (G_UNLIKELY (GET_TASK_STATE (task) == GST_TASK_PAUSED)) {
+    GST_OBJECT_LOCK (task);
+    while (G_UNLIKELY (GST_TASK_STATE (task) == GST_TASK_PAUSED)) {
+      g_rec_mutex_unlock (lock);
+
+      GST_TASK_SIGNAL (task);
+      GST_INFO_OBJECT (task, "Task going to paused");
+      GST_TASK_WAIT (task);
+      GST_INFO_OBJECT (task, "Task resume from paused");
+      GST_OBJECT_UNLOCK (task);
+      /* locking order.. */
+      g_rec_mutex_lock (lock);
       GST_OBJECT_LOCK (task);
-      while (G_UNLIKELY (GST_TASK_STATE (task) == GST_TASK_PAUSED)) {
-        g_rec_mutex_unlock (lock);
+    }
 
-        GST_TASK_SIGNAL (task);
-        GST_INFO_OBJECT (task, "Task going to paused");
-        GST_TASK_WAIT (task);
-        GST_INFO_OBJECT (task, "Task resume from paused");
-        GST_OBJECT_UNLOCK (task);
-        /* locking order.. */
-        g_rec_mutex_lock (lock);
-
-        GST_OBJECT_LOCK (task);
-        if (G_UNLIKELY (GET_TASK_STATE (task) == GST_TASK_STOPPED)) {
-          GST_OBJECT_UNLOCK (task);
-          goto done;
-        }
-      }
+    if (G_UNLIKELY (GET_TASK_STATE (task) == GST_TASK_STOPPED)) {
+      GST_OBJECT_UNLOCK (task);
+      break;
+    } else {
       GST_OBJECT_UNLOCK (task);
     }
 
     task->func (task->user_data);
   }
-done:
+
   g_rec_mutex_unlock (lock);
 
   GST_OBJECT_LOCK (task);
diff --git a/gst/gsttaskpool.c b/gst/gsttaskpool.c
index d7ff344..20b8aa4 100644
--- a/gst/gsttaskpool.c
+++ b/gst/gsttaskpool.c
@@ -223,9 +223,9 @@
  *
  * Start the execution of a new thread from @pool.
  *
- * Returns: (transfer none): a pointer that should be used for the
- * gst_task_pool_join function. This pointer can be %NULL, you must
- * check @error to detect errors.
+ * Returns: (transfer none) (nullable): a pointer that should be used
+ * for the gst_task_pool_join function. This pointer can be %NULL, you
+ * must check @error to detect errors.
  */
 gpointer
 gst_task_pool_push (GstTaskPool * pool, GstTaskPoolFunction func,
diff --git a/gst/gsttoc.c b/gst/gsttoc.c
index bee13cb..b1732b2 100644
--- a/gst/gsttoc.c
+++ b/gst/gsttoc.c
@@ -360,7 +360,8 @@
  *
  * Find #GstTocEntry with given @uid in the @toc.
  *
- * Returns: (transfer none): #GstTocEntry with specified @uid from the @toc, or %NULL if not found.
+ * Returns: (transfer none) (nullable): #GstTocEntry with specified
+ * @uid from the @toc, or %NULL if not found.
  */
 GstTocEntry *
 gst_toc_find_entry (const GstToc * toc, const gchar * uid)
@@ -387,21 +388,33 @@
   return NULL;
 }
 
+static GList *
+gst_toc_deep_copy_toc_entries (GList * entry_list)
+{
+  GQueue new_entries = G_QUEUE_INIT;
+  GList *l;
+
+  for (l = entry_list; l != NULL; l = l->next)
+    g_queue_push_tail (&new_entries, gst_toc_entry_copy (l->data));
+
+  return new_entries.head;
+}
+
 /**
  * gst_toc_entry_copy:
  * @entry: #GstTocEntry to copy.
  *
  * Copy #GstTocEntry with all subentries (deep copy).
  *
- * Returns: newly allocated #GstTocEntry in case of success, %NULL otherwise;
- * free it when done with gst_toc_entry_unref().
+ * Returns: (nullable): newly allocated #GstTocEntry in case of
+ * success, %NULL otherwise; free it when done with
+ * gst_toc_entry_unref().
  */
 static GstTocEntry *
 gst_toc_entry_copy (const GstTocEntry * entry)
 {
-  GstTocEntry *ret, *sub;
+  GstTocEntry *ret;
   GstTagList *list;
-  GList *cur;
 
   g_return_val_if_fail (entry != NULL, NULL);
 
@@ -417,16 +430,7 @@
     ret->tags = list;
   }
 
-  cur = entry->subentries;
-  while (cur != NULL) {
-    sub = gst_toc_entry_copy (cur->data);
-
-    if (sub != NULL)
-      ret->subentries = g_list_prepend (ret->subentries, sub);
-
-    cur = cur->next;
-  }
-  ret->subentries = g_list_reverse (ret->subentries);
+  ret->subentries = gst_toc_deep_copy_toc_entries (entry->subentries);
 
   return ret;
 }
@@ -437,15 +441,13 @@
  *
  * Copy #GstToc with all subentries (deep copy).
  *
- * Returns: newly allocated #GstToc in case of success, %NULL otherwise;
- * free it when done with gst_toc_unref().
+ * Returns: (nullable): newly allocated #GstToc in case of success,
+ * %NULL otherwise; free it when done with gst_toc_unref().
  */
 static GstToc *
 gst_toc_copy (const GstToc * toc)
 {
   GstToc *ret;
-  GstTocEntry *entry;
-  GList *cur;
   GstTagList *list;
 
   g_return_val_if_fail (toc != NULL, NULL);
@@ -458,16 +460,8 @@
     ret->tags = list;
   }
 
-  cur = toc->entries;
-  while (cur != NULL) {
-    entry = gst_toc_entry_copy (cur->data);
+  ret->entries = gst_toc_deep_copy_toc_entries (toc->entries);
 
-    if (entry != NULL)
-      ret->entries = g_list_prepend (ret->entries, entry);
-
-    cur = cur->next;
-  }
-  ret->entries = g_list_reverse (ret->entries);
   return ret;
 }
 
@@ -492,8 +486,10 @@
 /**
  * gst_toc_entry_get_start_stop_times:
  * @entry: #GstTocEntry to get values from.
- * @start: (out): the storage for the start value, leave %NULL if not need.
- * @stop: (out): the storage for the stop value, leave %NULL if not need.
+ * @start: (out) (allow-none): the storage for the start value, leave
+ *   %NULL if not need.
+ * @stop: (out) (allow-none): the storage for the stop value, leave
+ *   %NULL if not need.
  *
  * Get @start and @stop values from the @entry and write them into appropriate
  * storages.
@@ -538,10 +534,10 @@
 /**
  * gst_toc_entry_get_loop:
  * @entry: #GstTocEntry to get values from.
- * @loop_type: (out): the storage for the loop_type value, leave %NULL if not
- *                    need.
- * @repeat_count: (out): the storage for the repeat_count value, leave %NULL if
- *                       not need.
+ * @loop_type: (out) (allow-none): the storage for the loop_type
+ *             value, leave %NULL if not need.
+ * @repeat_count: (out) (allow-none): the storage for the repeat_count
+ *                value, leave %NULL if not need.
  *
  * Get @loop_type and @repeat_count values from the @entry and write them into
  * appropriate storages. Loops are e.g. used by sampled instruments. GStreamer
diff --git a/gst/gsttoc.h b/gst/gsttoc.h
index 39469c1..cb77862 100644
--- a/gst/gsttoc.h
+++ b/gst/gsttoc.h
@@ -81,7 +81,20 @@
   GST_TOC_ENTRY_TYPE_CHAPTER     = 3,
 } GstTocEntryType;
 
+/**
+ * GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE:
+ * @entry_type: The #GstTocEntryType from a #GstTocEntry
+ *
+ * Checks if @entry_type indicates that its #GstTocEntry is an alternative.
+ */
 #define GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE(entry_type)  (entry_type < 0)
+
+/**
+ * GST_TOC_ENTRY_TYPE_IS_SEQUENCE:
+ * @entry_type: The #GstTocEntryType from a #GstTocEntry
+ *
+ * Checks if @entry_type indicates that its #GstTocEntry is a sequence.
+ */
 #define GST_TOC_ENTRY_TYPE_IS_SEQUENCE(entry_type)     (entry_type > 0)
 
 /**
diff --git a/gst/gsttocsetter.c b/gst/gsttocsetter.c
index 42839d2..f5c7ea5 100644
--- a/gst/gsttocsetter.c
+++ b/gst/gsttocsetter.c
@@ -128,8 +128,8 @@
  * modified without making it writable first.
  *
  *
- * Returns: (transfer full): TOC set, or %NULL. Unref with gst_toc_unref()
- *     when no longer needed
+ * Returns: (transfer full) (nullable): TOC set, or %NULL. Unref with
+ *     gst_toc_unref() when no longer needed
  */
 GstToc *
 gst_toc_setter_get_toc (GstTocSetter * setter)
diff --git a/gst/gsttypefind.c b/gst/gsttypefind.c
index 1fcbea1..e0ca96f 100644
--- a/gst/gsttypefind.c
+++ b/gst/gsttypefind.c
@@ -72,15 +72,10 @@
 
   factory = g_object_newv (GST_TYPE_TYPE_FIND_FACTORY, 0, NULL);
   GST_DEBUG_OBJECT (factory, "using new typefind factory for %s", name);
-  g_assert (GST_IS_TYPE_FIND_FACTORY (factory));
 
   gst_plugin_feature_set_name (GST_PLUGIN_FEATURE_CAST (factory), name);
   gst_plugin_feature_set_rank (GST_PLUGIN_FEATURE_CAST (factory), rank);
 
-  if (factory->extensions) {
-    g_strfreev (factory->extensions);
-    factory->extensions = NULL;
-  }
   if (extensions)
     factory->extensions = g_strsplit (extensions, ",", -1);
 
@@ -119,8 +114,8 @@
  * the stream. The returned memory is valid until the typefinding function
  * returns and must not be freed.
  *
- * Returns: (transfer none) (array length=size): the requested data, or %NULL
- *     if that data is not available.
+ * Returns: (transfer none) (array length=size) (nullable): the
+ *     requested data, or %NULL if that data is not available.
  */
 const guint8 *
 gst_type_find_peek (GstTypeFind * find, gint64 offset, guint size)
diff --git a/gst/gsttypefindfactory.c b/gst/gsttypefindfactory.c
index c216eb3..8a1b239 100644
--- a/gst/gsttypefindfactory.c
+++ b/gst/gsttypefindfactory.c
@@ -177,8 +177,8 @@
  * copy it using g_strdupv().  This function may return %NULL to indicate
  * a 0-length list.
  *
- * Returns: (transfer none) (array zero-terminated=1) (element-type utf8): a
- *     %NULL-terminated array of extensions associated with this factory
+ * Returns: (transfer none) (array zero-terminated=1) (element-type utf8) (nullable):
+ *     a %NULL-terminated array of extensions associated with this factory
  */
 const gchar *const *
 gst_type_find_factory_get_extensions (GstTypeFindFactory * factory)
diff --git a/gst/gsturi.c b/gst/gsturi.c
index 00a496f..6346ea0 100644
--- a/gst/gsturi.c
+++ b/gst/gsturi.c
@@ -2,8 +2,10 @@
  * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
  *                    2000 Wim Taymans <wtay@chello.be>
  * Copyright (C) 2011 Tim-Philipp Müller <tim centricular net>
+ * Copyright (C) 2014 David Waring, British Broadcasting Corporation
+ *                        <david.waring@rd.bbc.co.uk>
  *
- * gsturi.c: register URI handlers
+ * gsturi.c: register URI handlers and IETF RFC 3986 URI manipulations.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -48,10 +50,93 @@
 #include "gst-i18n-lib.h"
 
 #include <string.h>
+#include <glib.h>
+#include <glib/gprintf.h>
 
 GST_DEBUG_CATEGORY_STATIC (gst_uri_handler_debug);
 #define GST_CAT_DEFAULT gst_uri_handler_debug
 
+#ifndef HAVE_STRCASESTR
+#define strcasestr _gst_ascii_strcasestr
+
+/* From https://github.com/freebsd/freebsd/blob/master/contrib/file/src/strcasestr.c
+ * Updated to use GLib types and GLib string functions
+ *
+ * Copyright (c) 1990, 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Chris Torek.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+/*
+ * Find the first occurrence of find in s, ignore case.
+ */
+
+static gchar *
+_gst_ascii_strcasestr (const gchar * s, const gchar * find)
+{
+  gchar c, sc;
+  gsize len;
+
+  if ((c = *find++) != 0) {
+    c = g_ascii_tolower (c);
+    len = strlen (find);
+    do {
+      do {
+        if ((sc = *s++) == 0)
+          return (NULL);
+      } while (g_ascii_tolower (sc) != c);
+    } while (g_ascii_strncasecmp (s, find, len) != 0);
+    s--;
+  }
+  return (gchar *) (gintptr) (s);
+}
+#endif
+
+#if !GLIB_CHECK_VERSION (2, 33, 4)
+#define g_list_copy_deep gst_g_list_copy_deep
+static GList *
+gst_g_list_copy_deep (GList * list, GCopyFunc func, gpointer user_data)
+{
+  list = g_list_copy (list);
+
+  if (func != NULL) {
+    GList *l;
+
+    for (l = list; l != NULL; l = l->next) {
+      l->data = func (l->data, user_data);
+    }
+  }
+
+  return list;
+}
+#endif
+
 GType
 gst_uri_handler_get_type (void)
 {
@@ -233,9 +318,9 @@
  * Characters are encoded in PERCENTxy form, where xy is the ASCII hex code
  * for character 16x+y.
  *
- * Return value: a newly allocated string with the unescaped equivalents,
- * or %NULL if @escaped_string contained one of the characters
- * in @illegal_characters.
+ * Return value: (nullable): a newly allocated string with the
+ * unescaped equivalents, or %NULL if @escaped_string contained one of
+ * the characters in @illegal_characters.
  **/
 static char *
 unescape_string (const gchar * escaped_string, const gchar * illegal_characters)
@@ -664,9 +749,10 @@
  * Gets the list of protocols supported by @handler. This list may not be
  * modified.
  *
- * Returns: (transfer none) (element-type utf8): the supported protocols.
- *     Returns %NULL if the @handler isn't implemented properly, or the @handler
- *     doesn't support any protocols.
+ * Returns: (transfer none) (element-type utf8) (nullable): the
+ *     supported protocols.  Returns %NULL if the @handler isn't
+ *     implemented properly, or the @handler doesn't support any
+ *     protocols.
  */
 const gchar *const *
 gst_uri_handler_get_protocols (GstURIHandler * handler)
@@ -692,9 +778,10 @@
  *
  * Gets the currently handled URI.
  *
- * Returns: (transfer full): the URI currently handled by the @handler.
- *   Returns %NULL if there are no URI currently handled. The
- *   returned string must be freed with g_free() when no longer needed.
+ * Returns: (transfer full) (nullable): the URI currently handled by
+ *   the @handler.  Returns %NULL if there are no URI currently
+ *   handled. The returned string must be freed with g_free() when no
+ *   longer needed.
  */
 gchar *
 gst_uri_handler_get_uri (GstURIHandler * handler)
@@ -731,7 +818,7 @@
 {
   GstURIHandlerInterface *iface;
   gboolean ret;
-  gchar *new_uri, *protocol, *location, *colon;
+  gchar *protocol;
 
   g_return_val_if_fail (GST_IS_URI_HANDLER (handler), FALSE);
   g_return_val_if_fail (gst_uri_is_valid (uri), FALSE);
@@ -766,15 +853,8 @@
     }
   }
 
-  colon = strstr (uri, ":");
-  location = g_strdup (colon);
-
-  new_uri = g_strdup_printf ("%s%s", protocol, location);
-
   ret = iface->set_uri (handler, uri, error);
 
-  g_free (new_uri);
-  g_free (location);
   g_free (protocol);
 
   return ret;
@@ -889,3 +969,1845 @@
   GST_DEBUG ("'%s' -> '%s'", filename, uri);
   return uri;
 }
+
+/****************************************************************************
+ * GstUri - GstMiniObject to parse and merge URIs according to IETF RFC 3986
+ ****************************************************************************/
+
+/**
+ * SECTION:gsturi
+ * @short_description: URI parsing and manipulation.
+ *
+ * A #GstUri object can be used to parse and split a URI string into its
+ * constituant parts. Two #GstUri objects can be joined to make a new #GstUri
+ * using the algorithm described in RFC3986.
+ */
+
+/* Definition for GstUri object */
+struct _GstUri
+{
+  /*< private > */
+  GstMiniObject mini_object;
+  gchar *scheme;
+  gchar *userinfo;
+  gchar *host;
+  guint port;
+  GList *path;
+  GHashTable *query;
+  gchar *fragment;
+};
+
+GST_DEFINE_MINI_OBJECT_TYPE (GstUri, gst_uri);
+
+static GstUri *_gst_uri_copy (const GstUri * uri);
+static void _gst_uri_free (GstUri * uri);
+static GstUri *_gst_uri_new (void);
+static GList *_remove_dot_segments (GList * path);
+
+/* private GstUri functions */
+
+static GstUri *
+_gst_uri_new (void)
+{
+  GstUri *uri;
+  uri = GST_URI_CAST (g_slice_new0 (GstUri));
+
+  if (uri)
+    gst_mini_object_init (GST_MINI_OBJECT_CAST (uri), 0, gst_uri_get_type (),
+        (GstMiniObjectCopyFunction) _gst_uri_copy, NULL,
+        (GstMiniObjectFreeFunction) _gst_uri_free);
+
+  return uri;
+}
+
+static void
+_gst_uri_free (GstUri * uri)
+{
+  g_return_if_fail (GST_IS_URI (uri));
+
+  g_free (uri->scheme);
+  g_free (uri->userinfo);
+  g_free (uri->host);
+  g_list_free_full (uri->path, g_free);
+  if (uri->query)
+    g_hash_table_unref (uri->query);
+  g_free (uri->fragment);
+
+  g_slice_free1 (sizeof (*uri), uri);
+}
+
+static GHashTable *
+_gst_uri_copy_query_table (GHashTable * orig)
+{
+  GHashTable *new = NULL;
+
+  if (orig != NULL) {
+    GHashTableIter iter;
+    gpointer key, value;
+    new = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
+    g_hash_table_iter_init (&iter, orig);
+    while (g_hash_table_iter_next (&iter, &key, &value)) {
+      g_hash_table_insert (new, g_strdup (key), g_strdup (value));
+    }
+  }
+
+  return new;
+}
+
+static GstUri *
+_gst_uri_copy (const GstUri * orig_uri)
+{
+  GstUri *new_uri;
+
+  g_return_val_if_fail (GST_IS_URI (orig_uri), NULL);
+
+  new_uri = _gst_uri_new ();
+
+  if (new_uri) {
+    new_uri->scheme = g_strdup (orig_uri->scheme);
+    new_uri->userinfo = g_strdup (orig_uri->userinfo);
+    new_uri->host = g_strdup (orig_uri->host);
+    new_uri->port = orig_uri->port;
+    new_uri->path = g_list_copy_deep (orig_uri->path, (GCopyFunc) g_strdup,
+        NULL);
+    new_uri->query = _gst_uri_copy_query_table (orig_uri->query);
+    new_uri->fragment = g_strdup (orig_uri->fragment);
+  }
+
+  return new_uri;
+}
+
+/*
+ * _gst_uri_compare_lists:
+ *
+ * Compare two lists for equality. This compares the two lists, item for item,
+ * comparing items in the same position in the two lists. If @first is
+ * considered less than @second the result will be negative. If @first is
+ * considered to be more than @second then the result will be positive. If the
+ * lists are considered to be equal then the result will be 0. If two lists
+ * have the same items, but one list is shorter than the other, then the
+ * shorter list is considered to be less than the longer list.
+ */
+static gint
+_gst_uri_compare_lists (GList * first, GList * second, GCompareFunc cmp_fn)
+{
+  GList *itr1, *itr2;
+  gint result;
+
+  for (itr1 = first, itr2 = second;
+      itr1 != NULL || itr2 != NULL; itr1 = itr1->next, itr2 = itr2->next) {
+    if (itr1 == NULL)
+      return -1;
+    if (itr2 == NULL)
+      return 1;
+    result = cmp_fn (itr1->data, itr2->data);
+    if (result != 0)
+      return result;
+  }
+  return 0;
+}
+
+typedef enum
+{
+  _GST_URI_NORMALIZE_LOWERCASE = 1,
+  _GST_URI_NORMALIZE_UPPERCASE = 2
+} _GstUriNormalizations;
+
+/*
+ * Find the first character that hasn't been normalized according to the @flags.
+ */
+static gchar *
+_gst_uri_first_non_normalized_char (gchar * str, guint flags)
+{
+  gchar *pos;
+
+  if (str == NULL)
+    return NULL;
+
+  for (pos = str; *pos; pos++) {
+    if ((flags & _GST_URI_NORMALIZE_UPPERCASE) && g_ascii_islower (*pos))
+      return pos;
+    if ((flags & _GST_URI_NORMALIZE_LOWERCASE) && g_ascii_isupper (*pos))
+      return pos;
+  }
+  return NULL;
+}
+
+static gboolean
+_gst_uri_normalize_lowercase (gchar * str)
+{
+  gchar *pos;
+  gboolean ret = FALSE;
+
+  for (pos = _gst_uri_first_non_normalized_char (str,
+          _GST_URI_NORMALIZE_LOWERCASE);
+      pos != NULL;
+      pos = _gst_uri_first_non_normalized_char (pos + 1,
+          _GST_URI_NORMALIZE_LOWERCASE)) {
+    *pos = g_ascii_tolower (*pos);
+    ret = TRUE;
+  }
+
+  return ret;
+}
+
+#define _gst_uri_normalize_scheme _gst_uri_normalize_lowercase
+#define _gst_uri_normalize_hostname _gst_uri_normalize_lowercase
+
+static gboolean
+_gst_uri_normalize_path (GList ** path)
+{
+  GList *new_path;
+
+  new_path = _remove_dot_segments (*path);
+  if (_gst_uri_compare_lists (new_path, *path, (GCompareFunc) g_strcmp0) != 0) {
+    g_list_free_full (*path, g_free);
+    *path = new_path;
+    return TRUE;
+  }
+  g_list_free_full (new_path, g_free);
+
+  return FALSE;
+}
+
+static gboolean
+_gst_uri_normalize_str_noop (gchar * str)
+{
+  return FALSE;
+}
+
+static gboolean
+_gst_uri_normalize_table_noop (GHashTable * table)
+{
+  return FALSE;
+}
+
+#define _gst_uri_normalize_userinfo _gst_uri_normalize_str_noop
+#define _gst_uri_normalize_query _gst_uri_normalize_table_noop
+#define _gst_uri_normalize_fragment _gst_uri_normalize_str_noop
+
+/* RFC 3986 functions */
+
+static GList *
+_merge (GList * base, GList * path)
+{
+  GList *ret, *path_copy, *last;
+
+  path_copy = g_list_copy_deep (path, (GCopyFunc) g_strdup, NULL);
+  /* if base is NULL make path absolute */
+  if (base == NULL) {
+    if (path_copy != NULL && path_copy->data != NULL) {
+      path_copy = g_list_prepend (path_copy, NULL);
+    }
+    return path_copy;
+  }
+
+  ret = g_list_copy_deep (base, (GCopyFunc) g_strdup, NULL);
+  last = g_list_last (ret);
+  ret = g_list_remove_link (ret, last);
+  g_list_free_full (last, g_free);
+  ret = g_list_concat (ret, path_copy);
+
+  return ret;
+}
+
+static GList *
+_remove_dot_segments (GList * path)
+{
+  GList *out, *elem, *next;
+
+  if (path == NULL)
+    return NULL;
+
+  out = g_list_copy_deep (path, (GCopyFunc) g_strdup, NULL);
+
+  for (elem = out; elem; elem = next) {
+    next = elem->next;
+    if (elem->data == NULL && elem != out && next != NULL) {
+      out = g_list_delete_link (out, elem);
+    } else if (g_strcmp0 (elem->data, ".") == 0) {
+      g_free (elem->data);
+      out = g_list_delete_link (out, elem);
+    } else if (g_strcmp0 (elem->data, "..") == 0) {
+      GList *prev = g_list_previous (elem);
+      if (prev && (prev != out || prev->data != NULL)) {
+        g_free (prev->data);
+        out = g_list_delete_link (out, prev);
+      }
+      g_free (elem->data);
+      out = g_list_delete_link (out, elem);
+    }
+  }
+
+  return out;
+}
+
+static gchar *
+_gst_uri_escape_userinfo (const gchar * userinfo)
+{
+  return g_uri_escape_string (userinfo,
+      G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO, FALSE);
+}
+
+static gchar *
+_gst_uri_escape_host (const gchar * host)
+{
+  return g_uri_escape_string (host,
+      G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS, FALSE);
+}
+
+static gchar *
+_gst_uri_escape_host_colon (const gchar * host)
+{
+  return g_uri_escape_string (host,
+      G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS ":", FALSE);
+}
+
+static gchar *
+_gst_uri_escape_path_segment (const gchar * segment)
+{
+  return g_uri_escape_string (segment,
+      G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT, FALSE);
+}
+
+static gchar *
+_gst_uri_escape_http_query_element (const gchar * element)
+{
+  gchar *ret, *c;
+
+  ret = g_uri_escape_string (element, "!$'()*,;:@/? ", FALSE);
+  for (c = ret; *c; c++)
+    if (*c == ' ')
+      *c = '+';
+  return ret;
+}
+
+static gchar *
+_gst_uri_escape_fragment (const gchar * fragment)
+{
+  return g_uri_escape_string (fragment,
+      G_URI_RESERVED_CHARS_ALLOWED_IN_PATH "?", FALSE);
+}
+
+static GList *
+_gst_uri_string_to_list (const gchar * str, const gchar * sep, gboolean convert,
+    gboolean unescape)
+{
+  GList *new_list = NULL;
+
+  if (str) {
+    guint pct_sep_len = 0;
+    gchar *pct_sep;
+    gchar **split_str;
+
+    if (convert && !unescape) {
+      pct_sep = g_strdup_printf ("%%%2.2X", (guint) (*sep));
+      pct_sep_len = 3;
+    }
+
+    split_str = g_strsplit (str, sep, -1);
+    if (split_str) {
+      gchar **next_elem;
+      for (next_elem = split_str; *next_elem; next_elem += 1) {
+        gchar *elem = *next_elem;
+        if (*elem == '\0') {
+          new_list = g_list_append (new_list, NULL);
+        } else {
+          if (convert && !unescape) {
+            gchar *next_sep;
+            for (next_sep = strcasestr (elem, pct_sep); next_sep;
+                next_sep = strcasestr (next_sep + 1, pct_sep)) {
+              *next_sep = *sep;
+              memmove (next_sep + 1, next_sep + pct_sep_len,
+                  strlen (next_sep + pct_sep_len) + 1);
+            }
+          }
+          if (unescape) {
+            *next_elem = g_uri_unescape_string (elem, NULL);
+            g_free (elem);
+            elem = *next_elem;
+          }
+          new_list = g_list_append (new_list, g_strdup (elem));
+        }
+      }
+    }
+    g_strfreev (split_str);
+    if (convert && !unescape)
+      g_free (pct_sep);
+  }
+
+  return new_list;
+}
+
+static GHashTable *
+_gst_uri_string_to_table (const gchar * str, const gchar * part_sep,
+    const gchar * kv_sep, gboolean convert, gboolean unescape)
+{
+  GHashTable *new_table = NULL;
+
+  if (str) {
+    gchar *pct_part_sep = NULL, *pct_kv_sep = NULL;
+    gchar **split_parts;
+
+    new_table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
+
+    if (convert && !unescape) {
+      pct_part_sep = g_strdup_printf ("%%%2.2X", (guint) (*part_sep));
+      pct_kv_sep = g_strdup_printf ("%%%2.2X", (guint) (*kv_sep));
+    }
+
+    split_parts = g_strsplit (str, part_sep, -1);
+    if (split_parts) {
+      gchar **next_part;
+      for (next_part = split_parts; *next_part; next_part += 1) {
+        gchar *part = *next_part;
+        gchar *kv_sep_pos;
+        gchar *key, *value;
+        /* if we are converting percent encoded versions of separators then
+         *  substitute the part separator now. */
+        if (convert && !unescape) {
+          gchar *next_sep;
+          for (next_sep = strcasestr (part, pct_part_sep); next_sep;
+              next_sep = strcasestr (next_sep + 1, pct_part_sep)) {
+            *next_sep = *part_sep;
+            memmove (next_sep + 1, next_sep + 3, strlen (next_sep + 3) + 1);
+          }
+        }
+        /* find the key/value separator within the part */
+        kv_sep_pos = g_strstr_len (part, -1, kv_sep);
+        if (kv_sep_pos == NULL) {
+          if (unescape) {
+            key = g_uri_unescape_string (part, NULL);
+          } else {
+            key = g_strdup (part);
+          }
+          value = NULL;
+        } else {
+          if (unescape) {
+            key = g_uri_unescape_segment (part, kv_sep_pos, NULL);
+            value = g_uri_unescape_string (kv_sep_pos + 1, NULL);
+          } else {
+            key = g_strndup (part, kv_sep_pos - part);
+            value = g_strdup (kv_sep_pos + 1);
+          }
+        }
+        /* if we are converting percent encoded versions of separators then
+         *  substitute the key/value separator in both key and value now. */
+        if (convert && !unescape) {
+          gchar *next_sep;
+          for (next_sep = strcasestr (key, pct_kv_sep); next_sep;
+              next_sep = strcasestr (next_sep + 1, pct_kv_sep)) {
+            *next_sep = *kv_sep;
+            memmove (next_sep + 1, next_sep + 3, strlen (next_sep + 3) + 1);
+          }
+          if (value) {
+            for (next_sep = strcasestr (value, pct_kv_sep); next_sep;
+                next_sep = strcasestr (next_sep + 1, pct_kv_sep)) {
+              *next_sep = *kv_sep;
+              memmove (next_sep + 1, next_sep + 3, strlen (next_sep + 3) + 1);
+            }
+          }
+        }
+        /* add value to the table */
+        g_hash_table_insert (new_table, key, value);
+      }
+    }
+    /* tidy up */
+    g_strfreev (split_parts);
+    if (convert && !unescape) {
+      g_free (pct_part_sep);
+      g_free (pct_kv_sep);
+    }
+  }
+
+  return new_table;
+}
+
+
+/*
+ * Method definitions.
+ */
+
+/**
+ * gst_uri_new:
+ * @scheme: (nullable): The scheme for the new URI.
+ * @userinfo: (nullable): The user-info for the new URI.
+ * @host: (nullable): The host name for the new URI.
+ * @port: The port number for the new URI or %GST_URI_NO_PORT.
+ * @path: (nullable): The path for the new URI with '/' separating path
+ *                      elements.
+ * @query: (nullable): The query string for the new URI with '&' separating
+ *                       query elements. Elements containing '&' characters
+ *                       should encode them as "%26".
+ * @fragment: (nullable): The fragment name for the new URI.
+ *
+ * Creates a new #GstUri object with the given URI parts. The path and query
+ * strings will be broken down into their elements. All strings should not be
+ * escaped except where indicated.
+ *
+ * Returns: (transfer full): A new #GstUri object.
+ *
+ * Since: 1.6
+ */
+GstUri *
+gst_uri_new (const gchar * scheme, const gchar * userinfo, const gchar * host,
+    guint port, const gchar * path, const gchar * query, const gchar * fragment)
+{
+  GstUri *new_uri;
+
+  new_uri = _gst_uri_new ();
+  if (new_uri) {
+    new_uri->scheme = g_strdup (scheme);
+    new_uri->userinfo = g_strdup (userinfo);
+    new_uri->host = g_strdup (host);
+    new_uri->port = port;
+    new_uri->path = _gst_uri_string_to_list (path, "/", FALSE, FALSE);
+    new_uri->query = _gst_uri_string_to_table (query, "&", "=", TRUE, FALSE);
+    new_uri->fragment = g_strdup (fragment);
+  }
+
+  return new_uri;
+}
+
+/**
+ * gst_uri_new_with_base:
+ * @base: (transfer none)(nullable): The base URI to join the new URI to.
+ * @scheme: (nullable): The scheme for the new URI.
+ * @userinfo: (nullable): The user-info for the new URI.
+ * @host: (nullable): The host name for the new URI.
+ * @port: The port number for the new URI or %GST_URI_NO_PORT.
+ * @path: (nullable): The path for the new URI with '/' separating path
+ *                      elements.
+ * @query: (nullable): The query string for the new URI with '&' separating
+ *                       query elements. Elements containing '&' characters
+ *                       should encode them as "%26".
+ * @fragment: (nullable): The fragment name for the new URI.
+ *
+ * Like gst_uri_new(), but joins the new URI onto a base URI.
+ *
+ * Returns: (transfer full): The new URI joined onto @base.
+ *
+ * Since: 1.6
+ */
+GstUri *
+gst_uri_new_with_base (GstUri * base, const gchar * scheme,
+    const gchar * userinfo, const gchar * host, guint port, const gchar * path,
+    const gchar * query, const gchar * fragment)
+{
+  GstUri *new_rel_uri;
+  GstUri *new_uri;
+
+  g_return_val_if_fail (base == NULL || GST_IS_URI (base), NULL);
+
+  new_rel_uri = gst_uri_new (scheme, userinfo, host, port, path, query,
+      fragment);
+  new_uri = gst_uri_join (base, new_rel_uri);
+  gst_uri_unref (new_rel_uri);
+
+  return new_uri;
+}
+
+/**
+ * gst_uri_from_string:
+ * @uri: The URI string to parse.
+ *
+ * Parses a URI string into a new #GstUri object. Will return NULL if the URI
+ * cannot be parsed.
+ *
+ * Returns: (transfer full)(nullable): A new #GstUri object, or NULL.
+ *
+ * Since: 1.6
+ */
+GstUri *
+gst_uri_from_string (const gchar * uri)
+{
+  const gchar *orig_uri = uri;
+  GstUri *uri_obj;
+
+  uri_obj = _gst_uri_new ();
+
+  if (uri_obj && uri != NULL) {
+    int i = 0;
+
+    /* be helpful and skip initial white space */
+    while (*uri == '\v' || g_ascii_isspace (*uri))
+      uri++;
+
+    if (g_ascii_isalpha (uri[i])) {
+      /* find end of scheme name */
+      i++;
+      while (g_ascii_isalnum (uri[i]) || uri[i] == '+' || uri[i] == '-' ||
+          uri[i] == '.')
+        i++;
+    }
+    if (i > 0 && uri[i] == ':') {
+      /* get scheme */
+      uri_obj->scheme = g_strndup (uri, i);
+      uri += i + 1;
+    }
+    if (uri[0] == '/' && uri[1] == '/') {
+      const gchar *eoa, *eoui, *eoh, *reoh;
+      /* get authority [userinfo@]host[:port] */
+      uri += 2;
+      /* find end of authority */
+      eoa = uri + strcspn (uri, "/?#");
+
+      /* find end of userinfo */
+      eoui = strchr (uri, '@');
+      if (eoui != NULL && eoui < eoa) {
+        uri_obj->userinfo = g_uri_unescape_segment (uri, eoui, NULL);
+        uri = eoui + 1;
+      }
+      /* find end of host */
+      if (uri[0] == '[') {
+        eoh = strchr (uri, ']');
+        if (eoh == NULL || eoh > eoa) {
+          GST_DEBUG ("Unable to parse the host part of the URI '%s'.",
+              orig_uri);
+          _gst_uri_free (uri_obj);
+          return NULL;
+        }
+        reoh = eoh + 1;
+        uri++;
+      } else {
+        reoh = eoh = strchr (uri, ':');
+        if (eoh == NULL || eoh > eoa)
+          reoh = eoh = eoa;
+      }
+      /* don't capture empty host strings */
+      if (eoh != uri)
+        uri_obj->host = g_uri_unescape_segment (uri, eoh, NULL);
+
+      uri = reoh;
+      if (uri < eoa) {
+        /* if port number is malformed then we can't parse this */
+        if (uri[0] != ':' || strspn (uri + 1, "0123456789") != eoa - uri - 1) {
+          GST_DEBUG ("Unable to parse host/port part of the URI '%s'.",
+              orig_uri);
+          _gst_uri_free (uri_obj);
+          return NULL;
+        }
+        /* otherwise treat port as unsigned decimal number */
+        uri++;
+        while (uri < eoa) {
+          uri_obj->port = uri_obj->port * 10 + g_ascii_digit_value (*uri);
+          uri++;
+        }
+      }
+      uri = eoa;
+    }
+    if (uri != NULL && uri[0] != '\0') {
+      /* get path */
+      size_t len;
+      len = strcspn (uri, "?#");
+      if (uri[len] == '\0') {
+        uri_obj->path = _gst_uri_string_to_list (uri, "/", FALSE, TRUE);
+        uri = NULL;
+      } else {
+        if (len > 0) {
+          gchar *path_str = g_strndup (uri, len);
+          uri_obj->path = _gst_uri_string_to_list (path_str, "/", FALSE, TRUE);
+          g_free (path_str);
+        }
+        uri += len;
+      }
+    }
+    if (uri != NULL && uri[0] == '?') {
+      /* get query */
+      gchar *eoq;
+      eoq = strchr (++uri, '#');
+      if (eoq == NULL) {
+        uri_obj->query = _gst_uri_string_to_table (uri, "&", "=", TRUE, TRUE);
+        uri = NULL;
+      } else {
+        if (eoq != uri) {
+          gchar *query_str = g_strndup (uri, eoq - uri);
+          uri_obj->query = _gst_uri_string_to_table (query_str, "&", "=", TRUE,
+              TRUE);
+          g_free (query_str);
+        }
+        uri = eoq;
+      }
+    }
+    if (uri != NULL && uri[0] == '#') {
+      uri_obj->fragment = g_uri_unescape_string (uri + 1, NULL);
+    }
+  }
+
+  return uri_obj;
+}
+
+/**
+ * gst_uri_from_string_with_base:
+ * @base: (transfer none)(nullable): The base URI to join the new URI with.
+ * @uri: The URI string to parse.
+ *
+ * Like gst_uri_from_string() but also joins with a base URI.
+ *
+ * Returns: (transfer full): A new #GstUri object.
+ *
+ * Since: 1.6
+ */
+GstUri *
+gst_uri_from_string_with_base (GstUri * base, const gchar * uri)
+{
+  GstUri *new_rel_uri;
+  GstUri *new_uri;
+
+  g_return_val_if_fail (base == NULL || GST_IS_URI (base), NULL);
+
+  new_rel_uri = gst_uri_from_string (uri);
+  new_uri = gst_uri_join (base, new_rel_uri);
+  gst_uri_unref (new_rel_uri);
+
+  return new_uri;
+}
+
+/**
+ * gst_uri_equal:
+ * @first: First #GstUri to compare.
+ * @second: Second #GstUri to compare.
+ *
+ * Compares two #GstUri objects to see if they represent the same normalized
+ * URI.
+ *
+ * Returns: %TRUE if the normalized versions of the two URI's would be equal.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_equal (const GstUri * first, const GstUri * second)
+{
+  gchar *first_norm = NULL, *second_norm = NULL;
+  GList *first_norm_list = NULL, *second_norm_list = NULL;
+  const gchar *first_cmp, *second_cmp;
+  GHashTableIter table_iter;
+  gpointer key, value;
+  int result;
+
+  g_return_val_if_fail ((first == NULL || GST_IS_URI (first)) &&
+      (second == NULL || GST_IS_URI (second)), FALSE);
+
+  if (first == second)
+    return TRUE;
+
+  if (first == NULL || second == NULL)
+    return FALSE;
+
+  if (first->port != second->port)
+    return FALSE;
+
+/* work out a version of field value (normalized or not) to compare.
+ * first_cmp, second_cmp will be the values to compare later.
+ * first_norm, second_norm will be non-NULL if normalized versions are used,
+ *  and need to be freed later.
+ */
+#define GST_URI_NORMALIZED_FIELD(pos, field, norm_fn, flags) \
+  pos##_cmp = pos->field; \
+  if (_gst_uri_first_non_normalized_char ((gchar*)pos##_cmp, flags) != NULL) { \
+    pos##_norm = g_strdup (pos##_cmp); \
+    norm_fn (pos##_norm); \
+    pos##_cmp = pos##_norm; \
+  }
+
+/* compare two string values, normalizing if needed */
+#define GST_URI_NORMALIZED_CMP_STR(field, norm_fn, flags) \
+  GST_URI_NORMALIZED_FIELD (first, field, norm_fn, flags) \
+  GST_URI_NORMALIZED_FIELD (second, field, norm_fn, flags) \
+  result = g_strcmp0 (first_cmp, second_cmp); \
+  g_free (first_norm); \
+  first_norm = NULL; \
+  g_free (second_norm); \
+  second_norm = NULL; \
+  if (result != 0) return FALSE
+
+/* compare two string values */
+#define GST_URI_CMP_STR(field) \
+  if (g_strcmp0 (first->field, second->field) != 0) return FALSE
+
+/* compare two GLists, normalize lists if needed before comparison */
+#define GST_URI_NORMALIZED_CMP_LIST(field, norm_fn, copy_fn, cmp_fn, free_fn) \
+  first_norm_list = g_list_copy_deep (first->field, (GCopyFunc) copy_fn, NULL); \
+  norm_fn (&first_norm_list); \
+  second_norm_list = g_list_copy_deep (second->field, (GCopyFunc) copy_fn, NULL); \
+  norm_fn (&second_norm_list); \
+  result = _gst_uri_compare_lists (first_norm_list, second_norm_list, (GCompareFunc) cmp_fn); \
+  g_list_free_full (first_norm_list, free_fn); \
+  g_list_free_full (second_norm_list, free_fn); \
+  if (result != 0) return FALSE
+
+  GST_URI_CMP_STR (userinfo);
+
+  GST_URI_CMP_STR (fragment);
+
+  GST_URI_NORMALIZED_CMP_STR (scheme, _gst_uri_normalize_scheme,
+      _GST_URI_NORMALIZE_LOWERCASE);
+
+  GST_URI_NORMALIZED_CMP_STR (host, _gst_uri_normalize_hostname,
+      _GST_URI_NORMALIZE_LOWERCASE);
+
+  GST_URI_NORMALIZED_CMP_LIST (path, _gst_uri_normalize_path, g_strdup,
+      g_strcmp0, g_free);
+
+  if (first->query == NULL && second->query != NULL)
+    return FALSE;
+  if (first->query != NULL && second->query == NULL)
+    return FALSE;
+  if (first->query != NULL) {
+    if (g_hash_table_size (first->query) != g_hash_table_size (second->query))
+      return FALSE;
+
+    g_hash_table_iter_init (&table_iter, first->query);
+    while (g_hash_table_iter_next (&table_iter, &key, &value)) {
+      if (!g_hash_table_contains (second->query, key))
+        return FALSE;
+      result = g_strcmp0 (g_hash_table_lookup (second->query, key), value);
+      if (result != 0)
+        return FALSE;
+    }
+  }
+#undef GST_URI_NORMALIZED_CMP_STR
+#undef GST_URI_CMP_STR
+#undef GST_URI_NORMALIZED_CMP_LIST
+#undef GST_URI_NORMALIZED_FIELD
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_join:
+ * @base_uri: (transfer none)(nullable): The base URI to join another to.
+ * @ref_uri: (transfer none)(nullable): The reference URI to join onto the
+ *                                        base URI.
+ *
+ * Join a reference URI onto a base URI using the method from RFC 3986.
+ * If either URI is %NULL then the other URI will be returned with the ref count
+ * increased.
+ *
+ * Returns: (transfer full): A #GstUri which represents the base with the
+ *                           reference URI joined on.
+ *
+ * Since: 1.6
+ */
+GstUri *
+gst_uri_join (GstUri * base_uri, GstUri * ref_uri)
+{
+  const gchar *r_scheme;
+  GstUri *t;
+
+  g_return_val_if_fail ((base_uri == NULL || GST_IS_URI (base_uri)) &&
+      (ref_uri == NULL || GST_IS_URI (ref_uri)), NULL);
+
+  if (base_uri == NULL && ref_uri == NULL)
+    return NULL;
+  if (base_uri == NULL) {
+    g_return_val_if_fail (GST_IS_URI (ref_uri), NULL);
+    return gst_uri_ref (ref_uri);
+  }
+  if (ref_uri == NULL) {
+    g_return_val_if_fail (GST_IS_URI (base_uri), NULL);
+    return gst_uri_ref (base_uri);
+  }
+
+  g_return_val_if_fail (GST_IS_URI (base_uri) && GST_IS_URI (ref_uri), NULL);
+
+  t = _gst_uri_new ();
+
+  if (t == NULL)
+    return t;
+
+  /* process according to RFC3986 */
+  r_scheme = ref_uri->scheme;
+  if (r_scheme != NULL && g_strcmp0 (base_uri->scheme, r_scheme) == 0) {
+    r_scheme = NULL;
+  }
+  if (r_scheme != NULL) {
+    t->scheme = g_strdup (r_scheme);
+    t->userinfo = g_strdup (ref_uri->userinfo);
+    t->host = g_strdup (ref_uri->host);
+    t->port = ref_uri->port;
+    t->path = _remove_dot_segments (ref_uri->path);
+    t->query = _gst_uri_copy_query_table (ref_uri->query);
+  } else {
+    if (ref_uri->host != NULL) {
+      t->userinfo = g_strdup (ref_uri->userinfo);
+      t->host = g_strdup (ref_uri->host);
+      t->port = ref_uri->port;
+      t->path = _remove_dot_segments (ref_uri->path);
+      t->query = _gst_uri_copy_query_table (ref_uri->query);
+    } else {
+      if (ref_uri->path == NULL) {
+        t->path = g_list_copy_deep (base_uri->path, (GCopyFunc) g_strdup, NULL);
+        if (ref_uri->query != NULL)
+          t->query = _gst_uri_copy_query_table (ref_uri->query);
+        else
+          t->query = _gst_uri_copy_query_table (base_uri->query);
+      } else {
+        if (ref_uri->path->data == NULL)
+          t->path = _remove_dot_segments (ref_uri->path);
+        else {
+          GList *mrgd = _merge (base_uri->path, ref_uri->path);
+          t->path = _remove_dot_segments (mrgd);
+          g_list_free_full (mrgd, g_free);
+        }
+        t->query = _gst_uri_copy_query_table (ref_uri->query);
+      }
+      t->userinfo = g_strdup (base_uri->userinfo);
+      t->host = g_strdup (base_uri->host);
+      t->port = base_uri->port;
+    }
+    t->scheme = g_strdup (base_uri->scheme);
+  }
+  t->fragment = g_strdup (ref_uri->fragment);
+
+  return t;
+}
+
+/**
+ * gst_uri_join_strings:
+ * @base_uri: The percent-encoded base URI.
+ * @ref_uri: The percent-encoded reference URI to join to the @base_uri.
+ *
+ * This is a convenience function to join two URI strings and return the result.
+ * The returned string should be g_free()'d after use.
+ *
+ * Returns: (transfer full): A string representing the percent-encoded join of
+ *          the two URIs.
+ *
+ * Since: 1.6
+ */
+gchar *
+gst_uri_join_strings (const gchar * base_uri, const gchar * ref_uri)
+{
+  GstUri *base, *result;
+  gchar *result_uri;
+
+  base = gst_uri_from_string (base_uri);
+  result = gst_uri_from_string_with_base (base, ref_uri);
+  result_uri = gst_uri_to_string (result);
+  gst_uri_unref (base);
+  gst_uri_unref (result);
+
+  return result_uri;
+}
+
+/**
+ * gst_uri_is_writable:
+ * @uri: The #GstUri object to test.
+ *
+ * Check if it is safe to write to this #GstUri.
+ *
+ * Check if the refcount of @uri is exactly 1, meaning that no other
+ * reference exists to the #GstUri and that the #GstUri is therefore writable.
+ *
+ * Modification of a #GstUri should only be done after verifying that it is
+ * writable.
+ *
+ * Returns: %TRUE if it is safe to write to the object.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_is_writable (const GstUri * uri)
+{
+  g_return_val_if_fail (GST_IS_URI (uri), FALSE);
+  return gst_mini_object_is_writable (GST_MINI_OBJECT_CAST (uri));
+}
+
+/**
+ * gst_uri_make_writable:
+ * @uri: (transfer full): The #GstUri object to make writable.
+ *
+ * Make the #GstUri writable.
+ *
+ * Checks if @uri is writable, and if so the original object is returned. If
+ * not, then a writable copy is made and returned. This gives away the
+ * reference to @uri and returns a reference to the new #GstUri.
+ * If @uri is %NULL then %NULL is returned.
+ *
+ * Returns: (transfer full): A writable version of @uri.
+ *
+ * Since: 1.6
+ */
+GstUri *
+gst_uri_make_writable (GstUri * uri)
+{
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  return
+      GST_URI_CAST (gst_mini_object_make_writable (GST_MINI_OBJECT_CAST (uri)));
+}
+
+/**
+ * gst_uri_to_string:
+ * @uri: This #GstUri to convert to a string.
+ *
+ * Convert the URI to a string.
+ *
+ * Returns the URI as held in this object as a gchar* %NUL terminated string.
+ * The caller should g_free() the string once they are finished with it.
+ * The string is put together as described in RFC 3986.
+ *
+ * Returns: (transfer full): The string version of the URI.
+ *
+ * Since: 1.6
+ */
+gchar *
+gst_uri_to_string (const GstUri * uri)
+{
+  GString *uri_str;
+  gchar *escaped;
+
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+
+  uri_str = g_string_new (NULL);
+
+  if (uri->scheme != NULL)
+    g_string_append_printf (uri_str, "%s:", uri->scheme);
+
+  if (uri->userinfo != NULL || uri->host != NULL ||
+      uri->port != GST_URI_NO_PORT)
+    g_string_append (uri_str, "//");
+
+  if (uri->userinfo != NULL) {
+    escaped = _gst_uri_escape_userinfo (uri->userinfo);
+    g_string_append_printf (uri_str, "%s@", escaped);
+    g_free (escaped);
+  }
+
+  if (uri->host != NULL) {
+    if (strchr (uri->host, ':') != NULL) {
+      escaped = _gst_uri_escape_host_colon (uri->host);
+      g_string_append_printf (uri_str, "[%s]", escaped);
+      g_free (escaped);
+    } else {
+      escaped = _gst_uri_escape_host (uri->host);
+      g_string_append (uri_str, escaped);
+      g_free (escaped);
+    }
+  }
+
+  if (uri->port != GST_URI_NO_PORT)
+    g_string_append_printf (uri_str, ":%u", uri->port);
+
+  if (uri->path != NULL) {
+    escaped = gst_uri_get_path_string (uri);
+    g_string_append (uri_str, escaped);
+    g_free (escaped);
+  }
+
+  if (uri->query) {
+    g_string_append (uri_str, "?");
+    escaped = gst_uri_get_query_string (uri);
+    g_string_append (uri_str, escaped);
+    g_free (escaped);
+  }
+
+  if (uri->fragment != NULL) {
+    escaped = _gst_uri_escape_fragment (uri->fragment);
+    g_string_append_printf (uri_str, "#%s", escaped);
+    g_free (escaped);
+  }
+
+  return g_string_free (uri_str, FALSE);
+}
+
+/**
+ * gst_uri_is_normalized:
+ * @uri: The #GstUri to test to see if it is normalized.
+ *
+ * Tests the @uri to see if it is normalized. A %NULL @uri is considered to be
+ * normalized.
+ *
+ * Returns: TRUE if the URI is normalized or is %NULL.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_is_normalized (const GstUri * uri)
+{
+  GList *new_path;
+  gboolean ret;
+
+  if (uri == NULL)
+    return TRUE;
+
+  g_return_val_if_fail (GST_IS_URI (uri), FALSE);
+
+  /* check for non-normalized characters in uri parts */
+  if (_gst_uri_first_non_normalized_char (uri->scheme,
+          _GST_URI_NORMALIZE_LOWERCASE) != NULL ||
+      /*_gst_uri_first_non_normalized_char (uri->userinfo,
+          _GST_URI_NORMALIZE_PERCENTAGES) != NULL || */
+      _gst_uri_first_non_normalized_char (uri->host,
+          _GST_URI_NORMALIZE_LOWERCASE /*| _GST_URI_NORMALIZE_PERCENTAGES */ )
+      != NULL
+      /*|| _gst_uri_first_non_normalized_char (uri->path,
+         _GST_URI_NORMALIZE_PERCENTAGES) != NULL
+         || _gst_uri_first_non_normalized_char (uri->query,
+         _GST_URI_NORMALIZE_PERCENTAGES) != NULL
+         || _gst_uri_first_non_normalized_char (uri->fragment,
+         _GST_URI_NORMALIZE_PERCENTAGES) != NULL */ )
+    return FALSE;
+
+  /* also check path has had dot segments removed */
+  new_path = _remove_dot_segments (uri->path);
+  ret =
+      (_gst_uri_compare_lists (new_path, uri->path,
+          (GCompareFunc) g_strcmp0) == 0);
+  g_list_free_full (new_path, g_free);
+  return ret;
+}
+
+/**
+ * gst_uri_normalize:
+ * @uri: (transfer none): The #GstUri to normalize.
+ *
+ * Normalization will remove extra path segments ("." and "..") from the URI. It
+ * will also convert the scheme and host name to lower case and any
+ * percent-encoded values to uppercase.
+ *
+ * The #GstUri object must be writable. Check with gst_uri_is_writable() or use
+ * gst_uri_make_writable() first.
+ *
+ * Returns: TRUE if the URI was modified.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_normalize (GstUri * uri)
+{
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  return _gst_uri_normalize_scheme (uri->scheme) |
+      _gst_uri_normalize_userinfo (uri->userinfo) |
+      _gst_uri_normalize_hostname (uri->host) |
+      _gst_uri_normalize_path (&uri->path) |
+      _gst_uri_normalize_query (uri->query) |
+      _gst_uri_normalize_fragment (uri->fragment);
+}
+
+/**
+ * gst_uri_get_scheme:
+ * @uri: (nullable): This #GstUri object.
+ *
+ * Get the scheme name from the URI or %NULL if it doesn't exist.
+ * If @uri is %NULL then returns %NULL.
+ *
+ * Returns: The scheme from the #GstUri object or %NULL.
+ */
+const gchar *
+gst_uri_get_scheme (const GstUri * uri)
+{
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), NULL);
+  return (uri ? uri->scheme : NULL);
+}
+
+/**
+ * gst_uri_set_scheme:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @scheme: The new scheme to set or %NULL to unset the scheme.
+ *
+ * Set or unset the scheme for the URI.
+ *
+ * Returns: %TRUE if the scheme was set/unset successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_scheme (GstUri * uri, const gchar * scheme)
+{
+  if (!uri)
+    return scheme == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  g_free (uri->scheme);
+  uri->scheme = g_strdup (scheme);
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_userinfo:
+ * @uri: (nullable): This #GstUri object.
+ *
+ * Get the userinfo (usually in the form "username:password") from the URI
+ * or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL.
+ *
+ * Returns: The userinfo from the #GstUri object or %NULL.
+ *
+ * Since: 1.6
+ */
+const gchar *
+gst_uri_get_userinfo (const GstUri * uri)
+{
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), NULL);
+  return (uri ? uri->userinfo : NULL);
+}
+
+/**
+ * gst_uri_set_userinfo:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @userinfo: The new user-information string to set or %NULL to unset.
+ *
+ * Set or unset the user information for the URI.
+ *
+ * Returns: %TRUE if the user information was set/unset successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_userinfo (GstUri * uri, const gchar * userinfo)
+{
+  if (!uri)
+    return userinfo == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  g_free (uri->userinfo);
+  uri->userinfo = g_strdup (userinfo);
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_host:
+ * @uri: (nullable): This #GstUri object.
+ *
+ * Get the host name from the URI or %NULL if it doesn't exist.
+ * If @uri is %NULL then returns %NULL.
+ *
+ * Returns: The host name from the #GstUri object or %NULL.
+ *
+ * Since: 1.6
+ */
+const gchar *
+gst_uri_get_host (const GstUri * uri)
+{
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), NULL);
+  return (uri ? uri->host : NULL);
+}
+
+/**
+ * gst_uri_set_host:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @host: The new host string to set or %NULL to unset.
+ *
+ * Set or unset the host for the URI.
+ *
+ * Returns: %TRUE if the host was set/unset successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_host (GstUri * uri, const gchar * host)
+{
+  if (!uri)
+    return host == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  g_free (uri->host);
+  uri->host = g_strdup (host);
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_port:
+ * @uri: (nullable): This #GstUri object.
+ *
+ * Get the port number from the URI or %GST_URI_NO_PORT if it doesn't exist.
+ * If @uri is %NULL then returns %GST_URI_NO_PORT.
+ *
+ * Returns: The port number from the #GstUri object or %GST_URI_NO_PORT.
+ *
+ * Since: 1.6
+ */
+guint
+gst_uri_get_port (const GstUri * uri)
+{
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), GST_URI_NO_PORT);
+  return (uri ? uri->port : GST_URI_NO_PORT);
+}
+
+/**
+ * gst_uri_set_port:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @port: The new port number to set or %GST_URI_NO_PORT to unset.
+ *
+ * Set or unset the port number for the URI.
+ *
+ * Returns: %TRUE if the port number was set/unset successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_port (GstUri * uri, guint port)
+{
+  if (!uri)
+    return port == GST_URI_NO_PORT;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  uri->port = port;
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_path:
+ * @uri: The #GstUri to get the path from.
+ *
+ * Extract the path string from the URI object.
+ *
+ * Returns: (transfer full): The path from the URI. Once finished with the
+ *                           string should be g_free()'d.
+ *
+ * Since: 1.6
+ */
+gchar *
+gst_uri_get_path (const GstUri * uri)
+{
+  GList *path_segment;
+  const gchar *sep = "";
+  GString *ret;
+
+  if (!uri)
+    return NULL;
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  if (!uri->path)
+    return NULL;
+
+  ret = g_string_new (NULL);
+
+  for (path_segment = uri->path; path_segment;
+      path_segment = path_segment->next) {
+    g_string_append (ret, sep);
+    if (path_segment->data) {
+      g_string_append (ret, path_segment->data);
+    }
+    sep = "/";
+  }
+
+  return g_string_free (ret, FALSE);
+}
+
+/**
+ * gst_uri_set_path:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @path: The new path to set with path segments separated by '/', or use %NULL
+ *        to unset the path.
+ *
+ * Sets or unsets the path in the URI.
+ *
+ * Returns: %TRUE if the path was set successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_path (GstUri * uri, const gchar * path)
+{
+  if (!uri)
+    return path == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  g_list_free_full (uri->path, g_free);
+  uri->path = _gst_uri_string_to_list (path, "/", FALSE, FALSE);
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_path_string:
+ * @uri: The #GstUri to get the path from.
+ *
+ * Extract the path string from the URI object as a percent encoded URI path.
+ *
+ * Returns: (transfer full): The path from the URI. Once finished with the
+ *                           string should be g_free()'d.
+ *
+ * Since: 1.6
+ */
+gchar *
+gst_uri_get_path_string (const GstUri * uri)
+{
+  GList *path_segment;
+  const gchar *sep = "";
+  GString *ret;
+  gchar *escaped;
+
+  if (!uri)
+    return NULL;
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  if (!uri->path)
+    return NULL;
+
+  ret = g_string_new (NULL);
+
+  for (path_segment = uri->path; path_segment;
+      path_segment = path_segment->next) {
+    g_string_append (ret, sep);
+    if (path_segment->data) {
+      escaped = _gst_uri_escape_path_segment (path_segment->data);
+      g_string_append (ret, escaped);
+      g_free (escaped);
+    }
+    sep = "/";
+  }
+
+  return g_string_free (ret, FALSE);
+}
+
+/**
+ * gst_uri_set_path_string:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @path: The new percent encoded path to set with path segments separated by
+ * '/', or use %NULL to unset the path.
+ *
+ * Sets or unsets the path in the URI.
+ *
+ * Returns: %TRUE if the path was set successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_path_string (GstUri * uri, const gchar * path)
+{
+  if (!uri)
+    return path == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  g_list_free_full (uri->path, g_free);
+  uri->path = _gst_uri_string_to_list (path, "/", FALSE, TRUE);
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_path_segments:
+ * @uri: (nullable): The #GstUri to get the path from.
+ *
+ * Get a list of path segments from the URI.
+ *
+ * Returns: (transfer full)(element-type gchar*): A #GList of path segment
+ *          strings or %NULL if no path segments are available. Free the list
+ *          when no longer needed with g_list_free_full(list, g_free).
+ *
+ * Since: 1.6
+ */
+GList *
+gst_uri_get_path_segments (const GstUri * uri)
+{
+  GList *ret = NULL;
+
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), NULL);
+
+  if (uri) {
+    ret = g_list_copy_deep (uri->path, (GCopyFunc) g_strdup, NULL);
+  }
+
+  return ret;
+}
+
+/**
+ * gst_uri_set_path_segments:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @path_segments: (transfer full)(nullable)(element-type gchar*): The new
+ *                 path list to set.
+ *
+ * Replace the path segments list in the URI.
+ *
+ * Returns: %TRUE if the path segments were set successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_path_segments (GstUri * uri, GList * path_segments)
+{
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), FALSE);
+
+  if (!uri) {
+    if (path_segments)
+      g_list_free_full (path_segments, g_free);
+    return path_segments == NULL;
+  }
+
+  g_return_val_if_fail (gst_uri_is_writable (uri), FALSE);
+
+  g_list_free_full (uri->path, g_free);
+  uri->path = path_segments;
+  return TRUE;
+}
+
+/**
+ * gst_uri_append_path:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @relative_path: Relative path to append to the end of the current path.
+ *
+ * Append a path onto the end of the path in the URI. The path is not
+ * normalized, call #gst_uri_normalize() to normalize the path.
+ *
+ * Returns: %TRUE if the path was appended successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_append_path (GstUri * uri, const gchar * relative_path)
+{
+  GList *rel_path_list;
+
+  if (!uri)
+    return relative_path == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+  if (!relative_path)
+    return TRUE;
+
+  if (uri->path) {
+    GList *last_elem = g_list_last (uri->path);
+    if (last_elem->data == NULL) {
+      uri->path = g_list_delete_link (uri->path, last_elem);
+    }
+  }
+  rel_path_list = _gst_uri_string_to_list (relative_path, "/", FALSE, FALSE);
+  /* if path was absolute, make it relative by removing initial NULL element */
+  if (rel_path_list && rel_path_list->data == NULL) {
+    rel_path_list = g_list_delete_link (rel_path_list, rel_path_list);
+  }
+  uri->path = g_list_concat (uri->path, rel_path_list);
+  return TRUE;
+}
+
+/**
+ * gst_uri_append_path_segment:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @path_segment: The path segment string to append to the URI path.
+ *
+ * Append a single path segment onto the end of the URI path.
+ *
+ * Returns: %TRUE if the path was appended successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_append_path_segment (GstUri * uri, const gchar * path_segment)
+{
+  if (!uri)
+    return path_segment == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+  if (!path_segment)
+    return TRUE;
+
+  /* if base path ends in a directory (i.e. last element is NULL), remove it */
+  if (uri->path && g_list_last (uri->path)->data == NULL) {
+    uri->path = g_list_delete_link (uri->path, g_list_last (uri->path));
+  }
+  uri->path = g_list_append (uri->path, g_strdup (path_segment));
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_query_string:
+ * @uri: (nullable): The #GstUri to get the query string from.
+ *
+ * Get a percent encoded URI query string from the @uri.
+ *
+ * Returns: (transfer full): A percent encoded query string. Use g_free() when
+ *          no longer needed.
+ *
+ * Since: 1.6
+ */
+gchar *
+gst_uri_get_query_string (const GstUri * uri)
+{
+  GHashTableIter iter;
+  gpointer key, value;
+  const gchar *sep = "";
+  gchar *escaped;
+  GString *ret;
+
+  if (!uri)
+    return NULL;
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  if (!uri->query)
+    return NULL;
+
+  ret = g_string_new (NULL);
+  g_hash_table_iter_init (&iter, uri->query);
+  while (g_hash_table_iter_next (&iter, &key, &value)) {
+    g_string_append (ret, sep);
+    escaped = _gst_uri_escape_http_query_element (key);
+    g_string_append (ret, escaped);
+    g_free (escaped);
+    if (value) {
+      escaped = _gst_uri_escape_http_query_element (value);
+      g_string_append_printf (ret, "=%s", escaped);
+      g_free (escaped);
+    }
+    sep = "&";
+  }
+
+  return g_string_free (ret, FALSE);
+}
+
+/**
+ * gst_uri_set_query_string:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @query: The new percent encoded query string to use to populate the query
+ *        table, or use %NULL to unset the query table.
+ *
+ * Sets or unsets the query table in the URI.
+ *
+ * Returns: %TRUE if the query table was set successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_query_string (GstUri * uri, const gchar * query)
+{
+  if (!uri)
+    return query == NULL;
+
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  if (uri->query)
+    g_hash_table_unref (uri->query);
+  uri->query = _gst_uri_string_to_table (query, "&", "=", TRUE, TRUE);
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_get_query_table:
+ * @uri: (nullable): The #GstUri to get the query table from.
+ *
+ * Get the query table from the URI. Keys and values in the table are freed
+ * with g_free when they are deleted. A value may be %NULL to indicate that
+ * the key should appear in the query string in the URI, but does not have a
+ * value. Free the returned #GHashTable with #g_hash_table_unref() when it is
+ * no longer required. Modifying this hash table will modify the query in the
+ * URI.
+ *
+ * Returns: (transfer full)(element-type gchar* gchar*): The query hash table
+ *          from the URI.
+ *
+ * Since: 1.6
+ */
+GHashTable *
+gst_uri_get_query_table (const GstUri * uri)
+{
+  if (!uri)
+    return NULL;
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  if (!uri->query)
+    return NULL;
+
+  return g_hash_table_ref (uri->query);
+}
+
+/**
+ * gst_uri_set_query_table:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @query_table: (transfer none)(nullable)(element-type gchar* gchar*): The new
+ *               query table to use.
+ *
+ * Set the query table to use in the URI. The old table is unreferenced and a
+ * reference to the new one is used instead. A value if %NULL for @query_table
+ * will remove the query string from the URI.
+ *
+ * Returns: %TRUE if the new table was sucessfully used for the query table.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_query_table (GstUri * uri, GHashTable * query_table)
+{
+  GHashTable *old_table = NULL;
+
+  if (!uri)
+    return query_table == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  old_table = uri->query;
+  if (query_table)
+    uri->query = g_hash_table_ref (query_table);
+  else
+    uri->query = NULL;
+  if (old_table)
+    g_hash_table_unref (old_table);
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_set_query_value:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @query_key: (transfer none): The key for the query entry.
+ * @query_value: (transfer none)(nullable): The value for the key.
+ *
+ * This inserts or replaces a key in the query table. A @query_value of %NULL
+ * indicates that the key has no associated value, but will still be present in
+ * the query string.
+ *
+ * Returns: %TRUE if the query table was sucessfully updated.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_query_value (GstUri * uri, const gchar * query_key,
+    const gchar * query_value)
+{
+  if (!uri)
+    return FALSE;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  if (!uri->query) {
+    uri->query = g_hash_table_new_full (g_str_hash, g_str_equal, g_free,
+        g_free);
+  }
+  g_hash_table_insert (uri->query, g_strdup (query_key),
+      g_strdup (query_value));
+
+  return TRUE;
+}
+
+/**
+ * gst_uri_remove_query_key:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @query_key: The key to remove.
+ *
+ * Remove an entry from the query table by key.
+ *
+ * Returns: %TRUE if the key existed in the table and was removed.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_remove_query_key (GstUri * uri, const gchar * query_key)
+{
+  gboolean result;
+
+  if (!uri)
+    return FALSE;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+  if (!uri->query)
+    return FALSE;
+
+  result = g_hash_table_remove (uri->query, query_key);
+  /* if this was the last query entry, remove the query string completely */
+  if (result && g_hash_table_size (uri->query) == 0) {
+    g_hash_table_unref (uri->query);
+    uri->query = NULL;
+  }
+  return result;
+}
+
+/**
+ * gst_uri_query_has_key:
+ * @uri: (nullable): The #GstUri to examine.
+ * @query_key: The key to lookup.
+ *
+ * Check if there is a query table entry for the @query_key key.
+ *
+ * Returns: %TRUE if @query_key exists in the URI query table.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_query_has_key (const GstUri * uri, const gchar * query_key)
+{
+  if (!uri)
+    return FALSE;
+  g_return_val_if_fail (GST_IS_URI (uri), FALSE);
+  if (!uri->query)
+    return FALSE;
+
+  return g_hash_table_contains (uri->query, query_key);
+}
+
+/**
+ * gst_uri_get_query_value:
+ * @uri: (nullable): The #GstUri to examine.
+ * @query_key: The key to lookup.
+ *
+ * Get the value associated with the @query_key key. Will return %NULL if the
+ * key has no value or if the key does not exist in the URI query table. Because
+ * %NULL is returned for both missing keys and keys with no value, you should
+ * use gst_uri_query_has_key() to determine if a key is present in the URI
+ * query.
+ *
+ * Returns: The value for the given key, or %NULL if not found.
+ *
+ * Since: 1.6
+ */
+const gchar *
+gst_uri_get_query_value (const GstUri * uri, const gchar * query_key)
+{
+  if (!uri)
+    return NULL;
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  if (!uri->query)
+    return NULL;
+
+  return g_hash_table_lookup (uri->query, query_key);
+}
+
+/**
+ * gst_uri_get_query_keys:
+ * @uri: (nullable): The #GstUri to examine.
+ *
+ * Get a list of the query keys from the URI.
+ *
+ * Returns: (transfer container)(element-type gchar*): A list of keys from
+ *          the URI query. Free the list with g_list_free().
+ *
+ * Since: 1.6
+ */
+GList *
+gst_uri_get_query_keys (const GstUri * uri)
+{
+  if (!uri)
+    return NULL;
+  g_return_val_if_fail (GST_IS_URI (uri), NULL);
+  if (!uri->query)
+    return NULL;
+
+  return g_hash_table_get_keys (uri->query);
+}
+
+/**
+ * gst_uri_get_fragment:
+ * @uri: (nullable): This #GstUri object.
+ *
+ * Get the fragment name from the URI or %NULL if it doesn't exist.
+ * If @uri is %NULL then returns %NULL.
+ *
+ * Returns: The host name from the #GstUri object or %NULL.
+ *
+ * Since: 1.6
+ */
+const gchar *
+gst_uri_get_fragment (const GstUri * uri)
+{
+  g_return_val_if_fail (uri == NULL || GST_IS_URI (uri), NULL);
+  return (uri ? uri->fragment : NULL);
+}
+
+/**
+ * gst_uri_set_fragment:
+ * @uri: (transfer none)(nullable): The #GstUri to modify.
+ * @fragment: (nullable): The fragment string to set.
+ *
+ * Sets the fragment string in the URI. Use a value of %NULL in @fragment to
+ * unset the fragment string.
+ *
+ * Returns: %TRUE if the fragment was set/unset successfully.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_uri_set_fragment (GstUri * uri, const gchar * fragment)
+{
+  if (!uri)
+    return fragment == NULL;
+  g_return_val_if_fail (GST_IS_URI (uri) && gst_uri_is_writable (uri), FALSE);
+
+  g_free (uri->fragment);
+  uri->fragment = g_strdup (fragment);
+  return TRUE;
+}
diff --git a/gst/gsturi.h b/gst/gsturi.h
index 8a4a9cc..2542c15 100644
--- a/gst/gsturi.h
+++ b/gst/gsturi.h
@@ -1,8 +1,10 @@
 /* GStreamer
  * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
  *                    2000 Wim Taymans <wtay@chello.be>
+ *                    2014 David Waring, British Broadcasting Corporation
+ *                             <david.waring@rd.bbc.co.uk>
  *
- * gsturi.h: Header for uri to element mappings
+ * gsturi.h: Header for uri to element mappings and URI manipulation.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -25,7 +27,11 @@
 #define __GST_URI_H__
 
 #include <glib.h>
+#include <glib-object.h>
 #include <gst/gstelement.h>
+#include <gst/gstconfig.h>
+
+#include "gstminiobject.h"
 
 G_BEGIN_DECLS
 
@@ -151,6 +157,159 @@
                                                      const gchar   * uri,
                                                      GError       ** error);
 
+/*
+ * GstUri Type macros.
+ */
+#define GST_TYPE_URI        (gst_uri_get_type ())
+#define GST_IS_URI(obj)	    (GST_IS_MINI_OBJECT_TYPE (obj, GST_TYPE_URI))
+#define GST_URI_CAST(obj)   ((GstUri *)(obj))
+#define GST_URI_CONST_CAST(obj) ((const GstUri *)(obj))
+#define GST_URI(obj)        (GST_URI_CAST(obj))
+
+/**
+ * GstUri:
+ *
+ * This is a private structure that holds the various parts of a parsed URI.
+ */
+struct _GstUri;
+typedef struct _GstUri GstUri;
+
+/**
+ * GST_URI_NO_PORT:
+ *
+ * Value for #GstUri.port to indicate no port number.
+ */
+#define GST_URI_NO_PORT 0
+
+/* used by GST_TYPE_URI */
+GType gst_uri_get_type (void);
+
+/*
+ * Method definitions.
+ */
+
+GstUri * gst_uri_new                   (const gchar * scheme,
+                                        const gchar * userinfo,
+                                        const gchar * host,
+                                        guint port,
+                                        const gchar * path,
+                                        const gchar * query,
+                                        const gchar * fragment) G_GNUC_MALLOC;
+GstUri * gst_uri_new_with_base         (GstUri * base,
+                                        const gchar * scheme,
+                                        const gchar * userinfo,
+                                        const gchar * host,
+                                        guint port,
+                                        const gchar * path,
+                                        const gchar * query,
+                                        const gchar * fragment) G_GNUC_MALLOC;
+GstUri * gst_uri_from_string           (const gchar * uri) G_GNUC_MALLOC;
+GstUri * gst_uri_from_string_with_base (GstUri * base,
+                                        const gchar * uri) G_GNUC_MALLOC;
+gboolean gst_uri_equal                 (const GstUri * first,
+                                        const GstUri * second);
+GstUri * gst_uri_join                  (GstUri * base_uri,
+                                        GstUri * ref_uri);
+gchar *  gst_uri_join_strings          (const gchar * base_uri,
+                                        const gchar * ref_uri) G_GNUC_MALLOC;
+gboolean gst_uri_is_writable           (const GstUri * uri);
+GstUri * gst_uri_make_writable         (GstUri * uri);
+gchar *  gst_uri_to_string             (const GstUri * uri) G_GNUC_MALLOC;
+gboolean gst_uri_is_normalized         (const GstUri * uri);
+gboolean gst_uri_normalize             (GstUri * uri);
+const gchar * gst_uri_get_scheme       (const GstUri * uri);
+gboolean gst_uri_set_scheme            (GstUri * uri, const gchar * scheme);
+const gchar * gst_uri_get_userinfo     (const GstUri * uri);
+gboolean gst_uri_set_userinfo          (GstUri * uri, const gchar * userinfo);
+const gchar * gst_uri_get_host         (const GstUri * uri);
+gboolean gst_uri_set_host              (GstUri * uri, const gchar * host);
+guint gst_uri_get_port                 (const GstUri * uri);
+gboolean gst_uri_set_port              (GstUri * uri, guint port);
+gchar * gst_uri_get_path               (const GstUri * uri);
+gboolean gst_uri_set_path              (GstUri * uri, const gchar * path);
+gchar * gst_uri_get_path_string        (const GstUri * uri);
+gboolean gst_uri_set_path_string       (GstUri * uri, const gchar * path);
+GList * gst_uri_get_path_segments      (const GstUri * uri);
+gboolean gst_uri_set_path_segments     (GstUri * uri, GList * path_segments);
+gboolean gst_uri_append_path           (GstUri * uri,
+                                        const gchar * relative_path);
+gboolean gst_uri_append_path_segment   (GstUri * uri,
+                                        const gchar * path_segment);
+gchar * gst_uri_get_query_string       (const GstUri * uri);
+gboolean gst_uri_set_query_string      (GstUri * uri, const gchar * query);
+GHashTable * gst_uri_get_query_table   (const GstUri * uri);
+gboolean gst_uri_set_query_table       (GstUri * uri,
+                                        GHashTable * query_table);
+gboolean gst_uri_set_query_value       (GstUri * uri, const gchar * query_key,
+                                        const gchar * query_value);
+gboolean gst_uri_remove_query_key      (GstUri * uri, const gchar * query_key);
+gboolean gst_uri_query_has_key         (const GstUri * uri,
+                                        const gchar * query_key);
+const gchar * gst_uri_get_query_value  (const GstUri * uri,
+                                        const gchar * query_key);
+GList * gst_uri_get_query_keys         (const GstUri * uri);
+const gchar * gst_uri_get_fragment     (const GstUri * uri);
+gboolean gst_uri_set_fragment          (GstUri * uri, const gchar * fragment);
+
+/**
+ * gst_uri_copy:
+ * @uri: This #GstUri object.
+ *
+ * Create a new #GstUri object with the same data as this #GstUri object.
+ * If @uri is %NULL then returns %NULL.
+ *
+ * Returns: (transfer full): A new #GstUri object which is a copy of this
+ *          #GstUri or %NULL.
+ */
+#ifdef _FOOL_GTK_DOC_
+G_INLINE_FUNC GstUri * gst_uri_copy (const GstUri * uri);
+#endif
+
+static inline GstUri *
+gst_uri_copy (const GstUri * uri)
+{
+  return GST_URI_CAST (gst_mini_object_copy (GST_MINI_OBJECT_CONST_CAST (uri)));
+}
+
+/**
+ * gst_uri_ref:
+ * @uri: (transfer none): This #GstUri object.
+ *
+ * Add a reference to this #GstUri object. See gst_mini_object_ref() for further
+ * info.
+ *
+ * Returns: This object with the reference count incremented.
+ */
+#ifdef _FOOL_GTK_DOC_
+G_INLINE_FUNC GstUri * gst_uri_ref (GstUri * uri);
+#endif
+
+static inline GstUri *
+gst_uri_ref (GstUri * uri)
+{
+  return GST_URI_CAST (gst_mini_object_ref (GST_MINI_OBJECT_CAST (uri)));
+}
+
+/**
+ * gst_uri_unref:
+ * @uri: (transfer full): This #GstUri object.
+ *
+ * Decrement the reference count to this #GstUri object.
+ *
+ * If the reference count drops to 0 then finalize this object.
+ *
+ * See gst_mini_object_unref() for further info.
+ */
+#ifdef _FOOL_GTK_DOC_
+G_INLINE_FUNC void gst_uri_unref (GstUri * uri);
+#endif
+
+static inline void
+gst_uri_unref (GstUri * uri)
+{
+  gst_mini_object_unref (GST_MINI_OBJECT_CAST (uri));
+}
+
 G_END_DECLS
 
 #endif /* __GST_URI_H__ */
diff --git a/gst/gstutils.c b/gst/gstutils.c
index c411631..e00f8e8 100644
--- a/gst/gstutils.c
+++ b/gst/gstutils.c
@@ -773,8 +773,8 @@
  * Retrieves a pad template from @element that is compatible with @compattempl.
  * Pads from compatible templates can be linked together.
  *
- * Returns: (transfer none): a compatible #GstPadTemplate, or %NULL if none
- *     was found. No unreferencing is necessary.
+ * Returns: (transfer none) (nullable): a compatible #GstPadTemplate,
+ *   or %NULL if none was found. No unreferencing is necessary.
  */
 GstPadTemplate *
 gst_element_get_compatible_pad_template (GstElement * element,
@@ -850,8 +850,8 @@
  * #GST_PAD_REQUEST, requests a new pad. Can return %NULL for #GST_PAD_SOMETIMES
  * templates.
  *
- * Returns: (transfer full): the #GstPad, or NULL if one could not be found
- *     or created.
+ * Returns: (transfer full) (nullable): the #GstPad, or %NULL if one
+ *   could not be found or created.
  */
 static GstPad *
 gst_element_get_pad_from_template (GstElement * element, GstPadTemplate * templ)
@@ -891,7 +891,8 @@
  * Requests a pad from @element. The returned pad should be unlinked and
  * compatible with @templ. Might return an existing pad, or request a new one.
  *
- * Returns: a #GstPad, or %NULL if one could not be found or created.
+ * Returns: (nullable): a #GstPad, or %NULL if one could not be found
+ *   or created.
  */
 static GstPad *
 gst_element_request_compatible_pad (GstElement * element,
@@ -923,11 +924,6 @@
 static gboolean
 gst_pad_check_link (GstPad * srcpad, GstPad * sinkpad)
 {
-  /* FIXME This function is gross.  It's almost a direct copy of
-   * gst_pad_link_filtered().  Any decent programmer would attempt
-   * to merge the two functions, which I will do some day. --ds
-   */
-
   /* generic checks */
   g_return_val_if_fail (GST_IS_PAD (srcpad), FALSE);
   g_return_val_if_fail (GST_IS_PAD (sinkpad), FALSE);
@@ -935,7 +931,6 @@
   GST_CAT_INFO (GST_CAT_PADS, "trying to link %s:%s and %s:%s",
       GST_DEBUG_PAD_NAME (srcpad), GST_DEBUG_PAD_NAME (sinkpad));
 
-  /* FIXME: shouldn't we convert this to g_return_val_if_fail? */
   if (GST_PAD_PEER (srcpad) != NULL) {
     GST_CAT_INFO (GST_CAT_PADS, "Source pad %s:%s has a peer, failed",
         GST_DEBUG_PAD_NAME (srcpad));
@@ -984,8 +979,9 @@
  * and if none can be found, it will request a compatible REQUEST pad by looking
  * at the templates of @element.
  *
- * Returns: (transfer full): the #GstPad to which a link can be made, or %NULL
- *     if one cannot be found. gst_object_unref() after usage.
+ * Returns: (transfer full) (nullable): the #GstPad to which a link
+ *   can be made, or %NULL if one cannot be found. gst_object_unref()
+ *   after usage.
  */
 GstPad *
 gst_element_get_compatible_pad (GstElement * element, GstPad * pad,
@@ -1450,8 +1446,24 @@
   /* we need to setup some ghost pads */
   root = find_common_root (e1, e2);
   if (!root) {
-    g_warning ("Trying to connect elements that don't share a common "
-        "ancestor: %s and %s", GST_ELEMENT_NAME (e1), GST_ELEMENT_NAME (e2));
+    if (GST_OBJECT_PARENT (e1) == NULL)
+      g_warning ("Trying to link elements %s and %s that don't share a common "
+          "ancestor: %s hasn't been added to a bin or pipeline, but %s is in %s",
+          GST_ELEMENT_NAME (e1), GST_ELEMENT_NAME (e2),
+          GST_ELEMENT_NAME (e1), GST_ELEMENT_NAME (e2),
+          GST_ELEMENT_NAME (GST_OBJECT_PARENT (e2)));
+    else if (GST_OBJECT_PARENT (e2) == NULL)
+      g_warning ("Trying to link elements %s and %s that don't share a common "
+          "ancestor: %s hasn't been added to a bin or pipeline, and %s is in %s",
+          GST_ELEMENT_NAME (e1), GST_ELEMENT_NAME (e2),
+          GST_ELEMENT_NAME (e2), GST_ELEMENT_NAME (e1),
+          GST_ELEMENT_NAME (GST_OBJECT_PARENT (e1)));
+    else
+      g_warning ("Trying to link elements %s and %s that don't share a common "
+          "ancestor: %s is in %s, and %s is in %s",
+          GST_ELEMENT_NAME (e1), GST_ELEMENT_NAME (e2),
+          GST_ELEMENT_NAME (e1), GST_ELEMENT_NAME (GST_OBJECT_PARENT (e1)),
+          GST_ELEMENT_NAME (e2), GST_ELEMENT_NAME (GST_OBJECT_PARENT (e2)));
     return FALSE;
   }
 
@@ -1501,6 +1513,16 @@
   return ret;
 }
 
+static void
+release_and_unref_pad (GstElement * element, GstPad * pad, gboolean requestpad)
+{
+  if (pad) {
+    if (requestpad)
+      gst_element_release_request_pad (element, pad);
+    gst_object_unref (pad);
+  }
+}
+
 /**
  * gst_element_link_pads_full:
  * @src: a #GstElement containing the source pad.
@@ -1532,6 +1554,7 @@
   GstPad *srcpad, *destpad;
   GstPadTemplate *srctempl, *desttempl;
   GstElementClass *srcclass, *destclass;
+  gboolean srcrequest, destrequest;
 
   /* checks */
   g_return_val_if_fail (GST_IS_ELEMENT (src), FALSE);
@@ -1542,11 +1565,16 @@
       srcpadname ? srcpadname : "(any)", GST_ELEMENT_NAME (dest),
       destpadname ? destpadname : "(any)");
 
+  srcrequest = FALSE;
+  destrequest = FALSE;
+
   /* get a src pad */
   if (srcpadname) {
     /* name specified, look it up */
-    if (!(srcpad = gst_element_get_static_pad (src, srcpadname)))
-      srcpad = gst_element_get_request_pad (src, srcpadname);
+    if (!(srcpad = gst_element_get_static_pad (src, srcpadname))) {
+      if ((srcpad = gst_element_get_request_pad (src, srcpadname)))
+        srcrequest = TRUE;
+    }
     if (!srcpad) {
       GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "no pad %s:%s",
           GST_ELEMENT_NAME (src), srcpadname);
@@ -1555,13 +1583,15 @@
       if (!(GST_PAD_DIRECTION (srcpad) == GST_PAD_SRC)) {
         GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "pad %s:%s is no src pad",
             GST_DEBUG_PAD_NAME (srcpad));
-        gst_object_unref (srcpad);
+        release_and_unref_pad (src, srcpad, srcrequest);
         return FALSE;
       }
       if (GST_PAD_PEER (srcpad) != NULL) {
         GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS,
             "pad %s:%s is already linked to %s:%s", GST_DEBUG_PAD_NAME (srcpad),
             GST_DEBUG_PAD_NAME (GST_PAD_PEER (srcpad)));
+        /* already linked request pads look like static pads, so the request pad
+         * was never requested a second time above, so no need to release it */
         gst_object_unref (srcpad);
         return FALSE;
       }
@@ -1580,17 +1610,21 @@
   /* get a destination pad */
   if (destpadname) {
     /* name specified, look it up */
-    if (!(destpad = gst_element_get_static_pad (dest, destpadname)))
-      destpad = gst_element_get_request_pad (dest, destpadname);
+    if (!(destpad = gst_element_get_static_pad (dest, destpadname))) {
+      if ((destpad = gst_element_get_request_pad (dest, destpadname)))
+        destrequest = TRUE;
+    }
     if (!destpad) {
       GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "no pad %s:%s",
           GST_ELEMENT_NAME (dest), destpadname);
+      release_and_unref_pad (src, srcpad, srcrequest);
       return FALSE;
     } else {
       if (!(GST_PAD_DIRECTION (destpad) == GST_PAD_SINK)) {
         GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "pad %s:%s is no sink pad",
             GST_DEBUG_PAD_NAME (destpad));
-        gst_object_unref (destpad);
+        release_and_unref_pad (src, srcpad, srcrequest);
+        release_and_unref_pad (dest, destpad, destrequest);
         return FALSE;
       }
       if (GST_PAD_PEER (destpad) != NULL) {
@@ -1598,6 +1632,9 @@
             "pad %s:%s is already linked to %s:%s",
             GST_DEBUG_PAD_NAME (destpad),
             GST_DEBUG_PAD_NAME (GST_PAD_PEER (destpad)));
+        release_and_unref_pad (src, srcpad, srcrequest);
+        /* already linked request pads look like static pads, so the request pad
+         * was never requested a second time above, so no need to release it */
         gst_object_unref (destpad);
         return FALSE;
       }
@@ -1619,9 +1656,13 @@
     /* two explicitly specified pads */
     result = pad_link_maybe_ghosting (srcpad, destpad, flags);
 
-    gst_object_unref (srcpad);
-    gst_object_unref (destpad);
-
+    if (result) {
+      gst_object_unref (srcpad);
+      gst_object_unref (destpad);
+    } else {
+      release_and_unref_pad (src, srcpad, srcrequest);
+      release_and_unref_pad (dest, destpad, destrequest);
+    }
     return result;
   }
 
@@ -1635,6 +1676,7 @@
           GST_DEBUG_PAD_NAME (srcpad));
       if ((GST_PAD_DIRECTION (srcpad) == GST_PAD_SRC) &&
           (GST_PAD_PEER (srcpad) == NULL)) {
+        gboolean temprequest = FALSE;
         GstPad *temp;
 
         if (destpadname) {
@@ -1642,6 +1684,11 @@
           gst_object_ref (temp);
         } else {
           temp = gst_element_get_compatible_pad (dest, srcpad, NULL);
+          if (temp && GST_PAD_PAD_TEMPLATE (temp)
+              && GST_PAD_TEMPLATE_PRESENCE (GST_PAD_PAD_TEMPLATE (temp)) ==
+              GST_PAD_REQUEST) {
+            temprequest = TRUE;
+          }
         }
 
         if (temp && pad_link_maybe_ghosting (srcpad, temp, flags)) {
@@ -1655,6 +1702,8 @@
         }
 
         if (temp) {
+          if (temprequest)
+            gst_element_release_request_pad (dest, temp);
           gst_object_unref (temp);
         }
       }
@@ -1672,13 +1721,16 @@
   if (srcpadname) {
     GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "no link possible from %s:%s to %s",
         GST_DEBUG_PAD_NAME (srcpad), GST_ELEMENT_NAME (dest));
+    /* no need to release any request pad as both src- and destpadname must be
+     * set to end up here, but this case has already been taken care of above */
     if (destpad)
       gst_object_unref (destpad);
     destpad = NULL;
   }
-  if (srcpad)
-    gst_object_unref (srcpad);
-  srcpad = NULL;
+  if (srcpad) {
+    release_and_unref_pad (src, srcpad, srcrequest);
+    srcpad = NULL;
+  }
 
   if (destpad) {
     /* loop through the existing pads in the destination */
@@ -1688,6 +1740,13 @@
       if ((GST_PAD_DIRECTION (destpad) == GST_PAD_SINK) &&
           (GST_PAD_PEER (destpad) == NULL)) {
         GstPad *temp = gst_element_get_compatible_pad (src, destpad, NULL);
+        gboolean temprequest = FALSE;
+
+        if (temp && GST_PAD_PAD_TEMPLATE (temp)
+            && GST_PAD_TEMPLATE_PRESENCE (GST_PAD_PAD_TEMPLATE (temp)) ==
+            GST_PAD_REQUEST) {
+          temprequest = TRUE;
+        }
 
         if (temp && pad_link_maybe_ghosting (temp, destpad, flags)) {
           GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "linked pad %s:%s to pad %s:%s",
@@ -1696,9 +1755,8 @@
           gst_object_unref (destpad);
           return TRUE;
         }
-        if (temp) {
-          gst_object_unref (temp);
-        }
+
+        release_and_unref_pad (src, temp, temprequest);
       }
       if (destpads) {
         destpads = g_list_next (destpads);
@@ -1714,11 +1772,15 @@
   if (destpadname) {
     GST_CAT_DEBUG (GST_CAT_ELEMENT_PADS, "no link possible from %s to %s:%s",
         GST_ELEMENT_NAME (src), GST_DEBUG_PAD_NAME (destpad));
-    gst_object_unref (destpad);
+    release_and_unref_pad (dest, destpad, destrequest);
     return FALSE;
   } else {
-    if (destpad)
+    /* no need to release any request pad as the case of unset destpatname and
+     * destpad being a requst pad has already been taken care of when looking
+     * though the destination pads above */
+    if (destpad) {
       gst_object_unref (destpad);
+    }
     destpad = NULL;
   }
 
@@ -1761,10 +1823,14 @@
                 return TRUE;
               }
               /* it failed, so we release the request pads */
-              if (srcpad)
+              if (srcpad) {
                 gst_element_release_request_pad (src, srcpad);
-              if (destpad)
+                gst_object_unref (srcpad);
+              }
+              if (destpad) {
                 gst_element_release_request_pad (dest, destpad);
+                gst_object_unref (destpad);
+              }
             }
             gst_caps_unref (srccaps);
             gst_caps_unref (destcaps);
@@ -2311,8 +2377,9 @@
  * Gets the parent of @pad, cast to a #GstElement. If a @pad has no parent or
  * its parent is not an element, return %NULL.
  *
- * Returns: (transfer full): the parent of the pad. The caller has a
- * reference on the parent, so unref when you're finished with it.
+ * Returns: (transfer full) (nullable): the parent of the pad. The
+ * caller has a reference on the parent, so unref when you're finished
+ * with it.
  *
  * MT safe.
  */
@@ -2957,7 +3024,8 @@
  * owns a reference to it and should use gst_object_unref() on the
  * pad when it is not needed any longer.
  *
- * Returns: (transfer full): unlinked pad of the given direction, %NULL.
+ * Returns: (transfer full) (nullable): unlinked pad of the given
+ * direction, %NULL.
  */
 GstPad *
 gst_bin_find_unlinked_pad (GstBin * bin, GstPadDirection direction)
@@ -3000,6 +3068,58 @@
   return pad;
 }
 
+static void
+gst_bin_sync_children_states_foreach (const GValue * value, gpointer user_data)
+{
+  gboolean *success = user_data;
+  GstElement *element = g_value_get_object (value);
+
+  if (gst_element_is_locked_state (element)) {
+    *success = TRUE;
+  } else {
+    *success = *success && gst_element_sync_state_with_parent (element);
+
+    if (GST_IS_BIN (element))
+      *success = *success
+          && gst_bin_sync_children_states (GST_BIN_CAST (element));
+  }
+}
+
+/**
+ * gst_bin_sync_children_states:
+ * @bin: a #GstBin
+ *
+ * Synchronizes the state of every child of @bin with the state
+ * of @bin. See also gst_element_sync_state_with_parent().
+ *
+ * Returns: %TRUE if syncing the state was successful for all children,
+ *  otherwise %FALSE.
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_bin_sync_children_states (GstBin * bin)
+{
+  GstIterator *it;
+  GstIteratorResult res = GST_ITERATOR_OK;
+  gboolean success = TRUE;
+
+  it = gst_bin_iterate_sorted (bin);
+
+  do {
+    if (res == GST_ITERATOR_RESYNC) {
+      success = TRUE;
+      gst_iterator_resync (it);
+    }
+    res =
+        gst_iterator_foreach (it, gst_bin_sync_children_states_foreach,
+        &success);
+  } while (res == GST_ITERATOR_RESYNC);
+  gst_iterator_free (it);
+
+  return success;
+}
+
 /**
  * gst_parse_bin_from_description:
  * @bin_description: command line describing the bin
@@ -3017,8 +3137,8 @@
  * and want them all ghosted, you will have to create the ghost pads
  * yourself).
  *
- * Returns: (transfer floating) (type Gst.Bin): a newly-created bin,
- *   or %NULL if an error occurred.
+ * Returns: (transfer floating) (type Gst.Bin) (nullable): a
+ *   newly-created bin, or %NULL if an error occurred.
  */
 GstElement *
 gst_parse_bin_from_description (const gchar * bin_description,
@@ -3159,7 +3279,8 @@
  *
  * The complexity of this search function is O(log (num_elements)).
  *
- * Returns: (transfer none): The address of the found element or %NULL if nothing was found
+ * Returns: (transfer none) (nullable): The address of the found
+ * element or %NULL if nothing was found
  */
 gpointer
 gst_util_array_binary_search (gpointer array, guint num_elements,
@@ -3616,15 +3737,17 @@
    * here is for source elements */
   if (!upstream_stream_id) {
     GstQuery *query;
+    gchar *uri = NULL;
 
     /* Try to generate one from the URI query and
      * if it fails take a random number instead */
     query = gst_query_new_uri ();
     if (gst_element_query (parent, query)) {
-      GChecksum *cs;
-      gchar *uri;
-
       gst_query_parse_uri (query, &uri);
+    }
+
+    if (uri) {
+      GChecksum *cs;
 
       /* And then generate an SHA256 sum of the URI */
       cs = g_checksum_new (G_CHECKSUM_SHA256);
@@ -3778,8 +3901,9 @@
  * The returned stream-id string should be treated as an opaque string, its
  * contents should not be interpreted.
  *
- * Returns: a newly-allocated copy of the stream-id for @pad, or %NULL.
- *     g_free() the returned string when no longer needed.
+ * Returns: (nullable): a newly-allocated copy of the stream-id for
+ *     @pad, or %NULL.  g_free() the returned string when no longer
+ *     needed.
  *
  * Since: 1.2
  */
diff --git a/gst/gstutils.h b/gst/gstutils.h
index a935883..186f439 100644
--- a/gst/gstutils.h
+++ b/gst/gstutils.h
@@ -983,6 +983,8 @@
 void                    gst_bin_remove_many             (GstBin *bin, GstElement *element_1, ...) G_GNUC_NULL_TERMINATED;
 GstPad *                gst_bin_find_unlinked_pad       (GstBin *bin, GstPadDirection direction);
 
+gboolean                gst_bin_sync_children_states    (GstBin *bin);
+
 /* parse utility functions */
 GstElement *            gst_parse_bin_from_description      (const gchar     * bin_description,
                                                              gboolean          ghost_unlinked_pads,
diff --git a/gst/gstvalue.c b/gst/gstvalue.c
index f088cca..031c02a 100644
--- a/gst/gstvalue.c
+++ b/gst/gstvalue.c
@@ -839,7 +839,7 @@
 
 /* Do an unordered compare of the contents of a list */
 static gint
-gst_value_compare_list (const GValue * value1, const GValue * value2)
+gst_value_compare_value_list (const GValue * value1, const GValue * value2)
 {
   guint i, j;
   GArray *array1 = value1->data[0].v_pointer;
@@ -894,7 +894,7 @@
 
 /* Perform an ordered comparison of the contents of an array */
 static gint
-gst_value_compare_array (const GValue * value1, const GValue * value2)
+gst_value_compare_value_array (const GValue * value1, const GValue * value2)
 {
   guint i;
   GArray *array1 = value1->data[0].v_pointer;
@@ -917,26 +917,26 @@
 }
 
 static gchar *
-gst_value_serialize_list (const GValue * value)
+gst_value_serialize_value_list (const GValue * value)
 {
   return gst_value_serialize_any_list (value, "{ ", " }");
 }
 
 static gboolean
-gst_value_deserialize_list (GValue * dest, const gchar * s)
+gst_value_deserialize_value_list (GValue * dest, const gchar * s)
 {
   g_warning ("gst_value_deserialize_list: unimplemented");
   return FALSE;
 }
 
 static gchar *
-gst_value_serialize_array (const GValue * value)
+gst_value_serialize_value_array (const GValue * value)
 {
   return gst_value_serialize_any_list (value, "< ", " >");
 }
 
 static gboolean
-gst_value_deserialize_array (GValue * dest, const gchar * s)
+gst_value_deserialize_value_array (GValue * dest, const gchar * s)
 {
   g_warning ("gst_value_deserialize_array: unimplemented");
   return FALSE;
@@ -2159,6 +2159,16 @@
 /**************
  * GstTagList *
  **************/
+static gint
+gst_value_compare_tag_list (const GValue * value1, const GValue * value2)
+{
+  GstTagList *taglist1 = GST_TAG_LIST (g_value_get_boxed (value1));
+  GstTagList *taglist2 = GST_TAG_LIST (g_value_get_boxed (value2));
+
+  if (gst_tag_list_is_equal (taglist1, taglist2))
+    return GST_VALUE_EQUAL;
+  return GST_VALUE_UNORDERED;
+}
 
 static gboolean
 gst_value_deserialize_tag_list (GValue * dest, const gchar * s)
@@ -2679,18 +2689,6 @@
   return ret;                                                           \
 }
 
-#define REGISTER_SERIALIZATION(_gtype, _type)                           \
-G_STMT_START {                                                          \
-  static const GstValueTable gst_value = {                              \
-    _gtype,                                                             \
-    gst_value_compare_ ## _type,                                        \
-    gst_value_serialize_ ## _type,                                      \
-    gst_value_deserialize_ ## _type,                                    \
-  };                                                                    \
-                                                                        \
-  gst_value_register (&gst_value);                                      \
-} G_STMT_END
-
 CREATE_SERIALIZATION (int, INT);
 CREATE_SERIALIZATION (int64, INT64);
 CREATE_SERIALIZATION (long, LONG);
@@ -2699,7 +2697,7 @@
 CREATE_USERIALIZATION (uint64, UINT64);
 CREATE_USERIALIZATION (ulong, ULONG);
 
-/* FIXME 0.11: remove this again, plugins shouldn't have uchar properties */
+/* FIXME 2.0: remove this again, plugins shouldn't have uchar properties */
 #ifndef G_MAXUCHAR
 #define G_MAXUCHAR 255
 #endif
@@ -4637,7 +4635,7 @@
  *
  * Determines if @value1 and @value2 can be non-trivially unioned.
  * Any two values can be trivially unioned by adding both of them
- * to a #GstValueList.  However, certain types have the possibility
+ * to a GstValueList.  However, certain types have the possibility
  * to be unioned in a simpler way.  For example, an integer range
  * and an integer can be unioned if the integer is a subset of the
  * integer range.  If there is the possibility that two values can
@@ -4785,8 +4783,10 @@
 
 /**
  * gst_value_intersect:
- * @dest: (out caller-allocates) (transfer full): a uninitialized #GValue that will hold the calculated
- * intersection value. May be %NULL if the resulting set if not needed.
+ * @dest: (out caller-allocates) (transfer full) (allow-none):
+ *   a uninitialized #GValue that will hold the calculated
+ *   intersection value. May be %NULL if the resulting set if not
+ *   needed.
  * @value1: a value to intersect
  * @value2: another value to intersect
  *
@@ -4870,9 +4870,10 @@
 
 /**
  * gst_value_subtract:
- * @dest: (out caller-allocates): the destination value for the result if the
- *     subtraction is not empty. May be %NULL, in which case the resulting set
- *     will not be computed, which can give a fair speedup.
+ * @dest: (out caller-allocates) (allow-none): the destination value
+ *     for the result if the subtraction is not empty. May be %NULL,
+ *     in which case the resulting set will not be computed, which can
+ *     give a fair speedup.
  * @minuend: the value to subtract from
  * @subtrahend: the value to subtract
  *
@@ -5059,7 +5060,8 @@
  *
  * Free-function: g_free
  *
- * Returns: (transfer full): the serialization for @value or %NULL if none exists
+ * Returns: (transfer full) (nullable): the serialization for @value
+ * or %NULL if none exists
  */
 gchar *
 gst_value_serialize (const GValue * value)
@@ -6115,268 +6117,105 @@
 #endif
 }
 
+#define SERIAL_VTABLE(t,c,s,d) { t, c, s, d }
+
+#define REGISTER_SERIALIZATION_CONST(_gtype, _type)                     \
+G_STMT_START {                                                          \
+  static const GstValueTable gst_value =                                \
+    SERIAL_VTABLE (_gtype, gst_value_compare_ ## _type,                 \
+    gst_value_serialize_ ## _type, gst_value_deserialize_ ## _type);    \
+  gst_value_register (&gst_value);                                      \
+} G_STMT_END
+
+#define REGISTER_SERIALIZATION(_gtype, _type)                           \
+G_STMT_START {                                                          \
+  static GstValueTable gst_value =                                      \
+    SERIAL_VTABLE (0, gst_value_compare_ ## _type,                      \
+    gst_value_serialize_ ## _type, gst_value_deserialize_ ## _type);    \
+  gst_value.type = _gtype;                                              \
+  gst_value_register (&gst_value);                                      \
+} G_STMT_END
+
+#define REGISTER_SERIALIZATION_NO_COMPARE(_gtype, _type)                \
+G_STMT_START {                                                          \
+  static GstValueTable gst_value =                                      \
+    SERIAL_VTABLE (0, NULL,                                             \
+    gst_value_serialize_ ## _type, gst_value_deserialize_ ## _type);    \
+  gst_value.type = _gtype;                                              \
+  gst_value_register (&gst_value);                                      \
+} G_STMT_END
+
+#define REGISTER_SERIALIZATION_COMPARE_ONLY(_gtype, _type)              \
+G_STMT_START {                                                          \
+  static GstValueTable gst_value =                                      \
+    SERIAL_VTABLE (0, gst_value_compare_ ## _type,                      \
+        NULL, NULL);                                                    \
+  gst_value.type = _gtype;                                              \
+  gst_value_register (&gst_value);                                      \
+} G_STMT_END
+
+static const gint GST_VALUE_TABLE_DEFAULT_SIZE = 32;
+static const gint GST_VALUE_UNION_TABLE_DEFAULT_SIZE = 2;
+static const gint GST_VALUE_INTERSECT_TABLE_DEFAULT_SIZE = 9;
+static const gint GST_VALUE_SUBTRACT_TABLE_DEFAULT_SIZE = 12;
+
 void
 _priv_gst_value_initialize (void)
 {
-  gst_value_table = g_array_new (FALSE, FALSE, sizeof (GstValueTable));
+  gst_value_table =
+      g_array_sized_new (FALSE, FALSE, sizeof (GstValueTable),
+      GST_VALUE_TABLE_DEFAULT_SIZE);
   gst_value_hash = g_hash_table_new (NULL, NULL);
-  gst_value_union_funcs = g_array_new (FALSE, FALSE,
-      sizeof (GstValueUnionInfo));
-  gst_value_intersect_funcs = g_array_new (FALSE, FALSE,
-      sizeof (GstValueIntersectInfo));
-  gst_value_subtract_funcs = g_array_new (FALSE, FALSE,
-      sizeof (GstValueSubtractInfo));
+  gst_value_union_funcs = g_array_sized_new (FALSE, FALSE,
+      sizeof (GstValueUnionInfo), GST_VALUE_UNION_TABLE_DEFAULT_SIZE);
+  gst_value_intersect_funcs = g_array_sized_new (FALSE, FALSE,
+      sizeof (GstValueIntersectInfo), GST_VALUE_INTERSECT_TABLE_DEFAULT_SIZE);
+  gst_value_subtract_funcs = g_array_sized_new (FALSE, FALSE,
+      sizeof (GstValueSubtractInfo), GST_VALUE_SUBTRACT_TABLE_DEFAULT_SIZE);
 
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_int_range,
-      gst_value_serialize_int_range,
-      gst_value_deserialize_int_range,
-    };
+  REGISTER_SERIALIZATION (gst_int_range_get_type (), int_range);
+  REGISTER_SERIALIZATION (gst_int64_range_get_type (), int64_range);
+  REGISTER_SERIALIZATION (gst_double_range_get_type (), double_range);
+  REGISTER_SERIALIZATION (gst_fraction_range_get_type (), fraction_range);
+  REGISTER_SERIALIZATION (gst_value_list_get_type (), value_list);
+  REGISTER_SERIALIZATION (gst_value_array_get_type (), value_array);
+  REGISTER_SERIALIZATION (gst_buffer_get_type (), buffer);
+  REGISTER_SERIALIZATION (gst_sample_get_type (), sample);
+  REGISTER_SERIALIZATION (gst_fraction_get_type (), fraction);
+  REGISTER_SERIALIZATION (gst_caps_get_type (), caps);
+  REGISTER_SERIALIZATION (gst_tag_list_get_type (), tag_list);
+  REGISTER_SERIALIZATION (G_TYPE_DATE, date);
+  REGISTER_SERIALIZATION (gst_date_time_get_type (), date_time);
+  REGISTER_SERIALIZATION (gst_bitmask_get_type (), bitmask);
 
-    gst_value.type = gst_int_range_get_type ();
-    gst_value_register (&gst_value);
-  }
+  REGISTER_SERIALIZATION_NO_COMPARE (gst_segment_get_type (), segment);
+  REGISTER_SERIALIZATION_NO_COMPARE (gst_structure_get_type (), structure);
+  REGISTER_SERIALIZATION_NO_COMPARE (gst_caps_features_get_type (),
+      caps_features);
 
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_int64_range,
-      gst_value_serialize_int64_range,
-      gst_value_deserialize_int64_range,
-    };
+  REGISTER_SERIALIZATION_COMPARE_ONLY (gst_allocation_params_get_type (),
+      allocation_params);
+  REGISTER_SERIALIZATION_COMPARE_ONLY (G_TYPE_OBJECT, object);
 
-    gst_value.type = gst_int64_range_get_type ();
-    gst_value_register (&gst_value);
-  }
+  REGISTER_SERIALIZATION_CONST (G_TYPE_DOUBLE, double);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_FLOAT, float);
 
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_double_range,
-      gst_value_serialize_double_range,
-      gst_value_deserialize_double_range,
-    };
+  REGISTER_SERIALIZATION_CONST (G_TYPE_STRING, string);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_BOOLEAN, boolean);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_ENUM, enum);
 
-    gst_value.type = gst_double_range_get_type ();
-    gst_value_register (&gst_value);
-  }
+  REGISTER_SERIALIZATION_CONST (G_TYPE_FLAGS, flags);
 
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_fraction_range,
-      gst_value_serialize_fraction_range,
-      gst_value_deserialize_fraction_range,
-    };
+  REGISTER_SERIALIZATION_CONST (G_TYPE_INT, int);
 
-    gst_value.type = gst_fraction_range_get_type ();
-    gst_value_register (&gst_value);
-  }
+  REGISTER_SERIALIZATION_CONST (G_TYPE_INT64, int64);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_LONG, long);
 
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_list,
-      gst_value_serialize_list,
-      gst_value_deserialize_list,
-    };
+  REGISTER_SERIALIZATION_CONST (G_TYPE_UINT, uint);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_UINT64, uint64);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_ULONG, ulong);
 
-    gst_value.type = gst_value_list_get_type ();
-    gst_value_register (&gst_value);
-  }
-
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_array,
-      gst_value_serialize_array,
-      gst_value_deserialize_array,
-    };
-
-    gst_value.type = gst_value_array_get_type ();
-    gst_value_register (&gst_value);
-  }
-
-  {
-#if 0
-    static const GTypeValueTable value_table = {
-      gst_value_init_buffer,
-      NULL,
-      gst_value_copy_buffer,
-      NULL,
-      "i",
-      NULL,                     /*gst_value_collect_buffer, */
-      "p",
-      NULL                      /*gst_value_lcopy_buffer */
-    };
-#endif
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_buffer,
-      gst_value_serialize_buffer,
-      gst_value_deserialize_buffer,
-    };
-
-    gst_value.type = GST_TYPE_BUFFER;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_sample,
-      gst_value_serialize_sample,
-      gst_value_deserialize_sample,
-    };
-
-    gst_value.type = GST_TYPE_SAMPLE;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_fraction,
-      gst_value_serialize_fraction,
-      gst_value_deserialize_fraction,
-    };
-
-    gst_value.type = gst_fraction_get_type ();
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_caps,
-      gst_value_serialize_caps,
-      gst_value_deserialize_caps,
-    };
-
-    gst_value.type = GST_TYPE_CAPS;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      NULL,
-      gst_value_serialize_segment,
-      gst_value_deserialize_segment,
-    };
-
-    gst_value.type = GST_TYPE_SEGMENT;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      NULL,
-      gst_value_serialize_structure,
-      gst_value_deserialize_structure,
-    };
-
-    gst_value.type = GST_TYPE_STRUCTURE;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      NULL,
-      gst_value_serialize_caps_features,
-      gst_value_deserialize_caps_features,
-    };
-
-    gst_value.type = GST_TYPE_CAPS_FEATURES;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      NULL,
-      gst_value_serialize_tag_list,
-      gst_value_deserialize_tag_list,
-    };
-
-    gst_value.type = GST_TYPE_TAG_LIST;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_date,
-      gst_value_serialize_date,
-      gst_value_deserialize_date,
-    };
-
-    gst_value.type = G_TYPE_DATE;
-    gst_value_register (&gst_value);
-  }
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_date_time,
-      gst_value_serialize_date_time,
-      gst_value_deserialize_date_time,
-    };
-
-    gst_value.type = gst_date_time_get_type ();
-    gst_value_register (&gst_value);
-  }
-
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_bitmask,
-      gst_value_serialize_bitmask,
-      gst_value_deserialize_bitmask,
-    };
-
-    gst_value.type = gst_bitmask_get_type ();
-    gst_value_register (&gst_value);
-  }
-
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_allocation_params,
-      NULL,
-      NULL,
-    };
-
-    gst_value.type = gst_allocation_params_get_type ();
-    gst_value_register (&gst_value);
-  }
-
-  {
-    static GstValueTable gst_value = {
-      0,
-      gst_value_compare_object,
-      NULL,
-      NULL,
-    };
-
-    gst_value.type = G_TYPE_OBJECT;
-    gst_value_register (&gst_value);
-  }
-
-  REGISTER_SERIALIZATION (G_TYPE_DOUBLE, double);
-  REGISTER_SERIALIZATION (G_TYPE_FLOAT, float);
-
-  REGISTER_SERIALIZATION (G_TYPE_STRING, string);
-  REGISTER_SERIALIZATION (G_TYPE_BOOLEAN, boolean);
-  REGISTER_SERIALIZATION (G_TYPE_ENUM, enum);
-
-  REGISTER_SERIALIZATION (G_TYPE_FLAGS, flags);
-
-  REGISTER_SERIALIZATION (G_TYPE_INT, int);
-
-  REGISTER_SERIALIZATION (G_TYPE_INT64, int64);
-  REGISTER_SERIALIZATION (G_TYPE_LONG, long);
-
-  REGISTER_SERIALIZATION (G_TYPE_UINT, uint);
-  REGISTER_SERIALIZATION (G_TYPE_UINT64, uint64);
-  REGISTER_SERIALIZATION (G_TYPE_ULONG, ulong);
-
-  REGISTER_SERIALIZATION (G_TYPE_UCHAR, uchar);
+  REGISTER_SERIALIZATION_CONST (G_TYPE_UCHAR, uchar);
 
   g_value_register_transform_func (GST_TYPE_INT_RANGE, G_TYPE_STRING,
       gst_value_transform_int_range_string);
@@ -6475,6 +6314,31 @@
   gst_value_register_union_func (GST_TYPE_INT_RANGE, GST_TYPE_INT_RANGE,
       gst_value_union_int_range_int_range);
 
+#if GST_VERSION_NANO == 1
+  /* If building from git master, check starting array sizes matched actual size
+   * so we can keep the defines in sync and save a few reallocs on startup */
+  if (gst_value_table->len != GST_VALUE_TABLE_DEFAULT_SIZE) {
+    GST_ERROR ("Wrong initial gst_value_table size. "
+        "Please set GST_VALUE_TABLE_DEFAULT_SIZE to %u in gstvalue.c",
+        gst_value_table->len);
+  }
+  if (gst_value_union_funcs->len != GST_VALUE_UNION_TABLE_DEFAULT_SIZE) {
+    GST_ERROR ("Wrong initial gst_value_union_funcs table size. "
+        "Please set GST_VALUE_UNION_TABLE_DEFAULT_SIZE to %u in gstvalue.c",
+        gst_value_union_funcs->len);
+  }
+  if (gst_value_intersect_funcs->len != GST_VALUE_INTERSECT_TABLE_DEFAULT_SIZE) {
+    GST_ERROR ("Wrong initial gst_value_intersect_funcs table size. "
+        "Please set GST_VALUE_INTERSECT_TABLE_DEFAULT_SIZE to %u in gstvalue.c",
+        gst_value_intersect_funcs->len);
+  }
+  if (gst_value_subtract_funcs->len != GST_VALUE_SUBTRACT_TABLE_DEFAULT_SIZE) {
+    GST_ERROR ("Wrong initial gst_value_subtract_funcs table size. "
+        "Please set GST_VALUE_SUBTRACT_TABLE_DEFAULT_SIZE to %u in gstvalue.c",
+        gst_value_subtract_funcs->len);
+  }
+#endif
+
 #if 0
   /* Implement these if needed */
   gst_value_register_union_func (GST_TYPE_FRACTION, GST_TYPE_FRACTION_RANGE,
diff --git a/gst/gstvalue.h b/gst/gstvalue.h
index de01abc..2e15642 100644
--- a/gst/gstvalue.h
+++ b/gst/gstvalue.h
@@ -80,12 +80,14 @@
  * Can be used together with #GST_FOURCC_FORMAT to properly output a
  * #guint32 fourcc value in a printf()-style text message.
  */
-#define GST_FOURCC_ARGS(fourcc) \
-        ((gchar) ((fourcc)     &0xff)), \
-        ((gchar) (((fourcc)>>8 )&0xff)), \
-        ((gchar) (((fourcc)>>16)&0xff)), \
-        ((gchar) (((fourcc)>>24)&0xff))
 
+#define __GST_PRINT_CHAR(c) \
+  g_ascii_isprint(c) ? (c) : '.'
+#define GST_FOURCC_ARGS(fourcc)               \
+  __GST_PRINT_CHAR((fourcc) & 0xff),          \
+  __GST_PRINT_CHAR(((fourcc) >> 8) & 0xff),   \
+  __GST_PRINT_CHAR(((fourcc) >> 16) & 0xff),  \
+  __GST_PRINT_CHAR(((fourcc) >> 24) & 0xff)
 /**
  * GST_VALUE_HOLDS_INT_RANGE:
  * @x: the #GValue to check
diff --git a/gst/parse/Makefile.in b/gst/parse/Makefile.in
index 517775a..31c90a8 100644
--- a/gst/parse/Makefile.in
+++ b/gst/parse/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -212,6 +213,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -317,6 +322,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y
index 3f0513e..53ee15b 100644
--- a/gst/parse/grammar.y
+++ b/gst/parse/grammar.y
@@ -297,9 +297,12 @@
         gst_parse_add_delayed_set(parent, sub_name, value_str);
         g_free (sub_name);
       }
+      gst_object_unref (parent);
       parent = child;
       current++;
     }
+    if (parent)
+      gst_object_unref (parent);
     g_strfreev (names);
   }
 }
diff --git a/gst/printf/Makefile.in b/gst/printf/Makefile.in
index 092dcea..49c65e3 100644
--- a/gst/printf/Makefile.in
+++ b/gst/printf/Makefile.in
@@ -90,6 +90,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -107,7 +108,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -210,6 +211,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -315,6 +320,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/gst/printf/printf-parse.c b/gst/printf/printf-parse.c
index 5d60448..d045ae8 100644
--- a/gst/printf/printf-parse.c
+++ b/gst/printf/printf-parse.c
@@ -256,6 +256,10 @@
               cp += 3;
             }
 #endif
+            else if (cp[0] == 'I' && cp[1] == '3' && cp[2] == '2') {
+              //flags = 32;
+              cp += 3;
+            }
 #ifdef HAVE_INTMAX_T
             else if (*cp == 'j') {
               if (sizeof (intmax_t) > sizeof (long)) {
diff --git a/gst/printf/vasnprintf.c b/gst/printf/vasnprintf.c
index 7f3d9e2..b40fc09 100644
--- a/gst/printf/vasnprintf.c
+++ b/gst/printf/vasnprintf.c
@@ -121,6 +121,11 @@
       digits = upper;
       negative = FALSE;
       break;
+    case 'u':
+      base = 10;
+      digits = lower;
+      negative = FALSE;
+      break;
     default:
       base = 10;
       digits = lower;
diff --git a/gstreamer.doap b/gstreamer.doap
index 55f6dc2..6fd7def 100644
--- a/gstreamer.doap
+++ b/gstreamer.doap
@@ -40,6 +40,36 @@
 
  <release>
   <Version>
+   <revision>1.4.0</revision>
+   <branch>1.4</branch>
+   <name></name>
+   <created>2014-07-19</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.4.0.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
+   <revision>1.3.91</revision>
+   <branch>1.3</branch>
+   <name></name>
+   <created>2014-07-11</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.3.91.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
+   <revision>1.3.90</revision>
+   <branch>1.3</branch>
+   <name></name>
+   <created>2014-06-28</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.3.90.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.3.3</revision>
    <branch>1.3</branch>
    <name></name>
diff --git a/gstreamer.spec b/gstreamer.spec
index 34a57d0..f8e19eb 100644
--- a/gstreamer.spec
+++ b/gstreamer.spec
@@ -4,8 +4,8 @@
 %define 	_glib2		2.32.0
 
 Name: 		%{gstreamer}
-Version: 	1.3.3
-Release: 	1
+Version: 	1.5.0.1
+Release: 	0.20150316.185135
 Summary: 	GStreamer streaming media framework runtime
 
 Group: 		Applications/Multimedia
diff --git a/libs/Makefile.in b/libs/Makefile.in
index b19c609..40f8eca 100644
--- a/libs/Makefile.in
+++ b/libs/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -213,6 +214,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -318,6 +323,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/libs/gst/Makefile.in b/libs/gst/Makefile.in
index 6f9e86f..aa83476 100644
--- a/libs/gst/Makefile.in
+++ b/libs/gst/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -212,6 +213,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -317,6 +322,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/libs/gst/base/Makefile.in b/libs/gst/base/Makefile.in
index 601edaf..183f860 100644
--- a/libs/gst/base/Makefile.in
+++ b/libs/gst/base/Makefile.in
@@ -95,6 +95,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -112,7 +113,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -260,6 +261,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -365,6 +370,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/libs/gst/base/gstadapter.c b/libs/gst/base/gstadapter.c
index 3d23fdb..7a1c760 100644
--- a/libs/gst/base/gstadapter.c
+++ b/libs/gst/base/gstadapter.c
@@ -132,6 +132,7 @@
   GSList *buflist_end;
   gsize size;
   gsize skip;
+  guint count;
 
   /* we keep state of assembled pieces */
   gpointer assembled_data;
@@ -233,6 +234,7 @@
   g_slist_free (adapter->buflist);
   adapter->buflist = NULL;
   adapter->buflist_end = NULL;
+  adapter->count = 0;
   adapter->size = 0;
   adapter->skip = 0;
   adapter->assembled_len = 0;
@@ -346,6 +348,7 @@
     adapter->buflist_end = g_slist_append (adapter->buflist_end, buf);
     adapter->buflist_end = g_slist_next (adapter->buflist_end);
   }
+  ++adapter->count;
 }
 
 #if 0
@@ -425,7 +428,7 @@
  *
  * Returns %NULL if @size bytes are not available.
  *
- * Returns: (transfer none) (array length=size) (element-type guint8):
+ * Returns: (transfer none) (array length=size) (element-type guint8) (nullable):
  *     a pointer to the first @size bytes of data, or %NULL
  */
 gconstpointer
@@ -549,7 +552,7 @@
 }
 
 /**
- * gst_adapter_copy_bytes:
+ * gst_adapter_copy_bytes: (rename-to gst_adapter_copy)
  * @adapter: a #GstAdapter
  * @offset: the bytes offset in the adapter to start from
  * @size: the number of bytes to copy
@@ -561,8 +564,6 @@
  *
  * Returns: (transfer full): A new #GBytes structure containing the copied data.
  *
- * Rename to: gst_adapter_copy
- *
  * Since: 1.4
  */
 GBytes *
@@ -609,6 +610,7 @@
 
     gst_buffer_unref (cur);
     g = g_slist_delete_link (g, g);
+    --adapter->count;
 
     if (G_UNLIKELY (g == NULL)) {
       GST_LOG_OBJECT (adapter, "adapter empty now");
@@ -708,7 +710,7 @@
  *
  * Free-function: g_free
  *
- * Returns: (transfer full) (array length=nbytes) (element-type guint8):
+ * Returns: (transfer full) (array length=nbytes) (element-type guint8) (nullable):
  *     oven-fresh hot data, or %NULL if @nbytes bytes are not available
  */
 gpointer
@@ -758,8 +760,8 @@
  *
  * Free-function: gst_buffer_unref
  *
- * Returns: (transfer full): a #GstBuffer containing the first @nbytes of
- *     the adapter, or %NULL if @nbytes bytes are not available.
+ * Returns: (transfer full) (nullable): a #GstBuffer containing the first
+ *     @nbytes of the adapter, or %NULL if @nbytes bytes are not available.
  *     gst_buffer_unref() when no longer needed.
  *
  * Since: 1.2
@@ -797,10 +799,11 @@
   }
 
   for (item = adapter->buflist; item && left > 0; item = item->next) {
-    gsize size;
+    gsize size, cur_size;
 
     cur = item->data;
-    size = MIN (gst_buffer_get_size (cur) - skip, left);
+    cur_size = gst_buffer_get_size (cur);
+    size = MIN (cur_size - skip, left);
 
     GST_LOG_OBJECT (adapter, "appending %" G_GSIZE_FORMAT " bytes"
         " via region copy", size);
@@ -840,8 +843,8 @@
  *
  * Free-function: gst_buffer_unref
  *
- * Returns: (transfer full): a #GstBuffer containing the first @nbytes of
- *     the adapter, or %NULL if @nbytes bytes are not available.
+ * Returns: (transfer full) (nullable): a #GstBuffer containing the first
+ *     @nbytes of the adapter, or %NULL if @nbytes bytes are not available.
  *     gst_buffer_unref() when no longer needed.
  */
 GstBuffer *
@@ -917,16 +920,16 @@
  * Caller owns returned list and contained buffers. gst_buffer_unref() each
  * buffer in the list before freeing the list after usage.
  *
- * Returns: (element-type Gst.Buffer) (transfer full): a #GList of buffers
- *     containing the first @nbytes of the adapter, or %NULL if @nbytes bytes
- *     are not available
+ * Returns: (element-type Gst.Buffer) (transfer full) (nullable): a #GList of
+ *     buffers containing the first @nbytes of the adapter, or %NULL if @nbytes
+ *     bytes are not available
  */
 GList *
 gst_adapter_take_list (GstAdapter * adapter, gsize nbytes)
 {
   GQueue queue = G_QUEUE_INIT;
   GstBuffer *cur;
-  gsize hsize, skip;
+  gsize hsize, skip, cur_size;
 
   g_return_val_if_fail (GST_IS_ADAPTER (adapter), NULL);
   g_return_val_if_fail (nbytes <= adapter->size, NULL);
@@ -936,7 +939,8 @@
   while (nbytes > 0) {
     cur = adapter->buflist->data;
     skip = adapter->skip;
-    hsize = MIN (nbytes, gst_buffer_get_size (cur) - skip);
+    cur_size = gst_buffer_get_size (cur);
+    hsize = MIN (nbytes, cur_size - skip);
 
     cur = gst_adapter_take_buffer (adapter, hsize);
 
@@ -948,6 +952,60 @@
 }
 
 /**
+ * gst_adapter_take_buffer_list:
+ * @adapter: a #GstAdapter
+ * @nbytes: the number of bytes to take
+ *
+ * Returns a #GstBufferList of buffers containing the first @nbytes bytes of
+ * the @adapter. The returned bytes will be flushed from the adapter.
+ * When the caller can deal with individual buffers, this function is more
+ * performant because no memory should be copied.
+ *
+ * Caller owns the returned list. Call gst_buffer_list_unref() to free
+ * the list after usage.
+ *
+ * Returns: (transfer full) (nullable): a #GstBufferList of buffers containing
+ *     the first @nbytes of the adapter, or %NULL if @nbytes bytes are not
+ *     available
+ *
+ * Since: 1.6
+ */
+GstBufferList *
+gst_adapter_take_buffer_list (GstAdapter * adapter, gsize nbytes)
+{
+  GstBufferList *buffer_list;
+  GstBuffer *cur;
+  gsize hsize, skip, cur_size;
+  guint n_bufs;
+
+  g_return_val_if_fail (GST_IS_ADAPTER (adapter), NULL);
+
+  if (nbytes > adapter->size)
+    return NULL;
+
+  GST_LOG_OBJECT (adapter, "taking %" G_GSIZE_FORMAT " bytes", nbytes);
+
+  /* try to create buffer list with sufficient size, so no resize is done later */
+  if (adapter->count < 64)
+    n_bufs = adapter->count;
+  else
+    n_bufs = (adapter->count * nbytes * 1.2 / adapter->size) + 1;
+
+  buffer_list = gst_buffer_list_new_sized (n_bufs);
+
+  while (nbytes > 0) {
+    cur = adapter->buflist->data;
+    skip = adapter->skip;
+    cur_size = gst_buffer_get_size (cur);
+    hsize = MIN (nbytes, cur_size - skip);
+
+    gst_buffer_list_add (buffer_list, gst_adapter_take_buffer (adapter, hsize));
+    nbytes -= hsize;
+  }
+  return buffer_list;
+}
+
+/**
  * gst_adapter_available:
  * @adapter: a #GstAdapter
  *
@@ -1165,7 +1223,7 @@
  * @offset: offset into the adapter data from which to start scanning, returns
  *          the last scanned position.
  * @size: number of bytes to scan from offset
- * @value: pointer to uint32 to return matching data
+ * @value: (out) (allow-none): pointer to uint32 to return matching data
  *
  * Scan for pattern @pattern with applied mask @mask in the adapter data,
  * starting from offset @offset.  If a match is found, the value that matched
diff --git a/libs/gst/base/gstadapter.h b/libs/gst/base/gstadapter.h
index f82fbfb..3e93ca2 100644
--- a/libs/gst/base/gstadapter.h
+++ b/libs/gst/base/gstadapter.h
@@ -63,6 +63,7 @@
 GstBuffer*              gst_adapter_take_buffer         (GstAdapter *adapter, gsize nbytes);
 GList*                  gst_adapter_take_list           (GstAdapter *adapter, gsize nbytes);
 GstBuffer *             gst_adapter_take_buffer_fast    (GstAdapter *adapter, gsize nbytes);
+GstBufferList *         gst_adapter_take_buffer_list    (GstAdapter *adapter, gsize nbytes);
 gsize                   gst_adapter_available           (GstAdapter *adapter);
 gsize                   gst_adapter_available_fast      (GstAdapter *adapter);
 
diff --git a/libs/gst/base/gstbaseparse.c b/libs/gst/base/gstbaseparse.c
index c3e63e1..435d2d1 100644
--- a/libs/gst/base/gstbaseparse.c
+++ b/libs/gst/base/gstbaseparse.c
@@ -262,6 +262,7 @@
   gboolean discont;
   gboolean flushing;
   gboolean drain;
+  gboolean saw_gaps;
 
   gint64 offset;
   gint64 sync_offset;
@@ -350,8 +351,14 @@
   GList *detect_buffers;
   guint detect_buffers_size;
 
+  /* True when no buffers have been received yet */
+  gboolean first_buffer;
+
   /* if TRUE, a STREAM_START event needs to be pushed */
   gboolean push_stream_start;
+
+  /* When we need to skip more data than we have currently */
+  guint skip;
 };
 
 typedef struct _GstBaseParseSeek
@@ -788,6 +795,7 @@
   parse->priv->min_frame_size = 1;
   parse->priv->discont = TRUE;
   parse->priv->flushing = FALSE;
+  parse->priv->saw_gaps = FALSE;
   parse->priv->offset = 0;
   parse->priv->sync_offset = 0;
   parse->priv->update_interval = -1;
@@ -837,6 +845,8 @@
   parse->priv->last_pts = GST_CLOCK_TIME_NONE;
   parse->priv->last_offset = 0;
 
+  parse->priv->skip = 0;
+
   g_list_foreach (parse->priv->pending_events, (GFunc) gst_mini_object_unref,
       NULL);
   g_list_free (parse->priv->pending_events);
@@ -856,6 +866,8 @@
 
   parse->priv->new_frame = TRUE;
 
+  parse->priv->first_buffer = TRUE;
+
   g_list_foreach (parse->priv->detect_buffers, (GFunc) gst_buffer_unref, NULL);
   g_list_free (parse->priv->detect_buffers);
   parse->priv->detect_buffers = NULL;
@@ -1122,9 +1134,21 @@
       parse->priv->prev_dts = GST_CLOCK_TIME_NONE;
       parse->priv->discont = TRUE;
       parse->priv->seen_keyframe = FALSE;
+      parse->priv->skip = 0;
       break;
     }
 
+    case GST_EVENT_SEGMENT_DONE:
+      /* need to drain now, rather than upon a new segment,
+       * since that would have SEGMENT_DONE come before potential
+       * delayed last part of the current segment */
+      GST_DEBUG_OBJECT (parse, "draining current segment");
+      if (parse->segment.rate > 0.0)
+        gst_base_parse_drain (parse);
+      else
+        gst_base_parse_finish_fragment (parse, FALSE);
+      break;
+
     case GST_EVENT_FLUSH_START:
       GST_OBJECT_LOCK (parse);
       parse->priv->flushing = TRUE;
@@ -1139,6 +1163,7 @@
       parse->priv->last_pts = GST_CLOCK_TIME_NONE;
       parse->priv->last_dts = GST_CLOCK_TIME_NONE;
       parse->priv->new_frame = TRUE;
+      parse->priv->skip = 0;
 
       forward_immediate = TRUE;
       break;
@@ -1150,14 +1175,15 @@
         gst_base_parse_finish_fragment (parse, TRUE);
 
       /* If we STILL have zero frames processed, fire an error */
-      if (parse->priv->framecount == 0) {
+      if (parse->priv->framecount == 0 && !parse->priv->saw_gaps) {
         GST_ELEMENT_ERROR (parse, STREAM, WRONG_TYPE,
             ("No valid frames found before end of stream"), (NULL));
       }
       /* newsegment and other serialized events before eos */
       gst_base_parse_push_pending_events (parse);
 
-      if (parse->priv->framecount < MIN_FRAMES_TO_POST_BITRATE) {
+      if (!parse->priv->saw_gaps
+          && parse->priv->framecount < MIN_FRAMES_TO_POST_BITRATE) {
         /* We've not posted bitrate tags yet - do so now */
         gst_base_parse_post_bitrates (parse, TRUE, TRUE, TRUE);
       }
@@ -1198,6 +1224,7 @@
       else
         gst_base_parse_finish_fragment (parse, TRUE);
       forward_immediate = TRUE;
+      parse->priv->saw_gaps = TRUE;
       break;
     }
     case GST_EVENT_TAG:
@@ -1229,10 +1256,8 @@
     if (!GST_EVENT_IS_SERIALIZED (event) || forward_immediate) {
       ret = gst_pad_push_event (parse->srcpad, event);
     } else {
-      // GST_VIDEO_DECODER_STREAM_LOCK (decoder);
       parse->priv->pending_events =
           g_list_prepend (parse->priv->pending_events, event);
-      // GST_VIDEO_DECODER_STREAM_UNLOCK (decoder);
       ret = TRUE;
     }
   }
@@ -1532,16 +1557,18 @@
         /* inform if duration changed, but try to avoid spamming */
         parse->priv->estimated_drift +=
             dest_value - parse->priv->estimated_duration;
+
+        parse->priv->estimated_duration = dest_value;
+        GST_LOG_OBJECT (parse,
+            "updated estimated duration to %" GST_TIME_FORMAT,
+            GST_TIME_ARGS (dest_value));
+
         if (parse->priv->estimated_drift > GST_SECOND ||
             parse->priv->estimated_drift < -GST_SECOND) {
           gst_element_post_message (GST_ELEMENT (parse),
               gst_message_new_duration_changed (GST_OBJECT (parse)));
           parse->priv->estimated_drift = 0;
         }
-        parse->priv->estimated_duration = dest_value;
-        GST_LOG_OBJECT (parse,
-            "updated estimated duration to %" GST_TIME_FORMAT,
-            GST_TIME_ARGS (dest_value));
       }
     }
   }
@@ -1988,7 +2015,20 @@
           g_slist_prepend (parse->priv->buffers_head, outbuf);
       outbuf = NULL;
     } else {
-      gst_adapter_flush (parse->priv->adapter, *skip);
+      /* If we're asked to skip more than is available in the adapter,
+         we need to remember what we need to skip for next iteration */
+      gsize av = gst_adapter_available (parse->priv->adapter);
+      GST_DEBUG ("Asked to skip %u (%" G_GSIZE_FORMAT " available)", *skip, av);
+      if (av >= *skip) {
+        gst_adapter_flush (parse->priv->adapter, *skip);
+      } else {
+        GST_DEBUG
+            ("This is more than available, flushing %" G_GSIZE_FORMAT
+            ", storing %u to skip", av, (guint) (*skip - av));
+        parse->priv->skip = *skip - av;
+        gst_adapter_flush (parse->priv->adapter, av);
+        *skip = av;
+      }
     }
     if (!parse->priv->discont)
       parse->priv->sync_offset = parse->priv->offset;
@@ -2358,6 +2398,9 @@
   /* ERRORS */
 no_caps:
   {
+    if (GST_PAD_IS_FLUSHING (parse->srcpad))
+      return GST_FLOW_FLUSHING;
+
     GST_ELEMENT_ERROR (parse, STREAM, DECODE, ("No caps set"), (NULL));
     return GST_FLOW_ERROR;
   }
@@ -2711,11 +2754,65 @@
 }
 
 static GstFlowReturn
+gst_base_parse_process_streamheader (GstBaseParse * parse)
+{
+  GstCaps *caps;
+  GstStructure *str;
+  const GValue *value;
+  GstFlowReturn ret = GST_FLOW_OK;
+
+  caps = gst_pad_get_current_caps (GST_BASE_PARSE_SINK_PAD (parse));
+  if (caps == NULL)
+    goto notfound;
+
+  str = gst_caps_get_structure (caps, 0);
+  value = gst_structure_get_value (str, "streamheader");
+  if (value == NULL)
+    goto notfound;
+
+  GST_DEBUG_OBJECT (parse, "Found streamheader field on input caps");
+
+  if (GST_VALUE_HOLDS_ARRAY (value)) {
+    gint i;
+    gsize len = gst_value_array_get_size (value);
+
+    for (i = 0; i < len; i++) {
+      GstBuffer *buffer =
+          gst_value_get_buffer (gst_value_array_get_value (value, i));
+      ret =
+          gst_base_parse_chain (GST_BASE_PARSE_SINK_PAD (parse),
+          GST_OBJECT_CAST (parse), gst_buffer_ref (buffer));
+    }
+
+  } else if (GST_VALUE_HOLDS_BUFFER (value)) {
+    GstBuffer *buffer = gst_value_get_buffer (value);
+    ret =
+        gst_base_parse_chain (GST_BASE_PARSE_SINK_PAD (parse),
+        GST_OBJECT_CAST (parse), gst_buffer_ref (buffer));
+  }
+
+  gst_caps_unref (caps);
+
+  return ret;
+
+notfound:
+  {
+    if (caps) {
+      gst_caps_unref (caps);
+    }
+
+    GST_DEBUG_OBJECT (parse, "No streamheader on caps");
+    return GST_FLOW_OK;
+  }
+}
+
+static GstFlowReturn
 gst_base_parse_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
 {
   GstBaseParseClass *bclass;
   GstBaseParse *parse;
   GstFlowReturn ret = GST_FLOW_OK;
+  GstFlowReturn old_ret = GST_FLOW_OK;
   GstBuffer *tmpbuf = NULL;
   guint fsize = 1;
   gint skip = -1;
@@ -2725,6 +2822,44 @@
 
   parse = GST_BASE_PARSE (parent);
   bclass = GST_BASE_PARSE_GET_CLASS (parse);
+  GST_DEBUG_OBJECT (parent, "chain");
+
+  /* early out for speed, if we need to skip */
+  if (buffer && GST_BUFFER_IS_DISCONT (buffer))
+    parse->priv->skip = 0;
+  if (parse->priv->skip > 0) {
+    gsize bsize = gst_buffer_get_size (buffer);
+    GST_DEBUG ("Got %" G_GSIZE_FORMAT " buffer, need to skip %u", bsize,
+        parse->priv->skip);
+    if (parse->priv->skip >= bsize) {
+      parse->priv->skip -= bsize;
+      GST_DEBUG ("All the buffer is skipped");
+      parse->priv->offset += bsize;
+      parse->priv->sync_offset = parse->priv->offset;
+      return GST_FLOW_OK;
+    }
+    buffer = gst_buffer_make_writable (buffer);
+    gst_buffer_resize (buffer, parse->priv->skip, bsize - parse->priv->skip);
+    parse->priv->offset += parse->priv->skip;
+    GST_DEBUG ("Done skipping, we have %u left on this buffer",
+        (unsigned) (bsize - parse->priv->skip));
+    parse->priv->skip = 0;
+    parse->priv->discont = TRUE;
+  }
+
+  if (G_UNLIKELY (parse->priv->first_buffer)) {
+    parse->priv->first_buffer = FALSE;
+    if (!GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_HEADER)) {
+      /* this stream has no header buffers, check if we just prepend the
+       * streamheader from caps to the stream */
+      GST_DEBUG_OBJECT (parse, "Looking for streamheader field on caps to "
+          "prepend to the stream");
+      gst_base_parse_process_streamheader (parse);
+    } else {
+      GST_DEBUG_OBJECT (parse, "Stream has header buffers, not prepending "
+          "streamheader from caps");
+    }
+  }
 
   if (parse->priv->detecting) {
     GstBuffer *detect_buf;
@@ -2902,8 +3037,11 @@
     if (skip == 0 && flush == 0) {
       GST_LOG_OBJECT (parse, "nothing skipped and no frames finished, "
           "breaking to get more data");
+      /* ignore this return as it produced no data */
+      ret = old_ret;
       goto done;
     }
+    old_ret = ret;
   }
 
 done:
@@ -3115,6 +3253,12 @@
     if (ret != GST_FLOW_OK)
       break;
 
+    /* If a large amount of data was requested to be skipped, _handle_buffer
+       might have set the priv->skip flag to an extra amount on top of skip.
+       In pull mode, we can just pull from the new offset directly. */
+    parse->priv->offset += parse->priv->skip;
+    parse->priv->skip = 0;
+
     /* something flushed means something happened,
      * and we should bail out of this loop so as not to occupy
      * the task thread indefinitely */
@@ -3626,6 +3770,9 @@
 gst_base_parse_set_latency (GstBaseParse * parse, GstClockTime min_latency,
     GstClockTime max_latency)
 {
+  g_return_if_fail (min_latency != GST_CLOCK_TIME_NONE);
+  g_return_if_fail (min_latency <= max_latency);
+
   GST_OBJECT_LOCK (parse);
   parse->priv->min_latency = min_latency;
   parse->priv->max_latency = max_latency;
@@ -3795,9 +3942,10 @@
 
         GST_OBJECT_LOCK (parse);
         /* add our latency */
-        if (min_latency != -1)
-          min_latency += parse->priv->min_latency;
-        if (max_latency != -1)
+        min_latency += parse->priv->min_latency;
+        if (max_latency == -1 || parse->priv->max_latency == -1)
+          max_latency = -1;
+        else
           max_latency += parse->priv->max_latency;
         GST_OBJECT_UNLOCK (parse);
 
diff --git a/libs/gst/base/gstbaseparse.h b/libs/gst/base/gstbaseparse.h
index f84d973..94dac21 100644
--- a/libs/gst/base/gstbaseparse.h
+++ b/libs/gst/base/gstbaseparse.h
@@ -182,8 +182,10 @@
  * @stop:           Optional.
  *                  Called when the element stops processing.
  *                  Allows closing external resources.
- * @set_sink_caps:  allows the subclass to be notified of the actual caps set.
- * @get_sink_caps:  allows the subclass to do its own sink get caps if needed.
+ * @set_sink_caps:  Optional.
+ *                  Allows the subclass to be notified of the actual caps set.
+ * @get_sink_caps:  Optional.
+ *                  Allows the subclass to do its own sink get caps if needed.
  * @handle_frame:   Parses the input data into valid frames as defined by subclass
  *                  which should be passed to gst_base_parse_finish_frame().
  *                  The frame's input buffer is guaranteed writable,
@@ -222,8 +224,7 @@
  *                   parent to let the default handler run (Since 1.2)
  *
  * Subclasses can override any of the available virtual methods or not, as
- * needed. At minimum @check_valid_frame and @parse_frame needs to be
- * overridden.
+ * needed. At minimum @handle_frame needs to be overridden.
  */
 struct _GstBaseParseClass {
   GstElementClass parent_class;
diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c
index b6fc1fc..a505695 100644
--- a/libs/gst/base/gstbasesink.c
+++ b/libs/gst/base/gstbasesink.c
@@ -492,7 +492,7 @@
    *
    * The amount of bytes to pull when operating in pull mode.
    */
-  /* FIXME 0.11: blocksize property should be int, otherwise min>max.. */
+  /* FIXME 2.0: blocksize property should be int, otherwise min>max.. */
   g_object_class_install_property (gobject_class, PROP_BLOCKSIZE,
       g_param_spec_uint ("blocksize", "Block size",
           "Size in bytes to pull per buffer (0 = default)", 0, G_MAXUINT,
@@ -904,9 +904,9 @@
  *
  * Free-function: gst_sample_unref
  *
- * Returns: (transfer full): a #GstSample. gst_sample_unref() after usage.
- *     This function returns %NULL when no buffer has arrived in the sink yet
- *     or when the sink is not in PAUSED or PLAYING.
+ * Returns: (transfer full) (nullable): a #GstSample. gst_sample_unref() after
+ *     usage.  This function returns %NULL when no buffer has arrived in the
+ *     sink yet or when the sink is not in PAUSED or PLAYING.
  */
 GstSample *
 gst_base_sink_get_last_sample (GstBaseSink * sink)
@@ -1086,8 +1086,7 @@
       }
       if (l) {
         /* we need to add the render delay if we are live */
-        if (min != -1)
-          min += render_delay;
+        min += render_delay;
         if (max != -1)
           max += render_delay;
       }
@@ -1192,7 +1191,7 @@
  * Set the number of bytes that the sink will pull when it is operating in pull
  * mode.
  */
-/* FIXME 0.11: blocksize property should be int, otherwise min>max.. */
+/* FIXME 2.0: blocksize property should be int, otherwise min>max.. */
 void
 gst_base_sink_set_blocksize (GstBaseSink * sink, guint blocksize)
 {
@@ -1213,7 +1212,7 @@
  *
  * Returns: the number of bytes @sink will pull in pull mode.
  */
-/* FIXME 0.11: blocksize property should be int, otherwise min>max.. */
+/* FIXME 2.0: blocksize property should be int, otherwise min>max.. */
 guint
 gst_base_sink_get_blocksize (GstBaseSink * sink)
 {
@@ -1507,7 +1506,7 @@
       /* state change function could have been executed and we could be
        * flushing now */
       if (G_UNLIKELY (basesink->flushing))
-        goto stopping;
+        goto stopping_unlocked;
     }
     GST_DEBUG_OBJECT (basesink, "posting PLAYING state change message");
     /* FIXME, we released the PREROLL lock above, it's possible that this
@@ -1547,6 +1546,11 @@
     GST_OBJECT_UNLOCK (basesink);
     return TRUE;
   }
+stopping_unlocked:
+  {
+    GST_OBJECT_LOCK (basesink);
+    goto stopping;
+  }
 stopping:
   {
     /* app is going to READY */
@@ -3064,19 +3068,28 @@
     }
     case GST_EVENT_CAPS:
     {
-      GstCaps *caps;
+      GstCaps *caps, *current_caps;
 
       GST_DEBUG_OBJECT (basesink, "caps %p", event);
 
       gst_event_parse_caps (event, &caps);
-      if (bclass->set_caps)
-        result = bclass->set_caps (basesink, caps);
+      current_caps = gst_pad_get_current_caps (GST_BASE_SINK_PAD (basesink));
 
-      if (result) {
-        GST_OBJECT_LOCK (basesink);
-        gst_caps_replace (&basesink->priv->caps, caps);
-        GST_OBJECT_UNLOCK (basesink);
+      if (current_caps && gst_caps_is_equal (current_caps, caps)) {
+        GST_DEBUG_OBJECT (basesink,
+            "New caps equal to old ones: %" GST_PTR_FORMAT, caps);
+      } else {
+        if (bclass->set_caps)
+          result = bclass->set_caps (basesink, caps);
+
+        if (result) {
+          GST_OBJECT_LOCK (basesink);
+          gst_caps_replace (&basesink->priv->caps, caps);
+          GST_OBJECT_UNLOCK (basesink);
+        }
       }
+      if (current_caps)
+        gst_caps_unref (current_caps);
       break;
     }
     case GST_EVENT_SEGMENT:
@@ -3091,6 +3104,7 @@
       GST_DEBUG_OBJECT (basesink, "configured segment %" GST_SEGMENT_FORMAT,
           &basesink->segment);
       basesink->have_newsegment = TRUE;
+      gst_base_sink_reset_qos (basesink);
       GST_OBJECT_UNLOCK (basesink);
       break;
     case GST_EVENT_GAP:
@@ -3282,7 +3296,12 @@
     goto was_eos;
 
   if (is_list) {
-    sync_buf = gst_buffer_list_get (GST_BUFFER_LIST_CAST (obj), 0);
+    GstBufferList *buffer_list = GST_BUFFER_LIST_CAST (obj);
+
+    if (gst_buffer_list_length (buffer_list) == 0)
+      goto empty_list;
+
+    sync_buf = gst_buffer_list_get (buffer_list, 0);
     g_assert (NULL != sync_buf);
   } else {
     sync_buf = GST_BUFFER_CAST (obj);
@@ -3464,6 +3483,12 @@
     gst_mini_object_unref (GST_MINI_OBJECT_CAST (obj));
     return GST_FLOW_EOS;
   }
+empty_list:
+  {
+    GST_DEBUG_OBJECT (basesink, "buffer list with no buffers");
+    gst_mini_object_unref (GST_MINI_OBJECT_CAST (obj));
+    return GST_FLOW_OK;
+  }
 out_of_segment:
   {
     GST_DEBUG_OBJECT (basesink, "dropping buffer, out of clipping segment");
@@ -4419,7 +4444,7 @@
 
   /* assume we will use the clock for getting the current position */
   with_clock = TRUE;
-  if (basesink->sync == FALSE)
+  if (!basesink->sync)
     with_clock = FALSE;
 
   /* and we need a clock */
@@ -4566,8 +4591,12 @@
     *cur = time + gst_guint64_to_gdouble (now - base_time) * rate;
 
     /* never report more than last seen position */
-    if (last != -1)
-      *cur = MIN (last, *cur);
+    if (last != -1) {
+      if (rate > 0.0)
+        *cur = MIN (last, *cur);
+      else
+        *cur = MAX (last, *cur);
+    }
 
     GST_DEBUG_OBJECT (basesink,
         "now %" GST_TIME_FORMAT " - base_time %" GST_TIME_FORMAT " - base %"
@@ -4787,6 +4816,18 @@
   return res;
 }
 
+static void
+gst_base_sink_drain (GstBaseSink * basesink)
+{
+  GstBuffer *old;
+
+  GST_OBJECT_LOCK (basesink);
+  if ((old = basesink->priv->last_buffer))
+    basesink->priv->last_buffer = gst_buffer_copy_deep (old);
+  GST_OBJECT_UNLOCK (basesink);
+  if (old)
+    gst_buffer_unref (old);
+}
 
 static gboolean
 gst_base_sink_default_query (GstBaseSink * basesink, GstQuery * query)
@@ -4799,6 +4840,7 @@
   switch (GST_QUERY_TYPE (query)) {
     case GST_QUERY_ALLOCATION:
     {
+      gst_base_sink_drain (basesink);
       if (bclass->propose_allocation)
         res = bclass->propose_allocation (basesink, query);
       else
@@ -4835,17 +4877,15 @@
     }
     case GST_QUERY_DRAIN:
     {
-      GstBuffer *old;
-
-      GST_OBJECT_LOCK (basesink);
-      if ((old = basesink->priv->last_buffer))
-        basesink->priv->last_buffer = gst_buffer_copy (old);
-      GST_OBJECT_UNLOCK (basesink);
-      if (old)
-        gst_buffer_unref (old);
+      gst_base_sink_drain (basesink);
       res = TRUE;
       break;
     }
+    case GST_QUERY_POSITION:
+    {
+      res = default_element_query (GST_ELEMENT (basesink), query);
+      break;
+    }
     default:
       res =
           gst_pad_query_default (basesink->sinkpad, GST_OBJECT_CAST (basesink),
@@ -4997,11 +5037,6 @@
       if (bclass->unlock_stop)
         bclass->unlock_stop (basesink);
 
-      /* we need preroll again and we set the flag before unlocking the clockid
-       * because if the clockid is unlocked before a current buffer expired, we
-       * can use that buffer to preroll with */
-      basesink->need_preroll = TRUE;
-
       if (basesink->clock_id) {
         GST_DEBUG_OBJECT (basesink, "unschedule clock");
         gst_clock_id_unschedule (basesink->clock_id);
@@ -5012,6 +5047,7 @@
       if (!gst_base_sink_needs_preroll (basesink)) {
         GST_DEBUG_OBJECT (basesink, "PLAYING to PAUSED, we are prerolled");
         basesink->playing_async = FALSE;
+        basesink->need_preroll = FALSE;
       } else {
         if (GST_STATE_TARGET (GST_ELEMENT (basesink)) <= GST_STATE_READY) {
           GST_DEBUG_OBJECT (basesink, "element is <= READY");
@@ -5020,6 +5056,7 @@
           GST_DEBUG_OBJECT (basesink,
               "PLAYING to PAUSED, we are not prerolled");
           basesink->playing_async = TRUE;
+          basesink->need_preroll = TRUE;
           priv->commited = FALSE;
           priv->call_preroll = TRUE;
           if (priv->async_enabled) {
diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c
index eb861a3..211a715 100644
--- a/libs/gst/base/gstbasesrc.c
+++ b/libs/gst/base/gstbasesrc.c
@@ -629,7 +629,7 @@
  * @src: base source instance
  * @automatic_eos: automatic eos
  *
- * If @automatic_eos is %TRUE, basesrc will automatically go EOS if a buffer
+ * If @automatic_eos is %TRUE, @src will automatically go EOS if a buffer
  * after the total size is returned. By default this is %TRUE but sources
  * that can't return an authoritative size and only know that they're EOS
  * when trying to read more should set this to %FALSE.
@@ -695,9 +695,9 @@
  * @max_latency: (out) (allow-none): the max latency of the source
  *
  * Query the source for the latency parameters. @live will be %TRUE when @src is
- * configured as a live source. @min_latency will be set to the difference
- * between the running time and the timestamp of the first buffer.
- * @max_latency is always the undefined value of -1.
+ * configured as a live source. @min_latency and @max_latency will be set
+ * to the difference between the running time and the timestamp of the first
+ * buffer.
  *
  * This function is mostly used by subclasses.
  *
@@ -726,11 +726,11 @@
   if (min_latency)
     *min_latency = min;
   if (max_latency)
-    *max_latency = -1;
+    *max_latency = min;
 
   GST_LOG_OBJECT (src, "latency: live %d, min %" GST_TIME_FORMAT
       ", max %" GST_TIME_FORMAT, src->is_live, GST_TIME_ARGS (min),
-      GST_TIME_ARGS (-1));
+      GST_TIME_ARGS (min));
   GST_OBJECT_UNLOCK (src);
 
   return TRUE;
@@ -895,7 +895,7 @@
 /**
  * gst_base_src_set_caps:
  * @src: a #GstBaseSrc
- * @caps: a #GstCaps
+ * @caps: (transfer none): a #GstCaps
  *
  * Set new caps on the basesrc source pad.
  *
@@ -906,16 +906,27 @@
 {
   GstBaseSrcClass *bclass;
   gboolean res = TRUE;
+  GstCaps *current_caps;
 
   bclass = GST_BASE_SRC_GET_CLASS (src);
 
   gst_base_src_send_stream_start (src);
 
-  if (bclass->set_caps)
-    res = bclass->set_caps (src, caps);
+  current_caps = gst_pad_get_current_caps (GST_BASE_SRC_PAD (src));
+  if (current_caps && gst_caps_is_equal (current_caps, caps)) {
+    GST_DEBUG_OBJECT (src, "New caps equal to old ones: %" GST_PTR_FORMAT,
+        caps);
+    res = TRUE;
+  } else {
+    if (bclass->set_caps)
+      res = bclass->set_caps (src, caps);
 
-  if (res)
-    res = gst_pad_push_event (src->srcpad, gst_event_new_caps (caps));
+    if (res)
+      res = gst_pad_push_event (src->srcpad, gst_event_new_caps (caps));
+  }
+
+  if (current_caps)
+    gst_caps_unref (current_caps);
 
   return res;
 }
@@ -1103,7 +1114,7 @@
             gst_base_src_seekable (src), 0, duration);
         res = TRUE;
       } else {
-        /* FIXME 0.11: return TRUE + seekable=FALSE for SEEKING query here */
+        /* FIXME 2.0: return TRUE + seekable=FALSE for SEEKING query here */
         /* Don't reply to the query to make up for demuxers which don't
          * handle the SEEKING query yet. Players like Totem will fall back
          * to the duration when the SEEKING query isn't answered. */
@@ -2310,20 +2321,18 @@
 {
   guint64 size, maxsize;
   GstBaseSrcClass *bclass;
-  GstFormat format;
   gint64 stop;
 
+  /* only operate if we are working with bytes */
+  if (src->segment.format != GST_FORMAT_BYTES)
+    return TRUE;
+
   bclass = GST_BASE_SRC_GET_CLASS (src);
 
-  format = src->segment.format;
   stop = src->segment.stop;
   /* get total file size */
   size = src->segment.duration;
 
-  /* only operate if we are working with bytes */
-  if (format != GST_FORMAT_BYTES)
-    return TRUE;
-
   /* when not doing automatic EOS, just use the stop position. We don't use
    * the size to check for EOS */
   if (!g_atomic_int_get (&src->priv->automatic_eos))
@@ -2379,6 +2388,7 @@
   /* ERRORS */
 unexpected_length:
   {
+    GST_WARNING_OBJECT (src, "processing at or past EOS");
     return FALSE;
   }
 }
@@ -2965,6 +2975,11 @@
   oldalloc = priv->allocator;
   priv->allocator = allocator;
 
+  if (priv->pool)
+    gst_object_ref (priv->pool);
+  if (priv->allocator)
+    gst_object_ref (priv->allocator);
+
   if (params)
     priv->params = *params;
   else
@@ -3063,7 +3078,7 @@
       /* If change are not acceptable, fallback to generic pool */
       if (!gst_buffer_pool_config_validate_params (config, outcaps, size, min,
               max)) {
-        GST_DEBUG_OBJECT (basesrc, "unsuported pool, making new pool");
+        GST_DEBUG_OBJECT (basesrc, "unsupported pool, making new pool");
 
         gst_object_unref (pool);
         pool = gst_buffer_pool_new ();
@@ -3141,6 +3156,11 @@
 
   result = gst_base_src_set_allocation (basesrc, pool, allocator, &params);
 
+  if (allocator)
+    gst_object_unref (allocator);
+  if (pool)
+    gst_object_unref (pool);
+
   gst_query_unref (query);
 
   return result;
diff --git a/libs/gst/base/gstbasesrc.h b/libs/gst/base/gstbasesrc.h
index 75de438..4ddfda9 100644
--- a/libs/gst/base/gstbasesrc.h
+++ b/libs/gst/base/gstbasesrc.h
@@ -127,7 +127,8 @@
  * @get_times: Given a buffer, return the start and stop time when it
  *    should be pushed out. The base class will sync on the clock using
  *    these times.
- * @get_size: Return the total size of the resource, in the configured format.
+ * @get_size: Return the total size of the resource, in the format set by
+ *     gst_base_src_set_format().
  * @is_seekable: Check if the source can seek
  * @prepare_seek_segment: Prepare the #GstSegment that will be passed to the
  *   #GstBaseSrcClass.do_seek() vmethod for executing a seek
@@ -190,7 +191,8 @@
   void          (*get_times)    (GstBaseSrc *src, GstBuffer *buffer,
                                  GstClockTime *start, GstClockTime *end);
 
-  /* get the total size of the resource in bytes */
+  /* get the total size of the resource in the format set by
+   * gst_base_src_set_format() */
   gboolean      (*get_size)     (GstBaseSrc *src, guint64 *size);
 
   /* check if the resource is seekable */
diff --git a/libs/gst/base/gstbasetransform.c b/libs/gst/base/gstbasetransform.c
index c20a613..073d08c 100644
--- a/libs/gst/base/gstbasetransform.c
+++ b/libs/gst/base/gstbasetransform.c
@@ -677,7 +677,7 @@
     GstCaps * filter)
 {
   GstPad *otherpad;
-  GstCaps *peercaps, *caps, *temp, *peerfilter = NULL;
+  GstCaps *peercaps = NULL, *caps, *temp, *peerfilter = NULL;
   GstCaps *templ, *otempl;
 
   otherpad = (pad == trans->srcpad) ? trans->sinkpad : trans->srcpad;
@@ -701,14 +701,26 @@
     GST_DEBUG_OBJECT (pad, "transformed  %" GST_PTR_FORMAT, peerfilter);
     gst_caps_unref (temp);
 
-    /* and filter against the template of the other pad */
-    GST_DEBUG_OBJECT (pad, "our template  %" GST_PTR_FORMAT, otempl);
-    /* We keep the caps sorted like the returned caps */
-    temp =
-        gst_caps_intersect_full (peerfilter, otempl, GST_CAPS_INTERSECT_FIRST);
-    GST_DEBUG_OBJECT (pad, "intersected %" GST_PTR_FORMAT, temp);
-    gst_caps_unref (peerfilter);
-    peerfilter = temp;
+    if (!gst_caps_is_empty (peerfilter)) {
+      /* and filter against the template of the other pad */
+      GST_DEBUG_OBJECT (pad, "our template  %" GST_PTR_FORMAT, otempl);
+      /* We keep the caps sorted like the returned caps */
+      temp =
+          gst_caps_intersect_full (peerfilter, otempl,
+          GST_CAPS_INTERSECT_FIRST);
+      GST_DEBUG_OBJECT (pad, "intersected %" GST_PTR_FORMAT, temp);
+      gst_caps_unref (peerfilter);
+      peerfilter = temp;
+    }
+  }
+
+  GST_DEBUG_OBJECT (pad, "peer filter caps %" GST_PTR_FORMAT, peerfilter);
+
+  if (peerfilter && gst_caps_is_empty (peerfilter)) {
+    GST_DEBUG_OBJECT (pad, "peer filter caps are empty");
+    caps = peerfilter;
+    peerfilter = NULL;
+    goto done;
   }
 
   /* query the peer with the transformed filter */
@@ -733,7 +745,7 @@
       GST_PAD_DIRECTION (otherpad), temp, filter);
   GST_DEBUG_OBJECT (pad, "transformed  %" GST_PTR_FORMAT, caps);
   gst_caps_unref (temp);
-  if (caps == NULL)
+  if (caps == NULL || gst_caps_is_empty (caps))
     goto done;
 
   if (peercaps) {
@@ -1109,7 +1121,7 @@
 
   /* The caps we can actually output is the intersection of the transformed
    * caps with the pad template for the pad */
-  if (othercaps) {
+  if (othercaps && !gst_caps_is_empty (othercaps)) {
     GstCaps *intersect, *templ_caps;
 
     templ_caps = gst_pad_get_pad_template_caps (otherpad);
@@ -1342,7 +1354,7 @@
     GstCaps * incaps)
 {
   GstBaseTransformPrivate *priv = trans->priv;
-  GstCaps *outcaps, *prevcaps;
+  GstCaps *outcaps, *prev_incaps = NULL, *prev_outcaps = NULL;
   gboolean ret = TRUE;
 
   GST_DEBUG_OBJECT (pad, "have new caps %p %" GST_PTR_FORMAT, incaps, incaps);
@@ -1361,18 +1373,23 @@
     outcaps = gst_caps_ref (incaps);
   }
 
-  /* call configure now */
-  if (!(ret = gst_base_transform_configure_caps (trans, incaps, outcaps)))
-    goto failed_configure;
+  prev_incaps = gst_pad_get_current_caps (trans->sinkpad);
+  prev_outcaps = gst_pad_get_current_caps (trans->srcpad);
+  if (prev_incaps && prev_outcaps && gst_caps_is_equal (prev_incaps, incaps)
+      && gst_caps_is_equal (prev_outcaps, outcaps)) {
+    GST_DEBUG_OBJECT (trans,
+        "New caps equal to old ones: %" GST_PTR_FORMAT " -> %" GST_PTR_FORMAT,
+        incaps, outcaps);
+    ret = TRUE;
+  } else {
+    /* call configure now */
+    if (!(ret = gst_base_transform_configure_caps (trans, incaps, outcaps)))
+      goto failed_configure;
 
-  prevcaps = gst_pad_get_current_caps (trans->srcpad);
-
-  if (!prevcaps || !gst_caps_is_equal (outcaps, prevcaps))
-    /* let downstream know about our caps */
-    ret = gst_pad_set_caps (trans->srcpad, outcaps);
-
-  if (prevcaps)
-    gst_caps_unref (prevcaps);
+    if (!prev_outcaps || !gst_caps_is_equal (outcaps, prev_outcaps))
+      /* let downstream know about our caps */
+      ret = gst_pad_set_caps (trans->srcpad, outcaps);
+  }
 
   if (ret) {
     /* try to get a pool when needed */
@@ -1382,6 +1399,10 @@
 done:
   if (outcaps)
     gst_caps_unref (outcaps);
+  if (prev_incaps)
+    gst_caps_unref (prev_incaps);
+  if (prev_outcaps)
+    gst_caps_unref (prev_outcaps);
 
   GST_OBJECT_LOCK (trans);
   priv->negotiated = ret;
@@ -2455,7 +2476,7 @@
   bclass = GST_BASE_TRANSFORM_GET_CLASS (trans);
 
   GST_OBJECT_LOCK (trans);
-  if (passthrough == FALSE) {
+  if (!passthrough) {
     if (bclass->transform_ip || bclass->transform)
       trans->priv->passthrough = FALSE;
   } else {
diff --git a/libs/gst/base/gstbytereader.c b/libs/gst/base/gstbytereader.c
index b73a679..75dfd08 100644
--- a/libs/gst/base/gstbytereader.c
+++ b/libs/gst/base/gstbytereader.c
@@ -1,7 +1,7 @@
 /* GStreamer byte reader
  *
  * Copyright (C) 2008 Sebastian Dröge <sebastian.droege@collabora.co.uk>.
- * Copyright (C) 2009 Tim-Philipp Müller <tim centricular net>
+ * Copyright (C) 2009,2014 Tim-Philipp Müller <tim centricular net>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -100,6 +100,56 @@
 }
 
 /**
+ * gst_byte_reader_peek_sub_reader: (skip)
+ * @reader: an existing and initialized #GstByteReader instance
+ * @sub_reader: a #GstByteReader instance to initialize as sub-reader
+ * @size: size of @sub_reader in bytes
+ *
+ * Initializes a #GstByteReader sub-reader instance to contain @size bytes of
+ * data from the current position of @reader. This is useful to read chunked
+ * formats and make sure that one doesn't read beyond the size of the sub-chunk.
+ *
+ * Unlike gst_byte_reader_get_sub_reader(), this function does not modify the
+ * current position of @reader.
+ *
+ * Returns: FALSE on error or if @reader does not contain @size more bytes from
+ *     the current position, and otherwise TRUE
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_byte_reader_peek_sub_reader (GstByteReader * reader,
+    GstByteReader * sub_reader, guint size)
+{
+  return _gst_byte_reader_peek_sub_reader_inline (reader, sub_reader, size);
+}
+
+/**
+ * gst_byte_reader_get_sub_reader: (skip)
+ * @reader: an existing and initialized #GstByteReader instance
+ * @sub_reader: a #GstByteReader instance to initialize as sub-reader
+ * @size: size of @sub_reader in bytes
+ *
+ * Initializes a #GstByteReader sub-reader instance to contain @size bytes of
+ * data from the current position of @reader. This is useful to read chunked
+ * formats and make sure that one doesn't read beyond the size of the sub-chunk.
+ *
+ * Unlike gst_byte_reader_peek_sub_reader(), this function also modifies the
+ * position of @reader and moves it forward by @size bytes.
+ *
+ * Returns: FALSE on error or if @reader does not contain @size more bytes from
+ *     the current position, and otherwise TRUE
+ *
+ * Since: 1.6
+ */
+gboolean
+gst_byte_reader_get_sub_reader (GstByteReader * reader,
+    GstByteReader * sub_reader, guint size)
+{
+  return _gst_byte_reader_get_sub_reader_inline (reader, sub_reader, size);
+}
+
+/**
  * gst_byte_reader_set_pos:
  * @reader: a #GstByteReader instance
  * @pos: The new position in bytes
@@ -794,6 +844,55 @@
   return -1;
 }
 
+static inline guint
+_masked_scan_uint32_peek (const GstByteReader * reader,
+    guint32 mask, guint32 pattern, guint offset, guint size, guint32 * value)
+{
+  const guint8 *data;
+  guint32 state;
+  guint i;
+
+  g_return_val_if_fail (size > 0, -1);
+  g_return_val_if_fail ((guint64) offset + size <= reader->size - reader->byte,
+      -1);
+
+  /* we can't find the pattern with less than 4 bytes */
+  if (G_UNLIKELY (size < 4))
+    return -1;
+
+  data = reader->data + reader->byte + offset;
+
+  /* Handle special case found in MPEG and H264 */
+  if ((pattern == 0x00000100) && (mask == 0xffffff00)) {
+    guint ret = _scan_for_start_code (data, offset, size);
+    if (G_UNLIKELY (value))
+      *value = (1 << 8) | data[ret + 3];
+    return ret;
+  }
+
+  /* set the state to something that does not match */
+  state = ~pattern;
+
+  /* now find data */
+  for (i = 0; i < size; i++) {
+    /* throw away one byte and move in the next byte */
+    state = ((state << 8) | data[i]);
+    if (G_UNLIKELY ((state & mask) == pattern)) {
+      /* we have a match but we need to have skipped at
+       * least 4 bytes to fill the state. */
+      if (G_LIKELY (i >= 3)) {
+        if (value)
+          *value = state;
+        return offset + i - 3;
+      }
+    }
+  }
+
+  /* nothing found */
+  return -1;
+}
+
+
 /**
  * gst_byte_reader_masked_scan_uint32:
  * @reader: a #GstByteReader
@@ -840,41 +939,39 @@
 gst_byte_reader_masked_scan_uint32 (const GstByteReader * reader, guint32 mask,
     guint32 pattern, guint offset, guint size)
 {
-  const guint8 *data;
-  guint32 state;
-  guint i;
+  return _masked_scan_uint32_peek (reader, mask, pattern, offset, size, NULL);
+}
 
-  g_return_val_if_fail (size > 0, -1);
-  g_return_val_if_fail ((guint64) offset + size <= reader->size - reader->byte,
-      -1);
-
-  /* we can't find the pattern with less than 4 bytes */
-  if (G_UNLIKELY (size < 4))
-    return -1;
-
-  data = reader->data + reader->byte + offset;
-
-  /* Handle special case found in MPEG and H264 */
-  if ((pattern == 0x00000100) && (mask == 0xffffff00))
-    return _scan_for_start_code (data, offset, size);
-
-  /* set the state to something that does not match */
-  state = ~pattern;
-
-  /* now find data */
-  for (i = 0; i < size; i++) {
-    /* throw away one byte and move in the next byte */
-    state = ((state << 8) | data[i]);
-    if (G_UNLIKELY ((state & mask) == pattern)) {
-      /* we have a match but we need to have skipped at
-       * least 4 bytes to fill the state. */
-      if (G_LIKELY (i >= 3))
-        return offset + i - 3;
-    }
-  }
-
-  /* nothing found */
-  return -1;
+/**
+ * gst_byte_reader_masked_scan_uint32_peek:
+ * @reader: a #GstByteReader
+ * @mask: mask to apply to data before matching against @pattern
+ * @pattern: pattern to match (after mask is applied)
+ * @offset: offset from which to start scanning, relative to the current
+ *     position
+ * @size: number of bytes to scan from offset
+ * @value: pointer to uint32 to return matching data
+ *
+ * Scan for pattern @pattern with applied mask @mask in the byte reader data,
+ * starting from offset @offset relative to the current position.
+ *
+ * The bytes in @pattern and @mask are interpreted left-to-right, regardless
+ * of endianness.  All four bytes of the pattern must be present in the
+ * byte reader data for it to match, even if the first or last bytes are masked
+ * out.
+ *
+ * It is an error to call this function without making sure that there is
+ * enough data (offset+size bytes) in the byte reader.
+ *
+ * Returns: offset of the first match, or -1 if no match was found.
+ *
+ * Since: 1.6
+ */
+guint
+gst_byte_reader_masked_scan_uint32_peek (const GstByteReader * reader,
+    guint32 mask, guint32 pattern, guint offset, guint size, guint32 * value)
+{
+  return _masked_scan_uint32_peek (reader, mask, pattern, offset, size, value);
 }
 
 #define GST_BYTE_READER_SCAN_STRING(bits) \
diff --git a/libs/gst/base/gstbytereader.h b/libs/gst/base/gstbytereader.h
index 8745ef6..dd66011 100644
--- a/libs/gst/base/gstbytereader.h
+++ b/libs/gst/base/gstbytereader.h
@@ -52,6 +52,14 @@
 
 void            gst_byte_reader_init            (GstByteReader *reader, const guint8 *data, guint size);
 
+gboolean        gst_byte_reader_peek_sub_reader (GstByteReader * reader,
+                                                 GstByteReader * sub_reader,
+                                                 guint           size);
+
+gboolean        gst_byte_reader_get_sub_reader  (GstByteReader * reader,
+                                                 GstByteReader * sub_reader,
+                                                 guint           size);
+
 gboolean        gst_byte_reader_set_pos         (GstByteReader *reader, guint pos);
 guint           gst_byte_reader_get_pos         (const GstByteReader *reader);
 
@@ -141,6 +149,12 @@
                                                     guint32               pattern,
                                                     guint                 offset,
                                                     guint                 size);
+guint           gst_byte_reader_masked_scan_uint32_peek (const GstByteReader * reader,
+                                                         guint32 mask,
+                                                         guint32 pattern,
+                                                         guint offset,
+                                                         guint size,
+                                                         guint32 * value);
 
 /**
  * GST_BYTE_READER_INIT:
@@ -450,12 +464,38 @@
 }
 
 static inline gboolean
+_gst_byte_reader_peek_sub_reader_inline (GstByteReader * reader,
+    GstByteReader * sub_reader, guint size)
+{
+  g_return_val_if_fail (reader != NULL, FALSE);
+  g_return_val_if_fail (sub_reader != NULL, FALSE);
+
+  if (_gst_byte_reader_get_remaining_unchecked (reader) < size)
+    return FALSE;
+
+  sub_reader->data = reader->data + reader->byte;
+  sub_reader->byte = 0;
+  sub_reader->size = size;
+  return TRUE;
+}
+
+static inline gboolean
+_gst_byte_reader_get_sub_reader_inline (GstByteReader * reader,
+    GstByteReader * sub_reader, guint size)
+{
+  if (!_gst_byte_reader_peek_sub_reader_inline (reader, sub_reader, size))
+    return FALSE;
+  gst_byte_reader_skip_unchecked (reader, size);
+  return TRUE;
+}
+
+static inline gboolean
 _gst_byte_reader_dup_data_inline (GstByteReader * reader, guint size, guint8 ** val)
 {
   g_return_val_if_fail (reader != NULL, FALSE);
   g_return_val_if_fail (val != NULL, FALSE);
 
-  if (G_UNLIKELY (size > reader->size || _gst_byte_reader_get_remaining_inline (reader) < size))
+  if (G_UNLIKELY (size > reader->size || _gst_byte_reader_get_remaining_unchecked (reader) < size))
     return FALSE;
 
   *val = gst_byte_reader_dup_data_unchecked (reader, size);
@@ -468,7 +508,7 @@
   g_return_val_if_fail (reader != NULL, FALSE);
   g_return_val_if_fail (val != NULL, FALSE);
 
-  if (G_UNLIKELY (size > reader->size || _gst_byte_reader_get_remaining_inline (reader) < size))
+  if (G_UNLIKELY (size > reader->size || _gst_byte_reader_get_remaining_unchecked (reader) < size))
     return FALSE;
 
   *val = gst_byte_reader_get_data_unchecked (reader, size);
@@ -481,7 +521,7 @@
   g_return_val_if_fail (reader != NULL, FALSE);
   g_return_val_if_fail (val != NULL, FALSE);
 
-  if (G_UNLIKELY (size > reader->size || _gst_byte_reader_get_remaining_inline (reader) < size))
+  if (G_UNLIKELY (size > reader->size || _gst_byte_reader_get_remaining_unchecked (reader) < size))
     return FALSE;
 
   *val = gst_byte_reader_peek_data_unchecked (reader);
diff --git a/libs/gst/base/gstcollectpads.c b/libs/gst/base/gstcollectpads.c
index 8f97b71..8866790 100644
--- a/libs/gst/base/gstcollectpads.c
+++ b/libs/gst/base/gstcollectpads.c
@@ -576,8 +576,8 @@
  * @pads: the collectpads to use
  * @pad: (transfer none): the pad to add
  * @size: the size of the returned #GstCollectData structure
- * @destroy_notify: function to be called before the returned #GstCollectData
- * structure is freed
+ * @destroy_notify: (scope async): function to be called before the returned
+ *   #GstCollectData structure is freed
  * @lock: whether to lock this pad in usual waiting state
  *
  * Add a pad to the collection of collect pads. The pad has to be
@@ -606,8 +606,8 @@
  *
  * MT safe.
  *
- * Returns: a new #GstCollectData to identify the new pad. Or %NULL
- *   if wrong parameters are supplied.
+ * Returns: (nullable) (transfer none): a new #GstCollectData to identify the
+ *   new pad. Or %NULL if wrong parameters are supplied.
  */
 GstCollectData *
 gst_collect_pads_add_pad (GstCollectPads * pads, GstPad * pad, guint size,
@@ -939,7 +939,7 @@
   if ((result = data->buffer))
     gst_buffer_ref (result);
 
-  GST_DEBUG_OBJECT (pads, "Peeking at pad %s:%s: buffer=%p",
+  GST_DEBUG_OBJECT (pads, "Peeking at pad %s:%s: buffer=%" GST_PTR_FORMAT,
       GST_DEBUG_PAD_NAME (data->pad), result);
 
   return result;
@@ -978,7 +978,7 @@
 
   GST_COLLECT_PADS_EVT_BROADCAST (pads);
 
-  GST_DEBUG_OBJECT (pads, "Pop buffer on pad %s:%s: buffer=%p",
+  GST_DEBUG_OBJECT (pads, "Pop buffer on pad %s:%s: buffer=%" GST_PTR_FORMAT,
       GST_DEBUG_PAD_NAME (data->pad), result);
 
   return result;
@@ -1131,7 +1131,7 @@
 gst_collect_pads_read_buffer (GstCollectPads * pads, GstCollectData * data,
     guint size)
 {
-  guint readsize;
+  guint readsize, buf_size;
   GstBuffer *buffer;
 
   g_return_val_if_fail (pads != NULL, NULL);
@@ -1142,7 +1142,8 @@
   if ((buffer = data->buffer) == NULL)
     return NULL;
 
-  readsize = MIN (size, gst_buffer_get_size (buffer) - data->pos);
+  buf_size = gst_buffer_get_size (buffer);
+  readsize = MIN (size, buf_size - data->pos);
 
   return gst_buffer_copy_region (buffer, GST_BUFFER_COPY_ALL, data->pos,
       readsize);
@@ -1315,7 +1316,7 @@
         pads->priv->numpads, GST_DEBUG_FUNCPTR_NAME (func));
 
     if (G_UNLIKELY (g_atomic_int_compare_and_exchange (&pads->priv->seeking,
-                TRUE, FALSE) == TRUE)) {
+                TRUE, FALSE))) {
       GST_INFO_OBJECT (pads, "finished seeking");
     }
     do {
@@ -1333,7 +1334,7 @@
           GST_DEBUG_FUNCPTR_NAME (func));
 
       if (G_UNLIKELY (g_atomic_int_compare_and_exchange (&pads->priv->seeking,
-                  TRUE, FALSE) == TRUE)) {
+                  TRUE, FALSE))) {
         GST_INFO_OBJECT (pads, "finished seeking");
       }
       flow_ret = func (pads, user_data);
@@ -1664,8 +1665,8 @@
     {
       if (g_atomic_int_get (&pads->priv->seeking)) {
         /* drop all but the first FLUSH_STARTs when seeking */
-        if (g_atomic_int_compare_and_exchange (&pads->priv->pending_flush_start,
-                TRUE, FALSE) == FALSE)
+        if (!g_atomic_int_compare_and_exchange (&pads->
+                priv->pending_flush_start, TRUE, FALSE))
           goto eat;
 
         /* unblock collect pads */
@@ -1889,13 +1890,13 @@
 
 /**
  * gst_collect_pads_src_event_default:
- * @pads: the collectpads to use
+ * @pads: the #GstCollectPads to use
  * @pad: src #GstPad that received the event
  * @event: event being processed
  *
  * Default #GstCollectPads event handling for the src pad of elements.
  * Elements can chain up to this to let flushing seek event handling
- * be done by GstCollectPads.
+ * be done by #GstCollectPads.
  *
  * Since: 1.4
  */
diff --git a/libs/gst/base/gstcollectpads.h b/libs/gst/base/gstcollectpads.h
index 0ba2dee..9d56614 100644
--- a/libs/gst/base/gstcollectpads.h
+++ b/libs/gst/base/gstcollectpads.h
@@ -279,7 +279,8 @@
 
 /**
  * GstCollectPads:
- * @data: #GList of #GstCollectData managed by this #GstCollectPads.
+ * @data: (element-type GstBase.CollectData): #GList of #GstCollectData managed
+ *   by this #GstCollectPads.
  *
  * Collectpads object.
  */
diff --git a/libs/gst/base/gstdataqueue.c b/libs/gst/base/gstdataqueue.c
index e34b265..2f9c16a 100644
--- a/libs/gst/base/gstdataqueue.c
+++ b/libs/gst/base/gstdataqueue.c
@@ -142,7 +142,7 @@
 
   /* signals */
   /**
-   * GstDataQueue::empty:
+   * GstDataQueue::empty: (skip)
    * @queue: the queue instance
    *
    * Reports that the queue became empty (empty).
@@ -156,7 +156,7 @@
       g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
 
   /**
-   * GstDataQueue::full:
+   * GstDataQueue::full: (skip)
    * @queue: the queue instance
    *
    * Reports that the queue became full (full).
@@ -217,9 +217,10 @@
  * @checkdata: a #gpointer that will be passed to the @checkfull, @fullcallback,
  *   and @emptycallback callbacks.
  *
- * Creates a new #GstDataQueue. The difference with @gst_data_queue_new is that it will
- * not emit the 'full' and 'empty' signals, but instead calling directly @fullcallback
- * or @emptycallback.
+ * Creates a new #GstDataQueue. If @fullcallback or @emptycallback are supplied, then
+ * the #GstDataQueue will call the respective callback to signal full or empty condition.
+ * If the callbacks are NULL the #GstDataQueue will instead emit 'full' and 'empty'
+ * signals.
  *
  * Returns: a new #GstDataQueue.
  *
@@ -312,7 +313,7 @@
 }
 
 /**
- * gst_data_queue_flush:
+ * gst_data_queue_flush: (skip)
  * @queue: a #GstDataQueue.
  *
  * Flushes all the contents of the @queue. Any call to #gst_data_queue_push and
@@ -331,7 +332,7 @@
 }
 
 /**
- * gst_data_queue_is_empty:
+ * gst_data_queue_is_empty: (skip)
  * @queue: a #GstDataQueue.
  *
  * Queries if there are any items in the @queue.
@@ -354,7 +355,7 @@
 }
 
 /**
- * gst_data_queue_is_full:
+ * gst_data_queue_is_full: (skip)
  * @queue: a #GstDataQueue.
  *
  * Queries if @queue is full. This check will be done using the
@@ -378,7 +379,7 @@
 }
 
 /**
- * gst_data_queue_set_flushing:
+ * gst_data_queue_set_flushing: (skip)
  * @queue: a #GstDataQueue.
  * @flushing: a #gboolean stating if the queue will be flushing or not.
  *
@@ -426,7 +427,7 @@
 }
 
 /**
- * gst_data_queue_push_force:
+ * gst_data_queue_push_force: (skip)
  * @queue: a #GstDataQueue.
  * @item: a #GstDataQueueItem.
  *
@@ -474,7 +475,7 @@
 }
 
 /**
- * gst_data_queue_push:
+ * gst_data_queue_push: (skip)
  * @queue: a #GstDataQueue.
  * @item: a #GstDataQueueItem.
  *
@@ -558,7 +559,7 @@
 }
 
 /**
- * gst_data_queue_pop:
+ * gst_data_queue_pop: (skip)
  * @queue: a #GstDataQueue.
  * @item: pointer to store the returned #GstDataQueueItem.
  *
@@ -628,7 +629,7 @@
 }
 
 /**
- * gst_data_queue_peek:
+ * gst_data_queue_peek: (skip)
  * @queue: a #GstDataQueue.
  * @item: pointer to store the returned #GstDataQueueItem.
  *
@@ -683,7 +684,7 @@
 }
 
 /**
- * gst_data_queue_drop_head:
+ * gst_data_queue_drop_head: (skip)
  * @queue: The #GstDataQueue to drop an item from.
  * @type: The #GType of the item to drop.
  *
@@ -731,7 +732,7 @@
 }
 
 /**
- * gst_data_queue_limits_changed:
+ * gst_data_queue_limits_changed: (skip)
  * @queue: The #GstDataQueue
  *
  * Inform the queue that the limits for the fullness check have changed and that
@@ -755,7 +756,7 @@
 }
 
 /**
- * gst_data_queue_get_level:
+ * gst_data_queue_get_level: (skip)
  * @queue: The #GstDataQueue
  * @level: the location to store the result
  *
diff --git a/libs/gst/base/gstdataqueue.h b/libs/gst/base/gstdataqueue.h
index 7350c42..cc454f8 100644
--- a/libs/gst/base/gstdataqueue.h
+++ b/libs/gst/base/gstdataqueue.h
@@ -43,7 +43,7 @@
 typedef struct _GstDataQueuePrivate GstDataQueuePrivate;
 
 /**
- * GstDataQueueItem:
+ * GstDataQueueItem: (skip)
  * @object: the #GstMiniObject to queue.
  * @size: the size in bytes of the miniobject.
  * @duration: the duration in #GstClockTime of the miniobject. Can not be
@@ -72,7 +72,7 @@
 };
 
 /**
- * GstDataQueueSize:
+ * GstDataQueueSize: (skip)
  * @visible: number of buffers
  * @bytes: number of bytes
  * @time: amount of time
@@ -87,7 +87,7 @@
 };
 
 /**
- * GstDataQueueCheckFullFunction:
+ * GstDataQueueCheckFullFunction: (skip)
  * @queue: a #GstDataQueue.
  * @visible: The number of visible items currently in the queue.
  * @bytes: The amount of bytes currently in the queue.
@@ -120,6 +120,9 @@
   gpointer _gst_reserved[GST_PADDING];
 };
 
+/**
+ * GstDataQueueClass:
+ */
 struct _GstDataQueueClass
 {
   GObjectClass parent_class;
diff --git a/libs/gst/base/gstflowcombiner.c b/libs/gst/base/gstflowcombiner.c
index e21f6c2..9dd5123 100644
--- a/libs/gst/base/gstflowcombiner.c
+++ b/libs/gst/base/gstflowcombiner.c
@@ -41,9 +41,7 @@
  * Please be aware that this struct isn't thread safe as its designed to be
  *  used by demuxers, those usually will have a single thread operating it.
  *
- * None of these functions will take refs on the passed #GstPad<!-- -->s, it
- * is the caller's responsibility to make sure that the #GstPad exists as long
- * as this struct exists.
+ * These functions will take refs on the passed #GstPad<!-- -->s.
  *
  * Aside from reducing the user's code size, the main advantage of using this
  * helper struct is to follow the standard rules for #GstFlowReturn combination.
@@ -140,6 +138,50 @@
   }
 }
 
+/**
+ * gst_flow_combiner_clear:
+ * @combiner: the #GstFlowCombiner to clear
+ *
+ * Removes all pads from a #GstFlowCombiner and resets it to its initial state.
+ *
+ * Since: 1.6
+ */
+void
+gst_flow_combiner_clear (GstFlowCombiner * combiner)
+{
+  GstPad *pad;
+
+  g_return_if_fail (combiner != NULL);
+
+  while ((pad = g_queue_pop_head (&combiner->pads)))
+    gst_object_unref (pad);
+  combiner->last_ret = GST_FLOW_OK;
+}
+
+/**
+ * gst_flow_combiner_reset:
+ * @combiner: the #GstFlowCombiner to clear
+ *
+ * Removes all pads from a #GstFlowCombiner and resets it to its initial state.
+ *
+ * Since: 1.6
+ */
+void
+gst_flow_combiner_reset (GstFlowCombiner * combiner)
+{
+  GList *iter;
+
+  g_return_if_fail (combiner != NULL);
+
+  GST_DEBUG ("Reset flow returns");
+
+  for (iter = combiner->pads.head; iter; iter = iter->next) {
+    GST_PAD_LAST_FLOW_RETURN (iter->data) = GST_FLOW_OK;
+  }
+
+  combiner->last_ret = GST_FLOW_OK;
+}
+
 static GstFlowReturn
 gst_flow_combiner_get_flow (GstFlowCombiner * combiner)
 {
@@ -182,7 +224,7 @@
  *
  * Computes the combined flow return for the pads in it.
  *
- * The #GstFlowReturn paramter should be the last flow return update for a pad
+ * The #GstFlowReturn parameter should be the last flow return update for a pad
  * in this #GstFlowCombiner. It will use this value to be able to shortcut some
  * combinations and avoid looking over all pads again. e.g. The last combined
  * return is the same as the latest obtained #GstFlowReturn.
@@ -211,6 +253,34 @@
 }
 
 /**
+ * gst_flow_combiner_update_pad_flow:
+ * @combiner: the #GstFlowCombiner
+ * @pad: the #GstPad whose #GstFlowReturn to update
+ * @fret: the latest #GstFlowReturn received for a pad in this #GstFlowCombiner
+ *
+ * Sets the provided pad's last flow return to provided value and computes
+ * the combined flow return for the pads in it.
+ *
+ * The #GstFlowReturn parameter should be the last flow return update for a pad
+ * in this #GstFlowCombiner. It will use this value to be able to shortcut some
+ * combinations and avoid looking over all pads again. e.g. The last combined
+ * return is the same as the latest obtained #GstFlowReturn.
+ *
+ * Returns: The combined #GstFlowReturn
+ * Since: 1.6
+ */
+GstFlowReturn
+gst_flow_combiner_update_pad_flow (GstFlowCombiner * combiner, GstPad * pad,
+    GstFlowReturn fret)
+{
+  g_return_val_if_fail (pad != NULL, GST_FLOW_ERROR);
+
+  GST_PAD_LAST_FLOW_RETURN (pad) = fret;
+
+  return gst_flow_combiner_update_flow (combiner, fret);
+}
+
+/**
  * gst_flow_combiner_add_pad:
  * @combiner: the #GstFlowCombiner
  * @pad: (transfer none): the #GstPad that is being added
diff --git a/libs/gst/base/gstflowcombiner.h b/libs/gst/base/gstflowcombiner.h
index 43c37e3..79e4bed 100644
--- a/libs/gst/base/gstflowcombiner.h
+++ b/libs/gst/base/gstflowcombiner.h
@@ -47,10 +47,17 @@
 
 GstFlowReturn     gst_flow_combiner_update_flow (GstFlowCombiner * combiner, GstFlowReturn fret);
 
+GstFlowReturn     gst_flow_combiner_update_pad_flow (GstFlowCombiner * combiner, GstPad * pad,
+                                                     GstFlowReturn fret);
+
 void              gst_flow_combiner_add_pad    (GstFlowCombiner * combiner, GstPad * pad);
 
 void              gst_flow_combiner_remove_pad (GstFlowCombiner * combiner, GstPad * pad);
 
+void              gst_flow_combiner_clear (GstFlowCombiner * combiner);
+
+void              gst_flow_combiner_reset (GstFlowCombiner * combiner);
+
 GType             gst_flow_combiner_get_type (void);
 
 G_END_DECLS
diff --git a/libs/gst/base/gstindex.c b/libs/gst/base/gstindex.c
index b614d2c..272f0e7 100644
--- a/libs/gst/base/gstindex.c
+++ b/libs/gst/base/gstindex.c
@@ -918,7 +918,7 @@
  *
  * Finds the given format/value in the index
  *
- * Returns: the entry associated with the value or %NULL if the
+ * Returns: (nullable): the entry associated with the value or %NULL if the
  *   value was not found.
  */
 GstIndexEntry *
@@ -949,7 +949,7 @@
  * Finds the given format/value in the index with the given
  * compare function and user_data.
  *
- * Returns: the entry associated with the value or %NULL if the
+ * Returns: (nullable): the entry associated with the value or %NULL if the
  *   value was not found.
  */
 GstIndexEntry *
diff --git a/libs/gst/base/gstqueuearray.c b/libs/gst/base/gstqueuearray.c
index d37535d..5ff03fd 100644
--- a/libs/gst/base/gstqueuearray.c
+++ b/libs/gst/base/gstqueuearray.c
@@ -44,7 +44,7 @@
 };
 
 /**
- * gst_queue_array_new:
+ * gst_queue_array_new: (skip)
  * @initial_size: Initial size of the new queue
  *
  * Allocates a new #GstQueueArray object with an initial
@@ -70,7 +70,7 @@
 
 
 /**
- * gst_queue_array_free:
+ * gst_queue_array_free: (skip)
  * @array: a #GstQueueArray object
  *
  * Frees queue @array and all memory associated to it.
@@ -85,7 +85,7 @@
 }
 
 /**
- * gst_queue_array_pop_head:
+ * gst_queue_array_pop_head: (skip)
  * @array: a #GstQueueArray object
  *
  * Returns and head of the queue @array and removes
@@ -111,7 +111,7 @@
 }
 
 /**
- * gst_queue_array_peek_head:
+ * gst_queue_array_peek_head: (skip)
  * @array: a #GstQueueArray object
  *
  * Returns and head of the queue @array and does not
@@ -131,7 +131,7 @@
 }
 
 /**
- * gst_queue_array_push_tail:
+ * gst_queue_array_push_tail: (skip)
  * @array: a #GstQueueArray object
  * @data: object to push
  *
@@ -183,7 +183,7 @@
 }
 
 /**
- * gst_queue_array_is_empty:
+ * gst_queue_array_is_empty: (skip)
  * @array: a #GstQueueArray object
  *
  * Checks if the queue @array is empty.
@@ -199,7 +199,7 @@
 }
 
 /**
- * gst_queue_array_drop_element:
+ * gst_queue_array_drop_element: (skip)
  * @array: a #GstQueueArray object
  * @idx: index to drop
  *
@@ -285,7 +285,7 @@
 }
 
 /**
- * gst_queue_array_find:
+ * gst_queue_array_find: (skip)
  * @array: a #GstQueueArray object
  * @func: (allow-none): comparison function, or %NULL to find @data by value
  * @data: data for comparison function
@@ -325,7 +325,7 @@
 }
 
 /**
- * gst_queue_array_get_length:
+ * gst_queue_array_get_length: (skip)
  * @array: a #GstQueueArray object
  *
  * Returns the length of the queue @array
diff --git a/libs/gst/base/gstqueuearray.h b/libs/gst/base/gstqueuearray.h
index b640886..bfe89e7 100644
--- a/libs/gst/base/gstqueuearray.h
+++ b/libs/gst/base/gstqueuearray.h
@@ -24,6 +24,9 @@
 #ifndef __GST_QUEUE_ARRAY_H__
 #define __GST_QUEUE_ARRAY_H__
 
+/**
+ * GstQueueArray: (skip)
+ */
 typedef struct _GstQueueArray GstQueueArray;
 
 GstQueueArray * gst_queue_array_new       (guint initial_size);
diff --git a/libs/gst/base/gsttypefindhelper.c b/libs/gst/base/gsttypefindhelper.c
index 1a0d327..b2fb21c 100644
--- a/libs/gst/base/gsttypefindhelper.c
+++ b/libs/gst/base/gsttypefindhelper.c
@@ -75,8 +75,8 @@
  * for performance reasons, but mostly because pointers returned by us need
  * to stay valid until typefinding has finished)
  *
- * Returns: address of the data or %NULL if buffer does not cover the
- * requested range.
+ * Returns: (nullable): address of the data or %NULL if buffer does not cover
+ * the requested range.
  */
 static const guint8 *
 helper_find_peek (gpointer data, gint64 offset, guint size)
@@ -269,8 +269,8 @@
  *
  * Free-function: gst_caps_unref
  *
- * Returns: (transfer full): the #GstCaps corresponding to the data stream.
- *     Returns %NULL if no #GstCaps matches the data stream.
+ * Returns: (transfer full) (nullable): the #GstCaps corresponding to the data
+ *     stream.  Returns %NULL if no #GstCaps matches the data stream.
  */
 GstCaps *
 gst_type_find_helper_get_range (GstObject * obj, GstObject * parent,
@@ -388,8 +388,8 @@
  *
  * Free-function: gst_caps_unref
  *
- * Returns: (transfer full): the #GstCaps corresponding to the data stream.
- *     Returns %NULL if no #GstCaps matches the data stream.
+ * Returns: (transfer full) (nullable): the #GstCaps corresponding to the data
+ *     stream.  Returns %NULL if no #GstCaps matches the data stream.
  */
 
 GstCaps *
@@ -426,8 +426,8 @@
  *
  * Get data pointer within a buffer.
  *
- * Returns: address inside the buffer or %NULL if buffer does not cover the
- * requested range.
+ * Returns: (nullable): address inside the buffer or %NULL if buffer does not
+ * cover the requested range.
  */
 static const guint8 *
 buf_helper_find_peek (gpointer data, gint64 off, guint size)
@@ -499,9 +499,9 @@
  *
  * Free-function: gst_caps_unref
  *
- * Returns: (transfer full): the #GstCaps corresponding to the data, or %NULL
- *     if no type could be found. The caller should free the caps returned
- *     with gst_caps_unref().
+ * Returns: (transfer full) (nullable): the #GstCaps corresponding to the data,
+ *     or %NULL if no type could be found. The caller should free the caps
+ *     returned with gst_caps_unref().
  */
 GstCaps *
 gst_type_find_helper_for_data (GstObject * obj, const guint8 * data, gsize size,
@@ -570,9 +570,9 @@
  *
  * Free-function: gst_caps_unref
  *
- * Returns: (transfer full): the #GstCaps corresponding to the data, or %NULL
- *     if no type could be found. The caller should free the caps returned
- *     with gst_caps_unref().
+ * Returns: (transfer full) (nullable): the #GstCaps corresponding to the data,
+ *     or %NULL if no type could be found. The caller should free the caps
+ *     returned with gst_caps_unref().
  */
 GstCaps *
 gst_type_find_helper_for_buffer (GstObject * obj, GstBuffer * buf,
@@ -607,9 +607,9 @@
  *
  * Free-function: gst_caps_unref
  *
- * Returns: (transfer full): the #GstCaps corresponding to @extension, or
- *     %NULL if no type could be found. The caller should free the caps
- *     returned with gst_caps_unref().
+ * Returns: (transfer full) (nullable): the #GstCaps corresponding to
+ *     @extension, or %NULL if no type could be found. The caller should free
+ *     the caps returned with gst_caps_unref().
  */
 GstCaps *
 gst_type_find_helper_for_extension (GstObject * obj, const gchar * extension)
diff --git a/libs/gst/check/Makefile.am b/libs/gst/check/Makefile.am
index 1389270..8c2a1b3 100644
--- a/libs/gst/check/Makefile.am
+++ b/libs/gst/check/Makefile.am
@@ -2,11 +2,8 @@
 
 SYMBOLS_FILE = exports.sym
 
-BUILT_SOURCES = internal-check.h
-
 libgstcheck_@GST_API_VERSION@_la_DEPENDENCIES = \
 	$(top_builddir)/gst/libgstreamer-@GST_API_VERSION@.la \
-	internal-check.h \
 	$(SYMBOLS_FILE)
 libgstcheck_@GST_API_VERSION@_la_SOURCES =	\
 	gstbufferstraw.c			\
@@ -35,12 +32,9 @@
 	gsttestclock.h
 
 nodist_libgstcheck_@GST_API_VERSION@include_HEADERS =	\
-	internal-check.h	
+	internal-check.h
 
-CLEANFILES = *.gcno *.gcda *.gcov internal-check.h $(SYMBOLS_FILE)
-
-internal-check.h: $(top_builddir)/libs/gst/check/libcheck/check.h
-	$(AM_V_GEN)cp $(top_builddir)/libs/gst/check/libcheck/check.h internal-check.h
+CLEANFILES = *.gcno *.gcda *.gcov $(SYMBOLS_FILE)
 
 %.c.gcov: .libs/libgstcheck_@GST_API_VERSION@_la-%.gcda %.c
 	$(GCOV) -b -f -o $^ > $@.out
@@ -93,6 +87,8 @@
 	gst_check_teardown_pad_by_name \
 	gst_check_teardown_sink_pad \
 	gst_check_teardown_src_pad \
+	gst_check_objects_destroyed_on_unref \
+	gst_check_object_destroyed_on_unref \
 	gst_consistency_checker_add_pad \
 	gst_consistency_checker_new \
 	gst_consistency_checker_reset \
@@ -113,10 +109,14 @@
 	gst_test_clock_process_id_list \
 	gst_test_clock_id_list_get_latest_time
 
+# For backwards compatibility with GStreamer < 1.5
+LIBGSTCHECK_EXPORTED_COMPAT_FUNCS = \
+	_fail_unless
 
 LIBGSTCHECK_EXPORTED_SYMBOLS = \
 	$(LIBGSTCHECK_EXPORTED_VARS) \
-	$(LIBGSTCHECK_EXPORTED_FUNCS)
+	$(LIBGSTCHECK_EXPORTED_FUNCS) \
+	$(LIBGSTCHECK_EXPORTED_COMPAT_FUNCS)
 
 # Please do not even think about changing the alphabet below into A-Za-z.
 # It is there for purpose. (Bug #602093)
@@ -126,7 +126,7 @@
 	  echo $$s; \
 	done;
 
-$(SYMBOLS_FILE): $(libgstcheck_@GST_API_VERSION@include_HEADERS) libcheck/check.h
+$(SYMBOLS_FILE): $(libgstcheck_@GST_API_VERSION@include_HEADERS) internal-check.h
 	$(AM_V_GEN)rm -f $(SYMBOLS_FILE) 2>/dev/null; \
 	for s in $(LIBGSTCHECK_EXPORTED_SYMBOLS) $(CHECK_SYMS); do \
 	  echo $$s >> $(SYMBOLS_FILE); \
diff --git a/libs/gst/check/Makefile.in b/libs/gst/check/Makefile.in
index 9f470d4..cf358d2 100644
--- a/libs/gst/check/Makefile.in
+++ b/libs/gst/check/Makefile.in
@@ -84,6 +84,7 @@
 @HAVE_INTROSPECTION_TRUE@am__append_1 = $(BUILT_GIRSOURCES) $(typelibs_DATA)
 subdir = libs/gst/check
 DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+	$(top_srcdir)/libs/gst/check/libcheck/check.h.in \
 	$(top_srcdir)/depcomp \
 	$(libgstcheck_@GST_API_VERSION@include_HEADERS)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -94,6 +95,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -111,7 +113,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -126,7 +128,7 @@
 	$(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_FILES = internal-check.h
 CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
@@ -292,6 +294,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -397,6 +403,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -560,10 +567,8 @@
 top_srcdir = @top_srcdir@
 lib_LTLIBRARIES = libgstcheck-@GST_API_VERSION@.la
 SYMBOLS_FILE = exports.sym
-BUILT_SOURCES = internal-check.h
 libgstcheck_@GST_API_VERSION@_la_DEPENDENCIES = \
 	$(top_builddir)/gst/libgstreamer-@GST_API_VERSION@.la \
-	internal-check.h \
 	$(SYMBOLS_FILE)
 
 libgstcheck_@GST_API_VERSION@_la_SOURCES = \
@@ -595,10 +600,9 @@
 	gsttestclock.h
 
 nodist_libgstcheck_@GST_API_VERSION@include_HEADERS = \
-	internal-check.h	
+	internal-check.h
 
-CLEANFILES = *.gcno *.gcda *.gcov internal-check.h $(SYMBOLS_FILE) \
-	$(am__append_1)
+CLEANFILES = *.gcno *.gcda *.gcov $(SYMBOLS_FILE) $(am__append_1)
 SUBDIRS = libcheck
 LIBGSTCHECK_EXPORTED_VARS = \
 	_gst_check_threads_running \
@@ -644,6 +648,8 @@
 	gst_check_teardown_pad_by_name \
 	gst_check_teardown_sink_pad \
 	gst_check_teardown_src_pad \
+	gst_check_objects_destroyed_on_unref \
+	gst_check_object_destroyed_on_unref \
 	gst_consistency_checker_add_pad \
 	gst_consistency_checker_new \
 	gst_consistency_checker_reset \
@@ -664,9 +670,15 @@
 	gst_test_clock_process_id_list \
 	gst_test_clock_id_list_get_latest_time
 
+
+# For backwards compatibility with GStreamer < 1.5
+LIBGSTCHECK_EXPORTED_COMPAT_FUNCS = \
+	_fail_unless
+
 LIBGSTCHECK_EXPORTED_SYMBOLS = \
 	$(LIBGSTCHECK_EXPORTED_VARS) \
-	$(LIBGSTCHECK_EXPORTED_FUNCS)
+	$(LIBGSTCHECK_EXPORTED_FUNCS) \
+	$(LIBGSTCHECK_EXPORTED_COMPAT_FUNCS)
 
 
 # Please do not even think about changing the alphabet below into A-Za-z.
@@ -682,8 +694,7 @@
 @HAVE_INTROSPECTION_TRUE@gir_DATA = $(BUILT_GIRSOURCES)
 @HAVE_INTROSPECTION_TRUE@typelibsdir = $(libdir)/girepository-1.0/
 @HAVE_INTROSPECTION_TRUE@typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib)
-all: $(BUILT_SOURCES)
-	$(MAKE) $(AM_MAKEFLAGS) all-recursive
+all: all-recursive
 
 .SUFFIXES:
 .SUFFIXES: .c .lo .o .obj
@@ -717,6 +728,8 @@
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
+internal-check.h: $(top_builddir)/config.status $(top_srcdir)/libs/gst/check/libcheck/check.h.in
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 
 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
@@ -1064,16 +1077,14 @@
 	  fi; \
 	done
 check-am: all-am
-check: $(BUILT_SOURCES)
-	$(MAKE) $(AM_MAKEFLAGS) check-recursive
+check: check-recursive
 all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
 installdirs: installdirs-recursive
 installdirs-am:
 	for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibsdir)" "$(DESTDIR)$(libgstcheck_@GST_API_VERSION@includedir)" "$(DESTDIR)$(libgstcheck_@GST_API_VERSION@includedir)"; do \
 	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 	done
-install: $(BUILT_SOURCES)
-	$(MAKE) $(AM_MAKEFLAGS) install-recursive
+install: install-recursive
 install-exec: install-exec-recursive
 install-data: install-data-recursive
 uninstall: uninstall-recursive
@@ -1104,7 +1115,6 @@
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
 	@echo "it deletes files that may require special tools to rebuild."
-	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 clean: clean-recursive
 
 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
@@ -1182,8 +1192,7 @@
 	uninstall-nodist_libgstcheck_@GST_API_VERSION@includeHEADERS \
 	uninstall-typelibsDATA
 
-.MAKE: $(am__recursive_targets) all check install install-am \
-	install-strip
+.MAKE: $(am__recursive_targets) install-am install-strip
 
 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
 	check-am clean clean-generic clean-libLTLIBRARIES \
@@ -1209,9 +1218,6 @@
 	uninstall-typelibsDATA
 
 
-internal-check.h: $(top_builddir)/libs/gst/check/libcheck/check.h
-	$(AM_V_GEN)cp $(top_builddir)/libs/gst/check/libcheck/check.h internal-check.h
-
 %.c.gcov: .libs/libgstcheck_@GST_API_VERSION@_la-%.gcda %.c
 	$(GCOV) -b -f -o $^ > $@.out
 
@@ -1221,7 +1227,7 @@
 	  echo $$s; \
 	done;
 
-$(SYMBOLS_FILE): $(libgstcheck_@GST_API_VERSION@include_HEADERS) libcheck/check.h
+$(SYMBOLS_FILE): $(libgstcheck_@GST_API_VERSION@include_HEADERS) internal-check.h
 	$(AM_V_GEN)rm -f $(SYMBOLS_FILE) 2>/dev/null; \
 	for s in $(LIBGSTCHECK_EXPORTED_SYMBOLS) $(CHECK_SYMS); do \
 	  echo $$s >> $(SYMBOLS_FILE); \
diff --git a/libs/gst/check/gstcheck.c b/libs/gst/check/gstcheck.c
index 454ebb2..41695ba 100644
--- a/libs/gst/check/gstcheck.c
+++ b/libs/gst/check/gstcheck.c
@@ -27,9 +27,9 @@
  * These macros and functions are for internal use of the unit tests found
  * inside the 'check' directories of various GStreamer packages.
  *
- * One notable feature is that one can use the environment variables GST_CHECK
- * and GST_CHECK_IGNORE to select which tests to run or skip. Both variables
- * can contain a comman separated list of test name globs (e.g. test_*).
+ * One notable feature is that one can use the environment variables GST_CHECKS
+ * and GST_CHECKS_IGNORE to select which tests to run or skip. Both variables
+ * can contain a comma separated list of test name globs (e.g. test_*).
  */
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -55,7 +55,7 @@
 GMutex check_mutex;
 GCond check_cond;
 
-/* FIXME 0.11: shouldn't _gst_check_debug be static? Not used anywhere */
+/* FIXME 2.0: shouldn't _gst_check_debug be static? Not used anywhere */
 gboolean _gst_check_debug = FALSE;
 gboolean _gst_check_raised_critical = FALSE;
 gboolean _gst_check_raised_warning = FALSE;
@@ -243,7 +243,9 @@
  * @element: element to setup pad on
  * @tmpl: pad template
  *
- * Returns: (transfer full): a new pad
+ * Does the same as #gst_check_setup_src_pad_by_name with the <emphasis> name </emphasis> parameter equal to "sink".
+ *
+ * Returns: (transfer full): A new pad that can be used to inject data on @element
  */
 GstPad *
 gst_check_setup_src_pad (GstElement * element, GstStaticPadTemplate * tmpl)
@@ -253,11 +255,45 @@
 
 /**
  * gst_check_setup_src_pad_by_name:
- * @element: element to setup pad on
+ * @element: element to setup src pad on
  * @tmpl: pad template
- * @name: name
+ * @name: Name of the @element sink pad that will be linked to the src pad that will be setup
  *
- * Returns: (transfer full): a new pad
+ * Creates a new src pad (based on the given @tmpl) and links it to the given @element sink pad (the pad that matches the given @name).
+ * Before using the src pad to push data on @element you need to call #gst_check_setup_events on the created src pad.
+ *
+ * Example of how to push a buffer on @element:
+ *
+ * |[<!-- language="C" -->
+ * static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink",
+ * GST_PAD_SINK,
+ * GST_PAD_ALWAYS,
+ * GST_STATIC_CAPS (YOUR_CAPS_TEMPLATE_STRING)
+ * );
+ * static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src",
+ * GST_PAD_SRC,
+ * GST_PAD_ALWAYS,
+ * GST_STATIC_CAPS (YOUR_CAPS_TEMPLATE_STRING)
+ * );
+ *
+ * GstElement * element = gst_check_setup_element ("element");
+ * GstPad * mysrcpad = gst_check_setup_src_pad (element, &srctemplate);
+ * GstPad * mysinkpad = gst_check_setup_sink_pad (element, &sinktemplate);
+ *
+ * gst_pad_set_active (mysrcpad, TRUE);
+ * gst_pad_set_active (mysinkpad, TRUE);
+ * fail_unless (gst_element_set_state (element, GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS, "could not set to playing");
+ *
+ * GstCaps * caps = gst_caps_from_string (YOUR_DESIRED_SINK_CAPS);
+ * gst_check_setup_events (mysrcpad, element, caps, GST_FORMAT_TIME);
+ * gst_caps_unref (caps);
+ *
+ * fail_unless (gst_pad_push (mysrcpad, gst_buffer_new_and_alloc(2)) == GST_FLOW_OK);
+ * ]|
+ *
+ * For very simple input/output test scenarios checkout #gst_check_element_push_buffer_list and #gst_check_element_push_buffer.
+ *
+ * Returns: (transfer full): A new pad that can be used to inject data on @element
  */
 GstPad *
 gst_check_setup_src_pad_by_name (GstElement * element,
@@ -266,8 +302,7 @@
   GstPadTemplate *ptmpl = gst_static_pad_template_get (tmpl);
   GstPad *srcpad;
 
-  srcpad =
-      gst_check_setup_src_pad_by_name_from_template (element, ptmpl, "sink");
+  srcpad = gst_check_setup_src_pad_by_name_from_template (element, ptmpl, name);
 
   gst_object_unref (ptmpl);
 
@@ -280,6 +315,8 @@
  * @tmpl: pad template
  *
  * Returns: (transfer full): a new pad
+ *
+ * Since: 1.4
  */
 GstPad *
 gst_check_setup_src_pad_from_template (GstElement * element,
@@ -295,6 +332,8 @@
  * @name: name
  *
  * Returns: (transfer full): a new pad
+ *
+ * Since: 1.4
  */
 GstPad *
 gst_check_setup_src_pad_by_name_from_template (GstElement * element,
@@ -366,7 +405,9 @@
  * @element: element to setup pad on
  * @tmpl: pad template
  *
- * Returns: (transfer full): a new pad
+ * Does the same as #gst_check_setup_sink_pad_by_name with the <emphasis> name </emphasis> parameter equal to "src".
+ *
+ * Returns: (transfer full): a new pad that can be used to check the output of @element
  */
 GstPad *
 gst_check_setup_sink_pad (GstElement * element, GstStaticPadTemplate * tmpl)
@@ -378,9 +419,13 @@
  * gst_check_setup_sink_pad_by_name:
  * @element: element to setup pad on
  * @tmpl: pad template
- * @name: name
+ * @name: Name of the @element src pad that will be linked to the sink pad that will be setup
  *
- * Returns: (transfer full): a new pad
+ * Creates a new sink pad (based on the given @tmpl) and links it to the given @element src pad 
+ * (the pad that matches the given @name).
+ * You can set event/chain/query functions on this pad to check the output of the @element.
+ *
+ * Returns: (transfer full): a new pad that can be used to check the output of @element
  */
 GstPad *
 gst_check_setup_sink_pad_by_name (GstElement * element,
@@ -390,7 +435,7 @@
   GstPad *sinkpad;
 
   sinkpad =
-      gst_check_setup_sink_pad_by_name_from_template (element, ptmpl, "src");
+      gst_check_setup_sink_pad_by_name_from_template (element, ptmpl, name);
 
   gst_object_unref (ptmpl);
 
@@ -403,6 +448,8 @@
  * @tmpl: pad template
  *
  * Returns: (transfer full): a new pad
+ *
+ * Since: 1.4
  */
 GstPad *
 gst_check_setup_sink_pad_from_template (GstElement * element,
@@ -418,6 +465,8 @@
  * @name: name
  *
  * Returns: (transfer full): a new pad
+ *
+ * Since: 1.4
  */
 GstPad *
 gst_check_setup_sink_pad_by_name_from_template (GstElement * element,
@@ -539,20 +588,22 @@
  * @element_name: name of the element that needs to be created
  * @buffer_in: (element-type GstBuffer) (transfer full): a list of buffers that needs to be
  *  pushed to the element
+ * @caps_in: the #GstCaps expected of the sinkpad of the element
  * @buffer_out: (element-type GstBuffer) (transfer full): a list of buffers that we expect from
  * the element
+ * @caps_out: the #GstCaps expected of the srcpad of the element
  * @last_flow_return: the last buffer push needs to give this GstFlowReturn
  *
- * Create an @element with the factory with the name and push the buffers in
- * @buffer_in to this element. The element should create the buffers equal to
- * the buffers in @buffer_out. We only check the caps, size and the data of the
- * buffers. This function unrefs the buffers in the two lists.
+ * Create an element using the factory providing the @element_name and push the
+ * buffers in @buffer_in to this element. The element should create the buffers
+ * equal to the buffers in @buffer_out. We only check the size and the data of
+ * the buffers. This function unrefs the buffers in the two lists.
  * The last_flow_return parameter indicates the expected flow return value from
  * pushing the final buffer in the list.
  * This can be used to set up a test which pushes some buffers and then an
  * invalid buffer, when the final buffer is expected to fail, for example.
  */
-/* FIXME 0.11: rename this function now that there's GstBufferList? */
+/* FIXME 2.0: rename this function now that there's GstBufferList? */
 void
 gst_check_element_push_buffer_list (const gchar * element_name,
     GList * buffer_in, GstCaps * caps_in, GList * buffer_out,
@@ -686,10 +737,12 @@
  * gst_check_element_push_buffer:
  * @element_name: name of the element that needs to be created
  * @buffer_in: push this buffer to the element
+ * @caps_in: the #GstCaps expected of the sinkpad of the element
  * @buffer_out: compare the result with this buffer
+ * @caps_out: the #GstCaps expected of the srcpad of the element
  *
- * Create an @element with the factory with the name and push the
- * @buffer_in to this element. The element should create one buffer
+ * Create an element using the factory providing the @element_name and
+ * push the @buffer_in to this element. The element should create one buffer
  * and this will be compared with @buffer_out. We only check the caps
  * and the data of the buffers. This function unrefs the buffers.
  */
@@ -873,3 +926,113 @@
       stream_id);
   g_free (stream_id);
 }
+
+typedef struct _DestroyedObjectStruct
+{
+  GObject *object;
+  gboolean destroyed;
+} DestroyedObjectStruct;
+
+static void
+weak_notify (DestroyedObjectStruct * destroyed, GObject ** object)
+{
+  destroyed->destroyed = TRUE;
+}
+
+/**
+ * gst_check_objects_destroyed_on_unref:
+ * @object_to_unref: The #GObject to unref
+ * @first_object: (allow-none): The first object that should be destroyed as a
+ * concequence of unrefing @object_to_unref.
+ * @... : Additional object that should have been destroyed.
+ *
+ * Unrefs @object_to_unref and checks that is has properly been
+ * destroyed, also checks that the other objects passed in
+ * parametter have been destroyed as a concequence of
+ * unrefing @object_to_unref. Last variable argument should be NULL.
+ *
+ * Since: 1.6
+ */
+void
+gst_check_objects_destroyed_on_unref (gpointer object_to_unref,
+    gpointer first_object, ...)
+{
+  GObject *object;
+  GList *objs = NULL, *tmp;
+  DestroyedObjectStruct *destroyed = g_slice_new0 (DestroyedObjectStruct);
+
+  destroyed->object = object_to_unref;
+  g_object_weak_ref (object_to_unref, (GWeakNotify) weak_notify, destroyed);
+  objs = g_list_prepend (objs, destroyed);
+
+  if (first_object) {
+    va_list varargs;
+
+    object = first_object;
+
+    va_start (varargs, first_object);
+    while (object) {
+      destroyed = g_slice_new0 (DestroyedObjectStruct);
+      destroyed->object = object;
+      g_object_weak_ref (object, (GWeakNotify) weak_notify, destroyed);
+      objs = g_list_prepend (objs, destroyed);
+      object = va_arg (varargs, GObject *);
+    }
+    va_end (varargs);
+  }
+  gst_object_unref (object_to_unref);
+
+  for (tmp = objs; tmp; tmp = tmp->next) {
+    DestroyedObjectStruct *destroyed = tmp->data;
+
+    if (!destroyed->destroyed) {
+      fail_unless (destroyed->destroyed,
+          "%s_%p is not destroyed, %d refcounts left!",
+          GST_IS_OBJECT (destroyed->
+              object) ? GST_OBJECT_NAME (destroyed->object) :
+          G_OBJECT_TYPE_NAME (destroyed), destroyed->object,
+          destroyed->object->ref_count);
+    }
+    g_slice_free (DestroyedObjectStruct, tmp->data);
+  }
+  g_list_free (objs);
+}
+
+/**
+ * gst_check_object_destroyed_on_unref:
+ * @object_to_unref: The #GObject to unref
+ *
+ * Unrefs @object_to_unref and checks that is has properly been
+ * destroyed.
+ *
+ * Since: 1.6
+ */
+void
+gst_check_object_destroyed_on_unref (gpointer object_to_unref)
+{
+  gst_check_objects_destroyed_on_unref (object_to_unref, NULL, NULL);
+}
+
+/* For ABI compatibility with GStreamer < 1.5 */
+void
+_fail_unless (int result, const char *file, int line, const char *expr, ...)
+G_GNUC_PRINTF (4, 5);
+
+void _fail_unless (int result, const char *file, int line,
+    const char *expr, ...)
+{
+  gchar *msg;
+  va_list args;
+
+  if (result) {
+    _mark_point(file, line);
+    return;
+  }
+
+  va_start (args, expr);
+  msg = g_strdup_vprintf (expr, args);
+  va_end (args);
+
+  _ck_assert_failed (file, line, msg, NULL);
+  g_free (msg);
+}
diff --git a/libs/gst/check/gstcheck.h b/libs/gst/check/gstcheck.h
index ee92579..77f4596 100644
--- a/libs/gst/check/gstcheck.h
+++ b/libs/gst/check/gstcheck.h
@@ -107,6 +107,9 @@
 void gst_check_setup_events_with_stream_id (GstPad * srcpad,
     GstElement * element, GstCaps * caps, GstFormat format,
     const gchar * stream_id);
+void gst_check_objects_destroyed_on_unref (gpointer object_to_unref, gpointer first_object, ...)
+  G_GNUC_NULL_TERMINATED;
+void gst_check_object_destroyed_on_unref (gpointer object_to_unref);
 
 #define fail_unless_message_error(msg, domain, code)            \
 gst_check_message_error (msg, GST_MESSAGE_ERROR,                \
@@ -416,6 +419,9 @@
 
 #define MAIN_INIT()                     \
 G_STMT_START {                          \
+  g_mutex_init (&mutex);                \
+  g_cond_init (&start_cond);            \
+  g_cond_init (&sync_cond);             \
   _gst_check_threads_running = TRUE;    \
 } G_STMT_END;
 
@@ -459,6 +465,9 @@
   g_list_foreach (thread_list, (GFunc) g_thread_join, NULL);    \
   g_list_free (thread_list);                                    \
   thread_list = NULL;                                           \
+  g_mutex_clear (&mutex);                                       \
+  g_cond_clear (&start_cond);                                   \
+  g_cond_clear (&sync_cond);                                    \
   GST_DEBUG ("MAIN: joined");                                   \
 } G_STMT_END;
 
@@ -478,6 +487,8 @@
 G_STMT_START {                                                  \
   /* synchronize everyone */                                    \
   GST_DEBUG ("THREAD %p: syncing", g_thread_self ());           \
+  fail_if (g_mutex_trylock (&mutex),                            \
+      "bug in unit test, mutex should be locked at this point");\
   g_cond_wait (&sync_cond, &mutex);                             \
   GST_DEBUG ("THREAD %p: synced", g_thread_self ());            \
   g_mutex_unlock (&mutex);                                      \
@@ -489,7 +500,7 @@
   g_usleep (1);                                                 \
 } G_STMT_END;
 
-#define THREAD_TEST_RUNNING()   (_gst_check_threads_running == TRUE)
+#define THREAD_TEST_RUNNING()   (!!_gst_check_threads_running)
 
 /* additional assertions */
 #define ASSERT_CRITICAL(code)                                   \
@@ -497,8 +508,9 @@
   _gst_check_expecting_log = TRUE;                              \
   _gst_check_raised_critical = FALSE;                           \
   code;                                                         \
-  _fail_unless (_gst_check_raised_critical, __FILE__, __LINE__, \
-                "Expected g_critical, got nothing", NULL);      \
+  if (!_gst_check_raised_critical)                              \
+    _ck_assert_failed (__FILE__, __LINE__,                      \
+        "Expected g_critical, got nothing", NULL);              \
   _gst_check_expecting_log = FALSE;                             \
 } G_STMT_END
 
@@ -507,8 +519,9 @@
   _gst_check_expecting_log = TRUE;                              \
   _gst_check_raised_warning = FALSE;                            \
   code;                                                         \
-  _fail_unless (_gst_check_raised_warning, __FILE__, __LINE__,  \
-                "Expected g_warning, got nothing", NULL);       \
+  if (!_gst_check_raised_warning)                               \
+    _ck_assert_failed (__FILE__, __LINE__,                      \
+        "Expected g_warning, got nothing", NULL);               \
   _gst_check_expecting_log = FALSE;                             \
 } G_STMT_END
 
@@ -552,7 +565,7 @@
 } G_STMT_END
 
 #define ASSERT_SET_STATE(element, state, ret)                   \
-fail_unless (gst_element_set_state (element,                    \
+fail_unless (gst_element_set_state (GST_ELEMENT(element),       \
   state) == ret,                                                \
   "could not change state to " #state);
 
diff --git a/libs/gst/check/gsttestclock.c b/libs/gst/check/gsttestclock.c
index a609766..2fb30bc 100644
--- a/libs/gst/check/gsttestclock.c
+++ b/libs/gst/check/gsttestclock.c
@@ -139,7 +139,7 @@
  *   g_assert_cmpint (GST_BUFFER_TIMESTAMP (buf), ==, latency);
  *   gst_buffer_unref (buf);
  *   GST_INFO ("Check that element does not wait for any clock notification\n");
- *   g_assert (gst_test_clock_peek_next_pending_id (test_clock, NULL) == FALSE);
+ *   g_assert (!gst_test_clock_peek_next_pending_id (test_clock, NULL));
  *
  *   GST_INFO ("Set time, create and push the second buffer\n");
  *   gst_test_clock_advance_time (test_clock, 10 * GST_SECOND);
@@ -164,7 +164,7 @@
  *       10 * GST_SECOND + latency + 7 * GST_MSECOND);
  *   gst_buffer_unref (buf);
  *   GST_INFO ("Check that element does not wait for any clock notification\n");
- *   g_assert (gst_test_clock_peek_next_pending_id (test_clock, NULL) == FALSE);
+ *   g_assert (!gst_test_clock_peek_next_pending_id (test_clock, NULL));
  *   ...
  *   </programlisting>
  * </example>
@@ -985,7 +985,7 @@
  * @count: the number of pending clock notifications to wait for
  * @pending_list: (out) (element-type Gst.ClockID) (transfer full) (allow-none): Address
  *     of a #GList pointer variable to store the list of pending #GstClockIDs
- *     that expired, or NULL
+ *     that expired, or %NULL
  *
  * Blocks until at least @count clock notifications have been requested from
  * @test_clock. There is no timeout for this wait, see the main description of
diff --git a/libs/gst/check/libcheck/Makefile.am b/libs/gst/check/libcheck/Makefile.am
index e814fc8..dfa2062 100644
--- a/libs/gst/check/libcheck/Makefile.am
+++ b/libs/gst/check/libcheck/Makefile.am
@@ -11,10 +11,29 @@
 	check_pack.c	\
 	check_print.c	\
 	check_run.c	\
-	check_str.c
+	check_str.c	\
+	libcompat.c
+
+if !HAVE_ALARM
+CFILES += alarm.c
+endif
+
+if !HAVE_CLOCK_GETTIME
+CFILES += clock_gettime.c
+endif
+
+if !HAVE_STRSIGNAL
+CFILES += strsignal.c
+endif
+
+if !HAVE_TIMER_CREATE_SETTIME_DELETE
+CFILES +=\
+	timer_create.c	\
+	timer_settime.c	\
+	timer_delete.c
+endif
 
 HFILES =\
-	check.h		\
 	check_error.h	\
 	check_impl.h	\
 	check_list.h	\
@@ -22,17 +41,20 @@
 	check_msg.h	\
 	check_pack.h	\
 	check_print.h	\
-	check_str.h
+	check_str.h	\
+	libcompat.h
 
 noinst_HEADERS = $(HFILES)
 
 libcheckinternal_la_SOURCES	= $(CFILES) $(HFILES)
 
+libcheckinternal_la_CFLAGS	= -I$(top_builddir)/libs/gst/check
+libcheckinternal_la_LIBADD	=
+
 # define HAVE_PTHREAD here as well so we keep changes to the code to a minimum
 if HAVE_PTHREAD
-libcheckinternal_la_CFLAGS	= $(PTHREAD_CFLAGS) -D_GNU_SOURCE -DHAVE_PTHREAD
-libcheckinternal_la_LIBADD	= $(PTHREAD_LIBS)
+libcheckinternal_la_CFLAGS	+= $(PTHREAD_CFLAGS) -D_GNU_SOURCE -DHAVE_PTHREAD
+libcheckinternal_la_LIBADD	+= $(PTHREAD_LIBS)
 else
-libcheckinternal_la_CFLAGS	= -D_GNU_SOURCE
-libcheckinternal_la_LIBADD	=
+libcheckinternal_la_CFLAGS	+= -D_GNU_SOURCE
 endif
diff --git a/libs/gst/check/libcheck/Makefile.in b/libs/gst/check/libcheck/Makefile.in
index 1d3988f..926dfd4 100644
--- a/libs/gst/check/libcheck/Makefile.in
+++ b/libs/gst/check/libcheck/Makefile.in
@@ -80,9 +80,22 @@
 build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
+@HAVE_ALARM_FALSE@am__append_1 = alarm.c
+@HAVE_CLOCK_GETTIME_FALSE@am__append_2 = clock_gettime.c
+@HAVE_STRSIGNAL_FALSE@am__append_3 = strsignal.c
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@am__append_4 = \
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@	timer_create.c	\
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@	timer_settime.c	\
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@	timer_delete.c
+
+
+# define HAVE_PTHREAD here as well so we keep changes to the code to a minimum
+@HAVE_PTHREAD_TRUE@am__append_5 = $(PTHREAD_CFLAGS) -D_GNU_SOURCE -DHAVE_PTHREAD
+@HAVE_PTHREAD_TRUE@am__append_6 = $(PTHREAD_LIBS)
+@HAVE_PTHREAD_FALSE@am__append_7 = -D_GNU_SOURCE
 subdir = libs/gst/check/libcheck
 DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
-	$(srcdir)/check.h.in $(top_srcdir)/depcomp $(noinst_HEADERS)
+	$(top_srcdir)/depcomp $(noinst_HEADERS)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
 	$(top_srcdir)/common/m4/as-auto-alt.m4 \
@@ -91,6 +104,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +122,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -123,13 +137,27 @@
 	$(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES = check.h
+CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 LTLIBRARIES = $(noinst_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-@HAVE_PTHREAD_TRUE@libcheckinternal_la_DEPENDENCIES =  \
-@HAVE_PTHREAD_TRUE@	$(am__DEPENDENCIES_1)
-am__objects_1 = libcheckinternal_la-check.lo \
+@HAVE_PTHREAD_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
+libcheckinternal_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
+am__libcheckinternal_la_SOURCES_DIST = check.c check_error.c \
+	check_list.c check_log.c check_msg.c check_pack.c \
+	check_print.c check_run.c check_str.c libcompat.c alarm.c \
+	clock_gettime.c strsignal.c timer_create.c timer_settime.c \
+	timer_delete.c check_error.h check_impl.h check_list.h \
+	check_log.h check_msg.h check_pack.h check_print.h check_str.h \
+	libcompat.h
+@HAVE_ALARM_FALSE@am__objects_1 = libcheckinternal_la-alarm.lo
+@HAVE_CLOCK_GETTIME_FALSE@am__objects_2 = libcheckinternal_la-clock_gettime.lo
+@HAVE_STRSIGNAL_FALSE@am__objects_3 =  \
+@HAVE_STRSIGNAL_FALSE@	libcheckinternal_la-strsignal.lo
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@am__objects_4 = libcheckinternal_la-timer_create.lo \
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@	libcheckinternal_la-timer_settime.lo \
+@HAVE_TIMER_CREATE_SETTIME_DELETE_FALSE@	libcheckinternal_la-timer_delete.lo
+am__objects_5 = libcheckinternal_la-check.lo \
 	libcheckinternal_la-check_error.lo \
 	libcheckinternal_la-check_list.lo \
 	libcheckinternal_la-check_log.lo \
@@ -137,9 +165,11 @@
 	libcheckinternal_la-check_pack.lo \
 	libcheckinternal_la-check_print.lo \
 	libcheckinternal_la-check_run.lo \
-	libcheckinternal_la-check_str.lo
-am__objects_2 =
-am_libcheckinternal_la_OBJECTS = $(am__objects_1) $(am__objects_2)
+	libcheckinternal_la-check_str.lo \
+	libcheckinternal_la-libcompat.lo $(am__objects_1) \
+	$(am__objects_2) $(am__objects_3) $(am__objects_4)
+am__objects_6 =
+am_libcheckinternal_la_OBJECTS = $(am__objects_5) $(am__objects_6)
 libcheckinternal_la_OBJECTS = $(am_libcheckinternal_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -184,7 +214,7 @@
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libcheckinternal_la_SOURCES)
-DIST_SOURCES = $(libcheckinternal_la_SOURCES)
+DIST_SOURCES = $(am__libcheckinternal_la_SOURCES_DIST)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -221,6 +251,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -326,6 +360,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -489,19 +524,11 @@
 top_srcdir = @top_srcdir@
 noinst_LTLIBRARIES = libcheckinternal.la
 EXTRA_DIST = check.h.in
-CFILES = \
-	check.c		\
-	check_error.c	\
-	check_list.c	\
-	check_log.c	\
-	check_msg.c	\
-	check_pack.c	\
-	check_print.c	\
-	check_run.c	\
-	check_str.c
-
+CFILES = check.c check_error.c check_list.c check_log.c check_msg.c \
+	check_pack.c check_print.c check_run.c check_str.c libcompat.c \
+	$(am__append_1) $(am__append_2) $(am__append_3) \
+	$(am__append_4)
 HFILES = \
-	check.h		\
 	check_error.h	\
 	check_impl.h	\
 	check_list.h	\
@@ -509,16 +536,14 @@
 	check_msg.h	\
 	check_pack.h	\
 	check_print.h	\
-	check_str.h
+	check_str.h	\
+	libcompat.h
 
 noinst_HEADERS = $(HFILES)
 libcheckinternal_la_SOURCES = $(CFILES) $(HFILES)
-@HAVE_PTHREAD_FALSE@libcheckinternal_la_CFLAGS = -D_GNU_SOURCE
-
-# define HAVE_PTHREAD here as well so we keep changes to the code to a minimum
-@HAVE_PTHREAD_TRUE@libcheckinternal_la_CFLAGS = $(PTHREAD_CFLAGS) -D_GNU_SOURCE -DHAVE_PTHREAD
-@HAVE_PTHREAD_FALSE@libcheckinternal_la_LIBADD = 
-@HAVE_PTHREAD_TRUE@libcheckinternal_la_LIBADD = $(PTHREAD_LIBS)
+libcheckinternal_la_CFLAGS = -I$(top_builddir)/libs/gst/check \
+	$(am__append_5) $(am__append_7)
+libcheckinternal_la_LIBADD = $(am__append_6)
 all: all-am
 
 .SUFFIXES:
@@ -553,8 +578,6 @@
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
-check.h: $(top_builddir)/config.status $(srcdir)/check.h.in
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 
 clean-noinstLTLIBRARIES:
 	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
@@ -576,6 +599,7 @@
 distclean-compile:
 	-rm -f *.tab.c
 
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-alarm.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-check.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-check_error.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-check_list.Plo@am__quote@
@@ -585,6 +609,12 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-check_print.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-check_run.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-check_str.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-clock_gettime.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-libcompat.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-strsignal.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-timer_create.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-timer_delete.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcheckinternal_la-timer_settime.Plo@am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@@ -673,6 +703,55 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-check_str.lo `test -f 'check_str.c' || echo '$(srcdir)/'`check_str.c
 
+libcheckinternal_la-libcompat.lo: libcompat.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-libcompat.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-libcompat.Tpo -c -o libcheckinternal_la-libcompat.lo `test -f 'libcompat.c' || echo '$(srcdir)/'`libcompat.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-libcompat.Tpo $(DEPDIR)/libcheckinternal_la-libcompat.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libcompat.c' object='libcheckinternal_la-libcompat.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-libcompat.lo `test -f 'libcompat.c' || echo '$(srcdir)/'`libcompat.c
+
+libcheckinternal_la-alarm.lo: alarm.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-alarm.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-alarm.Tpo -c -o libcheckinternal_la-alarm.lo `test -f 'alarm.c' || echo '$(srcdir)/'`alarm.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-alarm.Tpo $(DEPDIR)/libcheckinternal_la-alarm.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='alarm.c' object='libcheckinternal_la-alarm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-alarm.lo `test -f 'alarm.c' || echo '$(srcdir)/'`alarm.c
+
+libcheckinternal_la-clock_gettime.lo: clock_gettime.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-clock_gettime.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-clock_gettime.Tpo -c -o libcheckinternal_la-clock_gettime.lo `test -f 'clock_gettime.c' || echo '$(srcdir)/'`clock_gettime.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-clock_gettime.Tpo $(DEPDIR)/libcheckinternal_la-clock_gettime.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='clock_gettime.c' object='libcheckinternal_la-clock_gettime.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-clock_gettime.lo `test -f 'clock_gettime.c' || echo '$(srcdir)/'`clock_gettime.c
+
+libcheckinternal_la-strsignal.lo: strsignal.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-strsignal.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-strsignal.Tpo -c -o libcheckinternal_la-strsignal.lo `test -f 'strsignal.c' || echo '$(srcdir)/'`strsignal.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-strsignal.Tpo $(DEPDIR)/libcheckinternal_la-strsignal.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='strsignal.c' object='libcheckinternal_la-strsignal.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-strsignal.lo `test -f 'strsignal.c' || echo '$(srcdir)/'`strsignal.c
+
+libcheckinternal_la-timer_create.lo: timer_create.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-timer_create.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-timer_create.Tpo -c -o libcheckinternal_la-timer_create.lo `test -f 'timer_create.c' || echo '$(srcdir)/'`timer_create.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-timer_create.Tpo $(DEPDIR)/libcheckinternal_la-timer_create.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='timer_create.c' object='libcheckinternal_la-timer_create.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-timer_create.lo `test -f 'timer_create.c' || echo '$(srcdir)/'`timer_create.c
+
+libcheckinternal_la-timer_settime.lo: timer_settime.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-timer_settime.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-timer_settime.Tpo -c -o libcheckinternal_la-timer_settime.lo `test -f 'timer_settime.c' || echo '$(srcdir)/'`timer_settime.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-timer_settime.Tpo $(DEPDIR)/libcheckinternal_la-timer_settime.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='timer_settime.c' object='libcheckinternal_la-timer_settime.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-timer_settime.lo `test -f 'timer_settime.c' || echo '$(srcdir)/'`timer_settime.c
+
+libcheckinternal_la-timer_delete.lo: timer_delete.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -MT libcheckinternal_la-timer_delete.lo -MD -MP -MF $(DEPDIR)/libcheckinternal_la-timer_delete.Tpo -c -o libcheckinternal_la-timer_delete.lo `test -f 'timer_delete.c' || echo '$(srcdir)/'`timer_delete.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcheckinternal_la-timer_delete.Tpo $(DEPDIR)/libcheckinternal_la-timer_delete.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='timer_delete.c' object='libcheckinternal_la-timer_delete.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcheckinternal_la_CFLAGS) $(CFLAGS) -c -o libcheckinternal_la-timer_delete.lo `test -f 'timer_delete.c' || echo '$(srcdir)/'`timer_delete.c
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
diff --git a/libs/gst/check/libcheck/alarm.c b/libs/gst/check/libcheck/alarm.c
new file mode 100644
index 0000000..9f87019
--- /dev/null
+++ b/libs/gst/check/libcheck/alarm.c
@@ -0,0 +1,8 @@
+#include "libcompat.h"
+
+unsigned int
+alarm (unsigned int seconds CK_ATTRIBUTE_UNUSED)
+{
+  assert (0);
+  return 0;
+}
diff --git a/libs/gst/check/libcheck/check.c b/libs/gst/check/libcheck/check.c
index 2b7f481..5a50d7d 100644
--- a/libs/gst/check/libcheck/check.c
+++ b/libs/gst/check/libcheck/check.c
@@ -18,14 +18,15 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <string.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdarg.h>
+#include <math.h>
 
-#include "check.h"
+#include "internal-check.h"
 #include "check_error.h"
 #include "check_list.h"
 #include "check_impl.h"
@@ -39,6 +40,14 @@
 #define DEFAULT_TIMEOUT 4
 #endif
 
+/*
+ * When a process exits either normally, with exit(), or
+ * by an uncaught signal, The lower 0x377 bits are passed
+ * to the parent. Of those, only the lower 8 bits are
+ * returned by the WEXITSTATUS() macro.
+ */
+#define WEXITSTATUS_MASK 0xFF
+
 int check_major_version = CHECK_MAJOR_VERSION;
 int check_minor_version = CHECK_MINOR_VERSION;
 int check_micro_version = CHECK_MICRO_VERSION;
@@ -55,7 +64,8 @@
 suite_create (const char *name)
 {
   Suite *s;
-  s = emalloc (sizeof (Suite)); /* freed in suite_free */
+
+  s = (Suite *) emalloc (sizeof (Suite));       /* freed in suite_free */
   if (name == NULL)
     s->name = "";
   else
@@ -64,17 +74,37 @@
   return s;
 }
 
+int
+suite_tcase (Suite * s, const char *tcname)
+{
+  List *l;
+  TCase *tc;
+
+  if (s == NULL)
+    return 0;
+
+  l = s->tclst;
+  for (check_list_front (l); !check_list_at_end (l); check_list_advance (l)) {
+    tc = (TCase *) check_list_val (l);
+    if (strcmp (tcname, tc->name) == 0)
+      return 1;
+  }
+
+  return 0;
+}
+
 static void
 suite_free (Suite * s)
 {
   List *l;
+
   if (s == NULL)
     return;
   l = s->tclst;
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    tcase_free (list_val (l));
+  for (check_list_front (l); !check_list_at_end (l); check_list_advance (l)) {
+    tcase_free ((TCase *) check_list_val (l));
   }
-  list_free (s->tclst);
+  check_list_free (s->tclst);
   free (s);
 }
 
@@ -82,8 +112,10 @@
 tcase_create (const char *name)
 {
   char *env;
-  int timeout = DEFAULT_TIMEOUT;
-  TCase *tc = emalloc (sizeof (TCase)); /*freed in tcase_free */
+  double timeout_sec = DEFAULT_TIMEOUT;
+
+  TCase *tc = (TCase *) emalloc (sizeof (TCase));       /*freed in tcase_free */
+
   if (name == NULL)
     tc->name = "";
   else
@@ -91,21 +123,28 @@
 
   env = getenv ("CK_DEFAULT_TIMEOUT");
   if (env != NULL) {
-    int tmp = atoi (env);
-    if (tmp >= 0) {
-      timeout = tmp;
+    char *endptr = NULL;
+    double tmp = strtod (env, &endptr);
+
+    if (tmp >= 0 && endptr != env && (*endptr) == '\0') {
+      timeout_sec = tmp;
     }
   }
 
   env = getenv ("CK_TIMEOUT_MULTIPLIER");
   if (env != NULL) {
-    int tmp = atoi (env);
-    if (tmp >= 0) {
-      timeout = timeout * tmp;
+    char *endptr = NULL;
+    double tmp = strtod (env, &endptr);
+
+    if (tmp >= 0 && endptr != env && (*endptr) == '\0') {
+      timeout_sec = timeout_sec * tmp;
     }
   }
 
-  tc->timeout = timeout;
+  tc->timeout.tv_sec = (time_t) floor (timeout_sec);
+  tc->timeout.tv_nsec =
+      (long) ((timeout_sec - floor (timeout_sec)) * (double) NANOS_PER_SECONDS);
+
   tc->tflst = check_list_create ();
   tc->unch_sflst = check_list_create ();
   tc->ch_sflst = check_list_create ();
@@ -119,16 +158,16 @@
 static void
 tcase_free (TCase * tc)
 {
-  list_apply (tc->tflst, free);
-  list_apply (tc->unch_sflst, free);
-  list_apply (tc->ch_sflst, free);
-  list_apply (tc->unch_tflst, free);
-  list_apply (tc->ch_tflst, free);
-  list_free (tc->tflst);
-  list_free (tc->unch_sflst);
-  list_free (tc->ch_sflst);
-  list_free (tc->unch_tflst);
-  list_free (tc->ch_tflst);
+  check_list_apply (tc->tflst, free);
+  check_list_apply (tc->unch_sflst, free);
+  check_list_apply (tc->ch_sflst, free);
+  check_list_apply (tc->unch_tflst, free);
+  check_list_apply (tc->ch_tflst, free);
+  check_list_free (tc->tflst);
+  check_list_free (tc->unch_sflst);
+  check_list_free (tc->ch_sflst);
+  check_list_free (tc->unch_tflst);
+  check_list_free (tc->ch_tflst);
 
   free (tc);
 }
@@ -138,7 +177,7 @@
 {
   if (s == NULL || tc == NULL)
     return;
-  list_add_end (s->tclst, tc);
+  check_list_add_end (s->tclst, tc);
 }
 
 void
@@ -146,23 +185,25 @@
     int allowed_exit_value, int start, int end)
 {
   TF *tf;
+
   if (tc == NULL || fn == NULL || name == NULL)
     return;
-  tf = emalloc (sizeof (TF));   /* freed in tcase_free */
+  tf = (TF *) emalloc (sizeof (TF));    /* freed in tcase_free */
   tf->fn = fn;
   tf->loop_start = start;
   tf->loop_end = end;
   tf->signal = _signal;         /* 0 means no signal expected */
-  tf->allowed_exit_value = allowed_exit_value;  /* 0 is default successful exit */
+  tf->allowed_exit_value = (WEXITSTATUS_MASK & allowed_exit_value);     /* 0 is default successful exit */
   tf->name = name;
-  list_add_end (tc->tflst, tf);
+  check_list_add_end (tc->tflst, tf);
 }
 
 static Fixture *
 fixture_create (SFun fun, int ischecked)
 {
   Fixture *f;
-  f = emalloc (sizeof (Fixture));
+
+  f = (Fixture *) emalloc (sizeof (Fixture));
   f->fun = fun;
   f->ischecked = ischecked;
 
@@ -186,33 +227,48 @@
 {
   if (setup) {
     if (ischecked)
-      list_add_end (tc->ch_sflst, fixture_create (setup, ischecked));
+      check_list_add_end (tc->ch_sflst, fixture_create (setup, ischecked));
     else
-      list_add_end (tc->unch_sflst, fixture_create (setup, ischecked));
+      check_list_add_end (tc->unch_sflst, fixture_create (setup, ischecked));
   }
 
   /* Add teardowns at front so they are run in reverse order. */
   if (teardown) {
     if (ischecked)
-      list_add_front (tc->ch_tflst, fixture_create (teardown, ischecked));
+      check_list_add_front (tc->ch_tflst, fixture_create (teardown, ischecked));
     else
-      list_add_front (tc->unch_tflst, fixture_create (teardown, ischecked));
+      check_list_add_front (tc->unch_tflst,
+          fixture_create (teardown, ischecked));
   }
 }
 
 void
-tcase_set_timeout (TCase * tc, int timeout)
+tcase_set_timeout (TCase * tc, double timeout)
 {
+#if defined(HAVE_FORK)
   if (timeout >= 0) {
     char *env = getenv ("CK_TIMEOUT_MULTIPLIER");
+
     if (env != NULL) {
-      int tmp = atoi (env);
-      if (tmp >= 0) {
+      char *endptr = NULL;
+      double tmp = strtod (env, &endptr);
+
+      if (tmp >= 0 && endptr != env && (*endptr) == '\0') {
         timeout = timeout * tmp;
       }
     }
-    tc->timeout = timeout;
+
+    tc->timeout.tv_sec = (time_t) floor (timeout);
+    tc->timeout.tv_nsec =
+        (long) ((timeout - floor (timeout)) * (double) NANOS_PER_SECONDS);
   }
+#else
+  (void) tc;
+  (void) timeout;
+  eprintf
+      ("This version does not support timeouts, as fork is not supported",
+      __FILE__, __LINE__);
+#endif /* HAVE_FORK */
 }
 
 void
@@ -230,44 +286,57 @@
 }
 
 void
-_fail_unless (int result, const char *file, int line, const char *expr, ...)
+_ck_assert_failed (const char *file, int line, const char *expr, ...)
 {
   const char *msg;
+  va_list ap;
+  char buf[BUFSIZ];
 
   send_loc_info (file, line);
-  if (!result) {
-    va_list ap;
-    char buf[BUFSIZ];
 
-    va_start (ap, expr);
-    msg = (const char *) va_arg (ap, char *);
-    if (msg == NULL)
-      msg = expr;
-    vsnprintf (buf, BUFSIZ, msg, ap);
-    va_end (ap);
-    send_failure_info (buf);
-    if (cur_fork_status () == CK_FORK) {
-#ifdef _POSIX_VERSION
-      _exit (1);
-#endif /* _POSIX_VERSION */
-    }
+  va_start (ap, expr);
+  msg = (const char *) va_arg (ap, char *);
+
+  if (msg == NULL)
+    msg = expr;
+  vsnprintf (buf, BUFSIZ, msg, ap);
+  va_end (ap);
+  send_failure_info (buf);
+  if (cur_fork_status () == CK_FORK) {
+#if defined(HAVE_FORK) && HAVE_FORK==1
+    _exit (1);
+#endif /* HAVE_FORK */
+  } else {
+    longjmp (error_jmp_buffer, 1);
   }
 }
 
 SRunner *
 srunner_create (Suite * s)
 {
-  SRunner *sr = emalloc (sizeof (SRunner));     /* freed in srunner_free */
+  SRunner *sr = (SRunner *) emalloc (sizeof (SRunner)); /* freed in srunner_free */
+
   sr->slst = check_list_create ();
   if (s != NULL)
-    list_add_end (sr->slst, s);
-  sr->stats = emalloc (sizeof (TestStats));     /* freed in srunner_free */
+    check_list_add_end (sr->slst, s);
+  sr->stats = (TestStats *) emalloc (sizeof (TestStats));       /* freed in srunner_free */
   sr->stats->n_checked = sr->stats->n_failed = sr->stats->n_errors = 0;
   sr->resultlst = check_list_create ();
   sr->log_fname = NULL;
   sr->xml_fname = NULL;
+  sr->tap_fname = NULL;
   sr->loglst = NULL;
+
+#if defined(HAVE_FORK)
   sr->fstat = CK_FORK_GETENV;
+#else
+  /*
+   * Overriding the default of running tests in fork mode,
+   * as this system does not have fork()
+   */
+  sr->fstat = CK_NOFORK;
+#endif /* HAVE_FORK */
+
   return sr;
 }
 
@@ -277,7 +346,7 @@
   if (s == NULL)
     return;
 
-  list_add_end (sr->slst, s);
+  check_list_add_end (sr->slst, s);
 }
 
 void
@@ -285,24 +354,23 @@
 {
   List *l;
   TestResult *tr;
+
   if (sr == NULL)
     return;
 
   free (sr->stats);
   l = sr->slst;
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    suite_free (list_val (l));
+  for (check_list_front (l); !check_list_at_end (l); check_list_advance (l)) {
+    suite_free ((Suite *) check_list_val (l));
   }
-  list_free (sr->slst);
+  check_list_free (sr->slst);
 
   l = sr->resultlst;
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    tr = list_val (l);
-    free (tr->file);
-    free (tr->msg);
-    free (tr);
+  for (check_list_front (l); !check_list_at_end (l); check_list_advance (l)) {
+    tr = (TestResult *) check_list_val (l);
+    tr_free (tr);
   }
-  list_free (sr->resultlst);
+  check_list_free (sr->resultlst);
 
   free (sr);
 }
@@ -325,11 +393,16 @@
   int i = 0;
   TestResult **trarray;
   List *rlst;
-  trarray = malloc (sizeof (trarray[0]) * srunner_ntests_failed (sr));
+
+  trarray =
+      (TestResult **) emalloc (sizeof (trarray[0]) *
+      srunner_ntests_failed (sr));
 
   rlst = sr->resultlst;
-  for (list_front (rlst); !list_at_end (rlst); list_advance (rlst)) {
-    TestResult *tr = list_val (rlst);
+  for (check_list_front (rlst); !check_list_at_end (rlst);
+      check_list_advance (rlst)) {
+    TestResult *tr = (TestResult *) check_list_val (rlst);
+
     if (non_pass (tr->rtype))
       trarray[i++] = tr;
 
@@ -344,11 +417,13 @@
   TestResult **trarray;
   List *rlst;
 
-  trarray = malloc (sizeof (trarray[0]) * srunner_ntests_run (sr));
+  trarray =
+      (TestResult **) emalloc (sizeof (trarray[0]) * srunner_ntests_run (sr));
 
   rlst = sr->resultlst;
-  for (list_front (rlst); !list_at_end (rlst); list_advance (rlst)) {
-    trarray[i++] = list_val (rlst);
+  for (check_list_front (rlst); !check_list_at_end (rlst);
+      check_list_advance (rlst)) {
+    trarray[i++] = (TestResult *) check_list_val (rlst);
   }
   return trarray;
 }
@@ -364,17 +439,11 @@
 {
   TestResult *tr;
 
-  tr = emalloc (sizeof (TestResult));
+  tr = (TestResult *) emalloc (sizeof (TestResult));
   tr_init (tr);
   return tr;
 }
 
-void
-tr_reset (TestResult * tr)
-{
-  tr_init (tr);
-}
-
 static void
 tr_init (TestResult * tr)
 {
@@ -385,6 +454,15 @@
   tr->file = NULL;
   tr->tcname = NULL;
   tr->tname = NULL;
+  tr->duration = -1;
+}
+
+void
+tr_free (TestResult * tr)
+{
+  free (tr->file);
+  free (tr->msg);
+  free (tr);
 }
 
 
@@ -424,7 +502,7 @@
   return tr->tcname;
 }
 
-static int _fstat = CK_FORK;
+static enum fork_status _fstat = CK_FORK;
 
 void
 set_fork_status (enum fork_status fstat)
@@ -440,3 +518,41 @@
 {
   return _fstat;
 }
+
+/**
+ * Not all systems support the same clockid_t's. This call checks
+ * if the CLOCK_MONOTONIC clockid_t is valid. If so, that is returned,
+ * otherwise, CLOCK_REALTIME is returned.
+ *
+ * The clockid_t that was found to work on the first call is
+ * cached for subsequent calls.
+ */
+clockid_t
+check_get_clockid ()
+{
+  static clockid_t clockid = -1;
+
+  if (clockid == -1) {
+/*
+ * Only check if we have librt available. Otherwise, the clockid
+ * will be ignored anyway, as the clock_gettime() and
+ * timer_create() functions will be re-implemented in libcompat.
+ * Worse, if librt and alarm() are unavailable, this check
+ * will result in an assert(0).
+ */
+#if defined(HAVE_POSIX_TIMERS) && defined(HAVE_MONOTONIC_CLOCK)
+    timer_t timerid;
+
+    if (timer_create (CLOCK_MONOTONIC, NULL, &timerid) == 0) {
+      timer_delete (timerid);
+      clockid = CLOCK_MONOTONIC;
+    } else {
+      clockid = CLOCK_REALTIME;
+    }
+#else
+    clockid = CLOCK_MONOTONIC;
+#endif
+  }
+
+  return clockid;
+}
diff --git a/libs/gst/check/libcheck/check.h b/libs/gst/check/libcheck/check.h
deleted file mode 100644
index 25dac71..0000000
--- a/libs/gst/check/libcheck/check.h
+++ /dev/null
@@ -1,418 +0,0 @@
-/*-*- mode:C; -*- */
-/*
- * Check: a unit test framework for C
- * Copyright (C) 2001, 2002, Arien Malec
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef CHECK_H
-#define CHECK_H
-
-#include <stddef.h>
-#include <string.h>
-
-/* Check: a unit test framework for C
-
-   Check is a unit test framework for C. It features a simple
-   interface for defining unit tests, putting little in the way of the
-   developer. Tests are run in a separate address space, so Check can
-   catch both assertion failures and code errors that cause
-   segmentation faults or other signals. The output from unit tests
-   can be used within source code editors and IDEs.
-
-   Unit tests are created with the START_TEST/END_TEST macro
-   pair. The fail_unless and fail macros are used for creating
-   checks within unit tests; the mark_point macro is useful for
-   trapping the location of signals and/or early exits.
-
-
-   Test cases are created with tcase_create, unit tests are added
-   with tcase_add_test
-
-
-   Suites are created with suite_create; test cases are added
-   with suite_add_tcase
-
-   Suites are run through an SRunner, which is created with
-   srunner_create. Additional suites can be added to an SRunner with
-   srunner_add_suite. An SRunner is freed with srunner_free, which also
-   frees all suites added to the runner. 
-
-   Use srunner_run_all to run a suite and print results.
-
-   Macros and functions starting with _ (underscore) are internal and
-   may change without notice. You have been warned!.
-
-*/
-
-
-#ifdef __cplusplus
-#define CK_CPPSTART extern "C" {
-#define CK_CPPEND }
-CK_CPPSTART
-#endif
-
-#if defined(__GNUC__) && defined(__GNUC_MINOR__)
-#define GCC_VERSION_AT_LEAST(major, minor) \
-((__GNUC__ > (major)) || \
- (__GNUC__ == (major) && __GNUC_MINOR__ >= (minor)))
-#else
-#define GCC_VERSION_AT_LEAST(major, minor) 0
-#endif
-
-#if GCC_VERSION_AT_LEAST(2,95)
-#define CK_ATTRIBUTE_UNUSED __attribute__ ((unused))
-#else
-#define CK_ATTRIBUTE_UNUSED              
-#endif /* GCC 2.95 */
-
-#include <sys/types.h>
-
-/* Used to create the linker script for hiding lib-local symbols. Shall
-   be put directly in front of the exported symbol. */
-#define CK_EXPORT
-
-/* check version numbers */
-  
-#define CHECK_MAJOR_VERSION (0)
-#define CHECK_MINOR_VERSION (9)
-#define CHECK_MICRO_VERSION (8)
-
-extern int CK_EXPORT check_major_version;
-extern int CK_EXPORT check_minor_version;
-extern int CK_EXPORT check_micro_version;
-
-#ifndef NULL
-#define NULL ((void*)0)
-#endif
-
-/* opaque type for a test case
-
-   A TCase represents a test case.  Create with tcase_create, free
-   with tcase_free.  For the moment, test cases can only be run
-   through a suite
-*/
-typedef struct TCase TCase; 
-
-/* type for a test function */
-typedef void (*TFun) (int);
-
-/* type for a setup/teardown function */
-typedef void (*SFun) (void);
- 
-/* Opaque type for a test suite */
-typedef struct Suite Suite;
- 
-/* Creates a test suite with the given name */
-Suite * CK_EXPORT suite_create (const char *name);
-
-/* Add a test case to a suite */
-void CK_EXPORT suite_add_tcase (Suite *s, TCase *tc);
-
-/* Create a test case */
-TCase * CK_EXPORT tcase_create (const char *name);
-
-/* Add a test function to a test case (macro version) */
-#define tcase_add_test(tc,tf) tcase_add_test_raise_signal(tc,tf,0)
-
-/* Add a test function with signal handling to a test case (macro version) */
-#define tcase_add_test_raise_signal(tc,tf,signal) \
-   _tcase_add_test((tc),(tf),"" # tf "",(signal), 0, 0, 1)
-
-/* Add a test function with an expected exit value to a test case (macro version) */
-#define tcase_add_exit_test(tc, tf, expected_exit_value) \
-  _tcase_add_test((tc),(tf),"" # tf "",0,(expected_exit_value),0,1)
-
-/* Add a looping test function to a test case (macro version)
-
-   The test will be called in a for(i = s; i < e; i++) loop with each
-   iteration being executed in a new context. The loop variable 'i' is
-   available in the test.
- */
-#define tcase_add_loop_test(tc,tf,s,e) \
-  _tcase_add_test((tc),(tf),"" # tf "",0,0,(s),(e))
- 
-/* Signal version of loop test.  
-   FIXME: add a test case; this is untested as part of Check's tests.
- */
-#define tcase_add_loop_test_raise_signal(tc,tf,signal,s,e) \
-  _tcase_add_test((tc),(tf),"" # tf "",(signal),0,(s),(e))
-
-/* allowed exit value version of loop test. */
-#define tcase_add_loop_exit_test(tc,tf,expected_exit_value,s,e) \
-  _tcase_add_test((tc),(tf),"" # tf "",0,(expected_exit_value),(s),(e))
-
-/* Add a test function to a test case
-  (function version -- use this when the macro won't work
-*/
-void CK_EXPORT _tcase_add_test (TCase *tc, TFun tf, const char *fname, int _signal, int allowed_exit_value, int start, int end);
-
-/* Add unchecked fixture setup/teardown functions to a test case
-
-   If unchecked fixture functions are run at the start and end of the
-   test case, and not before and after unit tests. Note that unchecked
-   setup/teardown functions are not run in a separate address space,
-   like test functions, and so must not exit or signal (e.g.,
-   segfault)
-
-   Also, when run in CK_NOFORK mode, unchecked fixture functions may
-   lead to different unit test behavior IF unit tests change data
-   setup by the fixture functions.
-*/
-void CK_EXPORT tcase_add_unchecked_fixture (TCase *tc, SFun setup, SFun teardown);
-
-/* Add fixture setup/teardown functions to a test case
-
-   Checked fixture functions are run before and after unit
-   tests. Unlike unchecked fixture functions, checked fixture
-   functions are run in the same separate address space as the test
-   program, and thus the test function will survive signals or
-   unexpected exits in the fixture function. Also, IF the setup
-   function is idempotent, unit test behavior will be the same in
-   CK_FORK and CK_NOFORK modes.
-
-   However, since fixture functions are run before and after each unit
-   test, they should not be expensive code.
-
-*/ 
-void CK_EXPORT tcase_add_checked_fixture (TCase *tc, SFun setup, SFun teardown);
-
-/* Set the timeout for all tests in a test case. A test that lasts longer
-   than the timeout (in seconds) will be killed and thus fail with an error.
-   The timeout can also be set globaly with the environment variable
-   CK_DEFAULT_TIMEOUT, the specific setting always takes precedence.
-*/
-void CK_EXPORT tcase_set_timeout (TCase *tc, int timeout);
- 
-/* Internal function to mark the start of a test function */
-void CK_EXPORT tcase_fn_start (const char *fname, const char *file, int line);
-
-/* Start a unit test with START_TEST(unit_name), end with END_TEST
-   One must use braces within a START_/END_ pair to declare new variables
-*/ 
-#define START_TEST(__testname)\
-static void __testname (int _i CK_ATTRIBUTE_UNUSED)\
-{\
-  tcase_fn_start (""# __testname, __FILE__, __LINE__);
-
-/* End a unit test */
-#define END_TEST }
-
-/* Fail the test case unless expr is true */
-/* The space before the comma sign before ## is essential to be compatible
-   with gcc 2.95.3 and earlier.
-*/
-#define fail_unless(expr, ...)\
-        _fail_unless(expr, __FILE__, __LINE__,\
-        "Assertion '"#expr"' failed" , ## __VA_ARGS__, NULL)
-
-/* Fail the test case if expr is true */
-/* The space before the comma sign before ## is essential to be compatible
-   with gcc 2.95.3 and earlier.
-*/
-
-/* FIXME: these macros may conflict with C89 if expr is 
-   FIXME:   strcmp (str1, str2) due to excessive string length. */
-#define fail_if(expr, ...)\
-        _fail_unless(!(expr), __FILE__, __LINE__,\
-        "Failure '"#expr"' occured" , ## __VA_ARGS__, NULL)
-
-/* Always fail */
-#define fail(...) _fail_unless(0, __FILE__, __LINE__, "Failed", __VA_ARGS__, NULL)
-
-/* Non macro version of #fail_unless, with more complicated interface */
-void CK_EXPORT _fail_unless (int result, const char *file,
-                             int line, const char *expr, ...);
-
-/* New check fail API. */
-#define ck_abort() ck_abort_msg(NULL)
-#define ck_abort_msg fail
-#define ck_assert(C) ck_assert_msg(C, NULL)
-#define ck_assert_msg fail_unless
-
-/* Integer comparsion macros with improved output compared to fail_unless(). */
-/* O may be any comparion operator. */
-#define _ck_assert_int(X, O, Y) ck_assert_msg((X) O (Y), "Assertion '"#X#O#Y"' failed: "#X"==%d, "#Y"==%d", X, Y) 
-#define ck_assert_int_eq(X, Y) _ck_assert_int(X, ==, Y) 
-#define ck_assert_int_ne(X, Y) _ck_assert_int(X, !=, Y) 
-
-/* String comparsion macros with improved output compared to fail_unless() */
-#define _ck_assert_str(C, X, O, Y) ck_assert_msg(C, "Assertion '"#X#O#Y"' failed: "#X"==\"%s\", "#Y"==\"%s\"", X, Y) 
-#define ck_assert_str_eq(X, Y) _ck_assert_str(!strcmp(X, Y), X, ==, Y)
-#define ck_assert_str_ne(X, Y) _ck_assert_str(strcmp(X, Y), X, !=, Y)
-
-
-/* Mark the last point reached in a unit test
-   (useful for tracking down where a segfault, etc. occurs)
-*/
-#define mark_point() _mark_point(__FILE__,__LINE__)
-
-/* Non macro version of #mark_point */
-void CK_EXPORT _mark_point (const char *file, int line);
-
-/* Result of a test */
-enum test_result {
-  CK_TEST_RESULT_INVALID, /* Default value; should not encounter this */
-  CK_PASS, /* Test passed*/
-  CK_FAILURE, /* Test completed but failed */
-  CK_ERROR /* Test failed to complete
-	      (unexpected signal or non-zero early exit) */ 
-};
-
-/* Specifies the how much output an SRunner should produce */
-enum print_output {
-  CK_SILENT, /* No output */
-  CK_MINIMAL, /* Only summary output */
-  CK_NORMAL, /* All failed tests */
-  CK_VERBOSE, /* All tests */
-  CK_ENV, /* Look at environment var */
-#if 0
-  CK_SUBUNIT, /* Run as a subunit child process */
-#endif
-  CK_LAST
-};
-
-/* Holds state for a running of a test suite */
-typedef struct SRunner SRunner;
-
-/* Opaque type for a test failure */
-typedef struct TestResult TestResult;
-
-/* accessors for tr fields */
-enum ck_result_ctx {
-  CK_CTX_INVALID, /* Default value; should not encounter this */
-  CK_CTX_SETUP,
-  CK_CTX_TEST,
-  CK_CTX_TEARDOWN
-};
-
-/* Type of result */
-int CK_EXPORT tr_rtype (TestResult *tr);
-/* Context in which the result occurred */ 
-enum ck_result_ctx CK_EXPORT tr_ctx (TestResult *tr); 
-/* Failure message */
-const char * CK_EXPORT tr_msg (TestResult *tr);
-/* Line number at which failure occured */
-int CK_EXPORT tr_lno (TestResult *tr);
-/* File name at which failure occured */
-const char * CK_EXPORT tr_lfile (TestResult *tr);
-/* Test case in which unit test was run */
-const char * CK_EXPORT tr_tcname (TestResult *tr);
-
-/* Creates an SRunner for the given suite */
-SRunner * CK_EXPORT srunner_create (Suite *s);
-
-/* Adds a Suite to an SRunner */
-void CK_EXPORT srunner_add_suite (SRunner *sr, Suite *s);
-
-/* Frees an SRunner, all suites added to it and all contained test cases */
-void CK_EXPORT srunner_free (SRunner *sr);
-
- 
-/* Test running */
-
-/* Runs an SRunner, printing results as specified (see enum print_output) */
-void CK_EXPORT srunner_run_all (SRunner *sr, enum print_output print_mode);
-
- 
-/* Next functions are valid only after the suite has been
-   completely run, of course */
-
-/* Number of failed tests in a run suite. Includes failures + errors */
-int CK_EXPORT srunner_ntests_failed (SRunner *sr);
-
-/* Total number of tests run in a run suite */
-int CK_EXPORT srunner_ntests_run (SRunner *sr);
-
-/* Return an array of results for all failures
-  
-   Number of failures is equal to srunner_nfailed_tests.  Memory for
-   the array is malloc'ed and must be freed, but individual TestResults
-   must not
-*/
-TestResult ** CK_EXPORT srunner_failures (SRunner *sr);
-
-/* Return an array of results for all run tests
-
-   Number of results is equal to srunner_ntests_run, and excludes
-   failures due to setup function failure.
-
-   Memory is malloc'ed and must be freed, but individual TestResults
-   must not
-*/  
-TestResult ** CK_EXPORT srunner_results (SRunner *sr);
-
- 
-/* Printing */
-
-/* Print the results contained in an SRunner */
-void CK_EXPORT srunner_print (SRunner *sr, enum print_output print_mode);
-  
-  
-/* Set a log file to which to write during test running.
-
-  Log file setting is an initialize only operation -- it should be
-  done immediatly after SRunner creation, and the log file can't be
-  changed after being set.
-*/
-void CK_EXPORT srunner_set_log (SRunner *sr, const char *fname);
-
-/* Does the SRunner have a log file? */
-int CK_EXPORT srunner_has_log (SRunner *sr);
-
-/* Return the name of the log file, or NULL if none */
-const char * CK_EXPORT srunner_log_fname (SRunner *sr);
-
-/* Set a xml file to which to write during test running.
-
-  XML file setting is an initialize only operation -- it should be
-  done immediatly after SRunner creation, and the XML file can't be
-  changed after being set.
-*/
-void CK_EXPORT srunner_set_xml (SRunner *sr, const char *fname);
-
-/* Does the SRunner have an XML log file? */
-int CK_EXPORT srunner_has_xml (SRunner *sr);
-
-/* Return the name of the XML file, or NULL if none */
-const char * CK_EXPORT srunner_xml_fname (SRunner *sr);
-
-
-/* Control forking */
-enum fork_status {
-  CK_FORK_GETENV, /* look in the environment for CK_FORK */
-  CK_FORK,        /* call fork to run tests */
-  CK_NOFORK       /* don't call fork */
-};
- 
-/* Get the current fork status */
-enum fork_status CK_EXPORT srunner_fork_status (SRunner *sr);
-
-/* Set the current fork status */
-void CK_EXPORT srunner_set_fork_status (SRunner *sr, enum fork_status fstat); 
-  
-/* Fork in a test and make sure messaging and tests work. */
-pid_t CK_EXPORT check_fork(void);
-
-/* Wait for the pid and exit. If pid is zero, just exit. */
-void CK_EXPORT check_waitpid_and_exit(pid_t pid);
-
-#ifdef __cplusplus 
-CK_CPPEND
-#endif
-
-#endif /* CHECK_H */
diff --git a/libs/gst/check/libcheck/check.h.in b/libs/gst/check/libcheck/check.h.in
index 3741ad0..996be7b 100644
--- a/libs/gst/check/libcheck/check.h.in
+++ b/libs/gst/check/libcheck/check.h.in
@@ -15,8 +15,8 @@
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
- * Boston, MA 02110-1301, USA.
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
  */
 
 #ifndef CHECK_H
@@ -25,38 +25,9 @@
 #include <stddef.h>
 #include <string.h>
 
-/* Check: a unit test framework for C
-
-   Check is a unit test framework for C. It features a simple
-   interface for defining unit tests, putting little in the way of the
-   developer. Tests are run in a separate address space, so Check can
-   catch both assertion failures and code errors that cause
-   segmentation faults or other signals. The output from unit tests
-   can be used within source code editors and IDEs.
-
-   Unit tests are created with the START_TEST/END_TEST macro
-   pair. The fail_unless and fail macros are used for creating
-   checks within unit tests; the mark_point macro is useful for
-   trapping the location of signals and/or early exits.
-
-
-   Test cases are created with tcase_create, unit tests are added
-   with tcase_add_test
-
-
-   Suites are created with suite_create; test cases are added
-   with suite_add_tcase
-
-   Suites are run through an SRunner, which is created with
-   srunner_create. Additional suites can be added to an SRunner with
-   srunner_add_suite. An SRunner is freed with srunner_free, which also
-   frees all suites added to the runner. 
-
-   Use srunner_run_all to run a suite and print results.
-
+/*
    Macros and functions starting with _ (underscore) are internal and
    may change without notice. You have been warned!.
-
 */
 
 
@@ -65,7 +36,6 @@
 #define CK_CPPEND }
 CK_CPPSTART
 #endif
-
 #if defined(__GNUC__) && defined(__GNUC_MINOR__)
 #define GCC_VERSION_AT_LEAST(major, minor) \
 ((__GNUC__ > (major)) || \
@@ -73,346 +43,1200 @@
 #else
 #define GCC_VERSION_AT_LEAST(major, minor) 0
 #endif
-
 #if GCC_VERSION_AT_LEAST(2,95)
 #define CK_ATTRIBUTE_UNUSED __attribute__ ((unused))
 #else
-#define CK_ATTRIBUTE_UNUSED              
+#define CK_ATTRIBUTE_UNUSED
 #endif /* GCC 2.95 */
-
+#if GCC_VERSION_AT_LEAST(2,5)
+#define CK_ATTRIBUTE_NORETURN __attribute__ ((noreturn))
+#else
+#define CK_ATTRIBUTE_NORETURN
+#endif /* GCC 2.5 */
 #include <sys/types.h>
-
-/* Used to create the linker script for hiding lib-local symbols. Shall
-   be put directly in front of the exported symbol. */
+/*
+ * Used to create the linker script for hiding lib-local symbols. Shall
+ * be put directly in front of the exported symbol.
+ */
 #define CK_EXPORT
-
+/*
+ * Used for MSVC to create the export attribute
+ * CK_DLL_EXP is defined during the compilation of the library
+ * on the command line.
+ */
+#ifndef CK_DLL_EXP
+#define CK_DLL_EXP
+#endif
 /* check version numbers */
-  
 #define CHECK_MAJOR_VERSION (@CHECK_MAJOR_VERSION@)
 #define CHECK_MINOR_VERSION (@CHECK_MINOR_VERSION@)
 #define CHECK_MICRO_VERSION (@CHECK_MICRO_VERSION@)
-
-extern int CK_EXPORT check_major_version;
-extern int CK_EXPORT check_minor_version;
-extern int CK_EXPORT check_micro_version;
+CK_DLL_EXP extern int CK_EXPORT check_major_version;
+CK_DLL_EXP extern int CK_EXPORT check_minor_version;
+CK_DLL_EXP extern int CK_EXPORT check_micro_version;
 
 #ifndef NULL
 #define NULL ((void*)0)
 #endif
 
-/* opaque type for a test case
-
-   A TCase represents a test case.  Create with tcase_create, free
-   with tcase_free.  For the moment, test cases can only be run
-   through a suite
+/**
+ * Type for a test case
+ *
+ * A TCase represents a test case.  Create with tcase_create, free
+ * with tcase_free.  For the moment, test cases can only be run
+ * through a suite
 */
-typedef struct TCase TCase; 
+typedef struct TCase TCase;
 
-/* type for a test function */
+/**
+ * Type for a test function
+ */
 typedef void (*TFun) (int);
 
-/* type for a setup/teardown function */
+/**
+ * Type for a setup/teardown function
+ */
 typedef void (*SFun) (void);
- 
-/* Opaque type for a test suite */
+
+/**
+ * Type for a test suite
+ */
 typedef struct Suite Suite;
- 
-/* Creates a test suite with the given name */
-Suite * CK_EXPORT suite_create (const char *name);
 
-/* Add a test case to a suite */
-void CK_EXPORT suite_add_tcase (Suite *s, TCase *tc);
+/**
+ * Creates a test suite with the given name.
+ *
+ * Create a suite, which will contain test cases. Once
+ * created, use suite_add_tcase() to add test cases.
+ * When finished, create a suite runner from the
+ * suite using srunner_create()
+ *
+ * @param name name of the suite
+ *
+ * @return suite
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP Suite *CK_EXPORT suite_create (const char *name);
 
-/* Create a test case */
-TCase * CK_EXPORT tcase_create (const char *name);
+/**
+ * Determines whether a given test suite contains a case named after a
+ * given string.
+ *
+ * @param s suite to check
+ * @param tcname test case to look for
+ *
+ * @return 1 iff the given test case is within the given suite;
+ *          0 otherwise
+ *
+ * @since 0.9.9
+ */
+CK_DLL_EXP int CK_EXPORT suite_tcase (Suite * s, const char *tcname);
 
-/* Add a test function to a test case (macro version) */
+/**
+ * Add a test case to a suite
+ *
+ * @param s suite to add test case to
+ * @param tc test case to add to suite
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP void CK_EXPORT suite_add_tcase (Suite * s, TCase * tc);
+
+/**
+ * Create a test case.
+ *
+ * Once created, tests can be added with the tcase_add_test()
+ * function, and the test case assigned to a suite with the
+ * suite_add_tcase() function.
+ *
+ * @param name name of the test case
+ *
+ * @return test case containing no tests
+ *
+ * @since 0.6.0
+ * */
+CK_DLL_EXP TCase *CK_EXPORT tcase_create (const char *name);
+
+/**
+ * Add a test function to a test case
+ *
+ * @param tc test case to add test to
+ * @param tf test function to add to test case
+ *
+ * @since 0.6.0
+ * */
 #define tcase_add_test(tc,tf) tcase_add_test_raise_signal(tc,tf,0)
 
-/* Add a test function with signal handling to a test case (macro version) */
+/**
+ * Add a test function with signal handling to a test case
+ *
+ * The added test is expected to terminate by throwing the given signal
+ *
+ * @param tc test case to add test to
+ * @param tf test function to add to test case
+ * @param signal expected signal for test function to throw in order for
+ *                the test to be considered passing
+ *
+ * @since 0.9.2
+ * */
 #define tcase_add_test_raise_signal(tc,tf,signal) \
    _tcase_add_test((tc),(tf),"" # tf "",(signal), 0, 0, 1)
 
-/* Add a test function with an expected exit value to a test case (macro version) */
+/**
+ * Add a test function with an expected exit value to a test case
+ *
+ * The added test is expected to terminate by exiting with the given value
+ *
+ * @param tc test case to add test to
+ * @param tf test function to add to test case
+ * @param expected_exit_value exit value for test function to return in
+ *                             order for the test to be considered passing
+ *
+ * @since 0.9.7
+ */
 #define tcase_add_exit_test(tc, tf, expected_exit_value) \
   _tcase_add_test((tc),(tf),"" # tf "",0,(expected_exit_value),0,1)
 
-/* Add a looping test function to a test case (macro version)
-
-   The test will be called in a for(i = s; i < e; i++) loop with each
-   iteration being executed in a new context. The loop variable 'i' is
-   available in the test.
+/**
+ * Add a looping test function to a test case
+ *
+ * The test will be called in a for(i = s; i < e; i++) loop with each
+ * iteration being executed in a new context. The loop variable 'i' is
+ * available in the test.
+ *
+ * @param tc test case to add test to
+ * @param tf function to add to test case
+ * @param s starting index for value "i" in test
+ * @param e ending index for value "i" in test
+ *
+ * @since 0.9.4
  */
 #define tcase_add_loop_test(tc,tf,s,e) \
   _tcase_add_test((tc),(tf),"" # tf "",0,0,(s),(e))
- 
-/* Signal version of loop test.  
-   FIXME: add a test case; this is untested as part of Check's tests.
+
+/**
+ * Add a looping test function with signal handling to a test case
+ *
+ * The test will be called in a for(i = s; i < e; i++) loop with each
+ * iteration being executed in a new context. The loop variable 'i' is
+ * available in the test.
+ *
+ * The added test is expected to terminate by throwing the given signal
+ *
+ * @param tc test case to add test to
+ * @param tf function to add to test case
+ * @param signal expected signal for test function to throw in order for
+ *                the test to be considered passing
+ * @param s starting index for value "i" in test
+ * @param e ending index for value "i" in test
+ *
+ * @since 0.9.5
  */
 #define tcase_add_loop_test_raise_signal(tc,tf,signal,s,e) \
   _tcase_add_test((tc),(tf),"" # tf "",(signal),0,(s),(e))
 
-/* allowed exit value version of loop test. */
+/**
+ * Add a looping test function with an expected exit value to a test case
+ *
+ * The test will be called in a for(i = s; i < e; i++) loop with each
+ * iteration being executed in a new context. The loop variable 'i' is
+ * available in the test.
+ *
+ * The added test is expected to terminate by exiting with the given value
+ *
+ * @param tc test case to add test to
+ * @param tf function to add to test case
+ * @param expected_exit_value exit value for test function to return in
+ *                             order for the test to be considered passing
+ * @param s starting index for value "i" in test
+ * @param e ending index for value "i" in test
+ *
+ * @since 0.9.7
+ */
 #define tcase_add_loop_exit_test(tc,tf,expected_exit_value,s,e) \
   _tcase_add_test((tc),(tf),"" # tf "",0,(expected_exit_value),(s),(e))
 
 /* Add a test function to a test case
   (function version -- use this when the macro won't work
 */
-void CK_EXPORT _tcase_add_test (TCase *tc, TFun tf, const char *fname, int _signal, int allowed_exit_value, int start, int end);
+CK_DLL_EXP void CK_EXPORT _tcase_add_test (TCase * tc, TFun tf,
+    const char *fname, int _signal, int allowed_exit_value, int start, int end);
 
-/* Add unchecked fixture setup/teardown functions to a test case
+/**
+ * Add unchecked fixture setup/teardown functions to a test case
+ *
+ * Unchecked fixture functions are run at the start and end of the
+ * test case, and not before and after unit tests. Further,
+ * unchecked fixture functions are not run in a separate address space,
+ * like test functions, and so must not exit or signal (e.g.,
+ * segfault).
+ *
+ * Also, when run in CK_NOFORK mode, unchecked fixture functions may
+ * lead to different unit test behavior if unit tests change data
+ * setup by the fixture functions.
+ *
+ * Note that if a setup function fails, the remaining setup functions
+ * will be omitted, as will the test case and the teardown functions.
+ * If a teardown function fails the remaining teardown functins will be
+ * omitted.
+ *
+ * @param tc test case to add unchecked fixture setup/teardown to
+ * @param setup function to add to be executed before the test case;
+ *               if NULL no setup function is added
+ * @param teardown function to add to be executed after the test case;
+ *               if NULL no teardown function is added
+ * @since 0.8.0
+ */
+CK_DLL_EXP void CK_EXPORT tcase_add_unchecked_fixture (TCase * tc, SFun setup,
+    SFun teardown);
 
-   If unchecked fixture functions are run at the start and end of the
-   test case, and not before and after unit tests. Note that unchecked
-   setup/teardown functions are not run in a separate address space,
-   like test functions, and so must not exit or signal (e.g.,
-   segfault)
-
-   Also, when run in CK_NOFORK mode, unchecked fixture functions may
-   lead to different unit test behavior IF unit tests change data
-   setup by the fixture functions.
+/**
+ * Add checked fixture setup/teardown functions to a test case
+ *
+ * Checked fixture functions are run before and after each unit test inside
+ * of the address space of the test. Thus, if using CK_FORK
+ * mode the separate process running the unit test will survive signals
+ * or unexpected exits in the fixture function. Also, if the setup
+ * function is idempotent, unit test behavior will be the same in
+ * CK_FORK and CK_NOFORK modes.
+ *
+ * However, since fixture functions are run before and after each unit
+ * test, they should not be expensive code.
+ *
+ * Note that if a setup function fails, the remaining setup functions
+ * will be omitted, as will the test and the teardown functions. If a
+ * teardown function fails the remaining teardown functins will be
+ * omitted.
+ *
+ * @param tc test case to add checked fixture setup/teardown to
+ * @param setup function to add to be executed before each unit test in
+ *               the test case;  if NULL no setup function is added
+ * @param teardown function to add to be executed after each unit test in
+ *               the test case; if NULL no teardown function is added
+ *
+ * @since 0.8.0
 */
-void CK_EXPORT tcase_add_unchecked_fixture (TCase *tc, SFun setup, SFun teardown);
+CK_DLL_EXP void CK_EXPORT tcase_add_checked_fixture (TCase * tc, SFun setup,
+    SFun teardown);
 
-/* Add fixture setup/teardown functions to a test case
+/**
+ * Set the timeout for all tests in a test case.
+ *
+ * A test that lasts longer than the timeout (in seconds) will be killed
+ * and thus fail with an error.
+ *
+ * If not set, the default timeout is one assigned at compile time. If
+ * the environment variable CK_DEFAULT_TIMEOUT is defined and no timeout
+ * is set, the value in the environment variable is used.
+ *
+ * @param tc test case to assign timeout to
+ * @param timeout to use, in seconds. If the value contains a decimal
+ *                 portion, but no high resolution timer is available,
+ *                 the value is rounded up to the nearest second.
+ *
+ * @since 0.9.2
+ */
+CK_DLL_EXP void CK_EXPORT tcase_set_timeout (TCase * tc, double timeout);
 
-   Checked fixture functions are run before and after unit
-   tests. Unlike unchecked fixture functions, checked fixture
-   functions are run in the same separate address space as the test
-   program, and thus the test function will survive signals or
-   unexpected exits in the fixture function. Also, IF the setup
-   function is idempotent, unit test behavior will be the same in
-   CK_FORK and CK_NOFORK modes.
-
-   However, since fixture functions are run before and after each unit
-   test, they should not be expensive code.
-
-*/ 
-void CK_EXPORT tcase_add_checked_fixture (TCase *tc, SFun setup, SFun teardown);
-
-/* Set the timeout for all tests in a test case. A test that lasts longer
-   than the timeout (in seconds) will be killed and thus fail with an error.
-   The timeout can also be set globaly with the environment variable
-   CK_DEFAULT_TIMEOUT, the specific setting always takes precedence.
-*/
-void CK_EXPORT tcase_set_timeout (TCase *tc, int timeout);
- 
 /* Internal function to mark the start of a test function */
-void CK_EXPORT tcase_fn_start (const char *fname, const char *file, int line);
+CK_DLL_EXP void CK_EXPORT tcase_fn_start (const char *fname, const char *file,
+    int line);
 
-/* Start a unit test with START_TEST(unit_name), end with END_TEST
-   One must use braces within a START_/END_ pair to declare new variables
-*/ 
+/**
+ * Start a unit test with START_TEST(unit_name), end with END_TEST.
+ *
+ * One must use braces within a START_/END_ pair to declare new variables
+ *
+ * @since 0.6.0
+ */
 #define START_TEST(__testname)\
 static void __testname (int _i CK_ATTRIBUTE_UNUSED)\
 {\
   tcase_fn_start (""# __testname, __FILE__, __LINE__);
 
-/* End a unit test */
+/**
+ *  End a unit test
+ *
+ * @since 0.6.0
+ */
 #define END_TEST }
 
-/* Fail the test case unless expr is true */
-/* The space before the comma sign before ## is essential to be compatible
-   with gcc 2.95.3 and earlier.
-*/
-#define fail_unless(expr, ...)\
-        _fail_unless(expr, __FILE__, __LINE__,\
-        "Assertion '"#expr"' failed" , ## __VA_ARGS__, NULL)
+/*
+ * Fail the test case unless expr is false
+ *
+ * This call is deprecated.
+ */
+#define fail_unless ck_assert_msg
 
-/* Fail the test case if expr is true */
-/* The space before the comma sign before ## is essential to be compatible
-   with gcc 2.95.3 and earlier.
-*/
-
-/* FIXME: these macros may conflict with C89 if expr is 
-   FIXME:   strcmp (str1, str2) due to excessive string length. */
+/*
+ * Fail the test case if expr is false
+ *
+ * This call is deprecated.
+ *
+ * NOTE: The space before the comma sign before ## is essential to be compatible
+ * with gcc 2.95.3 and earlier.
+ * FIXME: these macros may conflict with C89 if expr is
+ * FIXME:   strcmp (str1, str2) due to excessive string length.
+ */
 #define fail_if(expr, ...)\
-        _fail_unless(!(expr), __FILE__, __LINE__,\
-        "Failure '"#expr"' occured" , ## __VA_ARGS__, NULL)
+  (expr) ? \
+     _ck_assert_failed(__FILE__, __LINE__, "Failure '"#expr"' occurred" , ## __VA_ARGS__, NULL) \
+     : _mark_point(__FILE__, __LINE__)
 
-/* Always fail */
-#define fail(...) _fail_unless(0, __FILE__, __LINE__, "Failed", __VA_ARGS__, NULL)
+/*
+ * Fail the test
+ *
+ * This call is deprecated.
+ */
+#define fail ck_abort_msg
 
-/* Non macro version of #fail_unless, with more complicated interface */
-void CK_EXPORT _fail_unless (int result, const char *file,
-                             int line, const char *expr, ...);
+/*
+ * This is called whenever an assertion fails.
+ * Note that it only has the noreturn modifier when
+ * using fork. If fork is unavailable, the function
+ * calls longjmp() when a test assertion fails. Marking
+ * the function as noreturn causes gcc to make assumptions
+ * which are not valid, as longjmp() is like a return.
+ */
+#if @HAVE_FORK@
+CK_DLL_EXP void CK_EXPORT
+_ck_assert_failed (const char *file, int line, const char *expr, ...)
+    CK_ATTRIBUTE_NORETURN;
+#else
+CK_DLL_EXP void CK_EXPORT _ck_assert_failed (const char *file, int line,
+    const char *expr, ...);
+#endif
 
-/* New check fail API. */
+/**
+ * Fail the test if expression is false
+ *
+ * @param expr expression to evaluate
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_assert(expr) ck_assert_msg(expr, NULL)
+
+/* The space before the comma sign before ## is essential to be compatible
+   with gcc 2.95.3 and earlier.
+*/
+/**
+ * Fail the test if the expression is false; print message on failure
+ *
+ * @param expr expression to evaluate
+ * @param ... message to print (in printf format) if expression is false
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_assert_msg(expr, ...) \
+  (expr) ? \
+     _mark_point(__FILE__, __LINE__) : \
+     _ck_assert_failed(__FILE__, __LINE__, "Assertion '"#expr"' failed" , ## __VA_ARGS__, NULL)
+
+/**
+ * Unconditionally fail the test
+ *
+ * @note Once called, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
 #define ck_abort() ck_abort_msg(NULL)
-#define ck_abort_msg fail
-#define ck_assert(C) ck_assert_msg(C, NULL)
-#define ck_assert_msg fail_unless
+/**
+ * Unconditionally fail the test; print a message
+ *
+ * @param ... message to print (in printf format)
+ *
+ * @note Once called, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_abort_msg(...) _ck_assert_failed(__FILE__, __LINE__, "Failed" , ## __VA_ARGS__, NULL)
 
-/* Integer comparsion macros with improved output compared to fail_unless(). */
-/* O may be any comparion operator. */
-#define _ck_assert_int(X, O, Y) ck_assert_msg((X) O (Y), "Assertion '"#X#O#Y"' failed: "#X"==%d, "#Y"==%d", X, Y) 
-#define ck_assert_int_eq(X, Y) _ck_assert_int(X, ==, Y) 
-#define ck_assert_int_ne(X, Y) _ck_assert_int(X, !=, Y) 
+/* Signed and unsigned integer comparison macros with improved output compared to ck_assert(). */
+/* OP may be any comparison operator. */
+#define _ck_assert_int(X, OP, Y) do { \
+  gint64 _ck_x = (X); \
+  gint64 _ck_y = (Y); \
+  ck_assert_msg(_ck_x OP _ck_y, "Assertion '%s' failed: " \
+      "%s==%" G_GINT64_FORMAT ", %s==%" G_GINT64_FORMAT, #X#OP#Y, #X, _ck_x, #Y, _ck_y); \
+} while (0)
 
-/* String comparsion macros with improved output compared to fail_unless() */
-#define _ck_assert_str(C, X, O, Y) ck_assert_msg(C, "Assertion '"#X#O#Y"' failed: "#X"==\"%s\", "#Y"==\"%s\"", X, Y) 
-#define ck_assert_str_eq(X, Y) _ck_assert_str(!strcmp(X, Y), X, ==, Y)
-#define ck_assert_str_ne(X, Y) _ck_assert_str(strcmp(X, Y), X, !=, Y)
+/**
+ * Check two signed integers to determine if X==Y
+ *
+ * If not X==Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_assert_int_eq(X, Y) _ck_assert_int(X, ==, Y)
+/**
+ * Check two signed integers to determine if X!=Y
+ *
+ * If not X!=Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_assert_int_ne(X, Y) _ck_assert_int(X, !=, Y)
+/**
+ * Check two signed integers to determine if X<Y
+ *
+ * If not X<Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_int_lt(X, Y) _ck_assert_int(X, <, Y)
+/**
+ * Check two signed integers to determine if X<=Y
+ *
+ * If not X<=Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_int_le(X, Y) _ck_assert_int(X, <=, Y)
+/**
+ * Check two signed integers to determine if X>Y
+ *
+ * If not X>Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_int_gt(X, Y) _ck_assert_int(X, >, Y)
+/**
+ * Check two signed integers to determine if X>=Y
+ *
+ * If not X>=Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_int_ge(X, Y) _ck_assert_int(X, >=, Y)
 
+#define _ck_assert_uint(X, OP, Y) do { \
+  guint64 _ck_x = (X); \
+  guint64 _ck_y = (Y); \
+  ck_assert_msg(_ck_x OP _ck_y, "Assertion '%s' failed: " \
+      "%s==%" G_GUINT64_FORMAT ", %s==%" G_GUINT64_FORMAT, #X#OP#Y, #X, _ck_x, #Y, _ck_y); \
+} while (0)
+/**
+ * Check two unsigned integers to determine if X==Y
+ *
+ * If not X==Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_uint_eq(X, Y) _ck_assert_uint(X, ==, Y)
+/**
+ * Check two unsigned integers to determine if X!=Y
+ *
+ * If not X!=Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_uint_ne(X, Y) _ck_assert_uint(X, !=, Y)
+/**
+ * Check two unsigned integers to determine if X<Y
+ *
+ * If not X<Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_uint_lt(X, Y) _ck_assert_uint(X, <, Y)
+/**
+ * Check two unsigned integers to determine if X<=Y
+ *
+ * If not X<=Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_uint_le(X, Y) _ck_assert_uint(X, <=, Y)
+/**
+ * Check two unsigned integers to determine if X>Y
+ *
+ * If not X>Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_uint_gt(X, Y) _ck_assert_uint(X, >, Y)
+/**
+ * Check two unsigned integers to determine if X>=Y
+ *
+ * If not X>=Y, the test fails.
+ *
+ * @param X signed integer
+ * @param Y signed integer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_uint_ge(X, Y) _ck_assert_uint(X, >=, Y)
 
-/* Mark the last point reached in a unit test
-   (useful for tracking down where a segfault, etc. occurs)
+/* String comparison macros with improved output compared to ck_assert() */
+/* OP might be any operator that can be used in '0 OP strcmp(X,Y)' comparison */
+/* The x and y parameter swap in strcmp() is needed to handle >, >=, <, <= operators */
+#define _ck_assert_str(X, OP, Y) do { \
+  const char* _ck_x = (X); \
+  const char* _ck_y = (Y); \
+  ck_assert_msg(0 OP strcmp(_ck_y, _ck_x), \
+    "Assertion '%s' failed: %s==\"%s\", %s==\"%s\"", #X#OP#Y, #X, _ck_x, #Y, _ck_y); \
+} while (0)
+/**
+ * Check two strings to determine if 0==strcmp(X,Y)
+ *
+ * If not 0==strcmp(X,Y), the test fails.
+ *
+ * @param X string
+ * @param Y string to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_assert_str_eq(X, Y) _ck_assert_str(X, ==, Y)
+/**
+ * Check two strings to determine if 0!=strcmp(X,Y)
+ *
+ * If not 0!=strcmp(X,Y), the test fails.
+ *
+ * @param X string
+ * @param Y string to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.6
+ */
+#define ck_assert_str_ne(X, Y) _ck_assert_str(X, !=, Y)
+/**
+ * Check two strings to determine if 0<strcmp(X,Y), (e.g. strcmp(X,Y)>0)
+ *
+ * If not 0<strcmp(X,Y), the test fails.
+ *
+ * @param X string
+ * @param Y string to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_str_lt(X, Y) _ck_assert_str(X, <, Y)
+/**
+ * Check two strings to determine if 0<=strcmp(X,Y) (e.g. strcmp(X,Y)>=0)
+ *
+ * If not 0<=strcmp(X,Y), the test fails.
+ *
+ * @param X string
+ * @param Y string to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_str_le(X, Y) _ck_assert_str(X, <=, Y)
+/**
+ * Check two strings to determine if 0<strcmp(X,Y) (e.g. strcmp(X,Y)>0)
+ *
+ * If not 0<strcmp(X,Y), the test fails.
+ *
+ * @param X string
+ * @param Y string to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_str_gt(X, Y) _ck_assert_str(X, >, Y)
+/**
+ * Check two strings to determine if 0>=strcmp(X,Y) (e.g. strcmp(X,Y)<=0)
+ *
+ * If not 0>=strcmp(X,Y), the test fails.
+ *
+ * @param X string
+ * @param Y string to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_str_ge(X, Y) _ck_assert_str(X, >=, Y)
+
+/* Pointer comparison macros with improved output compared to ck_assert(). */
+/* OP may only be == or !=  */
+#define _ck_assert_ptr(X, OP, Y) do { \
+  const void* _ck_x = (X); \
+  const void* _ck_y = (Y); \
+  ck_assert_msg(_ck_x OP _ck_y, "Assertion '%s' failed: %s==%#x, %s==%#x", #X#OP#Y, #X, _ck_x, #Y, _ck_y); \
+} while (0)
+
+/**
+ * Check if two pointers are equal.
+ *
+ * If the two passed pointers are not equal, the test
+ * fails.
+ *
+ * @param X pointer
+ * @param Y pointer to compare against X
+ *
+ * @note If the check fails, the remaining of the test is aborted
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_ptr_eq(X, Y) _ck_assert_ptr(X, ==, Y)
+
+/**
+ * Check if two pointers are not.
+ *
+ * If the two passed pointers are equal, the test fails.
+ *
+ * @param X pointer
+ * @param Y pointer to compare against X
+ *
+ * @since 0.9.10
+ */
+#define ck_assert_ptr_ne(X, Y) _ck_assert_ptr(X, !=, Y)
+
+/**
+ * Mark the last point reached in a unit test.
+ *
+ * If the test throws a signal or exits, the location noted with the
+ * failure is the last location of a ck_assert*() or ck_abort() call.
+ * Use mark_point() to record intermediate locations (useful for tracking down
+ * crashes or exits).
+ *
+ * @since 0.6.0
 */
 #define mark_point() _mark_point(__FILE__,__LINE__)
 
 /* Non macro version of #mark_point */
-void CK_EXPORT _mark_point (const char *file, int line);
+CK_DLL_EXP void CK_EXPORT _mark_point (const char *file, int line);
 
-/* Result of a test */
-enum test_result {
-  CK_TEST_RESULT_INVALID, /* Default value; should not encounter this */
-  CK_PASS, /* Test passed*/
-  CK_FAILURE, /* Test completed but failed */
-  CK_ERROR /* Test failed to complete
-	      (unexpected signal or non-zero early exit) */ 
+/**
+ * Enum describing the possible results of a test
+ */
+enum test_result
+{
+  CK_TEST_RESULT_INVALID,       /**< Default value; should not encounter this */
+  CK_PASS,                      /**< Test passed */
+  CK_FAILURE,                   /**< Test completed but failed */
+  CK_ERROR                      /**< Test failed to complete
+                                   (unexpected signal or non-zero early exit) */
 };
 
-/* Specifies the how much output an SRunner should produce */
-enum print_output {
-  CK_SILENT, /* No output */
-  CK_MINIMAL, /* Only summary output */
-  CK_NORMAL, /* All failed tests */
-  CK_VERBOSE, /* All tests */
-  CK_ENV, /* Look at environment var */
+/**
+ * Enum specifying the verbosity of output a SRunner should produce
+ */
+enum print_output
+{
+  CK_SILENT,                    /**< No output */
+  CK_MINIMAL,                   /**< Only summary output */
+  CK_NORMAL,                    /**< All failed tests */
+  CK_VERBOSE,                   /**< All tests */
+  CK_ENV,                       /**< Look at environment var CK_VERBOSITY
+                                     for what verbosity to use, which can be
+                                     either "silent", "minimal", "normal",
+                                     or "verbose". If the environment variable
+                                     is not set, then CK_NORMAL will be used.*/
 #if @ENABLE_SUBUNIT@
-  CK_SUBUNIT, /* Run as a subunit child process */
+  CK_SUBUNIT,                   /**< Run as a subunit child process */
 #endif
-  CK_LAST
+  CK_LAST                       /**< Not a valid option */
 };
 
-/* Holds state for a running of a test suite */
+/**
+ * Holds state for a running of a test suite
+ */
 typedef struct SRunner SRunner;
 
-/* Opaque type for a test failure */
+/**
+ * Opaque type for a test failure
+ */
 typedef struct TestResult TestResult;
 
-/* accessors for tr fields */
-enum ck_result_ctx {
-  CK_CTX_INVALID, /* Default value; should not encounter this */
-  CK_CTX_SETUP,
-  CK_CTX_TEST,
-  CK_CTX_TEARDOWN
+/**
+ * Enum representing the types of contexts for a test
+ */
+enum ck_result_ctx
+{
+  CK_CTX_INVALID,               /**< Default value; should not encounter this */
+  CK_CTX_SETUP,                 /**< Setup before a test */
+  CK_CTX_TEST,                  /**< Body of test itself */
+  CK_CTX_TEARDOWN               /**< Teardown after a test */
 };
 
-/* Type of result */
-int CK_EXPORT tr_rtype (TestResult *tr);
-/* Context in which the result occurred */ 
-enum ck_result_ctx CK_EXPORT tr_ctx (TestResult *tr); 
-/* Failure message */
-const char * CK_EXPORT tr_msg (TestResult *tr);
-/* Line number at which failure occured */
-int CK_EXPORT tr_lno (TestResult *tr);
-/* File name at which failure occured */
-const char * CK_EXPORT tr_lfile (TestResult *tr);
-/* Test case in which unit test was run */
-const char * CK_EXPORT tr_tcname (TestResult *tr);
+/**
+ * Retrieve type of result that the given test result represents.
+ *
+ * This is a member of test_result, and can represent a
+ * pass, failure, or error.
+ *
+ * @param tr test result to retrieve result from
+ *
+ * @return result of given test
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP int CK_EXPORT tr_rtype (TestResult * tr);
 
-/* Creates an SRunner for the given suite */
-SRunner * CK_EXPORT srunner_create (Suite *s);
+/**
+ * Retrieve context in which the result occurred for the given test result.
+ *
+ * The types of contents include the test setup, teardown, or the
+ * body of the test itself.
+ *
+ * @param tr test result to retrieve context from
+ *
+ * @return context to which the given test result applies
+ *
+ * @since 0.8.0
+ */
+CK_DLL_EXP enum ck_result_ctx CK_EXPORT tr_ctx (TestResult * tr);
 
-/* Adds a Suite to an SRunner */
-void CK_EXPORT srunner_add_suite (SRunner *sr, Suite *s);
+/**
+ * Retrieve failure message from test result, if applicable.
+ *
+ * @return pointer to a message, if one exists. NULL otherwise.
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP const char *CK_EXPORT tr_msg (TestResult * tr);
 
-/* Frees an SRunner, all suites added to it and all contained test cases */
-void CK_EXPORT srunner_free (SRunner *sr);
+/**
+ * Retrieve line number at which a failure occurred, if applicable.
+ *
+ * @return If the test resulted in a failure, returns the line number
+ *          that the failure occurred on; otherwise returns -1.
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP int CK_EXPORT tr_lno (TestResult * tr);
 
- 
-/* Test running */
+/**
+ * Retrieve file name at which a failure occurred, if applicable.
+ *
+ * @return If the test resulted in a failure, returns a string
+ *          containing the name of the file where the failure
+ *          occurred; otherwise returns NULL.
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP const char *CK_EXPORT tr_lfile (TestResult * tr);
 
-/* Runs an SRunner, printing results as specified (see enum print_output) */
-void CK_EXPORT srunner_run_all (SRunner *sr, enum print_output print_mode);
+/**
+ * Retrieve test case name in which a failure occurred, if applicable.
+ *
+ * @return If the test resulted in a failure, returns a string
+ *          containing the name of the test suite where the failure
+ *          occurred; otherwise returns NULL.
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP const char *CK_EXPORT tr_tcname (TestResult * tr);
 
- 
-/* Next functions are valid only after the suite has been
-   completely run, of course */
+/**
+ * Creates a suite runner for the given suite.
+ *
+ * Once created, additional suites can be added to the
+ * suite runner using srunner_add_suite(), and the suite runner can be
+ * run with srunner_run_all(). Once finished, the suite runner
+ * must be freed with srunner_free().
+ *
+ * @param s suite to generate a suite runner for
+ *
+ * @return suite runner for the given suite
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP SRunner *CK_EXPORT srunner_create (Suite * s);
 
-/* Number of failed tests in a run suite. Includes failures + errors */
-int CK_EXPORT srunner_ntests_failed (SRunner *sr);
+/**
+ * Add an additional suite to a suite runner.
+ *
+ * The first suite in a suite runner is always added in srunner_create().
+ * This call adds additional suites to a suite runner.
+ *
+ * @param sr suite runner to add the given suite
+ * @param s suite to add to the given suite runner
+ *
+ * @since 0.7.0
+ */
+CK_DLL_EXP void CK_EXPORT srunner_add_suite (SRunner * sr, Suite * s);
 
-/* Total number of tests run in a run suite */
-int CK_EXPORT srunner_ntests_run (SRunner *sr);
+/**
+ * Frees a suite runner, including all contained suite and test cases.
+ *
+ * This call is responsible for freeing all resources related to a
+ * suite runner and all contained suites and test cases. Suite and
+ * test cases need not be freed individually, as this call handles that.
+ *
+ * @param sr suite runner to free
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP void CK_EXPORT srunner_free (SRunner * sr);
 
-/* Return an array of results for all failures
-  
-   Number of failures is equal to srunner_nfailed_tests.  Memory for
-   the array is malloc'ed and must be freed, but individual TestResults
-   must not
+/**
+ * Runs a suite runner and all contained suite, printing results to
+ * stdout as specified by the print_mode.
+ *
+ * In addition to running all suites, if the suite runner has been
+ * configured to output to a log, that is also performed.
+ *
+ * Note that if the CK_RUN_CASE and/or CK_RUN_SUITE environment variables
+ * are defined, then only the named suite and/or test case is run.
+ *
+ * @param sr suite runner to run all suites from
+ * @param print_mode the verbosity in which to report results to stdout
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP void CK_EXPORT srunner_run_all (SRunner * sr,
+    enum print_output print_mode);
+
+/**
+ * Run a specific suite or test case from a suite runner, printing results
+ * to stdout as specified by the print_mode.
+ *
+ * In addition to running any applicable suites or test cases, if the
+ * suite runner has been configured to output to a log, that is also
+ * performed.
+ *
+ * @param sr suite runner where the given suite or test case must be
+ * @param sname suite name to run. A NULL means "any suite".
+ * @param tcname test case name to run. A NULL means "any test case"
+ * @param print_mode the verbosity in which to report results to stdout
+ *
+ * @since 0.9.9
+ */
+CK_DLL_EXP void CK_EXPORT srunner_run (SRunner * sr, const char *sname,
+    const char *tcname, enum print_output print_mode);
+
+
+/**
+ * Retrieve the number of failed tests executed by a suite runner.
+ *
+ * This value represents both test failures and errors.
+ *
+ * @param sr suite runner to query for all failed tests
+ *
+ * @return number of test failures and errors found by the suite runner
+ *
+ * @since 0.6.1
+ */
+CK_DLL_EXP int CK_EXPORT srunner_ntests_failed (SRunner * sr);
+
+/**
+ * Retrieve the total number of tests run by a suite runner.
+ *
+ * @param sr suite runner to query for all tests run
+ *
+ * @return number of all tests run by the suite runner
+ *
+ * @since 0.6.1
+ */
+CK_DLL_EXP int CK_EXPORT srunner_ntests_run (SRunner * sr);
+
+/**
+ * Return an array of results for all failures found by a suite runner.
+ *
+ * Number of results is equal to srunner_nfailed_tests().
+ *
+ * Information about individual results can be queried using:
+ * tr_rtype(), tr_ctx(), tr_msg(), tr_lno(), tr_lfile(), and tr_tcname().
+ *
+ * Memory is malloc'ed and must be freed; however free the entire structure
+ * instead of individual test cases.
+ *
+ * @param sr suite runner to retrieve results from
+ *
+ * @return array of TestResult objects
+ *
+ * @since 0.6.0
+ */
+CK_DLL_EXP TestResult **CK_EXPORT srunner_failures (SRunner * sr);
+
+/**
+ * Return an array of results for all tests run by a suite runner.
+ *
+ * Number of results is equal to srunner_ntests_run(), and excludes
+ * failures due to setup function failure.
+ *
+ * Information about individual results can be queried using:
+ * tr_rtype(), tr_ctx(), tr_msg(), tr_lno(), tr_lfile(), and tr_tcname().
+ *
+ * Memory is malloc'ed and must be freed; however free the entire structure
+ * instead of individual test cases.
+ *
+ * @param sr suite runner to retrieve results from
+ *
+ * @return array of TestResult objects
+ *
+ * @since 0.6.1
 */
-TestResult ** CK_EXPORT srunner_failures (SRunner *sr);
+CK_DLL_EXP TestResult **CK_EXPORT srunner_results (SRunner * sr);
 
-/* Return an array of results for all run tests
+/**
+ * Print the results contained in an SRunner to stdout.
+ *
+ * @param sr suite runner to print results for to stdout
+ * @param print_mode the print_output (verbosity) to use to report
+ *         the result
+ *
+ * @since 0.7.0
+ */
+CK_DLL_EXP void CK_EXPORT srunner_print (SRunner * sr,
+    enum print_output print_mode);
 
-   Number of results is equal to srunner_ntests_run, and excludes
-   failures due to setup function failure.
-
-   Memory is malloc'ed and must be freed, but individual TestResults
-   must not
-*/  
-TestResult ** CK_EXPORT srunner_results (SRunner *sr);
-
- 
-/* Printing */
-
-/* Print the results contained in an SRunner */
-void CK_EXPORT srunner_print (SRunner *sr, enum print_output print_mode);
-  
-  
-/* Set a log file to which to write during test running.
-
-  Log file setting is an initialize only operation -- it should be
-  done immediatly after SRunner creation, and the log file can't be
-  changed after being set.
+/**
+ * Set the suite runner to output the result in log format to the
+ * given file.
+ *
+ * Note: log file setting is an initialize only operation -- it should
+ * be done immediately after SRunner creation, and the log file can't be
+ * changed after being set.
+ *
+ * This setting does not conflict with the other log output types;
+ * all logging types can occur concurrently if configured.
+ *
+ * @param sr suite runner to log results of in log format
+ * @param fname file name to output log results to
+ *
+ * @since 0.7.1
 */
-void CK_EXPORT srunner_set_log (SRunner *sr, const char *fname);
+CK_DLL_EXP void CK_EXPORT srunner_set_log (SRunner * sr, const char *fname);
 
-/* Does the SRunner have a log file? */
-int CK_EXPORT srunner_has_log (SRunner *sr);
+/**
+ * Checks if the suite runner is assigned a file for log output.
+ *
+ * @param sr suite runner to check
+ *
+ * @return 1 iff the suite runner currently is configured to output
+ *         in log format; 0 otherwise
+ *
+ * @since 0.7.1
+ */
+CK_DLL_EXP int CK_EXPORT srunner_has_log (SRunner * sr);
 
-/* Return the name of the log file, or NULL if none */
-const char * CK_EXPORT srunner_log_fname (SRunner *sr);
+/**
+ * Retrieves the name of the currently assigned file
+ * for log output, if any exists.
+ *
+ * @return the name of the log file, or NULL if none is configured
+ *
+ * @since 0.7.1
+ */
+CK_DLL_EXP const char *CK_EXPORT srunner_log_fname (SRunner * sr);
 
-/* Set a xml file to which to write during test running.
-
-  XML file setting is an initialize only operation -- it should be
-  done immediatly after SRunner creation, and the XML file can't be
-  changed after being set.
+/**
+ * Set the suite runner to output the result in XML format to the
+ * given file.
+ *
+ * Note: XML file setting is an initialize only operation -- it should
+ * be done immediately after SRunner creation, and the XML file can't be
+ * changed after being set.
+ *
+ * This setting does not conflict with the other log output types;
+ * all logging types can occur concurrently if configured.
+ *
+ * @param sr suite runner to log results of in XML format
+ * @param fname file name to output XML results to
+ *
+ * @since 0.9.1
 */
-void CK_EXPORT srunner_set_xml (SRunner *sr, const char *fname);
+CK_DLL_EXP void CK_EXPORT srunner_set_xml (SRunner * sr, const char *fname);
 
-/* Does the SRunner have an XML log file? */
-int CK_EXPORT srunner_has_xml (SRunner *sr);
+/**
+ * Checks if the suite runner is assigned a file for XML output.
+ *
+ * @param sr suite runner to check
+ *
+ * @return 1 iff the suite runner currently is configured to output
+ *         in XML format; 0 otherwise
+ *
+ * @since 0.9.1
+ */
+CK_DLL_EXP int CK_EXPORT srunner_has_xml (SRunner * sr);
 
-/* Return the name of the XML file, or NULL if none */
-const char * CK_EXPORT srunner_xml_fname (SRunner *sr);
+/**
+ * Retrieves the name of the currently assigned file
+ * for XML output, if any exists.
+ *
+ * @return the name of the XML file, or NULL if none is configured
+ *
+ * @since 0.9.1
+ */
+CK_DLL_EXP const char *CK_EXPORT srunner_xml_fname (SRunner * sr);
 
+/**
+ * Set the suite runner to output the result in TAP format to the
+ * given file.
+ *
+ * Note: TAP file setting is an initialize only operation -- it should
+ * be done immediately after SRunner creation, and the TAP file can't be
+ * changed after being set.
+ *
+ * This setting does not conflict with the other log output types;
+ * all logging types can occur concurrently if configured.
+ *
+ * @param sr suite runner to log results of in TAP format
+ * @param fname file name to output TAP results to
+ *
+ * @since 0.9.12
+*/
+CK_DLL_EXP void CK_EXPORT srunner_set_tap (SRunner * sr, const char *fname);
 
-/* Control forking */
-enum fork_status {
-  CK_FORK_GETENV, /* look in the environment for CK_FORK */
-  CK_FORK,        /* call fork to run tests */
-  CK_NOFORK       /* don't call fork */
+/**
+ * Checks if the suite runner is assigned a file for TAP output.
+ *
+ * @param sr suite runner to check
+ *
+ * @return 1 iff the suite runner currently is configured to output
+ *         in TAP format; 0 otherwise
+ *
+ * @since 0.9.12
+ */
+CK_DLL_EXP int CK_EXPORT srunner_has_tap (SRunner * sr);
+
+/**
+ * Retrieves the name of the currently assigned file
+ * for TAP output, if any exists.
+ *
+ * @return the name of the TAP file, or NULL if none is configured
+ *
+ * @since 0.9.12
+ */
+CK_DLL_EXP const char *CK_EXPORT srunner_tap_fname (SRunner * sr);
+
+/**
+ * Enum describing the current fork usage.
+ */
+enum fork_status
+{
+  CK_FORK_GETENV,               /**< look in the environment for CK_FORK */
+  CK_FORK,                      /**< call fork to run tests */
+  CK_NOFORK                     /**< don't call fork */
 };
- 
-/* Get the current fork status */
-enum fork_status CK_EXPORT srunner_fork_status (SRunner *sr);
 
-/* Set the current fork status */
-void CK_EXPORT srunner_set_fork_status (SRunner *sr, enum fork_status fstat); 
-  
-/* Fork in a test and make sure messaging and tests work. */
-pid_t CK_EXPORT check_fork(void);
+/**
+ * Retrieve the current fork status for the given suite runner
+ *
+ * @param sr suite runner to check fork status of
+ *
+ * @since 0.8.0
+ */
+CK_DLL_EXP enum fork_status CK_EXPORT srunner_fork_status (SRunner * sr);
 
-/* Wait for the pid and exit. If pid is zero, just exit. */
-void CK_EXPORT check_waitpid_and_exit(pid_t pid);
+/**
+ * Set the fork status for a given suite runner.
+ *
+ * The default fork status is CK_FORK_GETENV, which will look
+ * for the CK_FORK environment variable, which can be set to
+ * "yes" or "no". If the environment variable is not present,
+ * CK_FORK will be used if fork() is available on the system,
+ * otherwise CK_NOFORK is used.
+ *
+ * If set to CK_FORK or CK_NOFORK, the environment variable
+ * if defined is ignored.
+ *
+ * @param sr suite runner to assign the fork status to
+ * @param fstat fork status to assign
+ *
+ * @since 0.8.0
+ */
+CK_DLL_EXP void CK_EXPORT srunner_set_fork_status (SRunner * sr,
+    enum fork_status fstat);
 
-#ifdef __cplusplus 
+/**
+ * Invoke fork() during a test and assign the child to the same
+ * process group that the rest of the test case uses.
+ *
+ * One can invoke fork() directly during a test; however doing so
+ * may not guarantee that any children processes are destroyed once
+ * the test finishes. Once a test has completed, all processes in
+ * the process group will be killed; using this wrapper will prevent
+ * orphan processes.
+ *
+ * @return On success, the PID of the child process is returned in
+ *          the parent, and 0 is returned in the child.  On failure,
+ *          an error will be printed and exit() invoked.
+ *
+ * @since 0.9.3
+ */
+CK_DLL_EXP pid_t CK_EXPORT check_fork (void);
+
+/**
+ * Wait for the pid and exit.
+ *
+ * This is to be used in conjunction with check_fork(). When called,
+ * will wait for the given process to terminate. If the process
+ * exited without error, exit(EXIT_SUCCESS) is invoked; otherwise
+ * exit(EXIT_FAILURE) is invoked.
+ *
+ * @param pid process to wait for, created by check_fork()
+ *
+ * @since 0.9.3
+ */
+CK_DLL_EXP void CK_EXPORT
+check_waitpid_and_exit (pid_t pid)
+    CK_ATTRIBUTE_NORETURN;
+
+#ifdef __cplusplus
 CK_CPPEND
 #endif
-
 #endif /* CHECK_H */
diff --git a/libs/gst/check/libcheck/check_error.c b/libs/gst/check/libcheck/check_error.c
index 247b9ca..9ee1dd1 100644
--- a/libs/gst/check/libcheck/check_error.c
+++ b/libs/gst/check/libcheck/check_error.c
@@ -18,22 +18,29 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <stdarg.h>
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
 #include <errno.h>
+#include <setjmp.h>
 
 #include "check_error.h"
 
+/**
+ * Storage for setjmp/longjmp context information used in NOFORK mode
+ */
+jmp_buf error_jmp_buffer;
+
 
 /* FIXME: including a colon at the end is a bad way to indicate an error */
 void
 eprintf (const char *fmt, const char *file, int line, ...)
 {
   va_list args;
+
   fflush (stderr);
 
   fprintf (stderr, "%s:%d: ", file, line);
@@ -53,6 +60,7 @@
 emalloc (size_t n)
 {
   void *p;
+
   p = malloc (n);
   if (p == NULL)
     eprintf ("malloc of %u bytes failed:", __FILE__, __LINE__ - 2, n);
@@ -63,6 +71,7 @@
 erealloc (void *ptr, size_t n)
 {
   void *p;
+
   p = realloc (ptr, n);
   if (p == NULL)
     eprintf ("realloc of %u bytes failed:", __FILE__, __LINE__ - 2, n);
diff --git a/libs/gst/check/libcheck/check_error.h b/libs/gst/check/libcheck/check_error.h
index 3fa0129..771a7fd 100644
--- a/libs/gst/check/libcheck/check_error.h
+++ b/libs/gst/check/libcheck/check_error.h
@@ -21,13 +21,20 @@
 #ifndef ERROR_H
 #define ERROR_H
 
+#include "libcompat.h"
+#include <setjmp.h>
+
+extern jmp_buf error_jmp_buffer;
+
 /* Include stdlib.h beforehand */
 
 /* Print error message and die
    If fmt ends in colon, include system error information */
-void eprintf (const char *fmt, const char *file, int line,...);
+void
+eprintf (const char *fmt, const char *file, int line, ...)
+    CK_ATTRIBUTE_NORETURN;
 /* malloc or die */
-void *emalloc(size_t n);
-void *erealloc(void *, size_t n);
+     void *emalloc (size_t n);
+     void *erealloc (void *, size_t n);
 
-#endif /*ERROR_H*/
+#endif /*ERROR_H */
diff --git a/libs/gst/check/libcheck/check_impl.h b/libs/gst/check/libcheck/check_impl.h
index c76488e..e5ca7e9 100644
--- a/libs/gst/check/libcheck/check_impl.h
+++ b/libs/gst/check/libcheck/check_impl.h
@@ -21,97 +21,117 @@
 #ifndef CHECK_IMPL_H
 #define CHECK_IMPL_H
 
-
 /* This header should be included by any module that needs
    to know the implementation details of the check structures
-   Include stdio.h & list.h before this header
+   Include stdio.h, time.h, & list.h before this header
 */
 
-typedef struct TF {
+#define US_PER_SEC 1000000
+#define NANOS_PER_SECONDS 1000000000
+
+/** calculate the difference in useconds out of two "struct timespec"s */
+#define DIFF_IN_USEC(begin, end) \
+  ( (((end).tv_sec - (begin).tv_sec) * US_PER_SEC) + \
+    ((end).tv_nsec/1000) - ((begin).tv_nsec/1000) )
+
+typedef struct TF
+{
   TFun fn;
   int loop_start;
   int loop_end;
   const char *name;
   int signal;
-  unsigned char allowed_exit_value;
+  signed char allowed_exit_value;
 } TF;
 
-struct Suite {
+struct Suite
+{
   const char *name;
-  List *tclst; /* List of test cases */
+  List *tclst;                  /* List of test cases */
 };
 
-typedef struct Fixture 
+typedef struct Fixture
 {
   int ischecked;
   SFun fun;
 } Fixture;
 
-struct TCase {
+struct TCase
+{
   const char *name;
-  int timeout;
-  List *tflst; /* list of test functions */
+  struct timespec timeout;
+  List *tflst;                  /* list of test functions */
   List *unch_sflst;
   List *unch_tflst;
   List *ch_sflst;
   List *ch_tflst;
 };
 
-typedef struct TestStats {
+typedef struct TestStats
+{
   int n_checked;
   int n_failed;
   int n_errors;
 } TestStats;
 
-struct TestResult {
-  enum test_result rtype;     /* Type of result */
-  enum ck_result_ctx ctx;     /* When the result occurred */
-  char *file;    /* File where the test occured */
-  int line;      /* Line number where the test occurred */
-  int iter;      /* The iteration value for looping tests */
-  const char *tcname;  /* Test case that generated the result */
-  const char *tname;  /* Test that generated the result */
-  char *msg;     /* Failure message */
+struct TestResult
+{
+  enum test_result rtype;       /* Type of result */
+  enum ck_result_ctx ctx;       /* When the result occurred */
+  char *file;                   /* File where the test occured */
+  int line;                     /* Line number where the test occurred */
+  int iter;                     /* The iteration value for looping tests */
+  int duration;                 /* duration of this test in microseconds */
+  const char *tcname;           /* Test case that generated the result */
+  const char *tname;            /* Test that generated the result */
+  char *msg;                    /* Failure message */
 };
 
-TestResult *tr_create(void);
-void tr_reset(TestResult *tr);
+TestResult *tr_create (void);
+void tr_reset (TestResult * tr);
+void tr_free (TestResult * tr);
 
-enum cl_event {
-  CLINITLOG_SR,
-  CLENDLOG_SR,
-  CLSTART_SR,
-  CLSTART_S,
-  CLEND_SR,
-  CLEND_S,
-  CLSTART_T, /* A test case is about to run */
-  CLEND_T
+enum cl_event
+{
+  CLINITLOG_SR,                 /* Initialize log file */
+  CLENDLOG_SR,                  /* Tests are complete */
+  CLSTART_SR,                   /* Suite runner start */
+  CLSTART_S,                    /* Suite start */
+  CLEND_SR,                     /* Suite runner end */
+  CLEND_S,                      /* Suite end */
+  CLSTART_T,                    /* A test case is about to run */
+  CLEND_T                       /* Test case end */
 };
 
-typedef void (*LFun) (SRunner *, FILE*, enum print_output,
-		      void *, enum cl_event);
+typedef void (*LFun) (SRunner *, FILE *, enum print_output,
+    void *, enum cl_event);
 
-typedef struct Log {
+typedef struct Log
+{
   FILE *lfile;
   LFun lfun;
   int close;
   enum print_output mode;
 } Log;
 
-struct SRunner {
-  List *slst; /* List of Suite objects */
-  TestStats *stats; /* Run statistics */
-  List *resultlst; /* List of unit test results */
-  const char *log_fname; /* name of log file */
-  const char *xml_fname; /* name of xml output file */
-  List *loglst; /* list of Log objects */
-  enum fork_status fstat; /* controls if suites are forked or not
-			     NOTE: Don't use this value directly,
-			     instead use srunner_fork_status */
+struct SRunner
+{
+  List *slst;                   /* List of Suite objects */
+  TestStats *stats;             /* Run statistics */
+  List *resultlst;              /* List of unit test results */
+  const char *log_fname;        /* name of log file */
+  const char *xml_fname;        /* name of xml output file */
+  const char *tap_fname;        /* name of tap output file */
+  List *loglst;                 /* list of Log objects */
+  enum fork_status fstat;       /* controls if suites are forked or not
+                                   NOTE: Don't use this value directly,
+                                   instead use srunner_fork_status */
 };
 
 
-void set_fork_status(enum fork_status fstat);
+void set_fork_status (enum fork_status fstat);
 enum fork_status cur_fork_status (void);
 
+clockid_t check_get_clockid (void);
+
 #endif /* CHECK_IMPL_H */
diff --git a/libs/gst/check/libcheck/check_list.c b/libs/gst/check/libcheck/check_list.c
index c40ab58..bce19d8 100644
--- a/libs/gst/check/libcheck/check_list.c
+++ b/libs/gst/check/libcheck/check_list.c
@@ -18,7 +18,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <stdlib.h>
 #include <string.h>
@@ -35,11 +35,11 @@
 
 struct List
 {
-  int n_elts;
-  int max_elts;
+  unsigned int n_elts;
+  unsigned int max_elts;
   int current;                  /* pointer to the current node */
   int last;                     /* pointer to the node before END */
-  const void **data;
+  void **data;
 };
 
 static void
@@ -47,7 +47,8 @@
 {
   if (lp->n_elts >= lp->max_elts) {
     lp->max_elts *= LGROW;
-    lp->data = erealloc (lp->data, lp->max_elts * sizeof (lp->data[0]));
+    lp->data =
+        (void **) erealloc (lp->data, lp->max_elts * sizeof (lp->data[0]));
   }
 }
 
@@ -55,16 +56,17 @@
 check_list_create (void)
 {
   List *lp;
-  lp = emalloc (sizeof (List));
+
+  lp = (List *) emalloc (sizeof (List));
   lp->n_elts = 0;
   lp->max_elts = LINIT;
-  lp->data = emalloc (sizeof (lp->data[0]) * LINIT);
+  lp->data = (void **) emalloc (sizeof (lp->data[0]) * LINIT);
   lp->current = lp->last = -1;
   return lp;
 }
 
 void
-list_add_front (List * lp, const void *val)
+check_list_add_front (List * lp, void *val)
 {
   if (lp == NULL)
     return;
@@ -77,7 +79,7 @@
 }
 
 void
-list_add_end (List * lp, const void *val)
+check_list_add_end (List * lp, void *val)
 {
   if (lp == NULL)
     return;
@@ -89,7 +91,7 @@
 }
 
 int
-list_at_end (List * lp)
+check_list_at_end (List * lp)
 {
   if (lp->current == -1)
     return 1;
@@ -98,7 +100,7 @@
 }
 
 void
-list_front (List * lp)
+check_list_front (List * lp)
 {
   if (lp->current == -1)
     return;
@@ -107,7 +109,7 @@
 
 
 void
-list_free (List * lp)
+check_list_free (List * lp)
 {
   if (lp == NULL)
     return;
@@ -117,34 +119,34 @@
 }
 
 void *
-list_val (List * lp)
+check_list_val (List * lp)
 {
   if (lp == NULL)
     return NULL;
   if (lp->current == -1 || lp->current > lp->last)
     return NULL;
 
-  return (void *) lp->data[lp->current];
+  return lp->data[lp->current];
 }
 
 void
-list_advance (List * lp)
+check_list_advance (List * lp)
 {
   if (lp == NULL)
     return;
-  if (list_at_end (lp))
+  if (check_list_at_end (lp))
     return;
   lp->current++;
 }
 
 
 void
-list_apply (List * lp, void (*fp) (void *))
+check_list_apply (List * lp, void (*fp) (void *))
 {
   if (lp == NULL || fp == NULL)
     return;
 
-  for (list_front (lp); !list_at_end (lp); list_advance (lp))
-    fp (list_val (lp));
+  for (check_list_front (lp); !check_list_at_end (lp); check_list_advance (lp))
+    fp (check_list_val (lp));
 
 }
diff --git a/libs/gst/check/libcheck/check_list.h b/libs/gst/check/libcheck/check_list.h
index 7936c19..0270115 100644
--- a/libs/gst/check/libcheck/check_list.h
+++ b/libs/gst/check/libcheck/check_list.h
@@ -24,33 +24,33 @@
 typedef struct List List;
 
 /* Create an empty list */
-List * check_list_create (void);
+List *check_list_create (void);
 
 /* Is list at end? */
-int list_at_end (List * lp);
+int check_list_at_end (List * lp);
 
 /* Position list at front */
-void list_front(List *lp);
+void check_list_front (List * lp);
 
 /* Add a value to the front of the list,
    positioning newly added value as current value.
    More expensive than list_add_end, as it uses memmove. */
-void list_add_front (List *lp, const void *val);
+void check_list_add_front (List * lp, void *val);
 
 /* Add a value to the end of the list,
    positioning newly added value as current value */
-void list_add_end (List *lp, const void *val);
+void check_list_add_end (List * lp, void *val);
 
 /* Give the value of the current node */
-void *list_val (List * lp);
+void *check_list_val (List * lp);
 
 /* Position the list at the next node */
-void list_advance (List * lp);
+void check_list_advance (List * lp);
 
 /* Free a list, but don't free values */
-void list_free (List * lp);
+void check_list_free (List * lp);
 
-void list_apply (List *lp, void (*fp) (void *));
+void check_list_apply (List * lp, void (*fp) (void *));
 
 
 #endif /* CHECK_LIST_H */
diff --git a/libs/gst/check/libcheck/check_log.c b/libs/gst/check/libcheck/check_log.c
index 5f0dd97..ad5bb79 100644
--- a/libs/gst/check/libcheck/check_log.c
+++ b/libs/gst/check/libcheck/check_log.c
@@ -18,16 +18,12 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <stdlib.h>
 #include <stdio.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-#include <check.h>
-#if HAVE_SUBUNIT_CHILD_H
+#include <internal-check.h>
+#if ENABLE_SUBUNIT
 #include <subunit/child.h>
 #endif
 
@@ -38,20 +34,11 @@
 #include "check_print.h"
 #include "check_str.h"
 
-/* localtime_r is apparently not available on Windows */
-#ifndef HAVE_LOCALTIME_R
-static struct tm *
-localtime_r (const time_t * clock, struct tm *result)
-{
-  struct tm *now = localtime (clock);
-  if (now == NULL) {
-    return NULL;
-  } else {
-    *result = *now;
-  }
-  return result;
-}
-#endif /* HAVE_DECL_LOCALTIME_R */
+/*
+ * If a log file is specified to be "-", then instead of
+ * opening a file the log output is printed to stdout.
+ */
+#define STDOUT_OVERRIDE_LOG_FILE_NAME "-"
 
 static void srunner_send_evt (SRunner * sr, void *obj, enum cl_event evt);
 
@@ -66,13 +53,17 @@
 int
 srunner_has_log (SRunner * sr)
 {
-  return sr->log_fname != NULL;
+  return srunner_log_fname (sr) != NULL;
 }
 
 const char *
 srunner_log_fname (SRunner * sr)
 {
-  return sr->log_fname;
+  /* check if log filename have been set explicitly */
+  if (sr->log_fname != NULL)
+    return sr->log_fname;
+
+  return getenv ("CK_LOG_FILE_NAME");
 }
 
 
@@ -87,20 +78,50 @@
 int
 srunner_has_xml (SRunner * sr)
 {
-  return sr->xml_fname != NULL;
+  return srunner_xml_fname (sr) != NULL;
 }
 
 const char *
 srunner_xml_fname (SRunner * sr)
 {
-  return sr->xml_fname;
+  /* check if XML log filename have been set explicitly */
+  if (sr->xml_fname != NULL) {
+    return sr->xml_fname;
+  }
+
+  return getenv ("CK_XML_LOG_FILE_NAME");
+}
+
+void
+srunner_set_tap (SRunner * sr, const char *fname)
+{
+  if (sr->tap_fname)
+    return;
+  sr->tap_fname = fname;
+}
+
+int
+srunner_has_tap (SRunner * sr)
+{
+  return srunner_tap_fname (sr) != NULL;
+}
+
+const char *
+srunner_tap_fname (SRunner * sr)
+{
+  /* check if tap log filename have been set explicitly */
+  if (sr->tap_fname != NULL) {
+    return sr->tap_fname;
+  }
+
+  return getenv ("CK_TAP_LOG_FILE_NAME");
 }
 
 void
 srunner_register_lfun (SRunner * sr, FILE * lfile, int close,
     LFun lfun, enum print_output printmode)
 {
-  Log *l = emalloc (sizeof (Log));
+  Log *l = (Log *) emalloc (sizeof (Log));
 
   if (printmode == CK_ENV) {
     printmode = get_env_printmode ();
@@ -110,7 +131,7 @@
   l->lfun = lfun;
   l->close = close;
   l->mode = printmode;
-  list_add_end (sr->loglst, l);
+  check_list_add_end (sr->loglst, l);
   return;
 }
 
@@ -142,6 +163,7 @@
 log_test_start (SRunner * sr, TCase * tc, TF * tfun)
 {
   char buffer[100];
+
   snprintf (buffer, 99, "%s:%s", tc->name, tfun->name);
   srunner_send_evt (sr, buffer, CLSTART_T);
 }
@@ -157,9 +179,10 @@
 {
   List *l;
   Log *lg;
+
   l = sr->loglst;
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    lg = list_val (l);
+  for (check_list_front (l); !check_list_at_end (l); check_list_advance (l)) {
+    lg = (Log *) check_list_val (l);
     fflush (lg->lfile);
     lg->lfun (sr, lg->lfile, lg->mode, obj, evt);
     fflush (lg->lfile);
@@ -172,10 +195,6 @@
 {
   Suite *s;
 
-  if (printmode == CK_ENV) {
-    printmode = get_env_printmode ();
-  }
-
   switch (evt) {
     case CLINITLOG_SR:
       break;
@@ -187,7 +206,7 @@
       }
       break;
     case CLSTART_S:
-      s = obj;
+      s = (Suite *) obj;
       if (printmode > CK_SILENT) {
         fprintf (file, " %s\n", s->name);
       }
@@ -202,7 +221,6 @@
       }
       break;
     case CLEND_S:
-      s = obj;
       break;
     case CLSTART_T:
       break;
@@ -231,7 +249,7 @@
     case CLSTART_SR:
       break;
     case CLSTART_S:
-      s = obj;
+      s = (Suite *) obj;
       fprintf (file, "Running suite %s\n", s->name);
       break;
     case CLEND_SR:
@@ -239,12 +257,11 @@
       srunner_fprint (file, sr, CK_MINIMAL);
       break;
     case CLEND_S:
-      s = obj;
       break;
     case CLSTART_T:
       break;
     case CLEND_T:
-      tr = obj;
+      tr = (TestResult *) obj;
       tr_fprint (file, tr, CK_VERBOSE);
       break;
     default:
@@ -261,47 +278,60 @@
 {
   TestResult *tr;
   Suite *s;
-  static struct timeval inittv, endtv;
+  static struct timespec ts_start = { 0, 0 };
   static char t[sizeof "yyyy-mm-dd hh:mm:ss"] = { 0 };
 
   if (t[0] == 0) {
+    struct timeval inittv;
     struct tm now;
+
     gettimeofday (&inittv, NULL);
-    localtime_r (&(inittv.tv_sec), &now);
-    strftime (t, sizeof ("yyyy-mm-dd hh:mm:ss"), "%Y-%m-%d %H:%M:%S", &now);
+    clock_gettime (check_get_clockid (), &ts_start);
+    if (localtime_r ((const time_t *) &(inittv.tv_sec), &now) != NULL) {
+      strftime (t, sizeof ("yyyy-mm-dd hh:mm:ss"), "%Y-%m-%d %H:%M:%S", &now);
+    }
   }
 
   switch (evt) {
     case CLINITLOG_SR:
       fprintf (file, "<?xml version=\"1.0\"?>\n");
       fprintf (file,
+          "<?xml-stylesheet type=\"text/xsl\" href=\"http://check.sourceforge.net/xml/check_unittest.xslt\"?>\n");
+      fprintf (file,
           "<testsuites xmlns=\"http://check.sourceforge.net/ns\">\n");
       fprintf (file, "  <datetime>%s</datetime>\n", t);
       break;
     case CLENDLOG_SR:
-      gettimeofday (&endtv, NULL);
-      fprintf (file, "  <duration>%f</duration>\n",
-          (endtv.tv_sec + (float) (endtv.tv_usec) / 1000000) -
-          (inittv.tv_sec + (float) (inittv.tv_usec / 1000000)));
+    {
+      struct timespec ts_end = { 0, 0 };
+      unsigned long duration;
+
+      /* calculate time the test were running */
+      clock_gettime (check_get_clockid (), &ts_end);
+      duration = (unsigned long) DIFF_IN_USEC (ts_start, ts_end);
+      fprintf (file, "  <duration>%lu.%06lu</duration>\n",
+          duration / US_PER_SEC, duration % US_PER_SEC);
       fprintf (file, "</testsuites>\n");
+    }
       break;
     case CLSTART_SR:
       break;
     case CLSTART_S:
-      s = obj;
+      s = (Suite *) obj;
       fprintf (file, "  <suite>\n");
-      fprintf (file, "    <title>%s</title>\n", s->name);
+      fprintf (file, "    <title>");
+      fprint_xml_esc (file, s->name);
+      fprintf (file, "</title>\n");
       break;
     case CLEND_SR:
       break;
     case CLEND_S:
       fprintf (file, "  </suite>\n");
-      s = obj;
       break;
     case CLSTART_T:
       break;
     case CLEND_T:
-      tr = obj;
+      tr = (TestResult *) obj;
       tr_xmlprint (file, tr, CK_VERBOSE);
       break;
     default:
@@ -310,13 +340,55 @@
 
 }
 
+void
+tap_lfun (SRunner * sr CK_ATTRIBUTE_UNUSED, FILE * file,
+    enum print_output printmode CK_ATTRIBUTE_UNUSED, void *obj,
+    enum cl_event evt)
+{
+  TestResult *tr;
+
+  static int num_tests_run = 0;
+
+  switch (evt) {
+    case CLINITLOG_SR:
+      /* As this is a new log file, reset the number of tests executed */
+      num_tests_run = 0;
+      break;
+    case CLENDLOG_SR:
+      /* Output the test plan as the last line */
+      fprintf (file, "1..%d\n", num_tests_run);
+      fflush (file);
+      break;
+    case CLSTART_SR:
+      break;
+    case CLSTART_S:
+      break;
+    case CLEND_SR:
+      break;
+    case CLEND_S:
+      break;
+    case CLSTART_T:
+      break;
+    case CLEND_T:
+      /* Print the test result to the tap file */
+      num_tests_run += 1;
+      tr = (TestResult *) obj;
+      fprintf (file, "%s %d - %s:%s:%s: %s\n",
+          tr->rtype == CK_PASS ? "ok" : "not ok", num_tests_run,
+          tr->file, tr->tcname, tr->tname, tr->msg);
+      fflush (file);
+      break;
+    default:
+      eprintf ("Bad event type received in tap_lfun", __FILE__, __LINE__);
+  }
+}
+
 #if ENABLE_SUBUNIT
 void
 subunit_lfun (SRunner * sr, FILE * file, enum print_output printmode,
     void *obj, enum cl_event evt)
 {
   TestResult *tr;
-  Suite *s;
   char const *name;
 
   /* assert(printmode == CK_SUBUNIT); */
@@ -329,7 +401,6 @@
     case CLSTART_SR:
       break;
     case CLSTART_S:
-      s = obj;
       break;
     case CLEND_SR:
       if (printmode > CK_SILENT) {
@@ -338,17 +409,17 @@
       }
       break;
     case CLEND_S:
-      s = obj;
       break;
     case CLSTART_T:
-      name = obj;
+      name = (const char *) obj;
       subunit_test_start (name);
       break;
     case CLEND_T:
-      tr = obj;
+      tr = (TestResult *) obj;
       {
         char *name = ck_strdup_printf ("%s:%s", tr->tcname, tr->tname);
         char *msg = tr_short_str (tr);
+
         switch (tr->rtype) {
           case CK_PASS:
             subunit_test_pass (name);
@@ -359,6 +430,7 @@
           case CK_ERROR:
             subunit_test_error (name, msg);
             break;
+          case CK_TEST_RESULT_INVALID:
           default:
             eprintf ("Bad result type in subunit_lfun", __FILE__, __LINE__);
             free (name);
@@ -372,15 +444,30 @@
 }
 #endif
 
+static FILE *
+srunner_open_file (const char *filename)
+{
+  FILE *f = NULL;
+
+  if (strcmp (filename, STDOUT_OVERRIDE_LOG_FILE_NAME) == 0) {
+    f = stdout;
+  } else {
+    f = fopen (filename, "w");
+    if (f == NULL) {
+      eprintf ("Error in call to fopen while opening file %s:", __FILE__,
+          __LINE__ - 2, filename);
+    }
+  }
+  return f;
+}
+
 FILE *
 srunner_open_lfile (SRunner * sr)
 {
   FILE *f = NULL;
+
   if (srunner_has_log (sr)) {
-    f = fopen (sr->log_fname, "w");
-    if (f == NULL)
-      eprintf ("Error in call to fopen while opening log file %s:", __FILE__,
-          __LINE__ - 2, sr->log_fname);
+    f = srunner_open_file (srunner_log_fname (sr));
   }
   return f;
 }
@@ -389,11 +476,20 @@
 srunner_open_xmlfile (SRunner * sr)
 {
   FILE *f = NULL;
+
   if (srunner_has_xml (sr)) {
-    f = fopen (sr->xml_fname, "w");
-    if (f == NULL)
-      eprintf ("Error in call to fopen while opening xml file %s:", __FILE__,
-          __LINE__ - 2, sr->xml_fname);
+    f = srunner_open_file (srunner_xml_fname (sr));
+  }
+  return f;
+}
+
+FILE *
+srunner_open_tapfile (SRunner * sr)
+{
+  FILE *f = NULL;
+
+  if (srunner_has_tap (sr)) {
+    f = srunner_open_file (srunner_tap_fname (sr));
   }
   return f;
 }
@@ -402,6 +498,7 @@
 srunner_init_logging (SRunner * sr, enum print_output print_mode)
 {
   FILE *f;
+
   sr->loglst = check_list_create ();
 #if ENABLE_SUBUNIT
   if (print_mode != CK_SUBUNIT)
@@ -413,11 +510,15 @@
 #endif
   f = srunner_open_lfile (sr);
   if (f) {
-    srunner_register_lfun (sr, f, 1, lfile_lfun, print_mode);
+    srunner_register_lfun (sr, f, f != stdout, lfile_lfun, print_mode);
   }
   f = srunner_open_xmlfile (sr);
   if (f) {
-    srunner_register_lfun (sr, f, 2, xml_lfun, print_mode);
+    srunner_register_lfun (sr, f, f != stdout, xml_lfun, print_mode);
+  }
+  f = srunner_open_tapfile (sr);
+  if (f) {
+    srunner_register_lfun (sr, f, f != stdout, tap_lfun, print_mode);
   }
   srunner_send_evt (sr, NULL, CLINITLOG_SR);
 }
@@ -431,16 +532,17 @@
   srunner_send_evt (sr, NULL, CLENDLOG_SR);
 
   l = sr->loglst;
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    Log *lg = list_val (l);
+  for (check_list_front (l); !check_list_at_end (l); check_list_advance (l)) {
+    Log *lg = (Log *) check_list_val (l);
+
     if (lg->close) {
       rval = fclose (lg->lfile);
       if (rval != 0)
-        eprintf ("Error in call to fclose while closing log file:", __FILE__,
-            __LINE__ - 2);
+        eprintf ("Error in call to fclose while closing log file:",
+            __FILE__, __LINE__ - 2);
     }
     free (lg);
   }
-  list_free (l);
+  check_list_free (l);
   sr->loglst = NULL;
 }
diff --git a/libs/gst/check/libcheck/check_log.h b/libs/gst/check/libcheck/check_log.h
index 84c9b7c..8578a90 100644
--- a/libs/gst/check/libcheck/check_log.h
+++ b/libs/gst/check/libcheck/check_log.h
@@ -21,31 +21,35 @@
 #ifndef CHECK_LOG_H
 #define CHECK_LOG_H
 
-void log_srunner_start (SRunner *sr);
-void log_srunner_end (SRunner *sr);
-void log_suite_start (SRunner *sr, Suite *s);
-void log_suite_end (SRunner *sr, Suite *s);
-void log_test_end (SRunner *sr, TestResult *tr);
-void log_test_start (SRunner *sr, TCase *tc, TF *tfun);
+void log_srunner_start (SRunner * sr);
+void log_srunner_end (SRunner * sr);
+void log_suite_start (SRunner * sr, Suite * s);
+void log_suite_end (SRunner * sr, Suite * s);
+void log_test_end (SRunner * sr, TestResult * tr);
+void log_test_start (SRunner * sr, TCase * tc, TF * tfun);
 
-void stdout_lfun (SRunner *sr, FILE *file, enum print_output,
-		  void *obj, enum cl_event evt);
+void stdout_lfun (SRunner * sr, FILE * file, enum print_output,
+    void *obj, enum cl_event evt);
 
-void lfile_lfun (SRunner *sr, FILE *file, enum print_output,
-		  void *obj, enum cl_event evt);
+void lfile_lfun (SRunner * sr, FILE * file, enum print_output,
+    void *obj, enum cl_event evt);
 
-void xml_lfun (SRunner *sr, FILE *file, enum print_output,
-		  void *obj, enum cl_event evt);
+void xml_lfun (SRunner * sr, FILE * file, enum print_output,
+    void *obj, enum cl_event evt);
 
-void subunit_lfun (SRunner *sr, FILE *file, enum print_output,
-		  void *obj, enum cl_event evt);
+void tap_lfun (SRunner * sr, FILE * file, enum print_output,
+    void *obj, enum cl_event evt);
 
-void srunner_register_lfun (SRunner *sr, FILE *lfile, int close,
-			    LFun lfun, enum print_output);
+void subunit_lfun (SRunner * sr, FILE * file, enum print_output,
+    void *obj, enum cl_event evt);
 
-FILE *srunner_open_lfile (SRunner *sr);
-FILE *srunner_open_xmlfile (SRunner *sr);
-void srunner_init_logging (SRunner *sr, enum print_output print_mode);
-void srunner_end_logging (SRunner *sr);
+void srunner_register_lfun (SRunner * sr, FILE * lfile, int close,
+    LFun lfun, enum print_output);
+
+FILE *srunner_open_lfile (SRunner * sr);
+FILE *srunner_open_xmlfile (SRunner * sr);
+FILE *srunner_open_tapfile (SRunner * sr);
+void srunner_init_logging (SRunner * sr, enum print_output print_mode);
+void srunner_end_logging (SRunner * sr);
 
 #endif /* CHECK_LOG_H */
diff --git a/libs/gst/check/libcheck/check_msg.c b/libs/gst/check/libcheck/check_msg.c
index ae653ff..676c18b 100644
--- a/libs/gst/check/libcheck/check_msg.c
+++ b/libs/gst/check/libcheck/check_msg.c
@@ -18,22 +18,20 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
 #include <stdlib.h>
 #include <fcntl.h>
 #include <stdio.h>
 
 #include "check_error.h"
-#include "check.h"
+#include "internal-check.h"
 #include "check_list.h"
 #include "check_impl.h"
 #include "check_msg.h"
 #include "check_pack.h"
+#include "check_str.h"
 
 
 /* 'Pipe' is implemented as a temporary file to overcome message
@@ -57,7 +55,9 @@
  */
 
 static FILE *send_file1;
+static char *send_file1_name;
 static FILE *send_file2;
+static char *send_file2_name;
 
 static FILE *get_pipe (void);
 static void setup_pipe (void);
@@ -86,8 +86,18 @@
 {
   FailMsg fmsg;
 
-  fmsg.msg = (char *) msg;
-  ppack (fileno (get_pipe ()), CK_MSG_FAIL, (CheckMsg *) & fmsg);
+  fmsg.msg = strdup (msg);
+  ppack (get_pipe (), CK_MSG_FAIL, (CheckMsg *) & fmsg);
+  free (fmsg.msg);
+}
+
+void
+send_duration_info (int duration)
+{
+  DurationMsg dmsg;
+
+  dmsg.duration = duration;
+  ppack (get_pipe (), CK_MSG_DURATION, (CheckMsg *) & dmsg);
 }
 
 void
@@ -95,9 +105,10 @@
 {
   LocMsg lmsg;
 
-  lmsg.file = (char *) file;
+  lmsg.file = strdup (file);
   lmsg.line = line;
-  ppack (fileno (get_pipe ()), CK_MSG_LOC, (CheckMsg *) & lmsg);
+  ppack (get_pipe (), CK_MSG_LOC, (CheckMsg *) & lmsg);
+  free (lmsg.file);
 }
 
 void
@@ -106,7 +117,7 @@
   CtxMsg cmsg;
 
   cmsg.ctx = ctx;
-  ppack (fileno (get_pipe ()), CK_MSG_CTX, (CheckMsg *) & cmsg);
+  ppack (get_pipe (), CK_MSG_CTX, (CheckMsg *) & cmsg);
 }
 
 TestResult *
@@ -117,10 +128,17 @@
   TestResult *result;
 
   fp = get_pipe ();
-  if (fp == NULL)
+  if (fp == NULL) {
     eprintf ("Error in call to get_pipe", __FILE__, __LINE__ - 2);
+  }
+
   rewind (fp);
-  rmsg = punpack (fileno (fp));
+  rmsg = punpack (fp);
+
+  if (rmsg == NULL) {
+    eprintf ("Error in call to punpack", __FILE__, __LINE__ - 4);
+  }
+
   teardown_pipe ();
   setup_pipe ();
 
@@ -156,7 +174,7 @@
   tr = tr_create ();
 
   if (rmsg->msg != NULL || waserror) {
-    tr->ctx = (cur_fork_status () == CK_FORK) ? rmsg->lastctx : rmsg->failctx;
+    tr->ctx = rmsg->lastctx;
     tr->msg = rmsg->msg;
     rmsg->msg = NULL;
     tr_set_loc_by_ctx (tr, tr->ctx, rmsg);
@@ -167,6 +185,7 @@
   } else {
     tr->ctx = CK_CTX_TEST;
     tr->msg = NULL;
+    tr->duration = rmsg->duration;
     tr_set_loc_by_ctx (tr, CK_CTX_TEST, rmsg);
   }
 
@@ -185,16 +204,83 @@
   teardown_pipe ();
 }
 
+/**
+ * Open a temporary file.
+ *
+ * If the file could be unlinked upon creation, the name
+ * of the file is not returned via 'name'. However, if the
+ * file could not be unlinked, the name is returned,
+ * expecting the caller to both delete the file and
+ * free the 'name' field after the file is closed.
+ */
+FILE *
+open_tmp_file (char **name)
+{
+  FILE *file = NULL;
+
+  *name = NULL;
+
+#if !HAVE_MKSTEMP
+  /* Windows does not like tmpfile(). This is likely because tmpfile()
+   * call unlink() on the file before returning it, to make sure the
+   * file is deleted when it is closed. The unlink() call also fails
+   * on Windows if the file is still open. */
+  /* also note that mkstemp is apparently a C90 replacement for tmpfile */
+  /* perhaps all we need to do on Windows is set TMPDIR to whatever is
+     stored in TEMP for tmpfile to work */
+  /* and finally, the "b" from "w+b" is ignored on OS X, not sure about WIN32 */
+
+  file = tmpfile ();
+  if (file == NULL) {
+    char *tmp = getenv ("TEMP");
+    char *tmp_file = tempnam (tmp, "check_");
+
+    /*
+     * Note, tempnam is not enough to get a unique name. Between
+     * getting the name and opening the file, something else also
+     * calling tempnam() could get the same name. It has been observed
+     * on MinGW-w64 builds on Wine that this exact thing happens
+     * if multiple instances of a unit tests are running concurrently.
+     * To prevent two concurrent unit tests from getting the same file,
+     * we append the pid to the file. The pid should be unique on the
+     * system.
+     */
+    char *uniq_tmp_file = ck_strdup_printf ("%s.%d", tmp_file, getpid ());
+
+    file = fopen (uniq_tmp_file, "w+b");
+    *name = uniq_tmp_file;
+    free (tmp_file);
+  }
+#else
+  int fd = -1;
+  const char *tmp_dir = getenv ("TEMP");
+  if (!tmp_dir) {
+    tmp_dir = ".";
+  }
+  *name = ck_strdup_printf ("%s/check_XXXXXX", tmp_dir);
+  if (-1 < (fd = mkstemp (*name))) {
+    file = fdopen (fd, "w+b");
+    if (0 == unlink (*name) || NULL == file) {
+      free (*name);
+      *name = NULL;
+    }
+  }
+#endif
+  return file;
+}
+
 static void
 setup_pipe (void)
 {
-  if (send_file1 != 0) {
-    if (send_file2 != 0)
-      eprintf ("Only one nesting of suite runs supported", __FILE__, __LINE__);
-    send_file2 = tmpfile ();
-  } else {
-    send_file1 = tmpfile ();
+  if (send_file1 == NULL) {
+    send_file1 = open_tmp_file (&send_file1_name);
+    return;
   }
+  if (send_file2 == NULL) {
+    send_file2 = open_tmp_file (&send_file2_name);
+    return;
+  }
+  eprintf ("Only one nesting of suite runs supported", __FILE__, __LINE__);
 }
 
 static void
@@ -203,9 +289,19 @@
   if (send_file2 != 0) {
     fclose (send_file2);
     send_file2 = 0;
+    if (send_file2_name != NULL) {
+      unlink (send_file2_name);
+      free (send_file2_name);
+      send_file2_name = NULL;
+    }
   } else if (send_file1 != 0) {
     fclose (send_file1);
     send_file1 = 0;
+    if (send_file1_name != NULL) {
+      unlink (send_file1_name);
+      free (send_file1_name);
+      send_file1_name = NULL;
+    }
   } else {
     eprintf ("No messaging setup", __FILE__, __LINE__);
   }
diff --git a/libs/gst/check/libcheck/check_msg.h b/libs/gst/check/libcheck/check_msg.h
index 6ddaa3d..f84ee8c 100644
--- a/libs/gst/check/libcheck/check_msg.h
+++ b/libs/gst/check/libcheck/check_msg.h
@@ -24,13 +24,16 @@
 
 /* Functions implementing messaging during test runs */
 
-void send_failure_info(const char *msg);
-void send_loc_info(const char *file, int line);
-void send_ctx_info(enum ck_result_ctx ctx);
+void send_failure_info (const char *msg);
+void send_loc_info (const char *file, int line);
+void send_ctx_info (enum ck_result_ctx ctx);
+void send_duration_info (int duration);
 
-TestResult *receive_test_result(int waserror);
+TestResult *receive_test_result (int waserror);
 
-void setup_messaging(void);
-void teardown_messaging(void);
+void setup_messaging (void);
+void teardown_messaging (void);
+
+FILE *open_tmp_file (char **name);
 
 #endif /*CHECK_MSG_NEW_H */
diff --git a/libs/gst/check/libcheck/check_pack.c b/libs/gst/check/libcheck/check_pack.c
index c34644a..5119dfc 100644
--- a/libs/gst/check/libcheck/check_pack.c
+++ b/libs/gst/check/libcheck/check_pack.c
@@ -18,32 +18,37 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
 
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include "_stdint.h"
-
-#include "check.h"
+#include "internal-check.h"
 #include "check_error.h"
 #include "check_list.h"
 #include "check_impl.h"
 #include "check_pack.h"
 
-#ifdef HAVE_PTHREAD
-#include <pthread.h>
-pthread_mutex_t lock_mutex = PTHREAD_MUTEX_INITIALIZER;
-#else
+#ifndef HAVE_PTHREAD
 #define pthread_mutex_lock(arg)
 #define pthread_mutex_unlock(arg)
+#define pthread_cleanup_push(f,a) {
+#define pthread_cleanup_pop(e) }
 #endif
 
+/* Maximum size for one message in the message stream. */
+#define CK_MAX_MSG_SIZE 8192
+/* This is used to implement a sliding window on the receiving
+ * side. When sending messages, we assure that no single message
+ * is bigger than this (actually we check against CK_MAX_MSG_SIZE/2).
+ * The usual size for a message is less than 80 bytes.
+ * All this is done instead of the previous approach to allocate (actually
+ * continuously reallocate) one big chunk for the whole message stream.
+ * Problems were seen in the wild with up to 4 GB reallocations.
+ */
+
+
 /* typedef an unsigned int that has at least 4 bytes */
 typedef uint32_t ck_uint32;
 
@@ -56,15 +61,17 @@
 static int pack_ctx (char **buf, CtxMsg * cmsg);
 static int pack_loc (char **buf, LocMsg * lmsg);
 static int pack_fail (char **buf, FailMsg * fmsg);
+static int pack_duration (char **buf, DurationMsg * fmsg);
 static void upack_ctx (char **buf, CtxMsg * cmsg);
 static void upack_loc (char **buf, LocMsg * lmsg);
 static void upack_fail (char **buf, FailMsg * fmsg);
+static void upack_duration (char **buf, DurationMsg * fmsg);
 
 static void check_type (int type, const char *file, int line);
 static enum ck_msg_type upack_type (char **buf);
 static void pack_type (char **buf, enum ck_msg_type type);
 
-static int read_buf (int fdes, char **buf);
+static int read_buf (FILE * fdes, int size, char *buf);
 static int get_result (char *buf, RcvMsg * rmsg);
 static void rcvmsg_update_ctx (RcvMsg * rmsg, enum ck_result_ctx ctx);
 static void rcvmsg_update_loc (RcvMsg * rmsg, const char *file, int line);
@@ -77,13 +84,15 @@
 static pfun pftab[] = {
   (pfun) pack_ctx,
   (pfun) pack_fail,
-  (pfun) pack_loc
+  (pfun) pack_loc,
+  (pfun) pack_duration
 };
 
 static upfun upftab[] = {
   (upfun) upack_ctx,
   (upfun) upack_fail,
-  (upfun) upack_loc
+  (upfun) upack_loc,
+  (upfun) upack_duration
 };
 
 int
@@ -103,7 +112,6 @@
 upack (char *buf, CheckMsg * msg, enum ck_msg_type *type)
 {
   char *obuf;
-  int nread;
 
   if (buf == NULL)
     return -1;
@@ -116,8 +124,7 @@
 
   upftab[*type] (&buf, msg);
 
-  nread = buf - obuf;
-  return nread;
+  return buf - obuf;
 }
 
 static void
@@ -126,10 +133,10 @@
   unsigned char *ubuf = (unsigned char *) *buf;
   ck_uint32 uval = val;
 
-  ubuf[0] = (uval >> 24) & 0xFF;
-  ubuf[1] = (uval >> 16) & 0xFF;
-  ubuf[2] = (uval >> 8) & 0xFF;
-  ubuf[3] = uval & 0xFF;
+  ubuf[0] = (unsigned char) ((uval >> 24) & 0xFF);
+  ubuf[1] = (unsigned char) ((uval >> 16) & 0xFF);
+  ubuf[2] = (unsigned char) ((uval >> 8) & 0xFF);
+  ubuf[3] = (unsigned char) (uval & 0xFF);
 
   *buf += 4;
 }
@@ -140,7 +147,9 @@
   unsigned char *ubuf = (unsigned char *) *buf;
   ck_uint32 uval;
 
-  uval = ((ubuf[0] << 24) | (ubuf[1] << 16) | (ubuf[2] << 8) | ubuf[3]);
+  uval =
+      (ck_uint32) ((ubuf[0] << 24) | (ubuf[1] << 16) | (ubuf[2] << 8) |
+      ubuf[3]);
 
   *buf += 4;
 
@@ -174,12 +183,12 @@
   strsz = upack_int (buf);
 
   if (strsz > 0) {
-    val = emalloc (strsz + 1);
+    val = (char *) emalloc (strsz + 1);
     memcpy (val, *buf, strsz);
     val[strsz] = 0;
     *buf += strsz;
   } else {
-    val = emalloc (1);
+    val = (char *) emalloc (1);
     *val = 0;
   }
 
@@ -206,7 +215,7 @@
   int len;
 
   len = 4 + 4;
-  *buf = ptr = emalloc (len);
+  *buf = ptr = (char *) emalloc (len);
 
   pack_type (&ptr, CK_MSG_CTX);
   pack_int (&ptr, (int) cmsg->ctx);
@@ -217,7 +226,28 @@
 static void
 upack_ctx (char **buf, CtxMsg * cmsg)
 {
-  cmsg->ctx = upack_int (buf);
+  cmsg->ctx = (enum ck_result_ctx) upack_int (buf);
+}
+
+static int
+pack_duration (char **buf, DurationMsg * cmsg)
+{
+  char *ptr;
+  int len;
+
+  len = 4 + 4;
+  *buf = ptr = (char *) emalloc (len);
+
+  pack_type (&ptr, CK_MSG_DURATION);
+  pack_int (&ptr, cmsg->duration);
+
+  return len;
+}
+
+static void
+upack_duration (char **buf, DurationMsg * cmsg)
+{
+  cmsg->duration = upack_int (buf);
 }
 
 static int
@@ -227,7 +257,7 @@
   int len;
 
   len = 4 + 4 + (lmsg->file ? strlen (lmsg->file) : 0) + 4;
-  *buf = ptr = emalloc (len);
+  *buf = ptr = (char *) emalloc (len);
 
   pack_type (&ptr, CK_MSG_LOC);
   pack_str (&ptr, lmsg->file);
@@ -250,7 +280,7 @@
   int len;
 
   len = 4 + 4 + (fmsg->msg ? strlen (fmsg->msg) : 0);
-  *buf = ptr = emalloc (len);
+  *buf = ptr = (char *) emalloc (len);
 
   pack_type (&ptr, CK_MSG_FAIL);
   pack_str (&ptr, fmsg->msg);
@@ -272,54 +302,52 @@
 }
 
 #ifdef HAVE_PTHREAD
-pthread_mutex_t mutex_lock = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t ck_mutex_lock = PTHREAD_MUTEX_INITIALIZER;
+static void
+ppack_cleanup (void *mutex)
+{
+  pthread_mutex_unlock ((pthread_mutex_t *) mutex);
+}
 #endif
 
 void
-ppack (int fdes, enum ck_msg_type type, CheckMsg * msg)
+ppack (FILE * fdes, enum ck_msg_type type, CheckMsg * msg)
 {
-  char *buf;
+  char *buf = NULL;
   int n;
   ssize_t r;
 
   n = pack (type, &buf, msg);
-  pthread_mutex_lock (&mutex_lock);
-  r = write (fdes, buf, n);
-  pthread_mutex_unlock (&mutex_lock);
-  if (r == -1)
-    eprintf ("Error in call to write:", __FILE__, __LINE__ - 2);
+  /* Keep it on the safe side to not send too much data. */
+  if (n > (CK_MAX_MSG_SIZE / 2))
+    eprintf ("Message string too long", __FILE__, __LINE__ - 2);
+
+  pthread_cleanup_push (ppack_cleanup, &ck_mutex_lock);
+  pthread_mutex_lock (&ck_mutex_lock);
+  r = fwrite (buf, 1, n, fdes);
+  fflush (fdes);
+  pthread_mutex_unlock (&ck_mutex_lock);
+  pthread_cleanup_pop (0);
+  if (r != n)
+    eprintf ("Error in call to fwrite:", __FILE__, __LINE__ - 2);
 
   free (buf);
 }
 
 static int
-read_buf (int fdes, char **buf)
+read_buf (FILE * fdes, int size, char *buf)
 {
-  char *readloc;
   int n;
-  int nread = 0;
-  int size = 1;
-  int grow = 2;
 
-  *buf = emalloc (size);
-  readloc = *buf;
-  while (1) {
-    n = read (fdes, readloc, size - nread);
-    if (n == 0)
-      break;
-    if (n == -1)
-      eprintf ("Error in call to read:", __FILE__, __LINE__ - 4);
+  n = fread (buf, 1, size, fdes);
 
-    nread += n;
-    size *= grow;
-    *buf = erealloc (*buf, size);
-    readloc = *buf + nread;
+  if (ferror (fdes)) {
+    eprintf ("Error in call to fread:", __FILE__, __LINE__ - 4);
   }
 
-  return nread;
+  return n;
 }
 
-
 static int
 get_result (char *buf, RcvMsg * rmsg)
 {
@@ -333,23 +361,29 @@
 
   if (type == CK_MSG_CTX) {
     CtxMsg *cmsg = (CtxMsg *) & msg;
+
     rcvmsg_update_ctx (rmsg, cmsg->ctx);
   } else if (type == CK_MSG_LOC) {
     LocMsg *lmsg = (LocMsg *) & msg;
+
     if (rmsg->failctx == CK_CTX_INVALID) {
       rcvmsg_update_loc (rmsg, lmsg->file, lmsg->line);
     }
     free (lmsg->file);
   } else if (type == CK_MSG_FAIL) {
     FailMsg *fmsg = (FailMsg *) & msg;
+
     if (rmsg->msg == NULL) {
-      rmsg->msg = emalloc (strlen (fmsg->msg) + 1);
-      strcpy (rmsg->msg, fmsg->msg);
+      rmsg->msg = strdup (fmsg->msg);
       rmsg->failctx = rmsg->lastctx;
     } else {
       /* Skip subsequent failure messages, only happens for CK_NOFORK */
     }
     free (fmsg->msg);
+  } else if (type == CK_MSG_DURATION) {
+    DurationMsg *cmsg = (DurationMsg *) & msg;
+
+    rmsg->duration = cmsg->duration;
   } else
     check_type (type, __FILE__, __LINE__);
 
@@ -375,10 +409,11 @@
 {
   RcvMsg *rmsg;
 
-  rmsg = emalloc (sizeof (RcvMsg));
+  rmsg = (RcvMsg *) emalloc (sizeof (RcvMsg));
   rmsg->lastctx = CK_CTX_INVALID;
   rmsg->failctx = CK_CTX_INVALID;
   rmsg->msg = NULL;
+  rmsg->duration = -1;
   reset_rcv_test (rmsg);
   reset_rcv_fixture (rmsg);
   return rmsg;
@@ -406,40 +441,47 @@
 static void
 rcvmsg_update_loc (RcvMsg * rmsg, const char *file, int line)
 {
-  int flen = strlen (file);
-
   if (rmsg->lastctx == CK_CTX_TEST) {
     free (rmsg->test_file);
     rmsg->test_line = line;
-    rmsg->test_file = emalloc (flen + 1);
-    strcpy (rmsg->test_file, file);
+    rmsg->test_file = strdup (file);
   } else {
     free (rmsg->fixture_file);
     rmsg->fixture_line = line;
-    rmsg->fixture_file = emalloc (flen + 1);
-    strcpy (rmsg->fixture_file, file);
+    rmsg->fixture_file = strdup (file);
   }
 }
 
 RcvMsg *
-punpack (int fdes)
+punpack (FILE * fdes)
 {
-  int nread, n;
+  int nread, nparse, n;
   char *buf;
-  char *obuf;
   RcvMsg *rmsg;
 
-  nread = read_buf (fdes, &buf);
-  obuf = buf;
   rmsg = rcvmsg_create ();
 
-  while (nread > 0) {
+  /* Allcate a buffer */
+  buf = (char *) emalloc (CK_MAX_MSG_SIZE);
+  /* Fill the buffer from the file */
+  nread = read_buf (fdes, CK_MAX_MSG_SIZE, buf);
+  nparse = nread;
+  /* While not all parsed */
+  while (nparse > 0) {
+    /* Parse one message */
     n = get_result (buf, rmsg);
-    nread -= n;
-    buf += n;
+    nparse -= n;
+    /* Move remaining data in buffer to the beginning */
+    memmove (buf, buf + n, nparse);
+    /* If EOF has not been seen */
+    if (nread > 0) {
+      /* Read more data into empty space at end of the buffer */
+      nread = read_buf (fdes, n, buf + nparse);
+      nparse += nread;
+    }
   }
+  free (buf);
 
-  free (obuf);
   if (rmsg->lastctx == CK_CTX_INVALID) {
     free (rmsg);
     rmsg = NULL;
diff --git a/libs/gst/check/libcheck/check_pack.h b/libs/gst/check/libcheck/check_pack.h
index 3b916c9..7bde267 100644
--- a/libs/gst/check/libcheck/check_pack.h
+++ b/libs/gst/check/libcheck/check_pack.h
@@ -22,10 +22,12 @@
 #define CHECK_PACK_H
 
 
-enum ck_msg_type {
+enum ck_msg_type
+{
   CK_MSG_CTX,
   CK_MSG_FAIL,
   CK_MSG_LOC,
+  CK_MSG_DURATION,
   CK_MSG_LAST
 };
 
@@ -34,7 +36,7 @@
   enum ck_result_ctx ctx;
 } CtxMsg;
 
-typedef struct LocMsg 
+typedef struct LocMsg
 {
   int line;
   char *file;
@@ -45,11 +47,17 @@
   char *msg;
 } FailMsg;
 
+typedef struct DurationMsg
+{
+  int duration;
+} DurationMsg;
+
 typedef union
 {
-  CtxMsg  ctx_msg;
+  CtxMsg ctx_msg;
   FailMsg fail_msg;
-  LocMsg  loc_msg;
+  LocMsg loc_msg;
+  DurationMsg duration_msg;
 } CheckMsg;
 
 typedef struct RcvMsg
@@ -61,16 +69,16 @@
   char *test_file;
   int test_line;
   char *msg;
+  int duration;
 } RcvMsg;
 
-void rcvmsg_free (RcvMsg *rmsg);
+void rcvmsg_free (RcvMsg * rmsg);
 
-  
-int pack (enum ck_msg_type type, char **buf, CheckMsg *msg);
-int upack (char *buf, CheckMsg *msg, enum ck_msg_type *type);
 
-void ppack (int fdes, enum ck_msg_type type, CheckMsg *msg);
-RcvMsg *punpack (int fdes);
+int pack (enum ck_msg_type type, char **buf, CheckMsg * msg);
+int upack (char *buf, CheckMsg * msg, enum ck_msg_type *type);
 
+void ppack (FILE * fdes, enum ck_msg_type type, CheckMsg * msg);
+RcvMsg *punpack (FILE * fdes);
 
 #endif /*CHECK_PACK_H */
diff --git a/libs/gst/check/libcheck/check_print.c b/libs/gst/check/libcheck/check_print.c
index e29aa7b..4c1a4ad 100644
--- a/libs/gst/check/libcheck/check_print.c
+++ b/libs/gst/check/libcheck/check_print.c
@@ -18,13 +18,13 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
 
-#include "check.h"
+#include "internal-check.h"
 #include "check_list.h"
 #include "check_impl.h"
 #include "check_str.h"
@@ -83,30 +83,16 @@
 
   resultlst = sr->resultlst;
 
-  for (list_front (resultlst); !list_at_end (resultlst);
-      list_advance (resultlst)) {
-    TestResult *tr = list_val (resultlst);
+  for (check_list_front (resultlst); !check_list_at_end (resultlst);
+      check_list_advance (resultlst)) {
+    TestResult *tr = (TestResult *) check_list_val (resultlst);
+
     tr_fprint (file, tr, print_mode);
   }
   return;
 }
 
 void
-tr_fprint (FILE * file, TestResult * tr, enum print_output print_mode)
-{
-  if (print_mode == CK_ENV) {
-    print_mode = get_env_printmode ();
-  }
-
-  if ((print_mode >= CK_VERBOSE && tr->rtype == CK_PASS) ||
-      (tr->rtype != CK_PASS && print_mode >= CK_NORMAL)) {
-    char *trstr = tr_str (tr);
-    fprintf (file, "%s\n", trstr);
-    free (trstr);
-  }
-}
-
-static void
 fprint_xml_esc (FILE * file, const char *str)
 {
   for (; *str != '\0'; str++) {
@@ -139,23 +125,39 @@
 }
 
 void
+tr_fprint (FILE * file, TestResult * tr, enum print_output print_mode)
+{
+  if (print_mode == CK_ENV) {
+    print_mode = get_env_printmode ();
+  }
+
+  if ((print_mode >= CK_VERBOSE && tr->rtype == CK_PASS) ||
+      (tr->rtype != CK_PASS && print_mode >= CK_NORMAL)) {
+    char *trstr = tr_str (tr);
+
+    fprintf (file, "%s\n", trstr);
+    free (trstr);
+  }
+}
+
+void
 tr_xmlprint (FILE * file, TestResult * tr,
     enum print_output print_mode CK_ATTRIBUTE_UNUSED)
 {
   char result[10];
-  char *path_name;
-  char *file_name;
-  char *slash;
+  char *path_name = NULL;
+  char *file_name = NULL;
+  char *slash = NULL;
 
   switch (tr->rtype) {
     case CK_PASS:
-      strcpy (result, "success");
+      snprintf (result, sizeof (result), "%s", "success");
       break;
     case CK_FAILURE:
-      strcpy (result, "failure");
+      snprintf (result, sizeof (result), "%s", "failure");
       break;
     case CK_ERROR:
-      strcpy (result, "error");
+      snprintf (result, sizeof (result), "%s", "error");
       break;
     case CK_TEST_RESULT_INVALID:
     default:
@@ -163,22 +165,33 @@
       break;
   }
 
-  slash = strrchr (tr->file, '/');
-  if (slash == NULL) {
-    path_name = (char *) ".";
-    file_name = tr->file;
-  } else {
-    path_name = strdup (tr->file);
-    path_name[slash - tr->file] = 0;    /* Terminate the temporary string. */
-    file_name = slash + 1;
+  if (tr->file) {
+    slash = strrchr (tr->file, '/');
+    if (slash == NULL) {
+      slash = strrchr (tr->file, '\\');
+    }
+
+    if (slash == NULL) {
+      path_name = strdup (".");
+      file_name = tr->file;
+    } else {
+      path_name = strdup (tr->file);
+      path_name[slash - tr->file] = 0;  /* Terminate the temporary string. */
+      file_name = slash + 1;
+    }
   }
 
 
   fprintf (file, "    <test result=\"%s\">\n", result);
-  fprintf (file, "      <path>%s</path>\n", path_name);
-  fprintf (file, "      <fn>%s:%d</fn>\n", file_name, tr->line);
+  fprintf (file, "      <path>%s</path>\n",
+      (path_name == NULL ? "" : path_name));
+  fprintf (file, "      <fn>%s:%d</fn>\n",
+      (file_name == NULL ? "" : file_name), tr->line);
   fprintf (file, "      <id>%s</id>\n", tr->tname);
   fprintf (file, "      <iteration>%d</iteration>\n", tr->iter);
+  fprintf (file, "      <duration>%d.%06d</duration>\n",
+      tr->duration < 0 ? -1 : tr->duration / US_PER_SEC,
+      tr->duration < 0 ? 0 : tr->duration % US_PER_SEC);
   fprintf (file, "      <description>");
   fprint_xml_esc (file, tr->tcname);
   fprintf (file, "</description>\n");
@@ -187,15 +200,14 @@
   fprintf (file, "</message>\n");
   fprintf (file, "    </test>\n");
 
-  if (slash != NULL) {
-    free (path_name);
-  }
+  free (path_name);
 }
 
 enum print_output
 get_env_printmode (void)
 {
   char *env = getenv ("CK_VERBOSITY");
+
   if (env == NULL)
     return CK_NORMAL;
   if (strcmp (env, "silent") == 0)
diff --git a/libs/gst/check/libcheck/check_print.h b/libs/gst/check/libcheck/check_print.h
index 18c0f62..f75274b 100644
--- a/libs/gst/check/libcheck/check_print.h
+++ b/libs/gst/check/libcheck/check_print.h
@@ -21,9 +21,11 @@
 #ifndef CHECK_PRINT_H
 #define CHECK_PRINT_H
 
-void tr_fprint (FILE *file, TestResult *tr, enum print_output print_mode);
-void tr_xmlprint (FILE *file, TestResult *tr, enum print_output print_mode);
-void srunner_fprint (FILE *file, SRunner *sr, enum print_output print_mode);
+/* escape XML special characters (" ' < > &) in str and print to file */
+void fprint_xml_esc (FILE * file, const char *str);
+void tr_fprint (FILE * file, TestResult * tr, enum print_output print_mode);
+void tr_xmlprint (FILE * file, TestResult * tr, enum print_output print_mode);
+void srunner_fprint (FILE * file, SRunner * sr, enum print_output print_mode);
 enum print_output get_env_printmode (void);
 
 
diff --git a/libs/gst/check/libcheck/check_run.c b/libs/gst/check/libcheck/check_run.c
index 0c7b815..c727052 100644
--- a/libs/gst/check/libcheck/check_run.c
+++ b/libs/gst/check/libcheck/check_run.c
@@ -18,22 +18,18 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <sys/types.h>
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
+#include <time.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdarg.h>
 #include <signal.h>
+#include <setjmp.h>
 
-#include "check.h"
+#include "internal-check.h"
 #include "check_error.h"
 #include "check_list.h"
 #include "check_impl.h"
@@ -56,35 +52,40 @@
   CK_NOFORK_FIXTURE
 };
 
+
 /* all functions are defined in the same order they are declared.
    functions that depend on forking are gathered all together.
    non-static functions are at the end of the file. */
 static void srunner_run_init (SRunner * sr, enum print_output print_mode);
 static void srunner_run_end (SRunner * sr, enum print_output print_mode);
-static void srunner_iterate_suites (SRunner * sr, enum print_output print_mode);
+static void srunner_iterate_suites (SRunner * sr,
+    const char *sname, const char *tcname, enum print_output print_mode);
 static void srunner_iterate_tcase_tfuns (SRunner * sr, TCase * tc);
 static void srunner_add_failure (SRunner * sr, TestResult * tf);
+static TestResult *srunner_run_setup (List * func_list,
+    enum fork_status fork_usage, const char *test_name, const char *setup_name);
 static int srunner_run_unchecked_setup (SRunner * sr, TCase * tc);
 static TestResult *tcase_run_checked_setup (SRunner * sr, TCase * tc);
-static void srunner_run_teardown (List * l);
-static void srunner_run_unchecked_teardown (TCase * tc);
+static void srunner_run_teardown (List * fixture_list,
+    enum fork_status fork_usage);
+static void srunner_run_unchecked_teardown (SRunner * sr, TCase * tc);
 static void tcase_run_checked_teardown (TCase * tc);
 static void srunner_run_tcase (SRunner * sr, TCase * tc);
 static TestResult *tcase_run_tfun_nofork (SRunner * sr, TCase * tc, TF * tf,
     int i);
 static TestResult *receive_result_info_nofork (const char *tcname,
-    const char *tname, int iter);
+    const char *tname, int iter, int duration);
 static void set_nofork_info (TestResult * tr);
 static char *pass_msg (void);
 
-#ifdef _POSIX_VERSION
+#if defined(HAVE_FORK) && HAVE_FORK==1
 static TestResult *tcase_run_tfun_fork (SRunner * sr, TCase * tc, TF * tf,
     int i);
 static TestResult *receive_result_info_fork (const char *tcname,
-    const char *tname, int iter, int status, int expected_signal,
-    unsigned char allowed_exit_value);
+    const char *tname, int iter,
+    int status, int expected_signal, signed char allowed_exit_value);
 static void set_fork_info (TestResult * tr, int status, int expected_signal,
-    unsigned char allowed_exit_value);
+    signed char allowed_exit_value);
 static char *signal_msg (int sig);
 static char *signal_error_msg (int signal_received, int signal_expected);
 static char *exit_msg (int exitstatus);
@@ -106,7 +107,7 @@
       break;
   }
 }
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_FORK */
 
 #define MSG_LEN 100
 
@@ -130,6 +131,7 @@
 
 static void
 srunner_iterate_suites (SRunner * sr,
+    const char *sname, const char *tcname,
     enum print_output CK_ATTRIBUTE_UNUSED print_mode)
 {
   List *slst;
@@ -138,15 +140,26 @@
 
   slst = sr->slst;
 
-  for (list_front (slst); !list_at_end (slst); list_advance (slst)) {
-    Suite *s = list_val (slst);
+  for (check_list_front (slst); !check_list_at_end (slst);
+      check_list_advance (slst)) {
+    Suite *s = (Suite *) check_list_val (slst);
+
+    if (((sname != NULL) && (strcmp (sname, s->name) != 0))
+        || ((tcname != NULL) && (!suite_tcase (s, tcname))))
+      continue;
 
     log_suite_start (sr, s);
 
     tcl = s->tclst;
 
-    for (list_front (tcl); !list_at_end (tcl); list_advance (tcl)) {
-      tc = list_val (tcl);
+    for (check_list_front (tcl); !check_list_at_end (tcl);
+        check_list_advance (tcl)) {
+      tc = (TCase *) check_list_val (tcl);
+
+      if ((tcname != NULL) && (strcmp (tcname, tc->name) != 0)) {
+        continue;
+      }
+
       srunner_run_tcase (sr, tc);
     }
 
@@ -163,28 +176,34 @@
 
   tfl = tc->tflst;
 
-  for (list_front (tfl); !list_at_end (tfl); list_advance (tfl)) {
+  for (check_list_front (tfl); !check_list_at_end (tfl);
+      check_list_advance (tfl)) {
     int i;
-    tfun = list_val (tfl);
+
+    tfun = (TF *) check_list_val (tfl);
 
     for (i = tfun->loop_start; i < tfun->loop_end; i++) {
       log_test_start (sr, tc, tfun);
       switch (srunner_fork_status (sr)) {
         case CK_FORK:
-#ifdef _POSIX_VERSION
+#if defined(HAVE_FORK) && HAVE_FORK==1
           tr = tcase_run_tfun_fork (sr, tc, tfun, i);
-#else /* _POSIX_VERSION */
+#else /* HAVE_FORK */
           eprintf ("This version does not support fork", __FILE__, __LINE__);
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_FORK */
           break;
         case CK_NOFORK:
           tr = tcase_run_tfun_nofork (sr, tc, tfun, i);
           break;
+        case CK_FORK_GETENV:
         default:
           eprintf ("Bad fork status in SRunner", __FILE__, __LINE__);
       }
-      srunner_add_failure (sr, tr);
-      log_test_end (sr, tr);
+
+      if (NULL != tr) {
+        srunner_add_failure (sr, tr);
+        log_test_end (sr, tr);
+      }
     }
   }
 }
@@ -192,7 +211,7 @@
 static void
 srunner_add_failure (SRunner * sr, TestResult * tr)
 {
-  list_add_end (sr->resultlst, tr);
+  check_list_add_end (sr->resultlst, tr);
   sr->stats->n_checked++;       /* count checks during setup, test, and teardown */
   if (tr->rtype == CK_FAILURE)
     sr->stats->n_failed++;
@@ -201,62 +220,30 @@
 
 }
 
-static int
-srunner_run_unchecked_setup (SRunner * sr, TCase * tc)
-{
-  TestResult *tr;
-  List *l;
-  Fixture *f;
-  int rval = 1;
-
-  set_fork_status (CK_NOFORK);
-
-  l = tc->unch_sflst;
-
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    send_ctx_info (CK_CTX_SETUP);
-    f = list_val (l);
-    f->fun ();
-
-    tr = receive_result_info_nofork (tc->name, "unchecked_setup", 0);
-
-    if (tr->rtype != CK_PASS) {
-      srunner_add_failure (sr, tr);
-      rval = 0;
-      break;
-    }
-    free (tr->file);
-    free (tr->msg);
-    free (tr);
-  }
-
-  set_fork_status (srunner_fork_status (sr));
-  return rval;
-}
-
 static TestResult *
-tcase_run_checked_setup (SRunner * sr, TCase * tc)
+srunner_run_setup (List * fixture_list, enum fork_status fork_usage,
+    const char *test_name, const char *setup_name)
 {
   TestResult *tr = NULL;
-  List *l;
-  Fixture *f;
-  enum fork_status fstat = srunner_fork_status (sr);
+  Fixture *setup_fixture;
 
-  l = tc->ch_sflst;
-  if (fstat == CK_FORK) {
+  if (fork_usage == CK_FORK) {
     send_ctx_info (CK_CTX_SETUP);
   }
 
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    if (fstat == CK_NOFORK) {
-      send_ctx_info (CK_CTX_SETUP);
-    }
-    f = list_val (l);
-    f->fun ();
+  for (check_list_front (fixture_list); !check_list_at_end (fixture_list);
+      check_list_advance (fixture_list)) {
+    setup_fixture = (Fixture *) check_list_val (fixture_list);
 
-    /* Stop the setup and return the failure if nofork mode. */
-    if (fstat == CK_NOFORK) {
-      tr = receive_result_info_nofork (tc->name, "checked_setup", 0);
+    if (fork_usage == CK_NOFORK) {
+      send_ctx_info (CK_CTX_SETUP);
+
+      if (0 == setjmp (error_jmp_buffer)) {
+        setup_fixture->fun ();
+      }
+
+      /* Stop the setup and return the failure in nofork mode. */
+      tr = receive_result_info_nofork (test_name, setup_name, 0, -1);
       if (tr->rtype != CK_PASS) {
         break;
       }
@@ -265,34 +252,75 @@
       free (tr->msg);
       free (tr);
       tr = NULL;
+    } else {
+      setup_fixture->fun ();
     }
   }
 
   return tr;
 }
 
-static void
-srunner_run_teardown (List * l)
+static int
+srunner_run_unchecked_setup (SRunner * sr, TCase * tc)
 {
-  Fixture *f;
+  TestResult *tr = NULL;
+  int rval = 1;
 
-  for (list_front (l); !list_at_end (l); list_advance (l)) {
-    f = list_val (l);
+  set_fork_status (CK_NOFORK);
+  tr = srunner_run_setup (tc->unch_sflst, CK_NOFORK, tc->name,
+      "unchecked_setup");
+  set_fork_status (srunner_fork_status (sr));
+
+  if (tr != NULL && tr->rtype != CK_PASS) {
+    srunner_add_failure (sr, tr);
+    rval = 0;
+  }
+
+  return rval;
+}
+
+static TestResult *
+tcase_run_checked_setup (SRunner * sr, TCase * tc)
+{
+  TestResult *tr = srunner_run_setup (tc->ch_sflst, srunner_fork_status (sr),
+      tc->name, "checked_setup");
+
+  return tr;
+}
+
+static void
+srunner_run_teardown (List * fixture_list, enum fork_status fork_usage)
+{
+  Fixture *fixture;
+
+  for (check_list_front (fixture_list); !check_list_at_end (fixture_list);
+      check_list_advance (fixture_list)) {
+    fixture = (Fixture *) check_list_val (fixture_list);
     send_ctx_info (CK_CTX_TEARDOWN);
-    f->fun ();
+
+    if (fork_usage == CK_NOFORK) {
+      if (0 == setjmp (error_jmp_buffer)) {
+        fixture->fun ();
+      } else {
+        /* Abort the remaining teardowns */
+        break;
+      }
+    } else {
+      fixture->fun ();
+    }
   }
 }
 
 static void
-srunner_run_unchecked_teardown (TCase * tc)
+srunner_run_unchecked_teardown (SRunner * sr, TCase * tc)
 {
-  srunner_run_teardown (tc->unch_tflst);
+  srunner_run_teardown (tc->unch_tflst, srunner_fork_status (sr));
 }
 
 static void
 tcase_run_checked_teardown (TCase * tc)
 {
-  srunner_run_teardown (tc->ch_tflst);
+  srunner_run_teardown (tc->ch_tflst, CK_NOFORK);
 }
 
 static void
@@ -300,7 +328,7 @@
 {
   if (srunner_run_unchecked_setup (sr, tc)) {
     srunner_iterate_tcase_tfuns (sr, tc);
-    srunner_run_unchecked_teardown (tc);
+    srunner_run_unchecked_teardown (sr, tc);
   }
 }
 
@@ -308,29 +336,40 @@
 tcase_run_tfun_nofork (SRunner * sr, TCase * tc, TF * tfun, int i)
 {
   TestResult *tr;
+  struct timespec ts_start = { 0, 0 }, ts_end = {
+  0, 0};
 
   tr = tcase_run_checked_setup (sr, tc);
   if (tr == NULL) {
-    tfun->fn (i);
+    clock_gettime (check_get_clockid (), &ts_start);
+    if (0 == setjmp (error_jmp_buffer)) {
+      tfun->fn (i);
+    }
+    clock_gettime (check_get_clockid (), &ts_end);
     tcase_run_checked_teardown (tc);
-    return receive_result_info_nofork (tc->name, tfun->name, i);
+    return receive_result_info_nofork (tc->name, tfun->name, i,
+        DIFF_IN_USEC (ts_start, ts_end));
   }
 
   return tr;
 }
 
 static TestResult *
-receive_result_info_nofork (const char *tcname, const char *tname, int iter)
+receive_result_info_nofork (const char *tcname,
+    const char *tname, int iter, int duration)
 {
   TestResult *tr;
 
   tr = receive_test_result (0);
-  if (tr == NULL)
+  if (tr == NULL) {
     eprintf ("Failed to receive test result", __FILE__, __LINE__);
-  tr->tcname = tcname;
-  tr->tname = tname;
-  tr->iter = iter;
-  set_nofork_info (tr);
+  } else {
+    tr->tcname = tcname;
+    tr->tname = tname;
+    tr->iter = iter;
+    tr->duration = duration;
+    set_nofork_info (tr);
+  }
 
   return tr;
 }
@@ -349,18 +388,23 @@
 static char *
 pass_msg (void)
 {
-  char *msg = emalloc (sizeof ("Passed"));
-  strcpy (msg, "Passed");
-  return msg;
+  return strdup ("Passed");
 }
 
-#ifdef _POSIX_VERSION
+#if defined(HAVE_FORK) && HAVE_FORK==1
 static TestResult *
 tcase_run_tfun_fork (SRunner * sr, TCase * tc, TF * tfun, int i)
 {
   pid_t pid_w;
   pid_t pid;
   int status = 0;
+  struct timespec ts_start = { 0, 0 }, ts_end = {
+  0, 0};
+
+  timer_t timerid;
+  struct itimerspec timer_spec;
+  TestResult *tr;
+
 
   pid = fork ();
   if (pid == -1)
@@ -368,19 +412,41 @@
   if (pid == 0) {
     setpgid (0, 0);
     group_pid = getpgrp ();
-    tcase_run_checked_setup (sr, tc);
+    tr = tcase_run_checked_setup (sr, tc);
+    free (tr);
+    clock_gettime (check_get_clockid (), &ts_start);
     tfun->fn (i);
+    clock_gettime (check_get_clockid (), &ts_end);
     tcase_run_checked_teardown (tc);
+    send_duration_info (DIFF_IN_USEC (ts_start, ts_end));
     exit (EXIT_SUCCESS);
   } else {
     group_pid = pid;
   }
 
   alarm_received = 0;
-  alarm (tc->timeout);
-  do {
-    pid_w = waitpid (pid, &status, 0);
-  } while (pid_w == -1);
+
+  if (timer_create (check_get_clockid (),
+          NULL /* fire SIGALRM if timer expires */ ,
+          &timerid) == 0) {
+    /* Set the timer to fire once */
+    timer_spec.it_value = tc->timeout;
+    timer_spec.it_interval.tv_sec = 0;
+    timer_spec.it_interval.tv_nsec = 0;
+    if (timer_settime (timerid, 0, &timer_spec, NULL) == 0) {
+      do {
+        pid_w = waitpid (pid, &status, 0);
+      }
+      while (pid_w == -1);
+    } else {
+      eprintf ("Error in call to timer_settime:", __FILE__, __LINE__);
+    }
+
+    /* If the timer has not fired, disable it */
+    timer_delete (timerid);
+  } else {
+    eprintf ("Error in call to timer_create:", __FILE__, __LINE__);
+  }
 
   killpg (pid, SIGKILL);        /* Kill remaining processes. */
 
@@ -391,28 +457,30 @@
 static TestResult *
 receive_result_info_fork (const char *tcname,
     const char *tname,
-    int iter, int status, int expected_signal, unsigned char allowed_exit_value)
+    int iter, int status, int expected_signal, signed char allowed_exit_value)
 {
   TestResult *tr;
 
   tr = receive_test_result (waserror (status, expected_signal));
-  if (tr == NULL)
+  if (tr == NULL) {
     eprintf ("Failed to receive test result", __FILE__, __LINE__);
-  tr->tcname = tcname;
-  tr->tname = tname;
-  tr->iter = iter;
-  set_fork_info (tr, status, expected_signal, allowed_exit_value);
+  } else {
+    tr->tcname = tcname;
+    tr->tname = tname;
+    tr->iter = iter;
+    set_fork_info (tr, status, expected_signal, allowed_exit_value);
+  }
 
   return tr;
 }
 
 static void
 set_fork_info (TestResult * tr, int status, int signal_expected,
-    unsigned char allowed_exit_value)
+    signed char allowed_exit_value)
 {
   int was_sig = WIFSIGNALED (status);
   int was_exit = WIFEXITED (status);
-  int exit_status = WEXITSTATUS (status);
+  signed char exit_status = WEXITSTATUS (status);
   int signal_received = WTERMSIG (status);
 
   if (was_sig) {
@@ -420,23 +488,38 @@
       if (alarm_received) {
         /* Got alarm instead of signal */
         tr->rtype = CK_ERROR;
+        if (tr->msg != NULL) {
+          free (tr->msg);
+        }
         tr->msg = signal_error_msg (signal_received, signal_expected);
       } else {
         tr->rtype = CK_PASS;
+        if (tr->msg != NULL) {
+          free (tr->msg);
+        }
         tr->msg = pass_msg ();
       }
     } else if (signal_expected != 0) {
       /* signal received, but not the expected one */
       tr->rtype = CK_ERROR;
+      if (tr->msg != NULL) {
+        free (tr->msg);
+      }
       tr->msg = signal_error_msg (signal_received, signal_expected);
     } else {
       /* signal received and none expected */
       tr->rtype = CK_ERROR;
+      if (tr->msg != NULL) {
+        free (tr->msg);
+      }
       tr->msg = signal_msg (signal_received);
     }
   } else if (signal_expected == 0) {
     if (was_exit && exit_status == allowed_exit_value) {
       tr->rtype = CK_PASS;
+      if (tr->msg != NULL) {
+        free (tr->msg);
+      }
       tr->msg = pass_msg ();
     } else if (was_exit && exit_status != allowed_exit_value) {
       if (tr->msg == NULL) {    /* early exit */
@@ -448,11 +531,11 @@
     }
   } else {                      /* a signal was expected and none raised */
     if (was_exit) {
+      if (tr->msg != NULL) {
+        free (tr->msg);
+      }
       tr->msg = exit_msg (exit_status);
-      if (exit_status == allowed_exit_value)
-        tr->rtype = CK_FAILURE; /* normal exit status */
-      else
-        tr->rtype = CK_FAILURE; /* early exit */
+      tr->rtype = CK_FAILURE;   /* normal exit status */
     }
   }
 }
@@ -460,7 +543,8 @@
 static char *
 signal_msg (int signal)
 {
-  char *msg = emalloc (MSG_LEN);        /* free'd by caller */
+  char *msg = (char *) emalloc (MSG_LEN);       /* free'd by caller */
+
   if (alarm_received) {
     snprintf (msg, MSG_LEN, "Test timeout expired");
   } else {
@@ -475,11 +559,13 @@
 {
   char *sig_r_str;
   char *sig_e_str;
-  char *msg = emalloc (MSG_LEN);        /* free'd by caller */
+  char *msg = (char *) emalloc (MSG_LEN);       /* free'd by caller */
+
   sig_r_str = strdup (strsignal (signal_received));
   sig_e_str = strdup (strsignal (signal_expected));
   if (alarm_received) {
-    snprintf (msg, MSG_LEN, "Test timeout expired, expected signal %d (%s)",
+    snprintf (msg, MSG_LEN,
+        "Test timeout expired, expected signal %d (%s)",
         signal_expected, sig_e_str);
   } else {
     snprintf (msg, MSG_LEN, "Received signal %d (%s), expected %d (%s)",
@@ -493,7 +579,8 @@
 static char *
 exit_msg (int exitval)
 {
-  char *msg = emalloc (MSG_LEN);        /* free'd by caller */
+  char *msg = (char *) emalloc (MSG_LEN);       /* free'd by caller */
+
   snprintf (msg, MSG_LEN, "Early exit with return value %d", exitval);
   return msg;
 }
@@ -509,24 +596,29 @@
   return ((was_sig && (signal_received != signal_expected)) ||
       (was_exit && exit_status != 0));
 }
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_FORK */
 
 enum fork_status
 srunner_fork_status (SRunner * sr)
 {
   if (sr->fstat == CK_FORK_GETENV) {
     char *env = getenv ("CK_FORK");
+
     if (env == NULL)
+#if defined(HAVE_FORK) && HAVE_FORK==1
       return CK_FORK;
+#else
+      return CK_NOFORK;
+#endif
     if (strcmp (env, "no") == 0)
       return CK_NOFORK;
     else {
-#ifdef _POSIX_VERSION
+#if defined(HAVE_FORK) && HAVE_FORK==1
       return CK_FORK;
-#else /* _POSIX_VERSION */
+#else /* HAVE_FORK */
       eprintf ("This version does not support fork", __FILE__, __LINE__);
       return CK_NOFORK;
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_FORK */
     }
   } else
     return sr->fstat;
@@ -535,16 +627,38 @@
 void
 srunner_set_fork_status (SRunner * sr, enum fork_status fstat)
 {
+#if !defined(HAVE_FORK) || HAVE_FORK==0
+  /* If fork() is unavailable, do not allow a fork mode to be set */
+  if (fstat != CK_NOFORK) {
+    eprintf ("This version does not support fork", __FILE__, __LINE__);
+  }
+#endif /* ! HAVE_FORK */
   sr->fstat = fstat;
 }
 
 void
 srunner_run_all (SRunner * sr, enum print_output print_mode)
 {
-#ifdef _POSIX_VERSION
+  srunner_run (sr, NULL,        /* All test suites.  */
+      NULL,                     /* All test cases.   */
+      print_mode);
+}
+
+void
+srunner_run (SRunner * sr, const char *sname, const char *tcname,
+    enum print_output print_mode)
+{
+#if defined(HAVE_SIGACTION) && defined(HAVE_FORK)
   struct sigaction old_action;
   struct sigaction new_action;
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_SIGACTION && HAVE_FORK */
+
+  /*  Get the selected test suite and test case from the
+     environment.  */
+  if (!tcname)
+    tcname = getenv ("CK_RUN_CASE");
+  if (!sname)
+    sname = getenv ("CK_RUN_SUITE");
 
   if (sr == NULL)
     return;
@@ -552,50 +666,54 @@
     eprintf ("Bad print_mode argument to srunner_run_all: %d",
         __FILE__, __LINE__, print_mode);
   }
-#ifdef _POSIX_VERSION
+#if defined(HAVE_SIGACTION) && defined(HAVE_FORK)
   memset (&new_action, 0, sizeof new_action);
   new_action.sa_handler = sig_handler;
   sigaction (SIGALRM, &new_action, &old_action);
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_SIGACTION && HAVE_FORK */
   srunner_run_init (sr, print_mode);
-  srunner_iterate_suites (sr, print_mode);
+  srunner_iterate_suites (sr, sname, tcname, print_mode);
   srunner_run_end (sr, print_mode);
-#ifdef _POSIX_VERSION
+#if defined(HAVE_SIGACTION) && defined(HAVE_FORK)
   sigaction (SIGALRM, &old_action, NULL);
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_SIGACTION && HAVE_FORK */
 }
 
 pid_t
 check_fork (void)
 {
-#ifdef _POSIX_VERSION
+#if defined(HAVE_FORK) && HAVE_FORK==1
   pid_t pid = fork ();
+
   /* Set the process to a process group to be able to kill it easily. */
-  setpgid (pid, group_pid);
+  if (pid >= 0) {
+    setpgid (pid, group_pid);
+  }
   return pid;
-#else /* _POSIX_VERSION */
+#else /* HAVE_FORK */
   eprintf ("This version does not support fork", __FILE__, __LINE__);
   return 0;
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_FORK */
 }
 
 void
 check_waitpid_and_exit (pid_t pid CK_ATTRIBUTE_UNUSED)
 {
-#ifdef _POSIX_VERSION
+#if defined(HAVE_FORK) && HAVE_FORK==1
   pid_t pid_w;
   int status;
 
   if (pid > 0) {
     do {
       pid_w = waitpid (pid, &status, 0);
-    } while (pid_w == -1);
+    }
+    while (pid_w == -1);
     if (waserror (status, 0)) {
       exit (EXIT_FAILURE);
     }
   }
   exit (EXIT_SUCCESS);
-#else /* _POSIX_VERSION */
+#else /* HAVE_FORK */
   eprintf ("This version does not support fork", __FILE__, __LINE__);
-#endif /* _POSIX_VERSION */
+#endif /* HAVE_FORK */
 }
diff --git a/libs/gst/check/libcheck/check_str.c b/libs/gst/check/libcheck/check_str.c
index e66073e..c1a18b7 100644
--- a/libs/gst/check/libcheck/check_str.c
+++ b/libs/gst/check/libcheck/check_str.c
@@ -18,12 +18,12 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#include "config.h"
+#include "libcompat.h"
 
 #include <stdio.h>
 #include <stdarg.h>
 
-#include "check.h"
+#include "internal-check.h"
 #include "check_list.h"
 #include "check_error.h"
 #include "check_impl.h"
@@ -79,11 +79,12 @@
 ck_strdup_printf (const char *fmt, ...)
 {
   /* Guess we need no more than 100 bytes. */
-  int n, size = 100;
+  int n;
+  size_t size = 100;
   char *p;
   va_list ap;
 
-  p = emalloc (size);
+  p = (char *) emalloc (size);
 
   while (1) {
     /* Try to print in the allocated space. */
@@ -91,16 +92,16 @@
     n = vsnprintf (p, size, fmt, ap);
     va_end (ap);
     /* If that worked, return the string. */
-    if (n > -1 && n < size)
+    if (n > -1 && n < (int) size)
       return p;
 
     /* Else try again with more space. */
     if (n > -1)                 /* C99 conform vsnprintf() */
-      size = n + 1;             /* precisely what is needed */
+      size = (size_t) n + 1;    /* precisely what is needed */
     else                        /* glibc 2.0 */
       size *= 2;                /* twice the old size */
 
-    p = erealloc (p, size);
+    p = (char *) erealloc (p, size);
   }
 }
 
@@ -108,6 +109,7 @@
 tr_type_str (TestResult * tr)
 {
   const char *str = NULL;
+
   if (tr->ctx == CK_CTX_TEST) {
     if (tr->rtype == CK_PASS)
       str = "P";
diff --git a/libs/gst/check/libcheck/check_str.h b/libs/gst/check/libcheck/check_str.h
index 9282a9a..bc70fb4 100644
--- a/libs/gst/check/libcheck/check_str.h
+++ b/libs/gst/check/libcheck/check_str.h
@@ -23,19 +23,19 @@
 
 /* Return a string representation of the given TestResult.  Return
    value has been malloc'd, and must be freed by the caller */
-char *tr_str (TestResult *tr);
+char *tr_str (TestResult * tr);
 
 /* Return a string representation of the given TestResult message
    without the test id or result type. This is suitable for separate
    formatting of the test and the message. Return value has been 
    malloc'd, and must be freed by the caller */
-char *tr_short_str (TestResult *tr);
+char *tr_short_str (TestResult * tr);
 
 /* Return a string representation of the given SRunner's run
    statistics (% passed, num run, passed, errors, failures). Return
    value has been malloc'd, and must be freed by the caller
-*/ 
-char *sr_stat_str (SRunner *sr);
+*/
+char *sr_stat_str (SRunner * sr);
 
 char *ck_strdup_printf (const char *fmt, ...);
 
diff --git a/libs/gst/check/libcheck/clock_gettime.c b/libs/gst/check/libcheck/clock_gettime.c
new file mode 100644
index 0000000..0baa1f5
--- /dev/null
+++ b/libs/gst/check/libcheck/clock_gettime.c
@@ -0,0 +1,64 @@
+#include "libcompat.h"
+
+#ifdef __MACH__
+#include <mach/clock.h>
+#include <mach/mach.h>
+#include <mach/mach_time.h>
+#include <unistd.h>
+#endif
+
+#define NANOSECONDS_PER_SECOND 1000000000
+
+
+
+int
+clock_gettime (clockid_t clk_id CK_ATTRIBUTE_UNUSED, struct timespec *ts)
+{
+
+#ifdef __MACH__
+  /* OS X does not have clock_gettime, use mach_absolute_time */
+
+  static mach_timebase_info_data_t sTimebaseInfo;
+  uint64_t rawTime;
+  uint64_t nanos;
+
+  rawTime = mach_absolute_time ();
+
+  /*
+   * OS X has a function to convert abs time to nano seconds: AbsoluteToNanoseconds
+   * However, the function may not be available as we may not have
+   * access to CoreServices. Because of this, we convert the abs time
+   * to nano seconds manually.
+   */
+
+  /*
+   * First grab the time base used on the system, if this is the first
+   * time we are being called. We can check if the value is uninitialized,
+   * as the denominator will be zero. 
+   */
+  if (sTimebaseInfo.denom == 0) {
+    (void) mach_timebase_info (&sTimebaseInfo);
+  }
+
+  /* 
+   * Do the conversion. We hope that the multiplication doesn't 
+   * overflow; the price you pay for working in fixed point.
+   */
+  nanos = rawTime * sTimebaseInfo.numer / sTimebaseInfo.denom;
+
+  /* 
+   * Fill in the timespec container 
+   */
+  ts->tv_sec = nanos / NANOSECONDS_PER_SECOND;
+  ts->tv_nsec = nanos - (ts->tv_sec * NANOSECONDS_PER_SECOND);
+#else
+  /* 
+   * As there is no function to fall back onto to get the current
+   * time, zero out the time so the caller will have a sane value. 
+   */
+  ts->tv_sec = 0;
+  ts->tv_nsec = 0;
+#endif
+
+  return 0;
+}
diff --git a/libs/gst/check/libcheck/libcompat.c b/libs/gst/check/libcheck/libcompat.c
new file mode 100644
index 0000000..f550d1d
--- /dev/null
+++ b/libs/gst/check/libcheck/libcompat.c
@@ -0,0 +1,15 @@
+#include "libcompat.h"
+
+/* silence warnings about an empty library */
+void
+ck_do_nothing (void)
+{
+  assert (0);
+
+  /*
+   * to silence warning about this function actually
+   * returning, but being marked as noreturn. assert()
+   * must be marked as a function that returns.
+   */
+  exit (1);
+}
diff --git a/libs/gst/check/libcheck/libcompat.h b/libs/gst/check/libcheck/libcompat.h
new file mode 100644
index 0000000..32f944c
--- /dev/null
+++ b/libs/gst/check/libcheck/libcompat.h
@@ -0,0 +1,176 @@
+#ifndef LIBCOMPAT_H
+#define LIBCOMPAT_H
+
+#if HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#if defined(__GNUC__) && defined(__GNUC_MINOR__)
+#define GCC_VERSION_AT_LEAST(major, minor) \
+((__GNUC__ > (major)) || \
+ (__GNUC__ == (major) && __GNUC_MINOR__ >= (minor)))
+#else
+#define GCC_VERSION_AT_LEAST(major, minor) 0
+#endif
+
+#if GCC_VERSION_AT_LEAST(2,95)
+#define CK_ATTRIBUTE_UNUSED __attribute__ ((unused))
+#else
+#define CK_ATTRIBUTE_UNUSED
+#endif /* GCC 2.95 */
+
+#if GCC_VERSION_AT_LEAST(2,5)
+#define CK_ATTRIBUTE_NORETURN __attribute__ ((noreturn))
+#else
+#define CK_ATTRIBUTE_NORETURN
+#endif /* GCC 2.5 */
+
+/*
+ * Used for MSVC to create the export attribute
+ * CK_DLL_EXP is defined during the compilation of the library
+ * on the command line.
+ */
+#ifndef CK_DLL_EXP
+#define CK_DLL_EXP
+#endif
+
+#if _MSC_VER
+#include <WinSock2.h>           /* struct timeval, API used in gettimeofday implementation */
+#include <io.h>                 /* read, write */
+#include <process.h>            /* getpid */
+#endif /* _MSC_VER */
+
+/* defines size_t */
+#include <sys/types.h>
+
+/* provides assert */
+#include <assert.h>
+
+/* defines FILE */
+#include <stdio.h>
+
+/* defines exit() */
+#include <stdlib.h>
+
+/* provides localtime and struct tm */
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif /* !HAVE_SYS_TIME_H */
+#include <time.h>
+
+/* declares fork(), _POSIX_VERSION.  according to Autoconf.info,
+   unistd.h defines _POSIX_VERSION if the system is POSIX-compliant,
+   so we will use this as a test for all things uniquely provided by
+   POSIX like sigaction() and fork() */
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#ifdef HAVE_SYS_WAIT_H
+#include <sys/wait.h>
+#endif
+
+/* declares pthread_create and friends */
+#ifdef HAVE_PTHREAD
+#include <pthread.h>
+#endif
+
+#ifdef HAVE_STDINT_H
+#include <stdint.h>
+#endif
+
+/* replacement functions for broken originals */
+#if !HAVE_DECL_ALARM
+CK_DLL_EXP unsigned int alarm (unsigned int seconds);
+#endif /* !HAVE_DECL_ALARM */
+
+#if !HAVE_GETPID && HAVE__GETPID
+#define getpid _getpid
+#endif /* !HAVE_GETPID && HAVE__GETPID */
+
+#if !HAVE_DECL_LOCALTIME_R
+#if !defined(localtime_r)
+CK_DLL_EXP struct tm *localtime_r (const time_t * clock, struct tm *result);
+#endif
+#endif /* !HAVE_DECL_LOCALTIME_R */
+
+#if !HAVE_DECL_STRDUP && !HAVE__STRDUP
+CK_DLL_EXP char *strdup (const char *str);
+#elif !HAVE_DECL_STRDUP && HAVE__STRDUP
+#define strdup _strdup
+#endif /* !HAVE_DECL_STRDUP && HAVE__STRDUP */
+
+#if !HAVE_DECL_STRSIGNAL
+CK_DLL_EXP const char *strsignal (int sig);
+#endif /* !HAVE_DECL_STRSIGNAL */
+
+/*
+ * On systems where clock_gettime() is not available, or
+ * on systems where some clocks may not be supported, the
+ * definition for CLOCK_MONOTONIC and CLOCK_REALTIME may not
+ * be available. These should define which type of clock
+ * clock_gettime() should use. We define it here if it is
+ * not defined simply so the reimplementation can ignore it.
+ *
+ * We set the values of these clocks to some (hopefully)
+ * invalid value, to avoid the case where we define a
+ * clock with a valid value, and unintentionally use
+ * an actual good clock by accident.
+ */
+#ifndef CLOCK_MONOTONIC
+#define CLOCK_MONOTONIC -1
+#endif
+#ifndef CLOCK_REALTIME
+#define CLOCK_REALTIME -1
+#endif
+
+#ifndef HAVE_LIBRT
+
+#ifdef STRUCT_TIMESPEC_DEFINITION_MISSING
+/*
+ * The following structure is defined in POSIX 1003.1 for times
+ * specified in seconds and nanoseconds. If it is not defined in
+ * time.g, then we need to define it here
+ */
+struct timespec
+{
+  time_t tv_sec;
+  long tv_nsec;
+};
+#endif /* STRUCT_TIMESPEC_DEFINITION_MISSING */
+
+#ifdef STRUCT_ITIMERSPEC_DEFINITION_MISSING
+/* 
+ * The following structure is defined in POSIX.1b for timer start values and intervals.
+ * If it is not defined in time.h, then we need to define it here.
+ */
+struct itimerspec
+{
+  struct timespec it_interval;
+  struct timespec it_value;
+};
+#endif /* STRUCT_ITIMERSPEC_DEFINITION_MISSING */
+
+/* 
+ * Do a simple forward declaration in case the struct is not defined.
+ * In the versions of timer_create in libcompat, sigevent is never
+ * used.
+ */
+struct sigevent;
+
+#ifndef HAVE_CLOCK_GETTIME
+CK_DLL_EXP int clock_gettime (clockid_t clk_id, struct timespec *ts);
+#endif
+CK_DLL_EXP int timer_create (clockid_t clockid, struct sigevent *sevp,
+    timer_t * timerid);
+CK_DLL_EXP int timer_settime (timer_t timerid, int flags,
+    const struct itimerspec *new_value, struct itimerspec *old_value);
+CK_DLL_EXP int timer_delete (timer_t timerid);
+#endif /* HAVE_LIBRT */
+
+/* silence warnings about an empty library */
+CK_DLL_EXP void
+ck_do_nothing (void)
+    CK_ATTRIBUTE_NORETURN;
+
+#endif /* !LIBCOMPAT_H */
diff --git a/libs/gst/check/libcheck/strsignal.c b/libs/gst/check/libcheck/strsignal.c
new file mode 100644
index 0000000..b79409b
--- /dev/null
+++ b/libs/gst/check/libcheck/strsignal.c
@@ -0,0 +1,10 @@
+#include "libcompat.h"
+
+const char *
+strsignal (int sig)
+{
+  static char signame[40];
+
+  sprintf (signame, "SIG #%d", sig);
+  return signame;
+}
diff --git a/libs/gst/check/libcheck/timer_create.c b/libs/gst/check/libcheck/timer_create.c
new file mode 100644
index 0000000..a701781
--- /dev/null
+++ b/libs/gst/check/libcheck/timer_create.c
@@ -0,0 +1,15 @@
+#include "libcompat.h"
+
+int
+timer_create (clockid_t clockid CK_ATTRIBUTE_UNUSED,
+    struct sigevent *sevp CK_ATTRIBUTE_UNUSED,
+    timer_t * timerid CK_ATTRIBUTE_UNUSED)
+{
+  /* 
+   * The create function does nothing. timer_settime will use
+   * alarm to set the timer, and timer_delete will stop the
+   * alarm
+   */
+
+  return 0;
+}
diff --git a/libs/gst/check/libcheck/timer_delete.c b/libs/gst/check/libcheck/timer_delete.c
new file mode 100644
index 0000000..cc3ae29
--- /dev/null
+++ b/libs/gst/check/libcheck/timer_delete.c
@@ -0,0 +1,33 @@
+#include "libcompat.h"
+
+int
+timer_delete (timer_t timerid CK_ATTRIBUTE_UNUSED)
+{
+#ifdef HAVE_SETITIMER
+  /*
+   * If the system does not have timer_settime() but does have
+   * setitimer() use that instead of alarm().
+   */
+  struct itimerval interval;
+
+  /*
+   * Setting values to '0' results in disabling the running timer.
+   */
+  interval.it_value.tv_sec = 0;
+  interval.it_value.tv_usec = 0;
+  interval.it_interval.tv_sec = 0;
+  interval.it_interval.tv_usec = 0;
+
+  return setitimer (ITIMER_REAL, &interval, NULL);
+#else
+  /*
+   * There is only one timer, that used by alarm.
+   * Setting alarm(0) will not set a new alarm, and
+   * will kill the previous timer.
+   */
+
+  alarm (0);
+
+  return 0;
+#endif
+}
diff --git a/libs/gst/check/libcheck/timer_settime.c b/libs/gst/check/libcheck/timer_settime.c
new file mode 100644
index 0000000..d09ba27
--- /dev/null
+++ b/libs/gst/check/libcheck/timer_settime.c
@@ -0,0 +1,37 @@
+#include "libcompat.h"
+
+int
+timer_settime (timer_t timerid CK_ATTRIBUTE_UNUSED,
+    int flags CK_ATTRIBUTE_UNUSED,
+    const struct itimerspec *new_value,
+    struct itimerspec *old_value CK_ATTRIBUTE_UNUSED)
+{
+#ifdef HAVE_SETITIMER
+  /*
+   * If the system does not have timer_settime() but does have
+   * setitimer() use that instead of alarm().
+   */
+  struct itimerval interval;
+
+  interval.it_value.tv_sec = new_value->it_value.tv_sec;
+  interval.it_value.tv_usec = new_value->it_value.tv_nsec / 1000;
+  interval.it_interval.tv_sec = new_value->it_interval.tv_sec;
+  interval.it_interval.tv_usec = new_value->it_interval.tv_nsec / 1000;
+
+  return setitimer (ITIMER_REAL, &interval, NULL);
+#else
+  int seconds = new_value->it_value.tv_sec;
+
+  /* 
+   * As the alarm() call has only second precision, if the caller
+   * specifies partial seconds, we round up to the nearest second.
+   */
+  if (new_value->it_value.tv_nsec > 0) {
+    seconds += 1;
+  }
+
+  alarm (seconds);
+
+  return 0;
+#endif
+}
diff --git a/libs/gst/controller/Makefile.in b/libs/gst/controller/Makefile.in
index 8a02328..52532c2 100644
--- a/libs/gst/controller/Makefile.in
+++ b/libs/gst/controller/Makefile.in
@@ -94,6 +94,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -111,7 +112,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -234,6 +235,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -339,6 +344,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/libs/gst/controller/gsttimedvaluecontrolsource.c b/libs/gst/controller/gsttimedvaluecontrolsource.c
index 0d0b8be..c4fc610 100644
--- a/libs/gst/controller/gsttimedvaluecontrolsource.c
+++ b/libs/gst/controller/gsttimedvaluecontrolsource.c
@@ -52,6 +52,17 @@
 G_DEFINE_ABSTRACT_TYPE_WITH_CODE (GstTimedValueControlSource,
     gst_timed_value_control_source, GST_TYPE_CONTROL_SOURCE, _do_init);
 
+
+enum
+{
+  VALUE_CHANGED_SIGNAL,
+  VALUE_ADDED_SIGNAL,
+  VALUE_REMOVED_SIGNAL,
+  LAST_SIGNAL
+};
+
+static guint gst_timed_value_control_source_signals[LAST_SIGNAL] = { 0 };
+
 /*
  * gst_control_point_free:
  * @prop: the object to free
@@ -67,6 +78,29 @@
   g_slice_free (GstControlPoint, cp);
 }
 
+static gpointer
+gst_control_point_copy (GstControlPoint * boxed)
+{
+  return g_slice_dup (GstControlPoint, boxed);
+}
+
+GType
+gst_control_point_get_type (void)
+{
+  static volatile gsize type_id = 0;
+
+  if (g_once_init_enter (&type_id)) {
+    GType tmp =
+        g_boxed_type_register_static (g_intern_static_string
+        ("GstControlPoint"),
+        (GBoxedCopyFunc) gst_control_point_copy,
+        (GBoxedFreeFunc) gst_control_point_free);
+    g_once_init_leave (&type_id, tmp);
+  }
+
+  return type_id;
+}
+
 static void
 gst_timed_value_control_source_reset (GstTimedValueControlSource * self)
 {
@@ -138,9 +172,11 @@
     self, GstClockTime timestamp, const gdouble value)
 {
   GSequenceIter *iter;
+  GstControlPoint *cp;
+
+  g_mutex_lock (&self->lock);
 
   /* check if a control point for the timestamp already exists */
-
   /* iter contains the iter right *after* timestamp */
   if (G_LIKELY (self->values)) {
     iter =
@@ -152,8 +188,14 @@
 
       /* If the timestamp is the same just update the control point value */
       if (cp->timestamp == timestamp) {
+
         /* update control point */
         cp->value = value;
+        g_mutex_unlock (&self->lock);
+
+        g_signal_emit (self,
+            gst_timed_value_control_source_signals[VALUE_CHANGED_SIGNAL], 0,
+            cp);
         goto done;
       }
     }
@@ -163,9 +205,14 @@
   }
 
   /* sort new cp into the prop->values list */
-  g_sequence_insert_sorted (self->values, _make_new_cp (self, timestamp,
-          value), (GCompareDataFunc) gst_control_point_compare, NULL);
+  cp = _make_new_cp (self, timestamp, value);
+  g_sequence_insert_sorted (self->values, cp,
+      (GCompareDataFunc) gst_control_point_compare, NULL);
   self->nvalues++;
+  g_mutex_unlock (&self->lock);
+
+  g_signal_emit (self,
+      gst_timed_value_control_source_signals[VALUE_ADDED_SIGNAL], 0, cp);
 
 done:
   self->valid_cache = FALSE;
@@ -224,9 +271,7 @@
   g_return_val_if_fail (GST_IS_TIMED_VALUE_CONTROL_SOURCE (self), FALSE);
   g_return_val_if_fail (GST_CLOCK_TIME_IS_VALID (timestamp), FALSE);
 
-  g_mutex_lock (&self->lock);
   gst_timed_value_control_source_set_internal (self, timestamp, value);
-  g_mutex_unlock (&self->lock);
 
   return TRUE;
 }
@@ -257,10 +302,8 @@
       GST_WARNING ("GstTimedValued with invalid timestamp passed to %s",
           GST_FUNCTION);
     } else {
-      g_mutex_lock (&self->lock);
       gst_timed_value_control_source_set_internal (self, tv->timestamp,
           tv->value);
-      g_mutex_unlock (&self->lock);
       res = TRUE;
     }
   }
@@ -283,6 +326,7 @@
 {
   GSequenceIter *iter;
   gboolean res = FALSE;
+  GstControlPoint *cp = NULL;
 
   g_return_val_if_fail (GST_IS_TIMED_VALUE_CONTROL_SOURCE (self), FALSE);
   g_return_val_if_fail (GST_CLOCK_TIME_IS_VALID (timestamp), FALSE);
@@ -292,7 +336,6 @@
   if (G_LIKELY (self->values) && (iter =
           g_sequence_search (self->values, &timestamp,
               (GCompareDataFunc) gst_control_point_find, NULL))) {
-    GstControlPoint *cp;
 
     /* Iter contains the iter right after timestamp, i.e.
      * we need to get the previous one and check the timestamp
@@ -300,14 +343,24 @@
     iter = g_sequence_iter_prev (iter);
     cp = g_sequence_get (iter);
     if (cp->timestamp == timestamp) {
+      cp = g_slice_dup (GstControlPoint, cp);
       g_sequence_remove (iter);
       self->nvalues--;
       self->valid_cache = FALSE;
       res = TRUE;
+    } else {
+      cp = NULL;
     }
+
   }
   g_mutex_unlock (&self->lock);
 
+  if (cp) {
+    g_signal_emit (self,
+        gst_timed_value_control_source_signals[VALUE_REMOVED_SIGNAL], 0, cp);
+    g_slice_free (GstControlPoint, cp);
+  }
+
   return res;
 }
 
@@ -420,5 +473,53 @@
   GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
   //GstControlSourceClass *csource_class = GST_CONTROL_SOURCE_CLASS (klass);
 
+  /**
+   * GstTimedValueControlSource::value-changed
+   * @self: The #GstTimedValueControlSource on which a #GstTimedValue has changed
+   * @timed_value: The #GstTimedValue where the value changed
+   *
+   * Emited right after the new value has been set on @timed_signals
+   *
+   * Since 1.6
+   */
+  gst_timed_value_control_source_signals[VALUE_CHANGED_SIGNAL] =
+      g_signal_new ("value-changed", G_TYPE_FROM_CLASS (klass),
+      G_SIGNAL_RUN_FIRST, 0, NULL,
+      NULL, g_cclosure_marshal_generic, G_TYPE_NONE, 1,
+      gst_control_point_get_type ());
+
+  /**
+   * GstTimedValueControlSource::value-added
+   * @self: The #GstTimedValueControlSource into which a #GstTimedValue has been
+   *        added
+   * @timed_value: The newly added #GstTimedValue
+   *
+   * Emited right after the new value has been added to @self
+   *
+   * Since 1.6
+   */
+  gst_timed_value_control_source_signals[VALUE_ADDED_SIGNAL] =
+      g_signal_new ("value-added", G_TYPE_FROM_CLASS (klass),
+      G_SIGNAL_RUN_FIRST, 0, NULL,
+      NULL, g_cclosure_marshal_generic, G_TYPE_NONE, 1,
+      gst_control_point_get_type ());
+
+  /**
+   * GstTimedValueControlSource::value-removed
+   * @self: The #GstTimedValueControlSource from which a #GstTimedValue has been
+   *        removed
+   * @timed_value: The removed #GstTimedValue
+   *
+   * Emited when @timed_value is removed from @self
+   *
+   * Since 1.6
+   */
+  gst_timed_value_control_source_signals[VALUE_REMOVED_SIGNAL] =
+      g_signal_new ("value-removed", G_TYPE_FROM_CLASS (klass),
+      G_SIGNAL_RUN_FIRST, 0, NULL,
+      NULL, g_cclosure_marshal_generic, G_TYPE_NONE, 1,
+      gst_control_point_get_type ());
+
+
   gobject_class->finalize = gst_timed_value_control_source_finalize;
 }
diff --git a/libs/gst/controller/gsttimedvaluecontrolsource.h b/libs/gst/controller/gsttimedvaluecontrolsource.h
index aea2a44..cb92cd9 100644
--- a/libs/gst/controller/gsttimedvaluecontrolsource.h
+++ b/libs/gst/controller/gsttimedvaluecontrolsource.h
@@ -76,6 +76,8 @@
 
 };
 
+GType gst_control_point_get_type (void);
+
 /**
  * GstTimedValueControlSource:
  *
diff --git a/libs/gst/controller/gsttriggercontrolsource.c b/libs/gst/controller/gsttriggercontrolsource.c
index 64d99d4..c40525f 100644
--- a/libs/gst/controller/gsttriggercontrolsource.c
+++ b/libs/gst/controller/gsttriggercontrolsource.c
@@ -24,7 +24,7 @@
 
  /**
  * SECTION:gsttriggercontrolsource
- * @short_description: interpolation control source
+ * @short_description: trigger control source
  *
  * #GstTriggerControlSource is a #GstControlSource, that returns values from user-given
  * control points. It allows for a tolerance on the time-stamps.
diff --git a/libs/gst/helpers/Makefile.am b/libs/gst/helpers/Makefile.am
index 2816bc2..523b2df 100644
--- a/libs/gst/helpers/Makefile.am
+++ b/libs/gst/helpers/Makefile.am
@@ -1,3 +1,20 @@
+if ENABLE_BASH_COMPLETION
+bin_PROGRAMS = gst-completion-helper-@GST_API_VERSION@
+
+gst_completion_helper_@GST_API_VERSION@_SOURCES = gst-completion-helper.c
+gst_completion_helper_@GST_API_VERSION@_CFLAGS = $(GST_OBJ_CFLAGS)
+gst_completion_helper_@GST_API_VERSION@_LDADD = $(GST_OBJ_LIBS)
+
+bashhelpersdir = $(BASH_HELPERS_DIR)
+dist_bashhelpers_DATA = gst
+
+install-data-hook:
+	cd $(DESTDIR)$(bindir) && \
+	mv `echo "gst-completion-helper-" | sed '$(transform)'`@GST_API_VERSION@$(EXEEXT) \
+	$(DESTDIR)$(BASH_HELPERS_DIR)/gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
+	chmod 755 $(DESTDIR)$(BASH_HELPERS_DIR)/gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
+endif
+
 helpers_PROGRAMS = gst-plugin-scanner
 helpersdir=$(libexecdir)/gstreamer-$(GST_API_VERSION)
 
diff --git a/libs/gst/helpers/Makefile.in b/libs/gst/helpers/Makefile.in
index 67cb892..e9296a0 100644
--- a/libs/gst/helpers/Makefile.in
+++ b/libs/gst/helpers/Makefile.in
@@ -14,6 +14,7 @@
 
 @SET_MAKE@
 
+
 VPATH = @srcdir@
 am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
@@ -79,10 +80,11 @@
 build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
+@ENABLE_BASH_COMPLETION_TRUE@bin_PROGRAMS = gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
 helpers_PROGRAMS = gst-plugin-scanner$(EXEEXT)
 subdir = libs/gst/helpers
 DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
-	$(top_srcdir)/depcomp
+	$(top_srcdir)/depcomp $(am__dist_bashhelpers_DATA_DIST)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
 	$(top_srcdir)/common/m4/as-auto-alt.m4 \
@@ -91,6 +93,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +111,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -125,17 +128,29 @@
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
-am__installdirs = "$(DESTDIR)$(helpersdir)"
-PROGRAMS = $(helpers_PROGRAMS)
-am_gst_plugin_scanner_OBJECTS =  \
-	gst_plugin_scanner-gst-plugin-scanner.$(OBJEXT)
-gst_plugin_scanner_OBJECTS = $(am_gst_plugin_scanner_OBJECTS)
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(helpersdir)" \
+	"$(DESTDIR)$(bashhelpersdir)"
+PROGRAMS = $(bin_PROGRAMS) $(helpers_PROGRAMS)
+am__gst_completion_helper_@GST_API_VERSION@_SOURCES_DIST =  \
+	gst-completion-helper.c
+@ENABLE_BASH_COMPLETION_TRUE@am_gst_completion_helper_@GST_API_VERSION@_OBJECTS = gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.$(OBJEXT)
+gst_completion_helper_@GST_API_VERSION@_OBJECTS =  \
+	$(am_gst_completion_helper_@GST_API_VERSION@_OBJECTS)
 am__DEPENDENCIES_1 =
-gst_plugin_scanner_DEPENDENCIES = $(am__DEPENDENCIES_1)
+@ENABLE_BASH_COMPLETION_TRUE@gst_completion_helper_@GST_API_VERSION@_DEPENDENCIES =  \
+@ENABLE_BASH_COMPLETION_TRUE@	$(am__DEPENDENCIES_1)
 AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
 am__v_lt_0 = --silent
 am__v_lt_1 = 
+gst_completion_helper_@GST_API_VERSION@_LINK = $(LIBTOOL) $(AM_V_lt) \
+	--tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \
+	$(CCLD) $(gst_completion_helper_@GST_API_VERSION@_CFLAGS) \
+	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am_gst_plugin_scanner_OBJECTS =  \
+	gst_plugin_scanner-gst-plugin-scanner.$(OBJEXT)
+gst_plugin_scanner_OBJECTS = $(am_gst_plugin_scanner_OBJECTS)
+gst_plugin_scanner_DEPENDENCIES = $(am__DEPENDENCIES_1)
 gst_plugin_scanner_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
 	$(gst_plugin_scanner_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
@@ -174,13 +189,45 @@
 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
-SOURCES = $(gst_plugin_scanner_SOURCES)
-DIST_SOURCES = $(gst_plugin_scanner_SOURCES)
+SOURCES = $(gst_completion_helper_@GST_API_VERSION@_SOURCES) \
+	$(gst_plugin_scanner_SOURCES)
+DIST_SOURCES =  \
+	$(am__gst_completion_helper_@GST_API_VERSION@_SOURCES_DIST) \
+	$(gst_plugin_scanner_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
+am__dist_bashhelpers_DATA_DIST = gst
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
+DATA = $(dist_bashhelpers_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
@@ -211,6 +258,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -316,6 +367,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -477,6 +529,11 @@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
+@ENABLE_BASH_COMPLETION_TRUE@gst_completion_helper_@GST_API_VERSION@_SOURCES = gst-completion-helper.c
+@ENABLE_BASH_COMPLETION_TRUE@gst_completion_helper_@GST_API_VERSION@_CFLAGS = $(GST_OBJ_CFLAGS)
+@ENABLE_BASH_COMPLETION_TRUE@gst_completion_helper_@GST_API_VERSION@_LDADD = $(GST_OBJ_LIBS)
+@ENABLE_BASH_COMPLETION_TRUE@bashhelpersdir = $(BASH_HELPERS_DIR)
+@ENABLE_BASH_COMPLETION_TRUE@dist_bashhelpers_DATA = gst
 helpersdir = $(libexecdir)/gstreamer-$(GST_API_VERSION)
 gst_plugin_scanner_SOURCES = gst-plugin-scanner.c
 gst_plugin_scanner_CFLAGS = $(GST_OBJ_CFLAGS)
@@ -519,6 +576,55 @@
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
+install-binPROGRAMS: $(bin_PROGRAMS)
+	@$(NORMAL_INSTALL)
+	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+	fi; \
+	for p in $$list; do echo "$$p $$p"; done | \
+	sed 's/$(EXEEXT)$$//' | \
+	while read p p1; do if test -f $$p \
+	 || test -f $$p1 \
+	  ; then echo "$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n;h' \
+	    -e 's|.*|.|' \
+	    -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+	sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) files[d] = files[d] " " $$1; \
+	    else { print "f", $$3 "/" $$4, $$1; } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	    if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	    test -z "$$files" || { \
+	    echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+	    $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+	    } \
+	; done
+
+uninstall-binPROGRAMS:
+	@$(NORMAL_UNINSTALL)
+	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	  sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+	      -e 's/$$/$(EXEEXT)/' \
+	`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(bindir)" && rm -f $$files
+
+clean-binPROGRAMS:
+	@list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
+	echo " rm -f" $$list; \
+	rm -f $$list || exit $$?; \
+	test -n "$(EXEEXT)" || exit 0; \
+	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+	echo " rm -f" $$list; \
+	rm -f $$list
 install-helpersPROGRAMS: $(helpers_PROGRAMS)
 	@$(NORMAL_INSTALL)
 	@list='$(helpers_PROGRAMS)'; test -n "$(helpersdir)" || list=; \
@@ -569,6 +675,10 @@
 	echo " rm -f" $$list; \
 	rm -f $$list
 
+gst-completion-helper-@GST_API_VERSION@$(EXEEXT): $(gst_completion_helper_@GST_API_VERSION@_OBJECTS) $(gst_completion_helper_@GST_API_VERSION@_DEPENDENCIES) $(EXTRA_gst_completion_helper_@GST_API_VERSION@_DEPENDENCIES) 
+	@rm -f gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
+	$(AM_V_CCLD)$(gst_completion_helper_@GST_API_VERSION@_LINK) $(gst_completion_helper_@GST_API_VERSION@_OBJECTS) $(gst_completion_helper_@GST_API_VERSION@_LDADD) $(LIBS)
+
 gst-plugin-scanner$(EXEEXT): $(gst_plugin_scanner_OBJECTS) $(gst_plugin_scanner_DEPENDENCIES) $(EXTRA_gst_plugin_scanner_DEPENDENCIES) 
 	@rm -f gst-plugin-scanner$(EXEEXT)
 	$(AM_V_CCLD)$(gst_plugin_scanner_LINK) $(gst_plugin_scanner_OBJECTS) $(gst_plugin_scanner_LDADD) $(LIBS)
@@ -579,6 +689,7 @@
 distclean-compile:
 	-rm -f *.tab.c
 
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gst_plugin_scanner-gst-plugin-scanner.Po@am__quote@
 
 .c.o:
@@ -605,6 +716,20 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
 
+gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.o: gst-completion-helper.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gst_completion_helper_@GST_API_VERSION@_CFLAGS) $(CFLAGS) -MT gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.o -MD -MP -MF $(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Tpo -c -o gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.o `test -f 'gst-completion-helper.c' || echo '$(srcdir)/'`gst-completion-helper.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Tpo $(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gst-completion-helper.c' object='gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gst_completion_helper_@GST_API_VERSION@_CFLAGS) $(CFLAGS) -c -o gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.o `test -f 'gst-completion-helper.c' || echo '$(srcdir)/'`gst-completion-helper.c
+
+gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.obj: gst-completion-helper.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gst_completion_helper_@GST_API_VERSION@_CFLAGS) $(CFLAGS) -MT gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.obj -MD -MP -MF $(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Tpo -c -o gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.obj `if test -f 'gst-completion-helper.c'; then $(CYGPATH_W) 'gst-completion-helper.c'; else $(CYGPATH_W) '$(srcdir)/gst-completion-helper.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Tpo $(DEPDIR)/gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gst-completion-helper.c' object='gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gst_completion_helper_@GST_API_VERSION@_CFLAGS) $(CFLAGS) -c -o gst_completion_helper_@GST_API_VERSION@-gst-completion-helper.obj `if test -f 'gst-completion-helper.c'; then $(CYGPATH_W) 'gst-completion-helper.c'; else $(CYGPATH_W) '$(srcdir)/gst-completion-helper.c'; fi`
+
 gst_plugin_scanner-gst-plugin-scanner.o: gst-plugin-scanner.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gst_plugin_scanner_CFLAGS) $(CFLAGS) -MT gst_plugin_scanner-gst-plugin-scanner.o -MD -MP -MF $(DEPDIR)/gst_plugin_scanner-gst-plugin-scanner.Tpo -c -o gst_plugin_scanner-gst-plugin-scanner.o `test -f 'gst-plugin-scanner.c' || echo '$(srcdir)/'`gst-plugin-scanner.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/gst_plugin_scanner-gst-plugin-scanner.Tpo $(DEPDIR)/gst_plugin_scanner-gst-plugin-scanner.Po
@@ -624,6 +749,27 @@
 
 clean-libtool:
 	-rm -rf .libs _libs
+install-dist_bashhelpersDATA: $(dist_bashhelpers_DATA)
+	@$(NORMAL_INSTALL)
+	@list='$(dist_bashhelpers_DATA)'; test -n "$(bashhelpersdir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(bashhelpersdir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(bashhelpersdir)" || exit 1; \
+	fi; \
+	for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(bashhelpersdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(bashhelpersdir)" || exit $$?; \
+	done
+
+uninstall-dist_bashhelpersDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(dist_bashhelpers_DATA)'; test -n "$(bashhelpersdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	dir='$(DESTDIR)$(bashhelpersdir)'; $(am__uninstall_files_from_dir)
 
 ID: $(am__tagged_files)
 	$(am__define_uniq_tagged_files); mkid -fID $$unique
@@ -709,9 +855,9 @@
 	done
 check-am: all-am
 check: check-am
-all-am: Makefile $(PROGRAMS)
+all-am: Makefile $(PROGRAMS) $(DATA)
 installdirs:
-	for dir in "$(DESTDIR)$(helpersdir)"; do \
+	for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(helpersdir)" "$(DESTDIR)$(bashhelpersdir)"; do \
 	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 	done
 install: install-am
@@ -745,10 +891,11 @@
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
 	@echo "it deletes files that may require special tools to rebuild."
+@ENABLE_BASH_COMPLETION_FALSE@install-data-hook:
 clean: clean-am
 
-clean-am: clean-generic clean-helpersPROGRAMS clean-libtool \
-	mostlyclean-am
+clean-am: clean-binPROGRAMS clean-generic clean-helpersPROGRAMS \
+	clean-libtool mostlyclean-am
 
 distclean: distclean-am
 	-rm -rf ./$(DEPDIR)
@@ -768,13 +915,14 @@
 
 info-am:
 
-install-data-am: install-helpersPROGRAMS
-
+install-data-am: install-dist_bashhelpersDATA install-helpersPROGRAMS
+	@$(NORMAL_INSTALL)
+	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
 install-dvi: install-dvi-am
 
 install-dvi-am:
 
-install-exec-am:
+install-exec-am: install-binPROGRAMS
 
 install-html: install-html-am
 
@@ -814,25 +962,34 @@
 
 ps-am:
 
-uninstall-am: uninstall-helpersPROGRAMS
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
-	clean-helpersPROGRAMS clean-libtool cscopelist-am ctags \
-	ctags-am distclean distclean-compile distclean-generic \
-	distclean-libtool distclean-tags distdir dvi dvi-am html \
-	html-am info info-am install install-am install-data \
-	install-data-am install-dvi install-dvi-am install-exec \
-	install-exec-am install-helpersPROGRAMS install-html \
-	install-html-am install-info install-info-am install-man \
-	install-pdf install-pdf-am install-ps install-ps-am \
-	install-strip installcheck installcheck-am installdirs \
-	maintainer-clean maintainer-clean-generic mostlyclean \
-	mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-	pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
+uninstall-am: uninstall-binPROGRAMS uninstall-dist_bashhelpersDATA \
 	uninstall-helpersPROGRAMS
 
+.MAKE: install-am install-data-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+	clean-binPROGRAMS clean-generic clean-helpersPROGRAMS \
+	clean-libtool cscopelist-am ctags ctags-am distclean \
+	distclean-compile distclean-generic distclean-libtool \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-binPROGRAMS install-data \
+	install-data-am install-data-hook install-dist_bashhelpersDATA \
+	install-dvi install-dvi-am install-exec install-exec-am \
+	install-helpersPROGRAMS install-html install-html-am \
+	install-info install-info-am install-man install-pdf \
+	install-pdf-am install-ps install-ps-am install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am uninstall-binPROGRAMS \
+	uninstall-dist_bashhelpersDATA uninstall-helpersPROGRAMS
+
+
+@ENABLE_BASH_COMPLETION_TRUE@install-data-hook:
+@ENABLE_BASH_COMPLETION_TRUE@	cd $(DESTDIR)$(bindir) && \
+@ENABLE_BASH_COMPLETION_TRUE@	mv `echo "gst-completion-helper-" | sed '$(transform)'`@GST_API_VERSION@$(EXEEXT) \
+@ENABLE_BASH_COMPLETION_TRUE@	$(DESTDIR)$(BASH_HELPERS_DIR)/gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
+@ENABLE_BASH_COMPLETION_TRUE@	chmod 755 $(DESTDIR)$(BASH_HELPERS_DIR)/gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
 
 Android.mk: Makefile.am
 	androgenizer -:PROJECT gstreamer -:EXECUTABLE gst-plugin-scanner  -:TAGS eng debug \
diff --git a/libs/gst/helpers/gst b/libs/gst/helpers/gst
new file mode 100644
index 0000000..76275e6
--- /dev/null
+++ b/libs/gst/helpers/gst
@@ -0,0 +1,35 @@
+# GStreamer
+# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+#
+# bash/zsh completion support for common gstreamer options
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+___gst_debug_level () { _mandatory__argument; }
+___gst_debug () { _mandatory__argument; }
+___gst_debug_color_mode () { _mandatory__argument; }
+___gst_plugin_path () { _mandatory__argument; }
+___gst_plugin_load () { _mandatory__argument; }
+
+_mandatory__argument ()
+{
+	if [[ "$prev" != "$command" ]]
+	then
+		COMPREPLY=( $(compgen -W "$(ges-launch-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
+	else
+		COMPREPLY=("$cur")
+	fi
+}
diff --git a/libs/gst/helpers/gst-completion-helper.c b/libs/gst/helpers/gst-completion-helper.c
new file mode 100644
index 0000000..e99b73b
--- /dev/null
+++ b/libs/gst/helpers/gst-completion-helper.c
@@ -0,0 +1,269 @@
+/* GStreamer
+ * Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+ *
+ * gst-completion-helper.c: tool to let other tools enjoy fast and powerful
+ * gstreamer-aware completion
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#  include "config.h"
+#endif
+
+#include <gst/gst.h>
+#include <glib.h>
+#include <stdlib.h>
+#include <string.h>
+
+static GList *
+get_pad_templates_info (GstElement * element, GstElementFactory * factory,
+    GstPadDirection direction)
+{
+  const GList *pads;
+  GstStaticPadTemplate *padtemplate;
+  GList *caps_list = NULL;
+
+  if (gst_element_factory_get_num_pad_templates (factory) == 0) {
+    g_print ("  none\n");
+    return NULL;
+  }
+
+  pads = gst_element_factory_get_static_pad_templates (factory);
+  while (pads) {
+    padtemplate = (GstStaticPadTemplate *) (pads->data);
+    pads = g_list_next (pads);
+
+    if (padtemplate->direction != direction)
+      continue;
+
+    if (padtemplate->static_caps.string) {
+      caps_list =
+          g_list_append (caps_list,
+          gst_static_caps_get (&padtemplate->static_caps));
+    }
+
+  }
+
+  return caps_list;
+}
+
+static GList *
+_get_pad_caps (const gchar * factory_name, GstPadDirection direction)
+{
+  GstElementFactory *factory = gst_element_factory_find (factory_name);
+  GstElement *element = gst_element_factory_make (factory_name, NULL);
+
+  if (!element)
+    return NULL;
+  if (!factory)
+    return NULL;
+  factory =
+      GST_ELEMENT_FACTORY (gst_plugin_feature_load (GST_PLUGIN_FEATURE
+          (factory)));
+  if (!factory)
+    return NULL;
+  return get_pad_templates_info (element, factory, direction);
+}
+
+static gboolean
+_are_linkable (GstPluginFeature * feature, GList * caps_list)
+{
+  gboolean print = FALSE;
+  GstElementFactory *factory = GST_ELEMENT_FACTORY (feature);
+
+  GList *tmp;
+  print = FALSE;
+  for (tmp = caps_list; tmp; tmp = tmp->next) {
+    if (gst_element_factory_can_sink_any_caps (factory, tmp->data)) {
+      print = TRUE;
+      break;
+    }
+  }
+
+  return print;
+}
+
+static gboolean
+_belongs_to_klass (GstElementFactory * factory, const gchar * klass)
+{
+  const gchar *factory_klass;
+
+
+  factory_klass =
+      gst_element_factory_get_metadata (factory, GST_ELEMENT_METADATA_KLASS);
+  if (strstr (factory_klass, klass))
+    return TRUE;
+  return FALSE;
+}
+
+static void
+_list_features (const gchar * compatible_with, const gchar * klass,
+    GstCaps * sinkcaps)
+{
+  GList *plugins, *orig_plugins;
+  GList *caps_list = NULL;
+
+  if (compatible_with) {
+    caps_list = _get_pad_caps (compatible_with, GST_PAD_SRC);
+  }
+
+  orig_plugins = plugins = gst_registry_get_plugin_list (gst_registry_get ());
+  while (plugins) {
+    GList *features, *orig_features;
+    GstPlugin *plugin;
+
+    plugin = (GstPlugin *) (plugins->data);
+    plugins = g_list_next (plugins);
+
+    if (GST_OBJECT_FLAG_IS_SET (plugin, GST_PLUGIN_FLAG_BLACKLISTED)) {
+      continue;
+    }
+
+    orig_features = features =
+        gst_registry_get_feature_list_by_plugin (gst_registry_get (),
+        gst_plugin_get_name (plugin));
+    while (features) {
+      GstPluginFeature *feature;
+
+      if (G_UNLIKELY (features->data == NULL))
+        goto next;
+      feature = GST_PLUGIN_FEATURE (features->data);
+
+      if (GST_IS_ELEMENT_FACTORY (feature)) {
+        gboolean print = TRUE;
+        if (caps_list)
+          print = _are_linkable (feature, caps_list);
+        if (print && klass)
+          print = _belongs_to_klass (GST_ELEMENT_FACTORY (feature), klass);
+        if (print && sinkcaps)
+          print =
+              gst_element_factory_can_sink_any_caps (GST_ELEMENT_FACTORY
+              (feature), sinkcaps);
+
+        if (print)
+          g_print ("%s ", gst_plugin_feature_get_name (feature));
+      }
+
+    next:
+      features = g_list_next (features);
+    }
+
+    gst_plugin_feature_list_free (orig_features);
+  }
+
+  g_list_free (caps_list);
+  g_print ("\n");
+  gst_plugin_list_free (orig_plugins);
+}
+
+static void
+_print_element_properties_info (GstElement * element)
+{
+  GParamSpec **property_specs;
+  guint num_properties, i;
+
+  property_specs = g_object_class_list_properties
+      (G_OBJECT_GET_CLASS (element), &num_properties);
+
+  for (i = 0; i < num_properties; i++) {
+    GParamSpec *param = property_specs[i];
+
+    if (param->flags & G_PARAM_WRITABLE) {
+      g_print ("%s= ", g_param_spec_get_name (param));
+    }
+  }
+
+  g_free (property_specs);
+}
+
+static void
+_list_element_properties (const gchar * factory_name)
+{
+  GstElement *element = gst_element_factory_make (factory_name, NULL);
+
+  _print_element_properties_info (element);
+}
+
+int
+main (int argc, char *argv[])
+{
+  gboolean list_features = FALSE;
+  gchar *compatible_with = NULL;
+  gchar *element = NULL;
+  gchar *klass = NULL;
+  gchar *caps_str = NULL;
+  GstCaps *sinkcaps = NULL;
+  gint exit_code = EXIT_SUCCESS;
+
+  GOptionEntry options[] = {
+    {"list-features", 'l', 0, G_OPTION_ARG_NONE, &list_features,
+        "list all the available features", NULL},
+    {"compatible-with", '\0', 0, G_OPTION_ARG_STRING, &compatible_with,
+          "Only print the elements that could be queued after this feature name",
+        NULL},
+    {"element-properties", '\0', 0, G_OPTION_ARG_STRING, &element,
+        "The element to list properties on", NULL},
+    {"klass", '\0', 0, G_OPTION_ARG_STRING, &klass,
+        "Only print the elements belonging to that klass", NULL},
+    {"sinkcaps", '\0', 0, G_OPTION_ARG_STRING, &caps_str,
+        "Only print the elements that can sink these caps", NULL},
+    {NULL}
+  };
+
+  GOptionContext *ctx;
+  GError *err = NULL;
+
+  ctx = g_option_context_new ("PIPELINE-DESCRIPTION");
+  g_option_context_add_main_entries (ctx, options, NULL);
+  g_option_context_add_group (ctx, gst_init_get_option_group ());
+  if (!g_option_context_parse (ctx, &argc, &argv, &err)) {
+    if (err)
+      g_printerr ("Error initializing: %s\n", GST_STR_NULL (err->message));
+    else
+      g_printerr ("Error initializing: Unknown error!\n");
+    exit (1);
+  }
+  g_option_context_free (ctx);
+
+  if (caps_str) {
+    sinkcaps = gst_caps_from_string (caps_str);
+    if (!sinkcaps) {
+      exit_code = EXIT_FAILURE;
+      goto done;
+    }
+  }
+
+  if (compatible_with || klass || sinkcaps) {
+    _list_features (compatible_with, klass, sinkcaps);
+    goto done;
+  }
+
+  if (element) {
+    _list_element_properties (element);
+    goto done;
+  }
+
+  if (list_features) {
+    _list_features (NULL, NULL, NULL);
+    goto done;
+  }
+
+done:
+  if (sinkcaps)
+    gst_caps_unref (sinkcaps);
+  exit (exit_code);
+}
diff --git a/libs/gst/net/Makefile.am b/libs/gst/net/Makefile.am
index f022b92..0e61153 100644
--- a/libs/gst/net/Makefile.am
+++ b/libs/gst/net/Makefile.am
@@ -6,12 +6,14 @@
     gstnet.h \
     gstnetaddressmeta.h \
     gstnetclientclock.h \
+    gstnetcontrolmessagemeta.h \
     gstnettimepacket.h \
     gstnettimeprovider.h
 
 libgstnet_@GST_API_VERSION@_la_SOURCES = \
     gstnetaddressmeta.c \
     gstnetclientclock.c \
+    gstnetcontrolmessagemeta.c \
     gstnettimepacket.c \
     gstnettimeprovider.c
 
diff --git a/libs/gst/net/Makefile.in b/libs/gst/net/Makefile.in
index abc967e..8a2129b 100644
--- a/libs/gst/net/Makefile.in
+++ b/libs/gst/net/Makefile.in
@@ -94,6 +94,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -111,7 +112,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -165,6 +166,7 @@
 am_libgstnet_@GST_API_VERSION@_la_OBJECTS =  \
 	libgstnet_@GST_API_VERSION@_la-gstnetaddressmeta.lo \
 	libgstnet_@GST_API_VERSION@_la-gstnetclientclock.lo \
+	libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.lo \
 	libgstnet_@GST_API_VERSION@_la-gstnettimepacket.lo \
 	libgstnet_@GST_API_VERSION@_la-gstnettimeprovider.lo
 libgstnet_@GST_API_VERSION@_la_OBJECTS =  \
@@ -232,6 +234,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -337,6 +343,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -505,12 +512,14 @@
     gstnet.h \
     gstnetaddressmeta.h \
     gstnetclientclock.h \
+    gstnetcontrolmessagemeta.h \
     gstnettimepacket.h \
     gstnettimeprovider.h
 
 libgstnet_@GST_API_VERSION@_la_SOURCES = \
     gstnetaddressmeta.c \
     gstnetclientclock.c \
+    gstnetcontrolmessagemeta.c \
     gstnettimepacket.c \
     gstnettimeprovider.c
 
@@ -610,6 +619,7 @@
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnetaddressmeta.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnetclientclock.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnettimepacket.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnettimeprovider.Plo@am__quote@
 
@@ -651,6 +661,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstnet_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstnet_@GST_API_VERSION@_la-gstnetclientclock.lo `test -f 'gstnetclientclock.c' || echo '$(srcdir)/'`gstnetclientclock.c
 
+libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.lo: gstnetcontrolmessagemeta.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstnet_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.lo -MD -MP -MF $(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.Tpo -c -o libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.lo `test -f 'gstnetcontrolmessagemeta.c' || echo '$(srcdir)/'`gstnetcontrolmessagemeta.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.Tpo $(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstnetcontrolmessagemeta.c' object='libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstnet_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -c -o libgstnet_@GST_API_VERSION@_la-gstnetcontrolmessagemeta.lo `test -f 'gstnetcontrolmessagemeta.c' || echo '$(srcdir)/'`gstnetcontrolmessagemeta.c
+
 libgstnet_@GST_API_VERSION@_la-gstnettimepacket.lo: gstnettimepacket.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstnet_@GST_API_VERSION@_la_CFLAGS) $(CFLAGS) -MT libgstnet_@GST_API_VERSION@_la-gstnettimepacket.lo -MD -MP -MF $(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnettimepacket.Tpo -c -o libgstnet_@GST_API_VERSION@_la-gstnettimepacket.lo `test -f 'gstnettimepacket.c' || echo '$(srcdir)/'`gstnettimepacket.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnettimepacket.Tpo $(DEPDIR)/libgstnet_@GST_API_VERSION@_la-gstnettimepacket.Plo
diff --git a/libs/gst/net/gstnetaddressmeta.c b/libs/gst/net/gstnetaddressmeta.c
index 164ce4f..2c413e2 100644
--- a/libs/gst/net/gstnetaddressmeta.c
+++ b/libs/gst/net/gstnetaddressmeta.c
@@ -91,6 +91,15 @@
   return meta_info;
 }
 
+/**
+ * gst_buffer_add_net_address_meta:
+ * @buffer: a #GstBuffer
+ * @addr: a @GSocketAddress to connect to @buffer
+ *
+ * Attaches @addr as metadata in a #GstNetAddressMeta to @buffer.
+ *
+ * Returns: (transfer none): a #GstNetAddressMeta connected to @buffer
+ */
 GstNetAddressMeta *
 gst_buffer_add_net_address_meta (GstBuffer * buffer, GSocketAddress * addr)
 {
diff --git a/libs/gst/net/gstnetaddressmeta.h b/libs/gst/net/gstnetaddressmeta.h
index feb64d8..ff8b523 100644
--- a/libs/gst/net/gstnetaddressmeta.h
+++ b/libs/gst/net/gstnetaddressmeta.h
@@ -29,6 +29,8 @@
 
 /**
  * GstNetAddressMeta:
+ * @meta: the parent type
+ * @addr: a #GSocketAddress stored as metadata
  *
  * Buffer metadata for network addresses.
  */
diff --git a/libs/gst/net/gstnetclientclock.c b/libs/gst/net/gstnetclientclock.c
index dd1dafe..8801fb2 100644
--- a/libs/gst/net/gstnetclientclock.c
+++ b/libs/gst/net/gstnetclientclock.c
@@ -45,6 +45,10 @@
  *
  * A #GstNetClientClock is typically set on a #GstPipeline with 
  * gst_pipeline_use_clock().
+ *
+ * If you set a #GstBus on the clock via the "bus" object property, it will
+ * send @GST_MESSAGE_ELEMENT messages with an attached #GstStructure containing
+ * statistics about clock accuracy and network traffic.
  */
 
 #ifdef HAVE_CONFIG_H
@@ -63,13 +67,21 @@
 #define DEFAULT_PORT            5637
 #define DEFAULT_TIMEOUT         GST_SECOND
 #define DEFAULT_ROUNDTRIP_LIMIT GST_SECOND
+/* Minimum timeout will be immediately (ie, as fast as one RTT), but no
+ * more often than 1/20th second (arbitrarily, to spread observations a little) */
+#define DEFAULT_MINIMUM_UPDATE_INTERVAL (GST_SECOND / 20)
+
+/* Maximum number of clock updates we can skip before updating */
+#define MAX_SKIPPED_UPDATES 5
 
 enum
 {
   PROP_0,
   PROP_ADDRESS,
   PROP_PORT,
-  PROP_ROUNDTRIP_LIMIT
+  PROP_ROUNDTRIP_LIMIT,
+  PROP_MINIMUM_UPDATE_INTERVAL,
+  PROP_BUS
 };
 
 #define GST_NET_CLIENT_CLOCK_GET_PRIVATE(obj)  \
@@ -86,9 +98,13 @@
   GstClockTime timeout_expiration;
   GstClockTime roundtrip_limit;
   GstClockTime rtt_avg;
+  GstClockTime minimum_update_interval;
+  guint skipped_updates;
 
   gchar *address;
   gint port;
+
+  GstBus *bus;
 };
 
 #define _do_init \
@@ -126,6 +142,10 @@
       g_param_spec_int ("port", "port",
           "The port on which the remote server is listening", 0, G_MAXUINT16,
           DEFAULT_PORT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+  g_object_class_install_property (gobject_class, PROP_BUS,
+      g_param_spec_object ("bus", "bus",
+          "A GstBus on which to send clock status information", GST_TYPE_BUS,
+          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
   /**
    * GstNetClientClock::round-trip-limit:
@@ -146,6 +166,12 @@
           "Maximum tolerable round-trip interval for packets, in nanoseconds "
           "(0 = no limit)", 0, G_MAXUINT64, DEFAULT_ROUNDTRIP_LIMIT,
           G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+  g_object_class_install_property (gobject_class, PROP_MINIMUM_UPDATE_INTERVAL,
+      g_param_spec_uint64 ("minimum-update-interval", "minimum update interval",
+          "Minimum polling interval for packets, in nanoseconds"
+          "(0 = no limit)", 0, G_MAXUINT64, DEFAULT_MINIMUM_UPDATE_INTERVAL,
+          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 }
 
 static void
@@ -166,6 +192,8 @@
   priv->servaddr = NULL;
   priv->rtt_avg = GST_CLOCK_TIME_NONE;
   priv->roundtrip_limit = DEFAULT_ROUNDTRIP_LIMIT;
+  priv->minimum_update_interval = DEFAULT_MINIMUM_UPDATE_INTERVAL;
+  priv->skipped_updates = 0;
 }
 
 static void
@@ -191,6 +219,11 @@
     self->priv->socket = NULL;
   }
 
+  if (self->priv->bus != NULL) {
+    gst_object_unref (self->priv->bus);
+    self->priv->bus = NULL;
+  }
+
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
 
@@ -202,16 +235,34 @@
 
   switch (prop_id) {
     case PROP_ADDRESS:
+      GST_OBJECT_LOCK (self);
       g_free (self->priv->address);
       self->priv->address = g_value_dup_string (value);
       if (self->priv->address == NULL)
         self->priv->address = g_strdup (DEFAULT_ADDRESS);
+      GST_OBJECT_UNLOCK (self);
       break;
     case PROP_PORT:
+      GST_OBJECT_LOCK (self);
       self->priv->port = g_value_get_int (value);
+      GST_OBJECT_UNLOCK (self);
       break;
     case PROP_ROUNDTRIP_LIMIT:
+      GST_OBJECT_LOCK (self);
       self->priv->roundtrip_limit = g_value_get_uint64 (value);
+      GST_OBJECT_UNLOCK (self);
+      break;
+    case PROP_MINIMUM_UPDATE_INTERVAL:
+      GST_OBJECT_LOCK (self);
+      self->priv->minimum_update_interval = g_value_get_uint64 (value);
+      GST_OBJECT_UNLOCK (self);
+      break;
+    case PROP_BUS:
+      GST_OBJECT_LOCK (self);
+      if (self->priv->bus)
+        gst_object_unref (self->priv->bus);
+      self->priv->bus = g_value_dup_object (value);
+      GST_OBJECT_UNLOCK (self);
       break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -227,13 +278,27 @@
 
   switch (prop_id) {
     case PROP_ADDRESS:
+      GST_OBJECT_LOCK (self);
       g_value_set_string (value, self->priv->address);
+      GST_OBJECT_UNLOCK (self);
       break;
     case PROP_PORT:
       g_value_set_int (value, self->priv->port);
       break;
     case PROP_ROUNDTRIP_LIMIT:
+      GST_OBJECT_LOCK (self);
       g_value_set_uint64 (value, self->priv->roundtrip_limit);
+      GST_OBJECT_UNLOCK (self);
+      break;
+    case PROP_MINIMUM_UPDATE_INTERVAL:
+      GST_OBJECT_LOCK (self);
+      g_value_set_uint64 (value, self->priv->minimum_update_interval);
+      GST_OBJECT_UNLOCK (self);
+      break;
+    case PROP_BUS:
+      GST_OBJECT_LOCK (self);
+      g_value_set_object (value, self->priv->bus);
+      GST_OBJECT_UNLOCK (self);
       break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -246,11 +311,28 @@
     GstClockTime local_1, GstClockTime remote, GstClockTime local_2)
 {
   GstNetClientClockPrivate *priv = self->priv;
-  GstClockTime current_timeout;
+  GstClockTime current_timeout = 0;
   GstClockTime local_avg;
   gdouble r_squared;
   GstClock *clock;
-  GstClockTime rtt;
+  GstClockTime rtt, rtt_limit, min_update_interval;
+  GstBus *bus = NULL;
+  /* Use for discont tracking */
+  GstClockTime time_before = 0;
+  GstClockTime min_guess = 0;
+  GstClockTimeDiff time_discont = 0;
+  gboolean synched, now_synched;
+  GstClockTime internal_time, external_time, rate_num, rate_den;
+  GstClockTime orig_internal_time, orig_external_time, orig_rate_num,
+      orig_rate_den;
+  GstClockTime max_discont;
+
+  GST_OBJECT_LOCK (self);
+  rtt_limit = self->priv->roundtrip_limit;
+  min_update_interval = self->priv->minimum_update_interval;
+  if (self->priv->bus)
+    bus = gst_object_ref (self->priv->bus);
+  GST_OBJECT_UNLOCK (self);
 
   if (local_2 < local_1) {
     GST_LOG_OBJECT (self, "Dropping observation: receive time %" GST_TIME_FORMAT
@@ -261,11 +343,10 @@
 
   rtt = GST_CLOCK_DIFF (local_1, local_2);
 
-  if ((self->priv->roundtrip_limit > 0) && (rtt > self->priv->roundtrip_limit)) {
+  if ((rtt_limit > 0) && (rtt > rtt_limit)) {
     GST_LOG_OBJECT (self,
         "Dropping observation: RTT %" GST_TIME_FORMAT " > limit %"
-        GST_TIME_FORMAT, GST_TIME_ARGS (rtt),
-        GST_TIME_ARGS (self->priv->roundtrip_limit));
+        GST_TIME_FORMAT, GST_TIME_ARGS (rtt), GST_TIME_ARGS (rtt_limit));
     goto bogus_observation;
   }
 
@@ -277,7 +358,7 @@
   else if (rtt < priv->rtt_avg) /* Shorter RTTs carry more weight than longer */
     priv->rtt_avg = (3 * priv->rtt_avg + rtt) / 4;
   else
-    priv->rtt_avg = (7 * priv->rtt_avg + rtt) / 8;
+    priv->rtt_avg = (15 * priv->rtt_avg + rtt) / 16;
 
   if (rtt > 2 * priv->rtt_avg) {
     GST_LOG_OBJECT (self,
@@ -294,21 +375,136 @@
 
   clock = GST_CLOCK_CAST (self);
 
-  if (gst_clock_add_observation (GST_CLOCK (self), local_avg, remote,
-          &r_squared)) {
-    /* ghetto formula - shorter timeout for bad correlations */
-    current_timeout = (1e-3 / (1 - MIN (r_squared, 0.99999))) * GST_SECOND;
-    current_timeout = MIN (current_timeout, gst_clock_get_timeout (clock));
-  } else {
-    current_timeout = 0;
+  /* Store what the clock produced as 'now' before this update */
+  gst_clock_get_calibration (GST_CLOCK (self), &orig_internal_time,
+      &orig_external_time, &orig_rate_num, &orig_rate_den);
+  internal_time = orig_internal_time;
+  external_time = orig_external_time;
+  rate_num = orig_rate_num;
+  rate_den = orig_rate_den;
+
+  min_guess =
+      gst_clock_adjust_with_calibration (GST_CLOCK (self), local_1,
+      internal_time, external_time, rate_num, rate_den);
+  time_before =
+      gst_clock_adjust_with_calibration (GST_CLOCK (self), local_2,
+      internal_time, external_time, rate_num, rate_den);
+
+  /* Maximum discontinuity, when we're synched with the master. Could make this a property,
+   * but this value seems to work fine */
+  max_discont = priv->rtt_avg / 4;
+
+  /* If the remote observation was within a max_discont window around our min/max estimates, we're synched */
+  synched =
+      (GST_CLOCK_DIFF (remote, min_guess) < (GstClockTimeDiff) (max_discont)
+      && GST_CLOCK_DIFF (time_before,
+          remote) < (GstClockTimeDiff) (max_discont));
+
+  if (gst_clock_add_observation_unapplied (GST_CLOCK (self), local_avg, remote,
+          &r_squared, &internal_time, &external_time, &rate_num, &rate_den)) {
+
+    /* Now compare the difference (discont) in the clock
+     * after this observation */
+    time_discont = GST_CLOCK_DIFF (time_before,
+        gst_clock_adjust_with_calibration (GST_CLOCK (self), local_2,
+            internal_time, external_time, rate_num, rate_den));
+
+    /* If we were in sync with the remote clock, clamp the allowed
+     * discontinuity to within quarter of one RTT. In sync means our send/receive estimates
+     * of remote time correctly windowed the actual remote time observation */
+    if (synched && ABS (time_discont) > max_discont) {
+      GstClockTimeDiff offset;
+      GST_DEBUG_OBJECT (clock,
+          "Too large a discont, clamping to 1/4 average RTT = %"
+          GST_TIME_FORMAT, GST_TIME_ARGS (max_discont));
+      if (time_discont > 0) {   /* Too large a forward step - add a -ve offset */
+        offset = max_discont - time_discont;
+        if (-offset > external_time)
+          external_time = 0;
+        else
+          external_time += offset;
+      } else {                  /* Too large a backward step - add a +ve offset */
+        offset = -(max_discont + time_discont);
+        external_time += offset;
+      }
+
+      time_discont += offset;
+    }
+
+    /* Check if the new clock params would have made our observation within range */
+    now_synched =
+        (GST_CLOCK_DIFF (remote,
+            gst_clock_adjust_with_calibration (GST_CLOCK (self), local_1,
+                internal_time, external_time, rate_num,
+                rate_den)) < (GstClockTimeDiff) (max_discont))
+        && (GST_CLOCK_DIFF (gst_clock_adjust_with_calibration (GST_CLOCK (self),
+                local_2, internal_time, external_time, rate_num, rate_den),
+            remote) < (GstClockTimeDiff) (max_discont));
+
+    /* Only update the clock if we had synch or just gained it */
+    if (synched || now_synched || priv->skipped_updates > MAX_SKIPPED_UPDATES) {
+      gst_clock_set_calibration (GST_CLOCK (self), internal_time, external_time,
+          rate_num, rate_den);
+      /* ghetto formula - shorter timeout for bad correlations */
+      current_timeout = (1e-3 / (1 - MIN (r_squared, 0.99999))) * GST_SECOND;
+      current_timeout = MIN (current_timeout, gst_clock_get_timeout (clock));
+      priv->skipped_updates = 0;
+    } else {
+      /* Restore original calibration vars for the report, we're not changing the clock */
+      internal_time = orig_internal_time;
+      external_time = orig_external_time;
+      rate_num = orig_rate_num;
+      rate_den = orig_rate_den;
+      time_discont = 0;
+      priv->skipped_updates++;
+    }
+  }
+
+  /* Limit the polling to at most one per minimum_update_interval */
+  if (rtt < min_update_interval)
+    current_timeout = MAX (min_update_interval - rtt, current_timeout);
+
+  if (bus) {
+    GstStructure *s;
+    GstMessage *msg;
+
+    /* Output a stats message, whether we updated the clock or not */
+    s = gst_structure_new ("gst-netclock-statistics",
+        "synchronised", G_TYPE_BOOLEAN, synched,
+        "rtt", G_TYPE_UINT64, rtt,
+        "rtt-average", G_TYPE_UINT64, priv->rtt_avg,
+        "local", G_TYPE_UINT64, local_avg,
+        "remote", G_TYPE_UINT64, remote,
+        "discontinuity", G_TYPE_INT64, time_discont,
+        "remote-min-estimate", G_TYPE_UINT64, min_guess,
+        "remote-max-estimate", G_TYPE_UINT64, time_before,
+        "remote-min-error", G_TYPE_INT64, GST_CLOCK_DIFF (remote, min_guess),
+        "remote-max-error", G_TYPE_INT64, GST_CLOCK_DIFF (remote, time_before),
+        "request-send", G_TYPE_UINT64, local_1,
+        "request-receive", G_TYPE_UINT64, local_2,
+        "r-squared", G_TYPE_DOUBLE, r_squared,
+        "timeout", G_TYPE_UINT64, current_timeout,
+        "internal-time", G_TYPE_UINT64, internal_time,
+        "external-time", G_TYPE_UINT64, external_time,
+        "rate-num", G_TYPE_UINT64, rate_num,
+        "rate-den", G_TYPE_UINT64, rate_den,
+        "rate", G_TYPE_DOUBLE, (gdouble) (rate_num) / rate_den,
+        "local-clock-offset", G_TYPE_INT64, GST_CLOCK_DIFF (internal_time,
+            external_time), NULL);
+    msg = gst_message_new_element (GST_OBJECT (self), s);
+    gst_bus_post (bus, msg);
   }
 
   GST_INFO ("next timeout: %" GST_TIME_FORMAT, GST_TIME_ARGS (current_timeout));
   self->priv->timeout_expiration = gst_util_get_timestamp () + current_timeout;
 
+  if (bus)
+    gst_object_unref (bus);
   return;
 
 bogus_observation:
+  if (bus)
+    gst_object_unref (bus);
   /* Schedule a new packet again soon */
   self->priv->timeout_expiration = gst_util_get_timestamp () + (GST_SECOND / 4);
   return;
@@ -402,7 +598,6 @@
       }
     }
   }
-
   GST_INFO_OBJECT (self, "shutting down net client clock thread");
   return NULL;
 }
diff --git a/libs/gst/net/gstnetcontrolmessagemeta.c b/libs/gst/net/gstnetcontrolmessagemeta.c
new file mode 100644
index 0000000..fca39b5
--- /dev/null
+++ b/libs/gst/net/gstnetcontrolmessagemeta.c
@@ -0,0 +1,125 @@
+/* GStreamer
+ * Copyright (C) <2014> William Manley <will@williammanley.net>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * SECTION:gstnetcontrolmessagemeta
+ * @short_description: Network Control Message Meta
+ *
+ * #GstNetControlMessageMeta can be used to store control messages (ancillary
+ * data) which was received with or is to be sent alongside the buffer data.
+ * When used with socket sinks and sources which understand this meta it allows
+ * sending and receiving ancillary data such as unix credentials (See
+ * #GUnixCredentialsMessage) and Unix file descriptions (See #GUnixFDMessage).
+ */
+
+#include <string.h>
+
+#include "gstnetcontrolmessagemeta.h"
+
+static gboolean
+net_control_message_meta_init (GstMeta * meta, gpointer params,
+    GstBuffer * buffer)
+{
+  GstNetControlMessageMeta *nmeta = (GstNetControlMessageMeta *) meta;
+
+  nmeta->message = NULL;
+
+  return TRUE;
+}
+
+static gboolean
+net_control_message_meta_transform (GstBuffer * transbuf, GstMeta * meta,
+    GstBuffer * buffer, GQuark type, gpointer data)
+{
+  GstNetControlMessageMeta *nmeta = (GstNetControlMessageMeta *) meta;
+
+  /* we always copy no matter what transform */
+  gst_buffer_add_net_control_message_meta (transbuf, nmeta->message);
+
+  return TRUE;
+}
+
+static void
+net_control_message_meta_free (GstMeta * meta, GstBuffer * buffer)
+{
+  GstNetControlMessageMeta *nmeta = (GstNetControlMessageMeta *) meta;
+
+  if (nmeta->message)
+    g_object_unref (nmeta->message);
+  nmeta->message = NULL;
+}
+
+GType
+gst_net_control_message_meta_api_get_type (void)
+{
+  static volatile GType type;
+  static const gchar *tags[] = { "origin", NULL };
+
+  if (g_once_init_enter (&type)) {
+    GType _type =
+        gst_meta_api_type_register ("GstNetControlMessageMetaAPI", tags);
+    g_once_init_leave (&type, _type);
+  }
+  return type;
+}
+
+const GstMetaInfo *
+gst_net_control_message_meta_get_info (void)
+{
+  static const GstMetaInfo *meta_info = NULL;
+
+  if (g_once_init_enter (&meta_info)) {
+    const GstMetaInfo *mi =
+        gst_meta_register (GST_NET_CONTROL_MESSAGE_META_API_TYPE,
+        "GstNetControlMessageMeta",
+        sizeof (GstNetControlMessageMeta),
+        net_control_message_meta_init,
+        net_control_message_meta_free,
+        net_control_message_meta_transform);
+    g_once_init_leave (&meta_info, mi);
+  }
+  return meta_info;
+}
+
+/**
+ * gst_buffer_add_net_control_message_meta:
+ * @buffer: a #GstBuffer
+ * @message: a @GSocketControlMessage to attach to @buffer
+ *
+ * Attaches @message as metadata in a #GstNetControlMessageMeta to @buffer.
+ *
+ * Returns: (transfer none): a #GstNetControlMessageMeta connected to @buffer
+ */
+GstNetControlMessageMeta *
+gst_buffer_add_net_control_message_meta (GstBuffer * buffer,
+    GSocketControlMessage * message)
+{
+  GstNetControlMessageMeta *meta;
+
+  g_return_val_if_fail (GST_IS_BUFFER (buffer), NULL);
+  g_return_val_if_fail (G_IS_SOCKET_CONTROL_MESSAGE (message), NULL);
+
+  meta =
+      (GstNetControlMessageMeta *) gst_buffer_add_meta (buffer,
+      GST_NET_CONTROL_MESSAGE_META_INFO, NULL);
+
+  meta->message = g_object_ref (message);
+
+  return meta;
+}
diff --git a/libs/gst/net/gstnetcontrolmessagemeta.h b/libs/gst/net/gstnetcontrolmessagemeta.h
new file mode 100644
index 0000000..5e77bbe
--- /dev/null
+++ b/libs/gst/net/gstnetcontrolmessagemeta.h
@@ -0,0 +1,62 @@
+/* GStreamer
+ * Copyright (C) <2014> William Manley <will@williammanley.net>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __GST_NET_CONTROL_MESSAGE_META_H__
+#define __GST_NET_CONTROL_MESSAGE_META_H__
+
+#include <gst/gst.h>
+#include <gio/gio.h>
+
+G_BEGIN_DECLS
+
+typedef struct _GstNetControlMessageMeta GstNetControlMessageMeta;
+
+/**
+ * GstNetControlMessageMeta:
+ * @meta: the parent type
+ * @addr: a #GSocketControlMessage stored as metadata
+ *
+ * Buffer metadata for GSocket control messages, AKA ancillary data attached to
+ * data sent across a socket.
+ */
+struct _GstNetControlMessageMeta {
+  GstMeta       meta;
+
+  GSocketControlMessage *message;
+};
+
+GType gst_net_control_message_meta_api_get_type (void);
+#define GST_NET_CONTROL_MESSAGE_META_API_TYPE \
+  (gst_net_control_message_meta_api_get_type())
+
+#define gst_buffer_get_net_control_message_meta(b) ((GstNetControlMessageMeta*)\
+  gst_buffer_get_meta((b),GST_NET_CONTROL_MESSAGE_META_API_TYPE))
+
+/* implementation */
+const GstMetaInfo *gst_net_control_message_meta_get_info (void);
+#define GST_NET_CONTROL_MESSAGE_META_INFO \
+  (gst_net_control_message_meta_get_info())
+
+GstNetControlMessageMeta * gst_buffer_add_net_control_message_meta (
+    GstBuffer *buffer, GSocketControlMessage *addr);
+
+G_END_DECLS
+
+#endif /* __GST_NET_CONTROL_MESSAGE_META_H__ */
+
diff --git a/ltmain.sh b/ltmain.sh
index bb5fa02..bffda54 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -70,7 +70,7 @@
 #         compiler:		$LTCC
 #         compiler flags:		$LTCFLAGS
 #         linker:		$LD (gnu? $with_gnu_ld)
-#         $progname:	(GNU libtool) 2.4.2 Debian-2.4.2-1.7
+#         $progname:	(GNU libtool) 2.4.2 Debian-2.4.2-1.11
 #         automake:	$automake_version
 #         autoconf:	$autoconf_version
 #
@@ -80,7 +80,7 @@
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION="2.4.2 Debian-2.4.2-1.7"
+VERSION="2.4.2 Debian-2.4.2-1.11"
 TIMESTAMP=""
 package_revision=1.3337
 
diff --git a/m4/Makefile.in b/m4/Makefile.in
index dabf986..5fda59e 100644
--- a/m4/Makefile.in
+++ b/m4/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -153,6 +154,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -258,6 +263,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/m4/check-checks.m4 b/m4/check-checks.m4
index 349a1b5..16ba777 100644
--- a/m4/check-checks.m4
+++ b/m4/check-checks.m4
@@ -7,7 +7,7 @@
 
 CHECK_MAJOR_VERSION=0
 CHECK_MINOR_VERSION=9
-CHECK_MICRO_VERSION=8
+CHECK_MICRO_VERSION=14
 CHECK_VERSION=$CHECK_MAJOR_VERSION.$CHECK_MINOR_VERSION.$CHECK_MICRO_VERSION
 
 AC_SUBST(CHECK_MAJOR_VERSION)
@@ -20,6 +20,82 @@
 
 AC_CHECK_FUNCS([localtime_r])
 
+dnl Check for getpid() and _getpid()
+AC_CHECK_FUNCS([getpid _getpid])
+
+dnl Check for strdup() and _strdup()
+AC_CHECK_DECLS([strdup])
+AC_CHECK_FUNCS([_strdup])
+
+dnl Check for mkstemp
+AC_CHECK_FUNCS([mkstemp])
+
+dnl Check for fork
+AC_CHECK_FUNCS([fork], HAVE_FORK=1, HAVE_FORK=0)
+AC_SUBST(HAVE_FORK)
+
+dnl Check for alarm, localtime_r and strsignal
+dnl First check for time.h as it might be used by localtime_r
+AC_CHECK_HEADERS([time.h])
+AC_CHECK_DECLS([alarm, localtime_r, strsignal], [], [], [
+    AC_INCLUDES_DEFAULT
+#if HAVE_TIME_H
+#include <time.h>
+#endif /* HAVE_TIME_H */
+])
+AC_CHECK_FUNCS([alarm setitimer strsignal])
+AM_CONDITIONAL(HAVE_ALARM, test "x$ac_cv_func_alarm" = "xyes")
+AM_CONDITIONAL(HAVE_LOCALTIME_R, test "x$ac_cv_func_localtime_r" = "xyes")
+AM_CONDITIONAL(HAVE_STRSIGNAL, test "x$ac_cv_func_strsignal" = "xyes")
+
+dnl Check if struct timespec/itimerspec are defined in time.h. If not, we need
+dnl to define it in libs/gst/check/libcheck/libcompat.h. Note the optional
+dnl inclusion of pthread.h. On MinGW(-w64), the pthread.h file contains the
+dnl timespec/itimerspec definitions.
+AC_CHECK_MEMBERS([struct timespec.tv_sec, struct timespec.tv_nsec], [],
+  [AC_DEFINE_UNQUOTED(STRUCT_TIMESPEC_DEFINITION_MISSING, 1,
+    [Need to define the timespec structure])], [
+#include <time.h>
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+])
+AC_CHECK_MEMBERS([struct itimerspec.it_interval, struct itimerspec.it_value],
+  [], [AC_DEFINE_UNQUOTED(STRUCT_ITIMERSPEC_DEFINITION_MISSING, 1,
+    [Need to define the itimerspec structure])], [
+#include <time.h>
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+])
+
+dnl Check if types timer_t/clockid_t are defined. If not, we need to define
+dnl it in libs/gst/check/libcheck/ibcompat.h. Note the optional inclusion of
+dnl pthread.h. On MinGW(-w64), the pthread.h file contains the
+dnl timer_t/clockid_t definitions.
+AC_CHECK_TYPE(timer_t, [], [
+    AC_DEFINE([timer_t], [int], [timer_t])
+  ], [
+    AC_INCLUDES_DEFAULT
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+])
+AC_CHECK_TYPE(clockid_t, [], [
+    AC_DEFINE([clockid_t], [int], [clockid_t])
+  ], [
+    AC_INCLUDES_DEFAULT
+#if HAVE_PTHREAD
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+])
+
+dnl Check for POSIX timer functions in librt
+AC_CHECK_LIB([rt], [timer_create, timer_settime, timer_delete])
+AM_CONDITIONAL(HAVE_TIMER_CREATE_SETTIME_DELETE, test "x$ac_cv_lib_rt_timer_create__timer_settime__timer_delete" = "xyes")
+
+dnl Allow for checking HAVE_CLOCK_GETTIME in automake files
+AM_CONDITIONAL(HAVE_CLOCK_GETTIME, test "x$ac_cv_func_clock_gettime" = "xyes")
 
 dnl Create _stdint.h in the top-level directory
 AX_CREATE_STDINT_H
diff --git a/pkgconfig/Makefile.in b/pkgconfig/Makefile.in
index 93277d3..d88af6a 100644
--- a/pkgconfig/Makefile.in
+++ b/pkgconfig/Makefile.in
@@ -99,6 +99,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -116,7 +117,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -197,6 +198,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -302,6 +307,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/pkgconfig/gstreamer-uninstalled.pc.in b/pkgconfig/gstreamer-uninstalled.pc.in
index ac1eeef..bf8bf42 100644
--- a/pkgconfig/gstreamer-uninstalled.pc.in
+++ b/pkgconfig/gstreamer-uninstalled.pc.in
@@ -7,6 +7,8 @@
 toolsdir=@abs_top_builddir@/tools
 pluginsdir=@abs_top_builddir@
 girdir=@abs_top_builddir@/gst
+completionsdir=@abs_top_builddir@/data/completions
+helpersdir=@abs_top_builddir@/libs/gst/helpers
 typelibdir=@abs_top_builddir@/gst
 
 Name: GStreamer Uninstalled
diff --git a/pkgconfig/gstreamer.pc.in b/pkgconfig/gstreamer.pc.in
index b949d6c..381c96d 100644
--- a/pkgconfig/gstreamer.pc.in
+++ b/pkgconfig/gstreamer.pc.in
@@ -7,6 +7,8 @@
 datarootdir=${prefix}/share
 datadir=${datarootdir}
 girdir=${datadir}/gir-1.0
+completionsdir=@BASH_COMPLETION_DIR@
+helpersdir=@BASH_HELPERS_DIR@
 typelibdir=${libdir}/girepository-1.0
 
 Name: GStreamer
@@ -15,4 +17,4 @@
 Requires: glib-2.0, gobject-2.0
 Requires.private: gmodule-no-export-2.0
 Libs: -L${libdir} -lgstreamer-@GST_API_VERSION@
-Cflags: -I${includedir}
+Cflags: -I${includedir} -I${libdir}/gstreamer-@GST_API_VERSION@/include
diff --git a/plugins/Makefile.in b/plugins/Makefile.in
index 72a07c9..cbc6506 100644
--- a/plugins/Makefile.in
+++ b/plugins/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -212,6 +213,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -317,6 +322,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/plugins/elements/Makefile.am b/plugins/elements/Makefile.am
index 3821b3c..ee3c9fb 100644
--- a/plugins/elements/Makefile.am
+++ b/plugins/elements/Makefile.am
@@ -4,6 +4,7 @@
 libgstcoreelements_la_DEPENDENCIES = $(top_builddir)/gst/libgstreamer-@GST_API_VERSION@.la
 libgstcoreelements_la_SOURCES =	\
 	gstcapsfilter.c		\
+	gstconcat.c		\
 	gstdownloadbuffer.c     \
 	gstelements.c		\
 	gstelements_private.c	\
@@ -23,6 +24,7 @@
 	gstsparsefile.c		\
 	gsttee.c		\
 	gsttypefindelement.c	\
+	gststreamiddemux.c	\
 	gstvalve.c
 
 libgstcoreelements_la_CFLAGS = $(GST_OBJ_CFLAGS)
@@ -34,6 +36,7 @@
 
 noinst_HEADERS =		\
 	gstcapsfilter.h		\
+	gstconcat.h		\
 	gstdownloadbuffer.h	\
 	gstelements_private.h	\
 	gstfakesink.h		\
@@ -52,6 +55,7 @@
 	gstsparsefile.h		\
 	gsttee.h		\
 	gsttypefindelement.h	\
+	gststreamiddemux.h	\
 	gstvalve.h
 
 EXTRA_DIST = gstfdsrc.c \
diff --git a/plugins/elements/Makefile.in b/plugins/elements/Makefile.in
index a7df076..b83d15f 100644
--- a/plugins/elements/Makefile.in
+++ b/plugins/elements/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -157,6 +158,7 @@
 am__DEPENDENCIES_1 =
 am_libgstcoreelements_la_OBJECTS =  \
 	libgstcoreelements_la-gstcapsfilter.lo \
+	libgstcoreelements_la-gstconcat.lo \
 	libgstcoreelements_la-gstdownloadbuffer.lo \
 	libgstcoreelements_la-gstelements.lo \
 	libgstcoreelements_la-gstelements_private.lo \
@@ -176,6 +178,7 @@
 	libgstcoreelements_la-gstsparsefile.lo \
 	libgstcoreelements_la-gsttee.lo \
 	libgstcoreelements_la-gsttypefindelement.lo \
+	libgstcoreelements_la-gststreamiddemux.lo \
 	libgstcoreelements_la-gstvalve.lo
 libgstcoreelements_la_OBJECTS = $(am_libgstcoreelements_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
@@ -258,6 +261,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -363,6 +370,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -528,6 +536,7 @@
 libgstcoreelements_la_DEPENDENCIES = $(top_builddir)/gst/libgstreamer-@GST_API_VERSION@.la
 libgstcoreelements_la_SOURCES = \
 	gstcapsfilter.c		\
+	gstconcat.c		\
 	gstdownloadbuffer.c     \
 	gstelements.c		\
 	gstelements_private.c	\
@@ -547,6 +556,7 @@
 	gstsparsefile.c		\
 	gsttee.c		\
 	gsttypefindelement.c	\
+	gststreamiddemux.c	\
 	gstvalve.c
 
 libgstcoreelements_la_CFLAGS = $(GST_OBJ_CFLAGS)
@@ -558,6 +568,7 @@
 libgstcoreelements_la_LIBTOOLFLAGS = $(GST_PLUGIN_LIBTOOLFLAGS)
 noinst_HEADERS = \
 	gstcapsfilter.h		\
+	gstconcat.h		\
 	gstdownloadbuffer.h	\
 	gstelements_private.h	\
 	gstfakesink.h		\
@@ -576,6 +587,7 @@
 	gstsparsefile.h		\
 	gsttee.h		\
 	gsttypefindelement.h	\
+	gststreamiddemux.h	\
 	gstvalve.h
 
 EXTRA_DIST = gstfdsrc.c \
@@ -662,6 +674,7 @@
 	-rm -f *.tab.c
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstcapsfilter.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstconcat.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstdownloadbuffer.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstelements.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstelements_private.Plo@am__quote@
@@ -679,6 +692,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstqueue.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstqueue2.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstsparsefile.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gststreamiddemux.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gsttee.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gsttypefindelement.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgstcoreelements_la-gstvalve.Plo@am__quote@
@@ -714,6 +728,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -c -o libgstcoreelements_la-gstcapsfilter.lo `test -f 'gstcapsfilter.c' || echo '$(srcdir)/'`gstcapsfilter.c
 
+libgstcoreelements_la-gstconcat.lo: gstconcat.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -MT libgstcoreelements_la-gstconcat.lo -MD -MP -MF $(DEPDIR)/libgstcoreelements_la-gstconcat.Tpo -c -o libgstcoreelements_la-gstconcat.lo `test -f 'gstconcat.c' || echo '$(srcdir)/'`gstconcat.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstcoreelements_la-gstconcat.Tpo $(DEPDIR)/libgstcoreelements_la-gstconcat.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstconcat.c' object='libgstcoreelements_la-gstconcat.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -c -o libgstcoreelements_la-gstconcat.lo `test -f 'gstconcat.c' || echo '$(srcdir)/'`gstconcat.c
+
 libgstcoreelements_la-gstdownloadbuffer.lo: gstdownloadbuffer.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -MT libgstcoreelements_la-gstdownloadbuffer.lo -MD -MP -MF $(DEPDIR)/libgstcoreelements_la-gstdownloadbuffer.Tpo -c -o libgstcoreelements_la-gstdownloadbuffer.lo `test -f 'gstdownloadbuffer.c' || echo '$(srcdir)/'`gstdownloadbuffer.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstcoreelements_la-gstdownloadbuffer.Tpo $(DEPDIR)/libgstcoreelements_la-gstdownloadbuffer.Plo
@@ -847,6 +868,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -c -o libgstcoreelements_la-gsttypefindelement.lo `test -f 'gsttypefindelement.c' || echo '$(srcdir)/'`gsttypefindelement.c
 
+libgstcoreelements_la-gststreamiddemux.lo: gststreamiddemux.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -MT libgstcoreelements_la-gststreamiddemux.lo -MD -MP -MF $(DEPDIR)/libgstcoreelements_la-gststreamiddemux.Tpo -c -o libgstcoreelements_la-gststreamiddemux.lo `test -f 'gststreamiddemux.c' || echo '$(srcdir)/'`gststreamiddemux.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstcoreelements_la-gststreamiddemux.Tpo $(DEPDIR)/libgstcoreelements_la-gststreamiddemux.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gststreamiddemux.c' object='libgstcoreelements_la-gststreamiddemux.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -c -o libgstcoreelements_la-gststreamiddemux.lo `test -f 'gststreamiddemux.c' || echo '$(srcdir)/'`gststreamiddemux.c
+
 libgstcoreelements_la-gstvalve.lo: gstvalve.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstcoreelements_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstcoreelements_la_CFLAGS) $(CFLAGS) -MT libgstcoreelements_la-gstvalve.lo -MD -MP -MF $(DEPDIR)/libgstcoreelements_la-gstvalve.Tpo -c -o libgstcoreelements_la-gstvalve.lo `test -f 'gstvalve.c' || echo '$(srcdir)/'`gstvalve.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstcoreelements_la-gstvalve.Tpo $(DEPDIR)/libgstcoreelements_la-gstvalve.Plo
diff --git a/plugins/elements/gstcapsfilter.c b/plugins/elements/gstcapsfilter.c
index 1c29a25..6c7ae0d 100644
--- a/plugins/elements/gstcapsfilter.c
+++ b/plugins/elements/gstcapsfilter.c
@@ -43,9 +43,11 @@
 enum
 {
   PROP_0,
-  PROP_FILTER_CAPS
+  PROP_FILTER_CAPS,
+  PROP_CAPS_CHANGE_MODE
 };
 
+#define DEFAULT_CAPS_CHANGE_MODE (GST_CAPS_FILTER_CAPS_CHANGE_MODE_IMMEDIATE)
 
 static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink",
     GST_PAD_SINK,
@@ -61,6 +63,26 @@
 GST_DEBUG_CATEGORY_STATIC (gst_capsfilter_debug);
 #define GST_CAT_DEFAULT gst_capsfilter_debug
 
+/* TODO: Add a drop-buffers mode */
+#define GST_TYPE_CAPS_FILTER_CAPS_CHANGE_MODE (gst_caps_filter_caps_change_mode_get_type())
+static GType
+gst_caps_filter_caps_change_mode_get_type (void)
+{
+  static GType type = 0;
+  static const GEnumValue data[] = {
+    {GST_CAPS_FILTER_CAPS_CHANGE_MODE_IMMEDIATE,
+        "Only accept the current filter caps", "immediate"},
+    {GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED,
+        "Temporarily accept previous filter caps", "delayed"},
+    {0, NULL, NULL},
+  };
+
+  if (!type) {
+    type = g_enum_register_static ("GstCapsFilterCapsChangeMode", data);
+  }
+  return type;
+}
+
 #define _do_init \
     GST_DEBUG_CATEGORY_INIT (gst_capsfilter_debug, "capsfilter", 0, \
     "capsfilter element");
@@ -104,7 +126,15 @@
           _("Restrict the possible allowed capabilities (NULL means ANY). "
               "Setting this property takes a reference to the supplied GstCaps "
               "object."), GST_TYPE_CAPS,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
+
+  g_object_class_install_property (gobject_class, PROP_CAPS_CHANGE_MODE,
+      g_param_spec_enum ("caps-change-mode", _("Caps Change Mode"),
+          _("Filter caps change behaviour"),
+          GST_TYPE_CAPS_FILTER_CAPS_CHANGE_MODE, DEFAULT_CAPS_CHANGE_MODE,
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   gstelement_class = GST_ELEMENT_CLASS (klass);
   gst_element_class_set_static_metadata (gstelement_class,
@@ -135,6 +165,7 @@
   gst_base_transform_set_gap_aware (trans, TRUE);
   gst_base_transform_set_prefer_passthrough (trans, FALSE);
   filter->filter_caps = gst_caps_new_any ();
+  filter->caps_change_mode = DEFAULT_CAPS_CHANGE_MODE;
 }
 
 static void
@@ -159,6 +190,17 @@
       GST_OBJECT_LOCK (capsfilter);
       old_caps = capsfilter->filter_caps;
       capsfilter->filter_caps = new_caps;
+      if (old_caps
+          && capsfilter->caps_change_mode ==
+          GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED) {
+        capsfilter->previous_caps =
+            g_list_prepend (capsfilter->previous_caps, gst_caps_ref (old_caps));
+      } else if (capsfilter->caps_change_mode !=
+          GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED) {
+        g_list_free_full (capsfilter->previous_caps,
+            (GDestroyNotify) gst_caps_unref);
+        capsfilter->previous_caps = NULL;
+      }
       GST_OBJECT_UNLOCK (capsfilter);
 
       gst_caps_unref (old_caps);
@@ -168,6 +210,9 @@
       gst_base_transform_reconfigure_sink (GST_BASE_TRANSFORM (object));
       break;
     }
+    case PROP_CAPS_CHANGE_MODE:
+      capsfilter->caps_change_mode = g_value_get_enum (value);
+      break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
       break;
@@ -186,6 +231,9 @@
       gst_value_set_caps (value, capsfilter->filter_caps);
       GST_OBJECT_UNLOCK (capsfilter);
       break;
+    case PROP_CAPS_CHANGE_MODE:
+      g_value_set_enum (value, capsfilter->caps_change_mode);
+      break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
       break;
@@ -210,11 +258,15 @@
 {
   GstCapsFilter *capsfilter = GST_CAPSFILTER (base);
   GstCaps *ret, *filter_caps, *tmp;
+  gboolean retried = FALSE;
+  GstCapsFilterCapsChangeMode caps_change_mode;
 
   GST_OBJECT_LOCK (capsfilter);
   filter_caps = gst_caps_ref (capsfilter->filter_caps);
+  caps_change_mode = capsfilter->caps_change_mode;
   GST_OBJECT_UNLOCK (capsfilter);
 
+retry:
   if (filter) {
     tmp =
         gst_caps_intersect_full (filter, filter_caps, GST_CAPS_INTERSECT_FIRST);
@@ -230,6 +282,26 @@
       filter_caps);
   GST_DEBUG_OBJECT (capsfilter, "intersect: %" GST_PTR_FORMAT, ret);
 
+  if (gst_caps_is_empty (ret)
+      && caps_change_mode ==
+      GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED && capsfilter->previous_caps
+      && !retried) {
+    GList *l;
+
+    GST_DEBUG_OBJECT (capsfilter,
+        "Current filter caps are not compatible, retry with previous");
+    GST_OBJECT_LOCK (capsfilter);
+    gst_caps_unref (filter_caps);
+    gst_caps_unref (ret);
+    filter_caps = gst_caps_new_empty ();
+    for (l = capsfilter->previous_caps; l; l = l->next) {
+      filter_caps = gst_caps_merge (filter_caps, gst_caps_ref (l->data));
+    }
+    GST_OBJECT_UNLOCK (capsfilter);
+    retried = TRUE;
+    goto retry;
+  }
+
   gst_caps_unref (filter_caps);
 
   return ret;
@@ -249,6 +321,25 @@
 
   ret = gst_caps_can_intersect (caps, filter_caps);
   GST_DEBUG_OBJECT (capsfilter, "can intersect: %d", ret);
+  if (!ret
+      && capsfilter->caps_change_mode ==
+      GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED) {
+    GList *l;
+
+    GST_OBJECT_LOCK (capsfilter);
+    for (l = capsfilter->previous_caps; l; l = l->next) {
+      ret = gst_caps_can_intersect (caps, l->data);
+      if (ret)
+        break;
+    }
+    GST_OBJECT_UNLOCK (capsfilter);
+
+    /* Tell upstream to reconfigure, it's still
+     * looking at old caps */
+    if (ret)
+      gst_base_transform_reconfigure_sink (base);
+  }
+
   if (ret) {
     /* if we can intersect, see if the other end also accepts */
     if (direction == GST_PAD_SRC)
@@ -340,6 +431,9 @@
         } else {
           ret = GST_FLOW_NOT_NEGOTIATED;
         }
+      } else {
+        gst_capsfilter_push_pending_events (filter, pending_events);
+        pending_events = NULL;
       }
 
       g_list_free_full (pending_events, (GDestroyNotify) gst_event_unref);
@@ -377,12 +471,14 @@
 gst_capsfilter_sink_event (GstBaseTransform * trans, GstEvent * event)
 {
   GstCapsFilter *filter = GST_CAPSFILTER (trans);
+  gboolean ret;
 
   if (GST_EVENT_TYPE (event) == GST_EVENT_FLUSH_STOP) {
     GList *l;
 
     for (l = filter->pending_events; l; l = l->next) {
-      if (GST_EVENT_TYPE (l->data) == GST_EVENT_SEGMENT) {
+      if (GST_EVENT_TYPE (l->data) == GST_EVENT_SEGMENT ||
+          GST_EVENT_TYPE (l->data) == GST_EVENT_EOS) {
         gst_event_unref (l->data);
         filter->pending_events = g_list_delete_link (filter->pending_events, l);
         break;
@@ -417,7 +513,39 @@
 done:
 
   GST_LOG_OBJECT (trans, "Forwarding %s event", GST_EVENT_TYPE_NAME (event));
-  return GST_BASE_TRANSFORM_CLASS (parent_class)->sink_event (trans, event);
+  ret =
+      GST_BASE_TRANSFORM_CLASS (parent_class)->sink_event (trans,
+      gst_event_ref (event));
+
+  if (GST_EVENT_TYPE (event) == GST_EVENT_CAPS
+      && filter->caps_change_mode == GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED) {
+    GList *l;
+    GstCaps *caps;
+
+    gst_event_parse_caps (event, &caps);
+
+    /* Remove all previous caps up to one that works.
+     * Note that this might keep some leftover caps if there
+     * are multiple compatible caps */
+    GST_OBJECT_LOCK (filter);
+    for (l = g_list_last (filter->previous_caps); l; l = l->prev) {
+      if (gst_caps_can_intersect (caps, l->data)) {
+        while (l->next) {
+          gst_caps_unref (l->next->data);
+          l = g_list_delete_link (l, l->next);
+        }
+        break;
+      }
+    }
+    if (!l && gst_caps_can_intersect (caps, filter->filter_caps)) {
+      g_list_free_full (filter->previous_caps, (GDestroyNotify) gst_caps_unref);
+      filter->previous_caps = NULL;
+    }
+    GST_OBJECT_UNLOCK (filter);
+  }
+  gst_event_unref (event);
+
+  return ret;
 }
 
 static gboolean
@@ -428,5 +556,10 @@
   g_list_free_full (filter->pending_events, (GDestroyNotify) gst_event_unref);
   filter->pending_events = NULL;
 
+  GST_OBJECT_LOCK (filter);
+  g_list_free_full (filter->previous_caps, (GDestroyNotify) gst_caps_unref);
+  filter->previous_caps = NULL;
+  GST_OBJECT_UNLOCK (filter);
+
   return TRUE;
 }
diff --git a/plugins/elements/gstcapsfilter.h b/plugins/elements/gstcapsfilter.h
index ab9ac1f..19f851d 100644
--- a/plugins/elements/gstcapsfilter.h
+++ b/plugins/elements/gstcapsfilter.h
@@ -44,6 +44,11 @@
 typedef struct _GstCapsFilter GstCapsFilter;
 typedef struct _GstCapsFilterClass GstCapsFilterClass;
 
+typedef enum {
+  GST_CAPS_FILTER_CAPS_CHANGE_MODE_IMMEDIATE,
+  GST_CAPS_FILTER_CAPS_CHANGE_MODE_DELAYED
+} GstCapsFilterCapsChangeMode;
+
 /**
  * GstCapsFilter:
  *
@@ -53,7 +58,10 @@
   GstBaseTransform trans;
 
   GstCaps *filter_caps;
+  GstCapsFilterCapsChangeMode caps_change_mode;
+
   GList *pending_events;
+  GList *previous_caps;
 };
 
 struct _GstCapsFilterClass {
diff --git a/plugins/elements/gstconcat.c b/plugins/elements/gstconcat.c
new file mode 100644
index 0000000..340a2d1
--- /dev/null
+++ b/plugins/elements/gstconcat.c
@@ -0,0 +1,703 @@
+/* GStreamer concat element
+ *
+ *  Copyright (c) 2014 Sebastian Dröge <sebastian@centricular.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ */
+/**
+ * SECTION:element-concat
+ * @see_also: #GstFunnel
+ *
+ * Concatenates streams together to one continous stream.
+ *
+ * All streams but the current one are blocked until the current one
+ * finished with %GST_EVENT_EOS. Then the next stream is enabled, while
+ * keeping the running time continous for %GST_FORMAT_TIME segments or
+ * keeping the segment continous for %GST_FORMAT_BYTES segments.
+ *
+ * Streams are switched in the order in which the sinkpads were requested.
+ *
+ * <refsect2>
+ * <title>Example launch line</title>
+ * |[
+ * gst-launch-1.0 concat name=c ! xvimagesink  videotestsrc num-buffers=100 ! c.   videotestsrc num-buffers=100 pattern=ball ! c.
+ * ]| Plays two video streams one after another.
+ * </refsect2>
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "gstconcat.h"
+
+GST_DEBUG_CATEGORY_STATIC (gst_concat_debug);
+#define GST_CAT_DEFAULT gst_concat_debug
+
+G_GNUC_INTERNAL GType gst_concat_pad_get_type (void);
+
+#define GST_TYPE_CONCAT_PAD (gst_concat_pad_get_type())
+#define GST_CONCAT_PAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_CONCAT_PAD, GstConcatPad))
+#define GST_CONCAT_PAD_CAST(obj) ((GstConcatPad *)(obj))
+#define GST_CONCAT_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_CONCAT_PAD, GstConcatPadClass))
+#define GST_IS_CONCAT_PAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_CONCAT_PAD))
+#define GST_IS_CONCAT_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_CONCAT_PAD))
+
+typedef struct _GstConcatPad GstConcatPad;
+typedef struct _GstConcatPadClass GstConcatPadClass;
+
+struct _GstConcatPad
+{
+  GstPad parent;
+
+  GstSegment segment;
+
+  /* Protected by the concat lock */
+  gboolean flushing;
+};
+
+struct _GstConcatPadClass
+{
+  GstPadClass parent;
+};
+
+G_DEFINE_TYPE (GstConcatPad, gst_concat_pad, GST_TYPE_PAD);
+
+static void
+gst_concat_pad_class_init (GstConcatPadClass * klass)
+{
+}
+
+static void
+gst_concat_pad_init (GstConcatPad * self)
+{
+  gst_segment_init (&self->segment, GST_FORMAT_UNDEFINED);
+  self->flushing = FALSE;
+}
+
+static GstStaticPadTemplate concat_sink_template =
+GST_STATIC_PAD_TEMPLATE ("sink_%u",
+    GST_PAD_SINK,
+    GST_PAD_REQUEST,
+    GST_STATIC_CAPS_ANY);
+
+static GstStaticPadTemplate concat_src_template =
+GST_STATIC_PAD_TEMPLATE ("src",
+    GST_PAD_SRC,
+    GST_PAD_ALWAYS,
+    GST_STATIC_CAPS_ANY);
+
+#define _do_init \
+  GST_DEBUG_CATEGORY_INIT (gst_concat_debug, "concat", 0, "concat element");
+#define gst_concat_parent_class parent_class
+G_DEFINE_TYPE_WITH_CODE (GstConcat, gst_concat, GST_TYPE_ELEMENT, _do_init);
+
+static void gst_concat_dispose (GObject * object);
+static void gst_concat_finalize (GObject * object);
+
+static GstStateChangeReturn gst_concat_change_state (GstElement * element,
+    GstStateChange transition);
+static GstPad *gst_concat_request_new_pad (GstElement * element,
+    GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
+static void gst_concat_release_pad (GstElement * element, GstPad * pad);
+
+static GstFlowReturn gst_concat_sink_chain (GstPad * pad, GstObject * parent,
+    GstBuffer * buffer);
+static gboolean gst_concat_sink_event (GstPad * pad, GstObject * parent,
+    GstEvent * event);
+static gboolean gst_concat_sink_query (GstPad * pad, GstObject * parent,
+    GstQuery * query);
+
+static gboolean gst_concat_src_event (GstPad * pad, GstObject * parent,
+    GstEvent * event);
+static gboolean gst_concat_src_query (GstPad * pad, GstObject * parent,
+    GstQuery * query);
+
+static gboolean gst_concat_switch_pad (GstConcat * self);
+
+static void
+gst_concat_class_init (GstConcatClass * klass)
+{
+  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
+
+  gobject_class->dispose = GST_DEBUG_FUNCPTR (gst_concat_dispose);
+  gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_concat_finalize);
+
+  gst_element_class_set_static_metadata (gstelement_class,
+      "Concat", "Generic", "Concatenate multiple streams",
+      "Sebastian Dröge <sebastian@centricular.com>");
+
+  gst_element_class_add_pad_template (gstelement_class,
+      gst_static_pad_template_get (&concat_sink_template));
+  gst_element_class_add_pad_template (gstelement_class,
+      gst_static_pad_template_get (&concat_src_template));
+
+  gstelement_class->request_new_pad =
+      GST_DEBUG_FUNCPTR (gst_concat_request_new_pad);
+  gstelement_class->release_pad = GST_DEBUG_FUNCPTR (gst_concat_release_pad);
+  gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_concat_change_state);
+}
+
+static void
+gst_concat_init (GstConcat * self)
+{
+  g_mutex_init (&self->lock);
+  g_cond_init (&self->cond);
+
+  self->srcpad = gst_pad_new_from_static_template (&concat_src_template, "src");
+  gst_pad_set_event_function (self->srcpad,
+      GST_DEBUG_FUNCPTR (gst_concat_src_event));
+  gst_pad_set_query_function (self->srcpad,
+      GST_DEBUG_FUNCPTR (gst_concat_src_query));
+  gst_pad_use_fixed_caps (self->srcpad);
+
+  gst_element_add_pad (GST_ELEMENT (self), self->srcpad);
+}
+
+static void
+gst_concat_dispose (GObject * object)
+{
+  GstConcat *self = GST_CONCAT (object);
+  GList *item;
+
+  gst_object_replace ((GstObject **) & self->current_sinkpad, NULL);
+
+restart:
+  for (item = GST_ELEMENT_PADS (object); item; item = g_list_next (item)) {
+    GstPad *pad = GST_PAD (item->data);
+
+    if (GST_PAD_IS_SINK (pad)) {
+      gst_element_release_request_pad (GST_ELEMENT (object), pad);
+      goto restart;
+    }
+  }
+
+  G_OBJECT_CLASS (parent_class)->dispose (object);
+}
+
+static void
+gst_concat_finalize (GObject * object)
+{
+  GstConcat *self = GST_CONCAT (object);
+
+  g_mutex_clear (&self->lock);
+  g_cond_clear (&self->cond);
+
+  G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+static GstPad *
+gst_concat_request_new_pad (GstElement * element, GstPadTemplate * templ,
+    const gchar * name, const GstCaps * caps)
+{
+  GstConcat *self = GST_CONCAT (element);
+  GstPad *sinkpad;
+  gchar *pad_name;
+
+  GST_DEBUG_OBJECT (element, "requesting pad");
+
+  g_mutex_lock (&self->lock);
+  pad_name = g_strdup_printf ("sink_%u", self->pad_count);
+  self->pad_count++;
+  g_mutex_unlock (&self->lock);
+
+  sinkpad = GST_PAD_CAST (g_object_new (GST_TYPE_CONCAT_PAD,
+          "name", pad_name, "direction", templ->direction, "template", templ,
+          NULL));
+  g_free (pad_name);
+
+  gst_pad_set_chain_function (sinkpad,
+      GST_DEBUG_FUNCPTR (gst_concat_sink_chain));
+  gst_pad_set_event_function (sinkpad,
+      GST_DEBUG_FUNCPTR (gst_concat_sink_event));
+  gst_pad_set_query_function (sinkpad,
+      GST_DEBUG_FUNCPTR (gst_concat_sink_query));
+  GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
+  GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
+
+  gst_pad_set_active (sinkpad, TRUE);
+
+  g_mutex_lock (&self->lock);
+  self->sinkpads = g_list_prepend (self->sinkpads, gst_object_ref (sinkpad));
+  if (!self->current_sinkpad)
+    self->current_sinkpad = gst_object_ref (sinkpad);
+  g_mutex_unlock (&self->lock);
+
+  gst_element_add_pad (element, sinkpad);
+
+  return sinkpad;
+}
+
+static void
+gst_concat_release_pad (GstElement * element, GstPad * pad)
+{
+  GstConcat *self = GST_CONCAT (element);
+  GstConcatPad *spad = GST_CONCAT_PAD_CAST (pad);
+  GList *l;
+  gboolean current_pad_removed = FALSE;
+  gboolean eos = FALSE;
+
+  GST_DEBUG_OBJECT (self, "releasing pad");
+
+  g_mutex_lock (&self->lock);
+  spad->flushing = TRUE;
+  g_cond_broadcast (&self->cond);
+  g_mutex_unlock (&self->lock);
+
+  gst_pad_set_active (pad, FALSE);
+
+  /* Now the pad is definitely not running anymore */
+
+  g_mutex_lock (&self->lock);
+  if (self->current_sinkpad == GST_PAD_CAST (spad)) {
+    eos = ! !gst_concat_switch_pad (self);
+    current_pad_removed = TRUE;
+  }
+
+  for (l = self->sinkpads; l; l = l->next) {
+    if ((gpointer) spad == l->data) {
+      gst_object_unref (spad);
+      self->sinkpads = g_list_delete_link (self->sinkpads, l);
+      break;
+    }
+  }
+  g_mutex_unlock (&self->lock);
+
+  gst_element_remove_pad (GST_ELEMENT_CAST (self), pad);
+
+  if (GST_STATE (self) > GST_STATE_READY) {
+    if (current_pad_removed && !eos)
+      gst_element_post_message (GST_ELEMENT_CAST (self),
+          gst_message_new_duration_changed (GST_OBJECT_CAST (self)));
+
+    /* FIXME: Sending EOS from application thread */
+    if (eos)
+      gst_pad_push_event (self->srcpad, gst_event_new_eos ());
+  }
+}
+
+/* Returns FALSE if flushing
+ * Must be called from the pad's streaming thread
+ */
+static gboolean
+gst_concat_pad_wait (GstConcatPad * spad, GstConcat * self)
+{
+  g_mutex_lock (&self->lock);
+  if (spad->flushing) {
+    g_mutex_unlock (&self->lock);
+    GST_DEBUG_OBJECT (spad, "Flushing");
+    return FALSE;
+  }
+
+  while (spad != GST_CONCAT_PAD_CAST (self->current_sinkpad)) {
+    GST_TRACE_OBJECT (spad, "Not the current sinkpad - waiting");
+    g_cond_wait (&self->cond, &self->lock);
+    if (spad->flushing) {
+      g_mutex_unlock (&self->lock);
+      GST_DEBUG_OBJECT (spad, "Flushing");
+      return FALSE;
+    }
+  }
+  /* This pad can only become not the current sinkpad from
+   * a) This streaming thread (we hold the stream lock)
+   * b) Releasing the pad (takes the stream lock, see above)
+   *
+   * Unlocking here is thus safe and we can safely push
+   * serialized data to our srcpad
+   */
+  GST_DEBUG_OBJECT (spad, "Now the current sinkpad");
+  g_mutex_unlock (&self->lock);
+
+  return TRUE;
+}
+
+static GstFlowReturn
+gst_concat_sink_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
+{
+  GstFlowReturn ret;
+  GstConcat *self = GST_CONCAT (parent);
+  GstConcatPad *spad = GST_CONCAT_PAD (pad);
+
+  GST_LOG_OBJECT (pad, "received buffer %p", buffer);
+
+  if (!gst_concat_pad_wait (spad, self))
+    return GST_FLOW_FLUSHING;
+
+  if (self->last_stop == GST_CLOCK_TIME_NONE)
+    self->last_stop = spad->segment.start;
+
+  if (self->format == GST_FORMAT_TIME) {
+    GstClockTime start_time = GST_BUFFER_TIMESTAMP (buffer);
+    GstClockTime end_time = GST_CLOCK_TIME_NONE;
+
+    if (start_time != GST_CLOCK_TIME_NONE)
+      end_time = start_time;
+    if (GST_BUFFER_DURATION_IS_VALID (buffer))
+      end_time += GST_BUFFER_DURATION (buffer);
+
+    if (end_time != GST_CLOCK_TIME_NONE && end_time > self->last_stop)
+      self->last_stop = end_time;
+  } else {
+    self->last_stop += gst_buffer_get_size (buffer);
+  }
+
+  ret = gst_pad_push (self->srcpad, buffer);
+
+  GST_LOG_OBJECT (pad, "handled buffer %s", gst_flow_get_name (ret));
+
+  return ret;
+}
+
+/* Returns FALSE if no further pad, must be called with concat lock */
+static gboolean
+gst_concat_switch_pad (GstConcat * self)
+{
+  GList *l;
+  gboolean next;
+  GstSegment segment;
+  gint64 last_stop;
+
+  segment = GST_CONCAT_PAD (self->current_sinkpad)->segment;
+
+  last_stop = self->last_stop;
+  if (last_stop == GST_CLOCK_TIME_NONE)
+    last_stop = segment.stop;
+  if (last_stop == GST_CLOCK_TIME_NONE)
+    last_stop = segment.start;
+  g_assert (last_stop != GST_CLOCK_TIME_NONE);
+
+  if (last_stop > segment.stop)
+    last_stop = segment.stop;
+
+  if (segment.format == GST_FORMAT_TIME)
+    last_stop =
+        gst_segment_to_running_time (&segment, segment.format, last_stop);
+  else
+    last_stop += segment.start;
+
+  self->current_start_offset += last_stop;
+
+  for (l = self->sinkpads; l; l = l->next) {
+    if ((gpointer) self->current_sinkpad == l->data) {
+      l = l->prev;
+      GST_DEBUG_OBJECT (self,
+          "Switching from pad %" GST_PTR_FORMAT " to %" GST_PTR_FORMAT,
+          self->current_sinkpad, l ? l->data : NULL);
+      gst_object_unref (self->current_sinkpad);
+      self->current_sinkpad = l ? gst_object_ref (l->data) : NULL;
+      g_cond_broadcast (&self->cond);
+      break;
+    }
+  }
+
+  next = self->current_sinkpad != NULL;
+
+  self->last_stop = GST_CLOCK_TIME_NONE;
+
+  return next;
+}
+
+static gboolean
+gst_concat_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  GstConcat *self = GST_CONCAT (parent);
+  GstConcatPad *spad = GST_CONCAT_PAD_CAST (pad);
+  gboolean ret = TRUE;
+
+  GST_LOG_OBJECT (pad, "received event %" GST_PTR_FORMAT, event);
+
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_STREAM_START:{
+      if (!gst_concat_pad_wait (spad, self)) {
+        ret = FALSE;
+        gst_event_unref (event);
+      } else {
+        ret = gst_pad_event_default (pad, parent, event);
+      }
+      break;
+    }
+    case GST_EVENT_SEGMENT:{
+      /* Drop segment event, we create our own one */
+      gst_event_copy_segment (event, &spad->segment);
+      gst_event_unref (event);
+
+      g_mutex_lock (&self->lock);
+      if (self->format == GST_FORMAT_UNDEFINED) {
+        if (spad->segment.format != GST_FORMAT_TIME
+            && spad->segment.format != GST_FORMAT_BYTES) {
+          g_mutex_unlock (&self->lock);
+          GST_ELEMENT_ERROR (self, CORE, FAILED, (NULL),
+              ("Can only operate in TIME or BYTES format"));
+          ret = FALSE;
+          break;
+        }
+        self->format = spad->segment.format;
+        GST_DEBUG_OBJECT (self, "Operating in %s format",
+            gst_format_get_name (self->format));
+        g_mutex_unlock (&self->lock);
+      } else if (self->format != spad->segment.format) {
+        g_mutex_unlock (&self->lock);
+        GST_ELEMENT_ERROR (self, CORE, FAILED, (NULL),
+            ("Operating in %s format but new pad has %s",
+                gst_format_get_name (self->format),
+                gst_format_get_name (spad->segment.format)));
+        ret = FALSE;
+      } else {
+        g_mutex_unlock (&self->lock);
+      }
+
+      if (!gst_concat_pad_wait (spad, self)) {
+        ret = FALSE;
+      } else {
+        GstSegment segment = spad->segment;
+
+        /* We know no duration */
+        segment.duration = -1;
+
+        /* Update segment values to be continous with last stream */
+        if (self->format == GST_FORMAT_TIME) {
+          segment.base += self->current_start_offset;
+        } else {
+          /* Shift start/stop byte position */
+          segment.start += self->current_start_offset;
+          if (segment.stop != -1)
+            segment.stop += self->current_start_offset;
+        }
+        gst_pad_push_event (self->srcpad, gst_event_new_segment (&segment));
+      }
+      break;
+    }
+    case GST_EVENT_EOS:{
+      gst_event_unref (event);
+      if (!gst_concat_pad_wait (spad, self)) {
+        ret = FALSE;
+      } else {
+        gboolean next;
+
+        g_mutex_lock (&self->lock);
+        next = gst_concat_switch_pad (self);
+        g_mutex_unlock (&self->lock);
+        ret = TRUE;
+
+        if (!next) {
+          gst_pad_push_event (self->srcpad, gst_event_new_eos ());
+        } else {
+          gst_element_post_message (GST_ELEMENT_CAST (self),
+              gst_message_new_duration_changed (GST_OBJECT_CAST (self)));
+        }
+      }
+      break;
+    }
+    case GST_EVENT_FLUSH_START:{
+      g_mutex_lock (&self->lock);
+      spad->flushing = TRUE;
+      g_cond_broadcast (&self->cond);
+      g_mutex_unlock (&self->lock);
+      break;
+    }
+    case GST_EVENT_FLUSH_STOP:{
+      gst_segment_init (&spad->segment, GST_FORMAT_UNDEFINED);
+      spad->flushing = FALSE;
+      break;
+    }
+    default:{
+      /* Wait for other serialized events before forwarding */
+      if (GST_EVENT_IS_SERIALIZED (event) && !gst_concat_pad_wait (spad, self)) {
+        gst_event_unref (event);
+        ret = FALSE;
+      } else {
+        ret = gst_pad_event_default (pad, parent, event);
+      }
+      break;
+    }
+  }
+
+  return ret;
+}
+
+static gboolean
+gst_concat_sink_query (GstPad * pad, GstObject * parent, GstQuery * query)
+{
+  GstConcat *self = GST_CONCAT (parent);
+  GstConcatPad *spad = GST_CONCAT_PAD_CAST (pad);
+  gboolean ret = TRUE;
+
+  GST_LOG_OBJECT (pad, "received query %" GST_PTR_FORMAT, query);
+
+  switch (GST_QUERY_TYPE (query)) {
+    default:
+      /* Wait for other serialized queries before forwarding */
+      if (GST_QUERY_IS_SERIALIZED (query) && !gst_concat_pad_wait (spad, self)) {
+        ret = FALSE;
+      } else {
+        ret = gst_pad_query_default (pad, parent, query);
+      }
+      break;
+  }
+
+  return ret;
+}
+
+static gboolean
+gst_concat_src_event (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  GstConcat *self = GST_CONCAT (parent);
+  gboolean ret = TRUE;
+
+  GST_LOG_OBJECT (pad, "received event %" GST_PTR_FORMAT, event);
+
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_SEEK:{
+      GstPad *sinkpad = NULL;
+
+      g_mutex_lock (&self->lock);
+      if ((sinkpad = self->current_sinkpad))
+        gst_object_ref (sinkpad);
+      g_mutex_unlock (&self->lock);
+      if (sinkpad) {
+        ret = gst_pad_push_event (sinkpad, event);
+        gst_object_unref (sinkpad);
+      } else {
+        gst_event_unref (event);
+        ret = FALSE;
+      }
+      break;
+    }
+    case GST_EVENT_QOS:{
+      GstQOSType type;
+      GstClockTimeDiff diff;
+      GstClockTime timestamp;
+      gdouble proportion;
+
+      gst_event_parse_qos (event, &type, &proportion, &diff, &timestamp);
+      gst_event_unref (event);
+
+      if (timestamp != GST_CLOCK_TIME_NONE
+          && timestamp > self->current_start_offset) {
+        timestamp -= self->current_start_offset;
+        event = gst_event_new_qos (type, proportion, diff, timestamp);
+        ret = gst_pad_push_event (self->current_sinkpad, event);
+      } else {
+        ret = FALSE;
+      }
+      break;
+    }
+    default:
+      ret = gst_pad_event_default (pad, parent, event);
+      break;
+  }
+
+  return ret;
+}
+
+static gboolean
+gst_concat_src_query (GstPad * pad, GstObject * parent, GstQuery * query)
+{
+  gboolean ret = TRUE;
+
+  GST_LOG_OBJECT (pad, "received query %" GST_PTR_FORMAT, query);
+
+  switch (GST_QUERY_TYPE (query)) {
+    default:
+      ret = gst_pad_query_default (pad, parent, query);
+      break;
+  }
+
+  return ret;
+}
+
+static void
+reset_pad (const GValue * data, gpointer user_data)
+{
+  GstPad *pad = g_value_get_object (data);
+  GstConcatPad *spad = GST_CONCAT_PAD_CAST (pad);
+
+  gst_segment_init (&spad->segment, GST_FORMAT_UNDEFINED);
+  spad->flushing = FALSE;
+}
+
+static void
+unblock_pad (const GValue * data, gpointer user_data)
+{
+  GstPad *pad = g_value_get_object (data);
+  GstConcatPad *spad = GST_CONCAT_PAD_CAST (pad);
+
+  spad->flushing = TRUE;
+}
+
+static GstStateChangeReturn
+gst_concat_change_state (GstElement * element, GstStateChange transition)
+{
+  GstConcat *self = GST_CONCAT (element);
+  GstStateChangeReturn ret;
+
+  switch (transition) {
+    case GST_STATE_CHANGE_READY_TO_PAUSED:{
+      self->format = GST_FORMAT_UNDEFINED;
+      self->current_start_offset = 0;
+      self->last_stop = GST_CLOCK_TIME_NONE;
+      break;
+    }
+    case GST_STATE_CHANGE_PAUSED_TO_READY:{
+      GstIterator *iter = gst_element_iterate_sink_pads (element);
+      GstIteratorResult res;
+
+      g_mutex_lock (&self->lock);
+      do {
+        res = gst_iterator_foreach (iter, unblock_pad, NULL);
+      } while (res == GST_ITERATOR_RESYNC);
+
+      gst_iterator_free (iter);
+      g_cond_broadcast (&self->cond);
+      g_mutex_unlock (&self->lock);
+
+      if (res == GST_ITERATOR_ERROR)
+        return GST_STATE_CHANGE_FAILURE;
+
+      break;
+    }
+    default:
+      break;
+  }
+
+  ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
+  if (ret == GST_STATE_CHANGE_FAILURE)
+    return ret;
+
+  switch (transition) {
+    case GST_STATE_CHANGE_PAUSED_TO_READY:{
+      GstIterator *iter = gst_element_iterate_sink_pads (element);
+      GstIteratorResult res;
+
+      do {
+        res = gst_iterator_foreach (iter, reset_pad, NULL);
+      } while (res == GST_ITERATOR_RESYNC);
+
+      gst_iterator_free (iter);
+
+      if (res == GST_ITERATOR_ERROR)
+        return GST_STATE_CHANGE_FAILURE;
+
+      break;
+    }
+    default:
+      break;
+  }
+
+  return ret;
+}
diff --git a/plugins/elements/gstconcat.h b/plugins/elements/gstconcat.h
new file mode 100644
index 0000000..176e22a
--- /dev/null
+++ b/plugins/elements/gstconcat.h
@@ -0,0 +1,73 @@
+/* GStreamer concat element
+ *
+ *  Copyright (c) 2014 Sebastian Dröge <sebastian@centricular.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef __GST_CONCAT_H__
+#define __GST_CONCAT_H__
+
+#include <gst/gst.h>
+
+G_BEGIN_DECLS
+
+#define GST_TYPE_CONCAT (gst_concat_get_type())
+#define GST_CONCAT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_CONCAT, GstConcat))
+#define GST_CONCAT_CAST(obj) ((GstConcat*)obj)
+#define GST_CONCAT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_CONCAT,GstConcatClass))
+#define GST_IS_CONCAT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_CONCAT))
+#define GST_IS_CONCAT_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_CONCAT))
+
+typedef struct _GstConcat GstConcat;
+typedef struct _GstConcatClass GstConcatClass;
+
+/**
+ * GstConcat:
+ *
+ * The private concat structure
+ */
+struct _GstConcat
+{
+  /*< private >*/
+  GstElement parent;
+
+  GMutex lock;
+  GCond cond;
+  GList *sinkpads; /* Last is earliest */
+  GstPad *current_sinkpad;
+  GstPad *srcpad;
+  guint pad_count;
+
+  /* Format we're operating in */
+  GstFormat format;
+  /* In format, running time or accumulated byte offset */
+  guint64 current_start_offset;
+  /* Between current pad's segment start and stop */
+  guint64 last_stop;
+};
+
+struct _GstConcatClass
+{
+  GstElementClass parent_class;
+};
+
+G_GNUC_INTERNAL GType gst_concat_get_type (void);
+
+G_END_DECLS
+
+#endif /* __GST_CONCAT_H__ */
diff --git a/plugins/elements/gstdownloadbuffer.c b/plugins/elements/gstdownloadbuffer.c
index db3be22..e31633f 100644
--- a/plugins/elements/gstdownloadbuffer.c
+++ b/plugins/elements/gstdownloadbuffer.c
@@ -225,11 +225,13 @@
       g_param_spec_uint ("max-size-bytes", "Max. size (kB)",
           "Max. amount of data to buffer (bytes, 0=disable)",
           0, G_MAXUINT, DEFAULT_MAX_SIZE_BYTES,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_TIME,
       g_param_spec_uint64 ("max-size-time", "Max. size (ns)",
           "Max. amount of data to buffer (in ns, 0=disable)", 0, G_MAXUINT64,
-          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   g_object_class_install_property (gobject_class, PROP_LOW_PERCENT,
       g_param_spec_int ("low-percent", "Low percent",
diff --git a/plugins/elements/gstelements.c b/plugins/elements/gstelements.c
index 93d3a9a..5c07855 100644
--- a/plugins/elements/gstelements.c
+++ b/plugins/elements/gstelements.c
@@ -28,6 +28,7 @@
 #include <gst/gst.h>
 
 #include "gstcapsfilter.h"
+#include "gstconcat.h"
 #include "gstdownloadbuffer.h"
 #include "gstfakesink.h"
 #include "gstfakesrc.h"
@@ -45,6 +46,7 @@
 #include "gsttee.h"
 #include "gsttypefindelement.h"
 #include "gstvalve.h"
+#include "gststreamiddemux.h"
 
 static gboolean
 plugin_init (GstPlugin * plugin)
@@ -52,6 +54,9 @@
   if (!gst_element_register (plugin, "capsfilter", GST_RANK_NONE,
           gst_capsfilter_get_type ()))
     return FALSE;
+  if (!gst_element_register (plugin, "concat", GST_RANK_NONE,
+          gst_concat_get_type ()))
+    return FALSE;
   if (!gst_element_register (plugin, "downloadbuffer", GST_RANK_NONE,
           gst_download_buffer_get_type ()))
     return FALSE;
@@ -105,6 +110,10 @@
           gst_valve_get_type ()))
     return FALSE;
 
+  if (!gst_element_register (plugin, "streamiddemux", GST_RANK_PRIMARY,
+          gst_streamid_demux_get_type ()))
+    return FALSE;
+
   return TRUE;
 }
 
diff --git a/plugins/elements/gstelements_private.c b/plugins/elements/gstelements_private.c
index 6c304b4..fe6d663 100644
--- a/plugins/elements/gstelements_private.c
+++ b/plugins/elements/gstelements_private.c
@@ -1,4 +1,7 @@
 /* GStreamer
+ * Copyright (C) 2011 David Schleef <ds@schleef.org>
+ * Copyright (C) 2011 Tim-Philipp Müller <tim.muller@collabora.co.uk>
+ * Copyright (C) 2014 Tim-Philipp Müller <tim@centricular.com>
  * Copyright (C) 2014 Vincent Penquerc'h <vincent@collabora.co.uk>
  *
  * gstelements_private.c: Shared code for core elements
@@ -22,43 +25,55 @@
 #ifdef HAVE_CONFIG_H
 # include "config.h"
 #endif
+#include <stdio.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_UIO_H
+#include <sys/uio.h>
+#endif
+#include <errno.h>
+#include <string.h>
 #include <string.h>
 #include "gst/gst.h"
 #include "gstelements_private.h"
 
-/**
- * gst_buffer_get_flags_string:
- * @buffer: a #GstBuffer
- * Returns: A newly allocated string
- *
- * Returns a newly allocated string describing the flags on this buffer.
- * The string must be freed using g_free() when done.
- *
- * Since: 1.4
- */
+#ifdef G_OS_WIN32
+#  define WIN32_LEAN_AND_MEAN   /* prevents from including too many things */
+#  include <windows.h>
+#  undef WIN32_LEAN_AND_MEAN
+#  ifndef EWOULDBLOCK
+#  define EWOULDBLOCK EAGAIN
+#  endif
+#endif /* G_OS_WIN32 */
 
+#define BUFFER_FLAG_SHIFT 4
+
+G_STATIC_ASSERT ((1 << BUFFER_FLAG_SHIFT) == GST_MINI_OBJECT_FLAG_LAST);
+
+/* Returns a newly allocated string describing the flags on this buffer */
 char *
 gst_buffer_get_flags_string (GstBuffer * buffer)
 {
-  static const char *const flag_list[] = {
-    "", "", "", "", "live", "decode-only", "discont", "resync", "corrupted",
-    "marker", "header", "gap", "droppable", "delta-unit", "tag-memory",
-    "FIXME"
+  static const char flag_strings[] =
+      "\000\000\000\000live\000decode-only\000discont\000resync\000corrupted\000"
+      "marker\000header\000gap\000droppable\000delta-unit\000tag-memory\000"
+      "FIXME";
+  static const guint8 flag_idx[] = { 0, 1, 2, 3, 4, 9, 21, 29, 36, 46, 53,
+    60, 64, 74, 85, 96
   };
   int i, max_bytes;
   char *flag_str, *end;
 
-  max_bytes = 1;                /* NUL */
-  for (i = 0; i < G_N_ELEMENTS (flag_list); i++) {
-    max_bytes += strlen (flag_list[i]) + 1;     /* string and space */
-  }
+  /* max size is all flag strings plus a space or terminator after each one */
+  max_bytes = sizeof (flag_strings);
   flag_str = g_malloc (max_bytes);
 
   end = flag_str;
   end[0] = '\0';
-  for (i = 0; i < G_N_ELEMENTS (flag_list); i++) {
+  for (i = BUFFER_FLAG_SHIFT; i < G_N_ELEMENTS (flag_idx); i++) {
     if (GST_MINI_OBJECT_CAST (buffer)->flags & (1 << i)) {
-      strcpy (end, flag_list[i]);
+      strcpy (end, flag_strings + flag_idx[i]);
       end += strlen (end);
       end[0] = ' ';
       end[1] = '\0';
@@ -68,3 +83,235 @@
 
   return flag_str;
 }
+
+/* Define our own iovec structure here, so that we can use it unconditionally
+ * in the code below and use almost the same code path for systems where
+ * writev() is supported and those were it's not supported */
+#ifndef HAVE_SYS_UIO_H
+struct iovec
+{
+  gpointer iov_base;
+  gsize iov_len;
+};
+#endif
+
+/* completely arbitrary thresholds */
+#define FDSINK_MAX_ALLOCA_SIZE (64 * 1024)      /* 64k */
+#define FDSINK_MAX_MALLOC_SIZE ( 8 * 1024 * 1024)       /*  8M */
+
+static gssize
+gst_writev (gint fd, const struct iovec *iov, gint iovcnt, gsize total_bytes)
+{
+  gssize written;
+
+#ifdef HAVE_SYS_UIO_H
+  if (TRUE) {
+    do {
+      written = writev (fd, iov, iovcnt);
+    } while (written < 0 && errno == EINTR);
+  } else
+#endif
+  {
+    gint i;
+
+    /* We merge the memories here because technically write()/writev() is
+     * supposed to be atomic, which it's not if we do multiple separate
+     * write() calls. It's very doubtful anyone cares though in our use
+     * cases, and it's not clear how that can be reconciled with the
+     * possibility of short writes, so in any case we might want to
+     * simplify this later or just remove it. */
+    if (total_bytes <= FDSINK_MAX_MALLOC_SIZE) {
+      gchar *mem, *p;
+
+      if (total_bytes <= FDSINK_MAX_ALLOCA_SIZE)
+        mem = g_alloca (total_bytes);
+      else
+        mem = g_malloc (total_bytes);
+
+      p = mem;
+      for (i = 0; i < iovcnt; ++i) {
+        memcpy (p, iov[i].iov_base, iov[i].iov_len);
+        p += iov[i].iov_len;
+      }
+
+      do {
+        written = write (fd, mem, total_bytes);
+      } while (written < 0 && errno == EINTR);
+
+      if (total_bytes > FDSINK_MAX_ALLOCA_SIZE)
+        g_free (mem);
+    } else {
+      gssize ret;
+
+      written = 0;
+      for (i = 0; i < iovcnt; ++i) {
+        do {
+          ret = write (fd, iov[i].iov_base, iov[i].iov_len);
+        } while (ret < 0 && errno == EINTR);
+        if (ret > 0)
+          written += ret;
+        if (ret != iov[i].iov_len)
+          break;
+      }
+    }
+  }
+
+  return written;
+}
+
+static gsize
+fill_vectors (struct iovec *vecs, GstMapInfo * maps, guint n, GstBuffer * buf)
+{
+  GstMemory *mem;
+  gsize size = 0;
+  guint i;
+
+  g_assert (gst_buffer_n_memory (buf) == n);
+
+  for (i = 0; i < n; ++i) {
+    mem = gst_buffer_peek_memory (buf, i);
+    if (gst_memory_map (mem, &maps[i], GST_MAP_READ)) {
+      vecs[i].iov_base = maps[i].data;
+      vecs[i].iov_len = maps[i].size;
+    } else {
+      GST_WARNING ("Failed to map memory %p for reading", mem);
+      vecs[i].iov_base = (void *) "";
+      vecs[i].iov_len = 0;
+    }
+    size += vecs[i].iov_len;
+  }
+
+  return size;
+}
+
+GstFlowReturn
+gst_writev_buffers (GstObject * sink, gint fd, GstPoll * fdset,
+    GstBuffer ** buffers, guint num_buffers, guint8 * mem_nums,
+    guint total_mem_num, guint64 * total_written, guint64 * cur_pos)
+{
+  struct iovec *vecs;
+  GstMapInfo *map_infos;
+  GstFlowReturn flow_ret;
+  gsize size = 0;
+  guint i, j;
+
+  GST_LOG_OBJECT (sink, "%u buffers, %u memories", num_buffers, total_mem_num);
+
+  vecs = g_newa (struct iovec, total_mem_num);
+  map_infos = g_newa (GstMapInfo, total_mem_num);
+
+  /* populate output vectors */
+  for (i = 0, j = 0; i < num_buffers; ++i) {
+    size += fill_vectors (&vecs[j], &map_infos[j], mem_nums[i], buffers[i]);
+    j += mem_nums[i];
+  }
+
+  /* now write it all out! */
+  {
+    gssize ret, left;
+    guint n_vecs = total_mem_num;
+
+    left = size;
+    do {
+#ifndef HAVE_WIN32
+      if (fdset != NULL) {
+        do {
+          GST_DEBUG_OBJECT (sink, "going into select, have %" G_GSSIZE_FORMAT
+              " bytes to write", left);
+          ret = gst_poll_wait (fdset, GST_CLOCK_TIME_NONE);
+        } while (ret == -1 && (errno == EINTR || errno == EAGAIN));
+
+        if (ret == -1) {
+          if (errno == EBUSY)
+            goto stopped;
+          else
+            goto select_error;
+        }
+      }
+#endif
+
+      ret = gst_writev (fd, vecs, n_vecs, left);
+
+      if (ret > 0) {
+        if (total_written)
+          *total_written += ret;
+        if (cur_pos)
+          *cur_pos += ret;
+      }
+
+      if (ret == left)
+        break;
+
+      if (ret < 0 && (errno == EAGAIN || errno == EWOULDBLOCK)) {
+        /* do nothing, try again */
+      } else if (ret < 0) {
+        goto write_error;
+      } else if (ret < left) {
+        /* skip vectors that have been written in full */
+        while (ret >= vecs[0].iov_len) {
+          ret -= vecs[0].iov_len;
+          left -= vecs[0].iov_len;
+          ++vecs;
+          --n_vecs;
+        }
+        g_assert (n_vecs > 0);
+        /* skip partially written vector data */
+        if (ret > 0) {
+          vecs[0].iov_len -= ret;
+          vecs[0].iov_base = ((guint8 *) vecs[0].iov_base) + ret;
+          left -= ret;
+        }
+      }
+#ifdef HAVE_WIN32
+      /* do short sleep on windows where we don't use gst_poll(),
+       * to avoid excessive busy looping */
+      if (fdset != NULL)
+        g_usleep (1000);
+#endif
+
+    }
+    while (left > 0);
+  }
+
+  flow_ret = GST_FLOW_OK;
+
+out:
+
+  for (i = 0; i < total_mem_num; ++i)
+    gst_memory_unmap (map_infos[i].memory, &map_infos[i]);
+
+  return flow_ret;
+
+/* ERRORS */
+#ifndef HAVE_WIN32
+select_error:
+  {
+    GST_ELEMENT_ERROR (sink, RESOURCE, READ, (NULL),
+        ("select on file descriptor: %s", g_strerror (errno)));
+    GST_DEBUG_OBJECT (sink, "Error during select: %s", g_strerror (errno));
+    flow_ret = GST_FLOW_ERROR;
+    goto out;
+  }
+stopped:
+  {
+    GST_DEBUG_OBJECT (sink, "Select stopped");
+    flow_ret = GST_FLOW_FLUSHING;
+    goto out;
+  }
+#endif
+write_error:
+  {
+    switch (errno) {
+      case ENOSPC:
+        GST_ELEMENT_ERROR (sink, RESOURCE, NO_SPACE_LEFT, (NULL), (NULL));
+        break;
+      default:{
+        GST_ELEMENT_ERROR (sink, RESOURCE, WRITE, (NULL),
+            ("Error while writing to file descriptor %d: %s",
+                fd, g_strerror (errno)));
+      }
+    }
+    flow_ret = GST_FLOW_ERROR;
+    goto out;
+  }
+}
diff --git a/plugins/elements/gstelements_private.h b/plugins/elements/gstelements_private.h
index 9ccae1b..469b3b8 100644
--- a/plugins/elements/gstelements_private.h
+++ b/plugins/elements/gstelements_private.h
@@ -30,6 +30,12 @@
 G_GNUC_INTERNAL
 char *    gst_buffer_get_flags_string                   (GstBuffer *buffer);
 
+G_GNUC_INTERNAL
+GstFlowReturn  gst_writev_buffers (GstObject * sink, gint fd, GstPoll * fdset,
+                                   GstBuffer ** buffers, guint num_buffers,
+                                   guint8 * mem_nums, guint total_mem_num,
+                                   guint64 * total_written, guint64 * cur_pos);
+
 G_END_DECLS
 
 #endif /* __GST_ELEMENTS_PRIVATE_H__ */
diff --git a/plugins/elements/gstfakesink.c b/plugins/elements/gstfakesink.c
index dde0fce..9eb74c6 100644
--- a/plugins/elements/gstfakesink.c
+++ b/plugins/elements/gstfakesink.c
@@ -168,10 +168,12 @@
   g_object_class_install_property (gobject_class, PROP_SILENT,
       g_param_spec_boolean ("silent", "Silent",
           "Don't produce last_message events", DEFAULT_SILENT,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_DUMP,
       g_param_spec_boolean ("dump", "Dump", "Dump buffer contents to stdout",
-          DEFAULT_DUMP, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_DUMP, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class,
       PROP_CAN_ACTIVATE_PUSH,
       g_param_spec_boolean ("can-activate-push", "Can activate push",
diff --git a/plugins/elements/gstfakesrc.c b/plugins/elements/gstfakesrc.c
index 7b03cf5..62434bb 100644
--- a/plugins/elements/gstfakesrc.c
+++ b/plugins/elements/gstfakesrc.c
@@ -279,9 +279,10 @@
   g_object_class_install_property (gobject_class, PROP_SYNC,
       g_param_spec_boolean ("sync", "Sync", "Sync to the clock to the datarate",
           DEFAULT_SYNC, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+  /*  FIXME 2.0: Remove unused pattern property. Not implemented */
   g_object_class_install_property (gobject_class, PROP_PATTERN,
-      g_param_spec_string ("pattern", "pattern", "pattern", DEFAULT_PATTERN,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+      g_param_spec_string ("pattern", "pattern", "Set the pattern (unused)",
+          DEFAULT_PATTERN, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
   pspec_last_message = g_param_spec_string ("last-message", "last-message",
       "The last status message", NULL,
       G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
@@ -555,7 +556,6 @@
       g_value_set_boolean (value, src->sync);
       break;
     case PROP_PATTERN:
-      g_value_set_string (value, src->pattern);
       break;
     case PROP_SILENT:
       g_value_set_boolean (value, src->silent);
diff --git a/plugins/elements/gstfakesrc.h b/plugins/elements/gstfakesrc.h
index e4acb9c..5190ee8 100644
--- a/plugins/elements/gstfakesrc.h
+++ b/plugins/elements/gstfakesrc.h
@@ -134,7 +134,6 @@
   guint		parentsize;
   guint		parentoffset;
   guint8	 pattern_byte;
-  gchar		*pattern;
   GList		*patternlist;
   gint		 datarate;
   gboolean	 sync;
diff --git a/plugins/elements/gstfdsink.c b/plugins/elements/gstfdsink.c
index d7b9e88..fb65ac6 100644
--- a/plugins/elements/gstfdsink.c
+++ b/plugins/elements/gstfdsink.c
@@ -58,6 +58,7 @@
 #include <string.h>
 
 #include "gstfdsink.h"
+#include "gstelements_private.h"
 
 #ifdef G_OS_WIN32
 #include <io.h>                 /* lseek, open, close, read */
@@ -107,6 +108,8 @@
 static gboolean gst_fd_sink_query (GstBaseSink * bsink, GstQuery * query);
 static GstFlowReturn gst_fd_sink_render (GstBaseSink * sink,
     GstBuffer * buffer);
+static GstFlowReturn gst_fd_sink_render_list (GstBaseSink * bsink,
+    GstBufferList * buffer_list);
 static gboolean gst_fd_sink_start (GstBaseSink * basesink);
 static gboolean gst_fd_sink_stop (GstBaseSink * basesink);
 static gboolean gst_fd_sink_unlock (GstBaseSink * basesink);
@@ -138,6 +141,7 @@
       gst_static_pad_template_get (&sinktemplate));
 
   gstbasesink_class->render = GST_DEBUG_FUNCPTR (gst_fd_sink_render);
+  gstbasesink_class->render_list = GST_DEBUG_FUNCPTR (gst_fd_sink_render_list);
   gstbasesink_class->start = GST_DEBUG_FUNCPTR (gst_fd_sink_start);
   gstbasesink_class->stop = GST_DEBUG_FUNCPTR (gst_fd_sink_stop);
   gstbasesink_class->unlock = GST_DEBUG_FUNCPTR (gst_fd_sink_unlock);
@@ -228,107 +232,69 @@
 }
 
 static GstFlowReturn
-gst_fd_sink_render (GstBaseSink * sink, GstBuffer * buffer)
+gst_fd_sink_render_buffers (GstFdSink * sink, GstBuffer ** buffers,
+    guint num_buffers, guint8 * mem_nums, guint total_mems)
 {
-  GstFdSink *fdsink;
-  GstMapInfo info;
-  guint8 *ptr;
-  gsize left;
-  gint written;
+  return gst_writev_buffers (GST_OBJECT_CAST (sink), sink->fd, sink->fdset,
+      buffers, num_buffers, mem_nums, total_mems, &sink->bytes_written,
+      &sink->current_pos);
+}
 
-#ifndef HAVE_WIN32
-  gint retval;
-#endif
+static GstFlowReturn
+gst_fd_sink_render_list (GstBaseSink * bsink, GstBufferList * buffer_list)
+{
+  GstFlowReturn flow;
+  GstBuffer **buffers;
+  GstFdSink *sink;
+  guint8 *mem_nums;
+  guint total_mems;
+  guint i, num_buffers;
 
-  fdsink = GST_FD_SINK (sink);
+  sink = GST_FD_SINK_CAST (bsink);
 
-  g_return_val_if_fail (fdsink->fd >= 0, GST_FLOW_ERROR);
+  num_buffers = gst_buffer_list_length (buffer_list);
+  if (num_buffers == 0)
+    goto no_data;
 
-  gst_buffer_map (buffer, &info, GST_MAP_READ);
-
-  ptr = info.data;
-  left = info.size;
-
-again:
-#ifndef HAVE_WIN32
-  do {
-    GST_DEBUG_OBJECT (fdsink, "going into select, have %" G_GSIZE_FORMAT
-        " bytes to write", info.size);
-    retval = gst_poll_wait (fdsink->fdset, GST_CLOCK_TIME_NONE);
-  } while (retval == -1 && (errno == EINTR || errno == EAGAIN));
-
-  if (retval == -1) {
-    if (errno == EBUSY)
-      goto stopped;
-    else
-      goto select_error;
-  }
-#endif
-
-  GST_DEBUG_OBJECT (fdsink, "writing %" G_GSIZE_FORMAT " bytes to"
-      " file descriptor %d", info.size, fdsink->fd);
-
-  written = write (fdsink->fd, ptr, left);
-
-  /* check for errors */
-  if (G_UNLIKELY (written < 0)) {
-    /* try to write again on non-fatal errors */
-    if (errno == EAGAIN || errno == EINTR)
-      goto again;
-
-    /* else go to our error handler */
-    goto write_error;
+  /* extract buffers from list and count memories */
+  buffers = g_newa (GstBuffer *, num_buffers);
+  mem_nums = g_newa (guint8, num_buffers);
+  for (i = 0, total_mems = 0; i < num_buffers; ++i) {
+    buffers[i] = gst_buffer_list_get (buffer_list, i);
+    mem_nums[i] = gst_buffer_n_memory (buffers[i]);
+    total_mems += mem_nums[i];
   }
 
-  /* all is fine when we get here */
-  left -= written;
-  ptr += written;
-  fdsink->bytes_written += written;
-  fdsink->current_pos += written;
+  flow =
+      gst_fd_sink_render_buffers (sink, buffers, num_buffers, mem_nums,
+      total_mems);
 
-  GST_DEBUG_OBJECT (fdsink, "wrote %d bytes, %" G_GSIZE_FORMAT " left", written,
-      left);
+  return flow;
 
-  /* short write, select and try to write the remainder */
-  if (G_UNLIKELY (left > 0))
-    goto again;
-
-  gst_buffer_unmap (buffer, &info);
-
-  return GST_FLOW_OK;
-
-#ifndef HAVE_WIN32
-select_error:
+no_data:
   {
-    GST_ELEMENT_ERROR (fdsink, RESOURCE, READ, (NULL),
-        ("select on file descriptor: %s.", g_strerror (errno)));
-    GST_DEBUG_OBJECT (fdsink, "Error during select");
-    gst_buffer_unmap (buffer, &info);
-    return GST_FLOW_ERROR;
+    GST_LOG_OBJECT (sink, "empty buffer list");
+    return GST_FLOW_OK;
   }
-stopped:
-  {
-    GST_DEBUG_OBJECT (fdsink, "Select stopped");
-    gst_buffer_unmap (buffer, &info);
-    return GST_FLOW_FLUSHING;
-  }
-#endif
+}
 
-write_error:
-  {
-    switch (errno) {
-      case ENOSPC:
-        GST_ELEMENT_ERROR (fdsink, RESOURCE, NO_SPACE_LEFT, (NULL), (NULL));
-        break;
-      default:{
-        GST_ELEMENT_ERROR (fdsink, RESOURCE, WRITE, (NULL),
-            ("Error while writing to file descriptor %d: %s",
-                fdsink->fd, g_strerror (errno)));
-      }
-    }
-    gst_buffer_unmap (buffer, &info);
-    return GST_FLOW_ERROR;
-  }
+static GstFlowReturn
+gst_fd_sink_render (GstBaseSink * bsink, GstBuffer * buffer)
+{
+  GstFlowReturn flow;
+  GstFdSink *sink;
+  guint8 n_mem;
+
+  sink = GST_FD_SINK_CAST (bsink);
+
+  n_mem = gst_buffer_n_memory (buffer);
+
+  if (n_mem > 0)
+    flow = gst_fd_sink_render_buffers (sink, &buffer, 1, &n_mem, n_mem);
+  else
+    flow = GST_FLOW_OK;
+
+  return flow;
 }
 
 static gboolean
diff --git a/plugins/elements/gstfdsink.h b/plugins/elements/gstfdsink.h
index 3d7ee31..66a2340 100644
--- a/plugins/elements/gstfdsink.h
+++ b/plugins/elements/gstfdsink.h
@@ -40,6 +40,7 @@
   (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FD_SINK))
 #define GST_IS_FD_SINK_CLASS(klass) \
   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FD_SINK))
+#define GST_FD_SINK_CAST(obj) ((GstFdSink *)(obj))
 
 typedef struct _GstFdSink GstFdSink;
 typedef struct _GstFdSinkClass GstFdSinkClass;
diff --git a/plugins/elements/gstfdsrc.c b/plugins/elements/gstfdsrc.c
index ec7cc35..8058328 100644
--- a/plugins/elements/gstfdsrc.c
+++ b/plugins/elements/gstfdsrc.c
@@ -631,21 +631,28 @@
 
   protocol = gst_uri_get_protocol (uri);
   if (strcmp (protocol, "fd") != 0) {
+    g_set_error (err, GST_URI_ERROR, GST_URI_ERROR_BAD_URI,
+        "Wrong protocol for fdsrc in uri: '%s'", uri);
     g_free (protocol);
     return FALSE;
   }
   g_free (protocol);
 
-  if (sscanf (uri, "fd://%d", &fd) != 1 || fd < 0)
+  if (sscanf (uri, "fd://%d", &fd) != 1 || fd < 0) {
+    g_set_error (err, GST_URI_ERROR, GST_URI_ERROR_BAD_URI,
+        "Bad file descriptor number in uri: '%s'", uri);
     return FALSE;
+  }
 
   if ((q = g_strstr_len (uri, -1, "?"))) {
-    gchar *sp;
+    gchar *sp, *end = NULL;
 
     GST_INFO_OBJECT (src, "found ?");
 
     if ((sp = g_strstr_len (q, -1, "size="))) {
-      if (sscanf (sp, "size=%" G_GUINT64_FORMAT, &size) != 1) {
+      sp += strlen ("size=");
+      size = g_ascii_strtoull (sp, &end, 10);
+      if ((size == 0 && errno == EINVAL) || size == G_MAXUINT64 || end == sp) {
         GST_INFO_OBJECT (src, "parsing size failed");
         size = -1;
       } else {
diff --git a/plugins/elements/gstfilesink.c b/plugins/elements/gstfilesink.c
index 470ad5e..c13cac7 100644
--- a/plugins/elements/gstfilesink.c
+++ b/plugins/elements/gstfilesink.c
@@ -68,6 +68,8 @@
 #include <unistd.h>
 #endif
 
+#include "gstelements_private.h"
+
 static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink",
     GST_PAD_SINK,
     GST_PAD_ALWAYS,
@@ -164,6 +166,8 @@
 static gboolean gst_file_sink_event (GstBaseSink * sink, GstEvent * event);
 static GstFlowReturn gst_file_sink_render (GstBaseSink * sink,
     GstBuffer * buffer);
+static GstFlowReturn gst_file_sink_render_list (GstBaseSink * sink,
+    GstBufferList * list);
 
 static gboolean gst_file_sink_do_seek (GstFileSink * filesink,
     guint64 new_offset);
@@ -231,6 +235,8 @@
   gstbasesink_class->stop = GST_DEBUG_FUNCPTR (gst_file_sink_stop);
   gstbasesink_class->query = GST_DEBUG_FUNCPTR (gst_file_sink_query);
   gstbasesink_class->render = GST_DEBUG_FUNCPTR (gst_file_sink_render);
+  gstbasesink_class->render_list =
+      GST_DEBUG_FUNCPTR (gst_file_sink_render_list);
   gstbasesink_class->event = GST_DEBUG_FUNCPTR (gst_file_sink_event);
 
   if (sizeof (off_t) < 8) {
@@ -647,45 +653,72 @@
 }
 
 static GstFlowReturn
+gst_file_sink_render_buffers (GstFileSink * sink, GstBuffer ** buffers,
+    guint num_buffers, guint8 * mem_nums, guint total_mems)
+{
+  GST_DEBUG_OBJECT (sink,
+      "writing %u buffers (%u memories) at position %" G_GUINT64_FORMAT,
+      num_buffers, total_mems, sink->current_pos);
+
+  return gst_writev_buffers (GST_OBJECT_CAST (sink), fileno (sink->file), NULL,
+      buffers, num_buffers, mem_nums, total_mems, NULL, &sink->current_pos);
+}
+
+static GstFlowReturn
+gst_file_sink_render_list (GstBaseSink * bsink, GstBufferList * buffer_list)
+{
+  GstFlowReturn flow;
+  GstBuffer **buffers;
+  GstFileSink *sink;
+  guint8 *mem_nums;
+  guint total_mems;
+  guint i, num_buffers;
+
+  sink = GST_FILE_SINK_CAST (bsink);
+
+  num_buffers = gst_buffer_list_length (buffer_list);
+  if (num_buffers == 0)
+    goto no_data;
+
+  /* extract buffers from list and count memories */
+  buffers = g_newa (GstBuffer *, num_buffers);
+  mem_nums = g_newa (guint8, num_buffers);
+  for (i = 0, total_mems = 0; i < num_buffers; ++i) {
+    buffers[i] = gst_buffer_list_get (buffer_list, i);
+    mem_nums[i] = gst_buffer_n_memory (buffers[i]);
+    total_mems += mem_nums[i];
+  }
+
+  flow =
+      gst_file_sink_render_buffers (sink, buffers, num_buffers, mem_nums,
+      total_mems);
+
+  return flow;
+
+no_data:
+  {
+    GST_LOG_OBJECT (sink, "empty buffer list");
+    return GST_FLOW_OK;
+  }
+}
+
+static GstFlowReturn
 gst_file_sink_render (GstBaseSink * sink, GstBuffer * buffer)
 {
   GstFileSink *filesink;
-  GstMapInfo info;
+  GstFlowReturn flow;
+  guint8 n_mem;
 
-  filesink = GST_FILE_SINK (sink);
+  filesink = GST_FILE_SINK_CAST (sink);
 
-  gst_buffer_map (buffer, &info, GST_MAP_READ);
+  n_mem = gst_buffer_n_memory (buffer);
 
-  GST_DEBUG_OBJECT (filesink,
-      "writing %" G_GSIZE_FORMAT " bytes at %" G_GUINT64_FORMAT,
-      info.size, filesink->current_pos);
+  if (n_mem > 0)
+    flow = gst_file_sink_render_buffers (filesink, &buffer, 1, &n_mem, n_mem);
+  else
+    flow = GST_FLOW_OK;
 
-  if (info.size > 0 && info.data != NULL) {
-    if (fwrite (info.data, info.size, 1, filesink->file) != 1)
-      goto handle_error;
-
-    filesink->current_pos += info.size;
-  }
-  gst_buffer_unmap (buffer, &info);
-
-  return GST_FLOW_OK;
-
-handle_error:
-  {
-    switch (errno) {
-      case ENOSPC:{
-        GST_ELEMENT_ERROR (filesink, RESOURCE, NO_SPACE_LEFT, (NULL), (NULL));
-        break;
-      }
-      default:{
-        GST_ELEMENT_ERROR (filesink, RESOURCE, WRITE,
-            (_("Error while writing to file \"%s\"."), filesink->filename),
-            ("%s", g_strerror (errno)));
-      }
-    }
-    gst_buffer_unmap (buffer, &info);
-    return GST_FLOW_ERROR;
-  }
+  return flow;
 }
 
 static gboolean
diff --git a/plugins/elements/gstfilesink.h b/plugins/elements/gstfilesink.h
index 72a9a47..33517ab 100644
--- a/plugins/elements/gstfilesink.h
+++ b/plugins/elements/gstfilesink.h
@@ -41,6 +41,7 @@
   (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FILE_SINK))
 #define GST_IS_FILE_SINK_CLASS(klass) \
   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FILE_SINK))
+#define GST_FILE_SINK_CAST(obj) ((GstFileSink *)(obj))
 
 typedef struct _GstFileSink GstFileSink;
 typedef struct _GstFileSinkClass GstFileSinkClass;
diff --git a/plugins/elements/gstfilesrc.c b/plugins/elements/gstfilesrc.c
index dd4e811..bfc67e3 100644
--- a/plugins/elements/gstfilesrc.c
+++ b/plugins/elements/gstfilesrc.c
@@ -28,7 +28,7 @@
  * <refsect2>
  * <title>Example launch line</title>
  * |[
- * gst-launch filesrc location=song.ogg ! decodebin2 ! autoaudiosink
+ * gst-launch filesrc location=song.ogg ! decodebin ! autoaudiosink
  * ]| Play a song.ogg from local dir.
  * </refsect2>
  */
@@ -75,7 +75,6 @@
     GST_PAD_ALWAYS,
     GST_STATIC_CAPS_ANY);
 
-/* FIXME we should be using glib for this */
 #ifndef S_ISREG
 #define S_ISREG(mode) ((mode)&_S_IFREG)
 #endif
@@ -254,7 +253,7 @@
     GST_INFO ("uri      : %s", src->uri);
   }
   g_object_notify (G_OBJECT (src), "location");
-  /* FIXME 0.11: notify "uri" property once there is one */
+  /* FIXME 2.0: notify "uri" property once there is one */
 
   return TRUE;
 
@@ -480,14 +479,16 @@
           g_strerror (errno));
       src->seekable = FALSE;
     } else {
+      res = lseek (src->fd, 0, SEEK_SET);
+
+      if (res < 0) {
+        /* We really don't like not being able to go back to 0 */
+        src->seekable = FALSE;
+        goto lseek_wonky;
+      }
+
       src->seekable = TRUE;
     }
-    res = lseek (src->fd, 0, SEEK_SET);
-    if (res < 0) {
-      /* We really don't like not being able to go back to 0 */
-      src->seekable = FALSE;
-      goto lseek_wonky;
-    }
   }
 
   /* We can only really do seeking on regular files - for other file types, we
diff --git a/plugins/elements/gstfunnel.c b/plugins/elements/gstfunnel.c
index a58ae72..6c6af2b 100644
--- a/plugins/elements/gstfunnel.c
+++ b/plugins/elements/gstfunnel.c
@@ -45,6 +45,48 @@
 GST_DEBUG_CATEGORY_STATIC (gst_funnel_debug);
 #define GST_CAT_DEFAULT gst_funnel_debug
 
+GType gst_funnel_pad_get_type (void);
+#define GST_TYPE_FUNNEL_PAD \
+  (gst_funnel_pad_get_type())
+#define GST_FUNNEL_PAD(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_FUNNEL_PAD, GstFunnelPad))
+#define GST_FUNNEL_PAD_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_FUNNEL_PAD, GstFunnelPadClass))
+#define GST_IS_FUNNEL_PAD(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_FUNNEL_PAD))
+#define GST_IS_FUNNEL_PAD_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_FUNNEL_PAD))
+#define GST_FUNNEL_PAD_CAST(obj) \
+  ((GstFunnelPad *)(obj))
+
+typedef struct _GstFunnelPad GstFunnelPad;
+typedef struct _GstFunnelPadClass GstFunnelPadClass;
+
+struct _GstFunnelPad
+{
+  GstPad parent;
+
+  gboolean got_eos;
+};
+
+struct _GstFunnelPadClass
+{
+  GstPadClass parent;
+};
+
+G_DEFINE_TYPE (GstFunnelPad, gst_funnel_pad, GST_TYPE_PAD);
+
+static void
+gst_funnel_pad_class_init (GstFunnelPadClass * klass)
+{
+}
+
+static void
+gst_funnel_pad_init (GstFunnelPad * pad)
+{
+  pad->got_eos = FALSE;
+}
+
 static GstStaticPadTemplate funnel_sink_template =
 GST_STATIC_PAD_TEMPLATE ("sink_%u",
     GST_PAD_SINK,
@@ -62,6 +104,8 @@
 #define gst_funnel_parent_class parent_class
 G_DEFINE_TYPE_WITH_CODE (GstFunnel, gst_funnel, GST_TYPE_ELEMENT, _do_init);
 
+static GstStateChangeReturn gst_funnel_change_state (GstElement * element,
+    GstStateChange transition);
 static GstPad *gst_funnel_request_new_pad (GstElement * element,
     GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
 static void gst_funnel_release_pad (GstElement * element, GstPad * pad);
@@ -112,6 +156,7 @@
   gstelement_class->request_new_pad =
       GST_DEBUG_FUNCPTR (gst_funnel_request_new_pad);
   gstelement_class->release_pad = GST_DEBUG_FUNCPTR (gst_funnel_release_pad);
+  gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_funnel_change_state);
 }
 
 static void
@@ -132,7 +177,9 @@
 
   GST_DEBUG_OBJECT (element, "requesting pad");
 
-  sinkpad = gst_pad_new_from_static_template (&funnel_sink_template, name);
+  sinkpad = GST_PAD_CAST (g_object_new (GST_TYPE_FUNNEL_PAD,
+          "name", name, "direction", templ->direction, "template", templ,
+          NULL));
 
   gst_pad_set_chain_function (sinkpad,
       GST_DEBUG_FUNCPTR (gst_funnel_sink_chain));
@@ -156,31 +203,21 @@
   GList *item;
   gboolean all_eos = FALSE;
 
-  GST_OBJECT_LOCK (funnel);
 
   if (element->numsinkpads == 0)
     goto done;
 
   for (item = element->sinkpads; item != NULL; item = g_list_next (item)) {
-    GstPad *sinkpad = item->data;
-    GstEvent *eos;
+    GstFunnelPad *sinkpad = GST_FUNNEL_PAD_CAST (item->data);
 
-    /* eos event has not enrolled for current pad, we don't check for current pad */
-    if (pad == sinkpad)
-      continue;
-
-    eos = gst_pad_get_sticky_event (sinkpad, GST_EVENT_EOS, 0);
-    if (eos)
-      gst_event_unref (eos);
-
-    if (eos == NULL)
-      goto done;
+    if (!sinkpad->got_eos) {
+      return FALSE;
+    }
   }
 
   all_eos = TRUE;
 
 done:
-  GST_OBJECT_UNLOCK (funnel);
   return all_eos;
 }
 
@@ -188,23 +225,24 @@
 gst_funnel_release_pad (GstElement * element, GstPad * pad)
 {
   GstFunnel *funnel = GST_FUNNEL (element);
-  GstEvent *eos;
+  GstFunnelPad *fpad = GST_FUNNEL_PAD_CAST (pad);
+  gboolean got_eos;
   gboolean send_eos = FALSE;
 
   GST_DEBUG_OBJECT (funnel, "releasing pad");
 
   gst_pad_set_active (pad, FALSE);
 
-  eos = gst_pad_get_sticky_event (pad, GST_EVENT_EOS, 0);
-  if (eos)
-    gst_event_unref (eos);
+  got_eos = fpad->got_eos;
 
   gst_element_remove_pad (GST_ELEMENT_CAST (funnel), pad);
 
-  if (eos == NULL && gst_funnel_all_sinkpads_eos_unlocked (funnel, NULL)) {
+  GST_OBJECT_LOCK (funnel);
+  if (!got_eos && gst_funnel_all_sinkpads_eos_unlocked (funnel, NULL)) {
     GST_DEBUG_OBJECT (funnel, "Pad removed. All others are EOS. Sending EOS");
     send_eos = TRUE;
   }
+  GST_OBJECT_UNLOCK (funnel);
 
   if (send_eos)
     if (!gst_pad_push_event (funnel->srcpad, gst_event_new_eos ()))
@@ -252,6 +290,7 @@
 gst_funnel_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
 {
   GstFunnel *funnel = GST_FUNNEL (parent);
+  GstFunnelPad *fpad = GST_FUNNEL_PAD_CAST (pad);
   gboolean forward = TRUE;
   gboolean res = TRUE;
   gboolean unlock = FALSE;
@@ -261,14 +300,32 @@
     GST_PAD_STREAM_LOCK (funnel->srcpad);
 
     if (GST_EVENT_TYPE (event) == GST_EVENT_EOS) {
+      GST_OBJECT_LOCK (funnel);
+      fpad->got_eos = TRUE;
       if (!gst_funnel_all_sinkpads_eos_unlocked (funnel, pad)) {
         forward = FALSE;
       } else {
         forward = TRUE;
       }
+      GST_OBJECT_UNLOCK (funnel);
     } else if (pad != funnel->last_sinkpad) {
       forward = FALSE;
     }
+  } else if (GST_EVENT_TYPE (event) == GST_EVENT_FLUSH_STOP) {
+    unlock = TRUE;
+    GST_PAD_STREAM_LOCK (funnel->srcpad);
+    GST_OBJECT_LOCK (funnel);
+    fpad->got_eos = FALSE;
+    GST_OBJECT_UNLOCK (funnel);
+  } else if (GST_EVENT_TYPE (event) == GST_EVENT_GAP) {
+    /* If no data is coming and we receive GAP event, need to forward sticky events. */
+    unlock = TRUE;
+    GST_PAD_STREAM_LOCK (funnel->srcpad);
+    GST_OBJECT_LOCK (funnel);
+    gst_object_replace ((GstObject **) & funnel->last_sinkpad,
+        GST_OBJECT (pad));
+    GST_OBJECT_UNLOCK (funnel);
+    gst_pad_sticky_events_foreach (pad, forward_events, funnel->srcpad);
   }
 
   if (forward)
@@ -281,3 +338,47 @@
 
   return res;
 }
+
+static void
+reset_pad (const GValue * data, gpointer user_data)
+{
+  GstPad *pad = g_value_get_object (data);
+  GstFunnelPad *fpad = GST_FUNNEL_PAD_CAST (pad);
+
+  GST_OBJECT_LOCK (pad);
+  fpad->got_eos = FALSE;
+  GST_OBJECT_UNLOCK (pad);
+}
+
+static GstStateChangeReturn
+gst_funnel_change_state (GstElement * element, GstStateChange transition)
+{
+  GstStateChangeReturn ret;
+
+  ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
+  if (ret == GST_STATE_CHANGE_FAILURE)
+    return ret;
+
+  switch (transition) {
+    case GST_STATE_CHANGE_PAUSED_TO_READY:
+    {
+      GstIterator *iter = gst_element_iterate_sink_pads (element);
+      GstIteratorResult res;
+
+      do {
+        res = gst_iterator_foreach (iter, reset_pad, NULL);
+      } while (res == GST_ITERATOR_RESYNC);
+
+      gst_iterator_free (iter);
+
+      if (res == GST_ITERATOR_ERROR)
+        return GST_STATE_CHANGE_FAILURE;
+
+    }
+      break;
+    default:
+      break;
+  }
+
+  return ret;
+}
diff --git a/plugins/elements/gstidentity.c b/plugins/elements/gstidentity.c
index 4151dad..8f564cf 100644
--- a/plugins/elements/gstidentity.c
+++ b/plugins/elements/gstidentity.c
@@ -110,6 +110,8 @@
 static gboolean gst_identity_stop (GstBaseTransform * trans);
 static GstStateChangeReturn gst_identity_change_state (GstElement * element,
     GstStateChange transition);
+static gboolean gst_identity_accept_caps (GstBaseTransform * base,
+    GstPadDirection direction, GstCaps * caps);
 
 static guint gst_identity_signals[LAST_SIGNAL] = { 0 };
 
@@ -235,6 +237,8 @@
       GST_DEBUG_FUNCPTR (gst_identity_transform_ip);
   gstbasetrans_class->start = GST_DEBUG_FUNCPTR (gst_identity_start);
   gstbasetrans_class->stop = GST_DEBUG_FUNCPTR (gst_identity_stop);
+  gstbasetrans_class->accept_caps =
+      GST_DEBUG_FUNCPTR (gst_identity_accept_caps);
 }
 
 static void
@@ -295,7 +299,7 @@
   }
 
   if (identity->single_segment && (GST_EVENT_TYPE (event) == GST_EVENT_SEGMENT)) {
-    if (trans->have_segment == FALSE) {
+    if (!trans->have_segment) {
       GstEvent *news;
       GstSegment segment;
 
@@ -376,6 +380,7 @@
         /*
          * "imperfect-timestamp" bus message:
          * @identity:        the identity instance
+         * @delta:           the GST_CLOCK_DIFF to the prev timestamp
          * @prev-timestamp:  the previous buffer timestamp
          * @prev-duration:   the previous buffer duration
          * @prev-offset:     the previous buffer offset
@@ -392,6 +397,7 @@
         gst_element_post_message (GST_ELEMENT (identity),
             gst_message_new_element (GST_OBJECT (identity),
                 gst_structure_new ("imperfect-timestamp",
+                    "delta", G_TYPE_INT64, dt,
                     "prev-timestamp", G_TYPE_UINT64,
                     identity->prev_timestamp, "prev-duration", G_TYPE_UINT64,
                     identity->prev_duration, "prev-offset", G_TYPE_UINT64,
@@ -497,6 +503,7 @@
   GstFlowReturn ret = GST_FLOW_OK;
   GstIdentity *identity = GST_IDENTITY (trans);
   GstClockTime runtimestamp = G_GINT64_CONSTANT (0);
+  GstClockTime ts, duration;
   gsize size;
 
   size = gst_buffer_get_size (buf);
@@ -604,6 +611,14 @@
       gst_identity_update_last_message_for_buffer (identity, "dropping", buf,
           size);
     }
+
+    ts = GST_BUFFER_TIMESTAMP (buf);
+    if (GST_CLOCK_TIME_IS_VALID (ts)) {
+      duration = GST_BUFFER_DURATION (buf);
+      gst_pad_push_event (GST_BASE_TRANSFORM_SRC_PAD (identity),
+          gst_event_new_gap (ts, duration));
+    }
+
     /* return DROPPED to basetransform. */
     return GST_BASE_TRANSFORM_FLOW_DROPPED;
   }
@@ -745,6 +760,25 @@
   return TRUE;
 }
 
+static gboolean
+gst_identity_accept_caps (GstBaseTransform * base,
+    GstPadDirection direction, GstCaps * caps)
+{
+  gboolean ret;
+  GstPad *pad;
+
+  /* Proxy accept-caps */
+
+  if (direction == GST_PAD_SRC)
+    pad = GST_BASE_TRANSFORM_SINK_PAD (base);
+  else
+    pad = GST_BASE_TRANSFORM_SRC_PAD (base);
+
+  ret = gst_pad_peer_query_accept_caps (pad, caps);
+
+  return ret;
+}
+
 static GstStateChangeReturn
 gst_identity_change_state (GstElement * element, GstStateChange transition)
 {
diff --git a/plugins/elements/gstinputselector.c b/plugins/elements/gstinputselector.c
index 45db79b..e665fcd 100644
--- a/plugins/elements/gstinputselector.c
+++ b/plugins/elements/gstinputselector.c
@@ -333,10 +333,8 @@
 
   GST_OBJECT_LOCK (pad);
   if (pad->active) {
-    GstFormat format = pad->segment.format;
-
     ret =
-        gst_segment_to_running_time (&pad->segment, format,
+        gst_segment_to_running_time (&pad->segment, pad->segment.format,
         pad->segment.position);
   }
   GST_OBJECT_UNLOCK (pad);
@@ -403,15 +401,12 @@
 static void
 gst_selector_pad_free_cached_buffers (GstSelectorPad * selpad)
 {
-  GstSelectorPadCachedBuffer *cached_buffer;
-
   if (!selpad->cached_buffers)
     return;
 
   GST_DEBUG_OBJECT (selpad, "Freeing cached buffers");
-  while ((cached_buffer = g_queue_pop_head (selpad->cached_buffers)))
-    gst_selector_pad_free_cached_buffer (cached_buffer);
-  g_queue_free (selpad->cached_buffers);
+  g_queue_free_full (selpad->cached_buffers,
+      (GDestroyNotify) gst_selector_pad_free_cached_buffer);
   selpad->cached_buffers = NULL;
 }
 
@@ -439,6 +434,19 @@
   return it;
 }
 
+/* must be called with the SELECTOR_LOCK, will block while the pad is blocked 
+ * or return TRUE when flushing */
+static gboolean
+gst_input_selector_wait (GstInputSelector * self, GstSelectorPad * pad)
+{
+  while (!self->eos && self->blocked && !self->flushing && !pad->flushing) {
+    /* we can be unlocked here when we are shutting down (flushing) or when we
+     * get unblocked */
+    GST_INPUT_SELECTOR_WAIT (self);
+  }
+  return self->flushing;
+}
+
 static gboolean
 gst_selector_pad_event (GstPad * pad, GstObject * parent, GstEvent * event)
 {
@@ -458,6 +466,7 @@
   prev_active_sinkpad =
       sel->active_sinkpad ? gst_object_ref (sel->active_sinkpad) : NULL;
   active_sinkpad = gst_input_selector_activate_sinkpad (sel, pad);
+  gst_object_ref (active_sinkpad);
   GST_INPUT_SELECTOR_UNLOCK (sel);
 
   if (prev_active_sinkpad != active_sinkpad) {
@@ -468,6 +477,7 @@
   }
   if (prev_active_sinkpad)
     gst_object_unref (prev_active_sinkpad);
+  gst_object_unref (active_sinkpad);
 
   GST_INPUT_SELECTOR_LOCK (sel);
   active_sinkpad = gst_input_selector_activate_sinkpad (sel, pad);
@@ -486,6 +496,7 @@
     case GST_EVENT_FLUSH_START:
       /* Unblock the pad if it's waiting */
       selpad->flushing = TRUE;
+      sel->eos = FALSE;
       GST_INPUT_SELECTOR_BROADCAST (sel);
       break;
     case GST_EVENT_FLUSH_STOP:
@@ -523,21 +534,17 @@
     case GST_EVENT_EOS:
       selpad->eos = TRUE;
 
-      if (forward) {
-        selpad->eos_sent = TRUE;
+      if (!forward) {
+        /* blocked until active the sind pad or flush */
+        gst_input_selector_wait (sel, selpad);
+        forward = TRUE;
       } else {
-        GstSelectorPad *active_selpad;
-
-        /* If the active sinkpad is in EOS state but EOS
-         * was not sent downstream this means that the pad
-         * got EOS before it was set as active pad and that
-         * the previously active pad got EOS after it was
-         * active
-         */
-        active_selpad = GST_SELECTOR_PAD (active_sinkpad);
-        forward = (active_selpad->eos && !active_selpad->eos_sent);
-        active_selpad->eos_sent = TRUE;
+        /* Notify all waiting pads about going EOS now */
+        sel->eos = TRUE;
+        GST_INPUT_SELECTOR_BROADCAST (sel);
       }
+
+      selpad->eos_sent = TRUE;
       GST_DEBUG_OBJECT (pad, "received EOS");
       break;
     case GST_EVENT_GAP:{
@@ -588,8 +595,13 @@
 gst_selector_pad_query (GstPad * pad, GstObject * parent, GstQuery * query)
 {
   gboolean res = FALSE;
+  GstInputSelector *self = (GstInputSelector *) parent;
 
   switch (GST_QUERY_TYPE (query)) {
+    case GST_QUERY_CAPS:
+      /* always proxy caps query, regardless of active pad or not */
+      res = gst_pad_peer_query (self->srcpad, query);
+      break;
     case GST_QUERY_ALLOCATION:{
       GstPad *active_sinkpad;
       GstInputSelector *sel = GST_INPUT_SELECTOR (parent);
@@ -619,17 +631,23 @@
   return res;
 }
 
-/* must be called with the SELECTOR_LOCK, will block while the pad is blocked 
- * or return TRUE when flushing */
-static gboolean
-gst_input_selector_wait (GstInputSelector * self, GstSelectorPad * pad)
+static GstClockTime
+gst_input_selector_get_clipped_running_time (GstSegment * seg, GstBuffer * buf)
 {
-  while (self->blocked && !self->flushing && !pad->flushing) {
-    /* we can be unlocked here when we are shutting down (flushing) or when we
-     * get unblocked */
-    GST_INPUT_SELECTOR_WAIT (self);
+  GstClockTime running_time;
+
+  running_time = GST_BUFFER_PTS (buf);
+  /* If possible try to get the running time at the end of the buffer */
+  if (GST_BUFFER_DURATION_IS_VALID (buf))
+    running_time += GST_BUFFER_DURATION (buf);
+  /* Only use the segment to convert to running time if the segment is
+   * in TIME format, otherwise do our best to try to sync */
+  if (GST_CLOCK_TIME_IS_VALID (seg->stop)) {
+    if (running_time > seg->stop) {
+      running_time = seg->stop;
+    }
   }
-  return self->flushing;
+  return gst_segment_to_running_time (seg, GST_FORMAT_TIME, running_time);
 }
 
 /* must be called without the SELECTOR_LOCK, will wait until the running time
@@ -643,7 +661,7 @@
   GST_DEBUG_OBJECT (selpad, "entering wait for buffer %p", buf);
 
   /* If we have no valid timestamp we can't sync this buffer */
-  if (!GST_BUFFER_TIMESTAMP_IS_VALID (buf)) {
+  if (!GST_BUFFER_PTS_IS_VALID (buf)) {
     GST_DEBUG_OBJECT (selpad, "leaving wait for buffer with "
         "invalid timestamp");
     return FALSE;
@@ -678,19 +696,7 @@
       return FALSE;
     }
 
-    running_time = GST_BUFFER_TIMESTAMP (buf);
-    /* If possible try to get the running time at the end of the buffer */
-    if (GST_BUFFER_DURATION_IS_VALID (buf))
-      running_time += GST_BUFFER_DURATION (buf);
-    /* Only use the segment to convert to running time if the segment is
-     * in TIME format, otherwise do our best to try to sync */
-    if (GST_CLOCK_TIME_IS_VALID (seg->stop)) {
-      if (running_time > seg->stop) {
-        running_time = seg->stop;
-      }
-    }
-    running_time =
-        gst_segment_to_running_time (seg, GST_FORMAT_TIME, running_time);
+    running_time = gst_input_selector_get_clipped_running_time (seg, buf);
     /* If this is outside the segment don't sync */
     if (running_time == -1) {
       GST_DEBUG_OBJECT (selpad,
@@ -735,8 +741,9 @@
             GST_FORMAT_TIME, active_seg->position);
     }
 
-    if (selpad != active_selpad && !sel->flushing && !selpad->flushing &&
-        (sel->blocked || cur_running_time == -1
+    if (selpad != active_selpad && !sel->eos && !sel->flushing
+        && !selpad->flushing && (sel->blocked
+            || cur_running_time == GST_CLOCK_TIME_NONE
             || running_time >= cur_running_time)) {
       if (!sel->blocked) {
         GST_DEBUG_OBJECT (selpad,
@@ -794,11 +801,13 @@
 {
   GList *walk;
 
-  for (walk = GST_ELEMENT_CAST (sel)->sinkpads; walk; walk = g_list_next (walk)) {
+  if (gst_debug_category_get_threshold (input_selector_debug) < GST_LEVEL_DEBUG)
+    return;
+
+  for (walk = GST_ELEMENT_CAST (sel)->sinkpads; walk; walk = walk->next) {
     GstSelectorPad *selpad;
     GString *timestamps;
-    gchar *str;
-    int i;
+    GList *l;
 
     selpad = GST_SELECTOR_PAD_CAST (walk->data);
     if (!selpad->cached_buffers) {
@@ -807,16 +816,14 @@
     }
 
     timestamps = g_string_new ("Cached buffers timestamps:");
-    for (i = 0; i < selpad->cached_buffers->length; ++i) {
-      GstSelectorPadCachedBuffer *cached_buffer;
+    for (l = selpad->cached_buffers->head; l != NULL; l = l->next) {
+      GstSelectorPadCachedBuffer *cached_buffer = l->data;
 
-      cached_buffer = g_queue_peek_nth (selpad->cached_buffers, i);
       g_string_append_printf (timestamps, " %" GST_TIME_FORMAT,
-          GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (cached_buffer->buffer)));
+          GST_TIME_ARGS (GST_BUFFER_PTS (cached_buffer->buffer)));
     }
-    str = g_string_free (timestamps, FALSE);
-    GST_DEBUG_OBJECT (selpad, "%s", str);
-    g_free (str);
+    GST_DEBUG_OBJECT (selpad, "%s", timestamps->str);
+    g_string_free (timestamps, TRUE);
   }
 }
 #endif
@@ -886,7 +893,7 @@
       GSList *l;
 
       /* If we have no valid timestamp we can't sync this buffer */
-      if (!GST_BUFFER_TIMESTAMP_IS_VALID (buffer)) {
+      if (!GST_BUFFER_PTS_IS_VALID (buffer)) {
         maybe_remove = g_slist_append (maybe_remove, cached_buffer);
         queue_position = g_slist_length (maybe_remove);
         continue;
@@ -895,20 +902,7 @@
       /* the buffer is still valid if its duration is valid and the
        * timestamp + duration is >= time, or if its duration is invalid
        * and the timestamp is >= time */
-      running_time = GST_BUFFER_TIMESTAMP (buffer);
-      /* If possible try to get the running time at the end of the buffer */
-      if (GST_BUFFER_DURATION_IS_VALID (buffer))
-        running_time += GST_BUFFER_DURATION (buffer);
-      /* Only use the segment to convert to running time if the segment is
-       * in TIME format, otherwise do our best to try to sync */
-      if (GST_CLOCK_TIME_IS_VALID (seg->stop)) {
-        if (running_time > seg->stop) {
-          running_time = seg->stop;
-        }
-      }
-      running_time =
-          gst_segment_to_running_time (seg, GST_FORMAT_TIME, running_time);
-
+      running_time = gst_input_selector_get_clipped_running_time (seg, buffer);
       GST_DEBUG_OBJECT (selpad,
           "checking if buffer %p running time=%" GST_TIME_FORMAT
           " >= stream time=%" GST_TIME_FORMAT, buffer,
@@ -956,16 +950,20 @@
   GstPad *active_sinkpad;
   GstPad *prev_active_sinkpad = NULL;
   GstSelectorPad *selpad;
-  GstClockTime start_time;
 
   sel = GST_INPUT_SELECTOR (parent);
   selpad = GST_SELECTOR_PAD_CAST (pad);
 
   GST_DEBUG_OBJECT (selpad,
       "entering chain for buf %p with timestamp %" GST_TIME_FORMAT, buf,
-      GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)));
+      GST_TIME_ARGS (GST_BUFFER_PTS (buf)));
 
   GST_INPUT_SELECTOR_LOCK (sel);
+  if (sel->eos) {
+    GST_INPUT_SELECTOR_UNLOCK (sel);
+    goto eos;
+  }
+
   /* wait or check for flushing */
   if (gst_input_selector_wait (sel, selpad)) {
     GST_INPUT_SELECTOR_UNLOCK (sel);
@@ -993,7 +991,7 @@
         saved_segment = selpad->segment;
 
         selpad->sending_cached_buffers = TRUE;
-        while (!sel->flushing && !selpad->flushing &&
+        while (!sel->eos && !sel->flushing && !selpad->flushing &&
             (cached_buffer = g_queue_pop_head (selpad->cached_buffers))) {
           GST_DEBUG_OBJECT (pad, "Cached buffers found, "
               "invoking chain for cached buffer %p", cached_buffer->buffer);
@@ -1032,9 +1030,15 @@
     active_sinkpad = gst_input_selector_activate_sinkpad (sel, pad);
   }
 
+  if (sel->eos) {
+    GST_INPUT_SELECTOR_UNLOCK (sel);
+    goto eos;
+  }
+
   /* update the segment on the srcpad */
-  start_time = GST_BUFFER_TIMESTAMP (buf);
-  if (GST_CLOCK_TIME_IS_VALID (start_time)) {
+  if (GST_BUFFER_PTS_IS_VALID (buf)) {
+    GstClockTime start_time = GST_BUFFER_PTS (buf);
+
     GST_LOG_OBJECT (pad, "received start time %" GST_TIME_FORMAT,
         GST_TIME_ARGS (start_time));
     if (GST_BUFFER_DURATION_IS_VALID (buf))
@@ -1071,9 +1075,10 @@
     selpad->events_pending = FALSE;
   }
 
-  if (prev_active_sinkpad)
+  if (prev_active_sinkpad) {
     gst_object_unref (prev_active_sinkpad);
-  prev_active_sinkpad = NULL;
+    prev_active_sinkpad = NULL;
+  }
 
   if (selpad->discont) {
     buf = gst_buffer_make_writable (buf);
@@ -1085,7 +1090,7 @@
 
   /* forward */
   GST_LOG_OBJECT (pad, "Forwarding buffer %p with timestamp %" GST_TIME_FORMAT,
-      buf, GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)));
+      buf, GST_TIME_ARGS (GST_BUFFER_PTS (buf)));
 
   /* Only make the buffer read-only when necessary */
   if (sel->sync_streams && sel->cache_buffers)
@@ -1146,6 +1151,13 @@
     res = GST_FLOW_FLUSHING;
     goto done;
   }
+eos:
+  {
+    GST_DEBUG_OBJECT (pad, "We are eos, discard buffer %p", buf);
+    gst_buffer_unref (buf);
+    res = GST_FLOW_EOS;
+    goto done;
+  }
 }
 
 static void gst_input_selector_dispose (GObject * object);
@@ -1165,8 +1177,6 @@
 
 static gboolean gst_input_selector_event (GstPad * pad, GstObject * parent,
     GstEvent * event);
-static gboolean gst_input_selector_query (GstPad * pad, GstObject * parent,
-    GstQuery * query);
 static gint64 gst_input_selector_block (GstInputSelector * self);
 
 #define _do_init \
@@ -1196,7 +1206,8 @@
   g_object_class_install_property (gobject_class, PROP_ACTIVE_PAD,
       g_param_spec_object ("active-pad", "Active pad",
           "The currently active sink pad", GST_TYPE_PAD,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   /**
    * GstInputSelector:sync-streams
@@ -1289,8 +1300,6 @@
   sel->srcpad = gst_pad_new ("src", GST_PAD_SRC);
   gst_pad_set_iterate_internal_links_function (sel->srcpad,
       GST_DEBUG_FUNCPTR (gst_selector_pad_iterate_linked_pads));
-  gst_pad_set_query_function (sel->srcpad,
-      GST_DEBUG_FUNCPTR (gst_input_selector_query));
   gst_pad_set_event_function (sel->srcpad,
       GST_DEBUG_FUNCPTR (gst_input_selector_event));
   GST_OBJECT_FLAG_SET (sel->srcpad, GST_PAD_FLAG_PROXY_CAPS);
@@ -1304,6 +1313,7 @@
   g_mutex_init (&sel->lock);
   g_cond_init (&sel->cond);
   sel->blocked = FALSE;
+  sel->eos = FALSE;
 
   /* lets give a change for downstream to do something on
    * active-pad change before we start pushing new buffers */
@@ -1372,6 +1382,11 @@
   GST_DEBUG_OBJECT (self, "New active pad is %" GST_PTR_FORMAT,
       self->active_sinkpad);
 
+  if (old != new && new && new->eos && !new->eos_sent) {
+    self->eos = TRUE;
+    GST_INPUT_SELECTOR_BROADCAST (self);
+  }
+
   return TRUE;
 }
 
@@ -1548,79 +1563,6 @@
   return result;
 }
 
-/* query on the srcpad. We override this function because by default it will
- * only forward the query to one random sinkpad */
-static gboolean
-gst_input_selector_query (GstPad * pad, GstObject * parent, GstQuery * query)
-{
-  gboolean res = FALSE;
-  GstInputSelector *sel;
-
-  sel = GST_INPUT_SELECTOR (parent);
-
-  switch (GST_QUERY_TYPE (query)) {
-    case GST_QUERY_LATENCY:
-    {
-      GList *walk;
-      GstClockTime resmin, resmax;
-      gboolean reslive;
-
-      resmin = 0;
-      resmax = -1;
-      reslive = FALSE;
-
-      /* perform the query on all sinkpads and combine the results. We take the
-       * max of min and the min of max for the result latency. */
-      GST_INPUT_SELECTOR_LOCK (sel);
-      for (walk = GST_ELEMENT_CAST (sel)->sinkpads; walk;
-          walk = g_list_next (walk)) {
-        GstPad *sinkpad = GST_PAD_CAST (walk->data);
-
-        if (gst_pad_peer_query (sinkpad, query)) {
-          GstClockTime min, max;
-          gboolean live;
-
-          /* one query succeeded, we succeed too */
-          res = TRUE;
-
-          gst_query_parse_latency (query, &live, &min, &max);
-
-          GST_DEBUG_OBJECT (sinkpad,
-              "peer latency min %" GST_TIME_FORMAT ", max %" GST_TIME_FORMAT
-              ", live %d", GST_TIME_ARGS (min), GST_TIME_ARGS (max), live);
-
-          if (live) {
-            if (min > resmin)
-              resmin = min;
-            if (resmax == -1)
-              resmax = max;
-            else if (max < resmax)
-              resmax = max;
-            if (reslive == FALSE)
-              reslive = live;
-          }
-        }
-      }
-      GST_INPUT_SELECTOR_UNLOCK (sel);
-      if (res) {
-        gst_query_set_latency (query, reslive, resmin, resmax);
-
-        GST_DEBUG_OBJECT (sel,
-            "total latency min %" GST_TIME_FORMAT ", max %" GST_TIME_FORMAT
-            ", live %d", GST_TIME_ARGS (resmin), GST_TIME_ARGS (resmax),
-            reslive);
-      }
-
-      break;
-    }
-    default:
-      res = gst_pad_query_default (pad, parent, query);
-      break;
-  }
-
-  return res;
-}
-
 /* check if the pad is the active sinkpad */
 static inline gboolean
 gst_input_selector_is_active_sinkpad (GstInputSelector * sel, GstPad * pad)
@@ -1645,7 +1587,7 @@
 
   selpad->active = TRUE;
   active_sinkpad = sel->active_sinkpad;
-  if (sel->active_sinkpad == NULL) {
+  if (active_sinkpad == NULL) {
     GValue item = G_VALUE_INIT;
     GstIterator *iter = gst_element_iterate_sink_pads (GST_ELEMENT_CAST (sel));
     GstIteratorResult ires;
@@ -1682,7 +1624,7 @@
 
   GST_INPUT_SELECTOR_LOCK (sel);
 
-  GST_LOG_OBJECT (sel, "Creating new pad %d", sel->padcount);
+  GST_LOG_OBJECT (sel, "Creating new pad sink_%u", sel->padcount);
   name = g_strdup_printf ("sink_%u", sel->padcount++);
   sinkpad = g_object_new (GST_TYPE_SELECTOR_PAD,
       "name", name, "direction", templ->direction, "template", templ, NULL);
@@ -1766,6 +1708,7 @@
   switch (transition) {
     case GST_STATE_CHANGE_READY_TO_PAUSED:
       GST_INPUT_SELECTOR_LOCK (self);
+      self->eos = FALSE;
       self->blocked = FALSE;
       self->flushing = FALSE;
       GST_INPUT_SELECTOR_UNLOCK (self);
@@ -1774,6 +1717,7 @@
       /* first unlock before we call the parent state change function, which
        * tries to acquire the stream lock when going to ready. */
       GST_INPUT_SELECTOR_LOCK (self);
+      self->eos = TRUE;
       self->blocked = FALSE;
       self->flushing = TRUE;
       GST_INPUT_SELECTOR_BROADCAST (self);
diff --git a/plugins/elements/gstinputselector.h b/plugins/elements/gstinputselector.h
index 96c680f..d3abad9 100644
--- a/plugins/elements/gstinputselector.h
+++ b/plugins/elements/gstinputselector.h
@@ -66,8 +66,8 @@
   GstPad *srcpad;
 
   GstPad *active_sinkpad;
-  guint n_pads;
-  guint padcount;
+  guint n_pads;           /* number of pads */
+  guint padcount;         /* sequence number for pads */
   gboolean sync_streams;
   GstInputSelectorSyncMode sync_mode;
   gboolean cache_buffers;
@@ -77,6 +77,7 @@
   GMutex lock;
   GCond cond;
   gboolean blocked;
+  gboolean eos;
   gboolean flushing;
 };
 
diff --git a/plugins/elements/gstmultiqueue.c b/plugins/elements/gstmultiqueue.c
index 7fc1b87..37fa6f0 100644
--- a/plugins/elements/gstmultiqueue.c
+++ b/plugins/elements/gstmultiqueue.c
@@ -171,6 +171,7 @@
   /* for serialized queries */
   GCond query_handled;
   gboolean last_query;
+  GstQuery *last_handled_query;
 };
 
 
@@ -200,6 +201,7 @@
 static void single_queue_underrun_cb (GstDataQueue * dq, GstSingleQueue * sq);
 
 static void update_buffering (GstMultiQueue * mq, GstSingleQueue * sq);
+static void gst_multi_queue_post_buffering (GstMultiQueue * mq);
 
 static void gst_single_queue_flush_queue (GstSingleQueue * sq, gboolean full);
 
@@ -271,6 +273,14 @@
   g_mutex_unlock (&q->qlock);                                            \
 } G_STMT_END
 
+#define SET_PERCENT(mq, perc) G_STMT_START {                             \
+  if (perc != mq->percent) {                                             \
+    mq->percent = perc;                                                  \
+    mq->percent_changed = TRUE;                                          \
+    GST_DEBUG_OBJECT (mq, "buffering %d percent", perc);                 \
+  }                                                                      \
+} G_STMT_END
+
 static void gst_multi_queue_finalize (GObject * object);
 static void gst_multi_queue_set_property (GObject * object,
     guint prop_id, const GValue * value, GParamSpec * pspec);
@@ -340,16 +350,19 @@
       g_param_spec_uint ("max-size-bytes", "Max. size (kB)",
           "Max. amount of data in the queue (bytes, 0=disable)",
           0, G_MAXUINT, DEFAULT_MAX_SIZE_BYTES,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_BUFFERS,
       g_param_spec_uint ("max-size-buffers", "Max. size (buffers)",
           "Max. number of buffers in the queue (0=disable)", 0, G_MAXUINT,
           DEFAULT_MAX_SIZE_BUFFERS,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_TIME,
       g_param_spec_uint64 ("max-size-time", "Max. size (ns)",
           "Max. amount of data in the queue (in ns, 0=disable)", 0, G_MAXUINT64,
-          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   g_object_class_install_property (gobject_class, PROP_EXTRA_SIZE_BYTES,
       g_param_spec_uint ("extra-size-bytes", "Extra Size (kB)",
@@ -379,7 +392,8 @@
   g_object_class_install_property (gobject_class, PROP_USE_BUFFERING,
       g_param_spec_boolean ("use-buffering", "Use buffering",
           "Emit GST_MESSAGE_BUFFERING based on low-/high-percent thresholds",
-          DEFAULT_USE_BUFFERING, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_USE_BUFFERING, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   /**
    * GstMultiQueue:low-percent
    * 
@@ -457,6 +471,7 @@
   mqueue->high_time = GST_CLOCK_TIME_NONE;
 
   g_mutex_init (&mqueue->qlock);
+  g_mutex_init (&mqueue->buffering_post_lock);
 }
 
 static void
@@ -471,6 +486,7 @@
 
   /* free/unref instance data */
   g_mutex_clear (&mqueue->qlock);
+  g_mutex_clear (&mqueue->buffering_post_lock);
 
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
@@ -498,6 +514,7 @@
       mq->max_size.bytes = g_value_get_uint (value);
       SET_CHILD_PROPERTY (mq, bytes);
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      gst_multi_queue_post_buffering (mq);
       break;
     case PROP_MAX_SIZE_BUFFERS:
     {
@@ -514,9 +531,16 @@
         GstSingleQueue *q = (GstSingleQueue *) tmp->data;
         gst_data_queue_get_level (q->queue, &size);
 
-        /* do not reduce max size below current level if the single queue has grown because of empty queue */
+        GST_DEBUG_OBJECT (mq, "Queue %d: Requested buffers size: %d,"
+            " current: %d, current max %d", q->id, new_size, size.visible,
+            q->max_size.visible);
+
+        /* do not reduce max size below current level if the single queue
+         * has grown because of empty queue */
         if (new_size == 0) {
           q->max_size.visible = new_size;
+        } else if (q->max_size.visible == 0) {
+          q->max_size.visible = MAX (new_size, size.visible);
         } else if (new_size > size.visible) {
           q->max_size.visible = new_size;
         }
@@ -526,6 +550,7 @@
       }
 
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      gst_multi_queue_post_buffering (mq);
 
       break;
     }
@@ -534,6 +559,7 @@
       mq->max_size.time = g_value_get_uint64 (value);
       SET_CHILD_PROPERTY (mq, time);
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      gst_multi_queue_post_buffering (mq);
       break;
     case PROP_EXTRA_SIZE_BYTES:
       mq->extra_size.bytes = g_value_get_uint (value);
@@ -547,13 +573,11 @@
     case PROP_USE_BUFFERING:
       mq->use_buffering = g_value_get_boolean (value);
       if (!mq->use_buffering && mq->buffering) {
-        GstMessage *message;
-
+        GST_MULTI_QUEUE_MUTEX_LOCK (mq);
         mq->buffering = FALSE;
         GST_DEBUG_OBJECT (mq, "buffering 100 percent");
-        message = gst_message_new_buffering (GST_OBJECT_CAST (mq), 100);
-
-        gst_element_post_message (GST_ELEMENT_CAST (mq), message);
+        SET_PERCENT (mq, 100);
+        GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       }
 
       if (mq->use_buffering) {
@@ -572,6 +596,7 @@
 
         GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       }
+      gst_multi_queue_post_buffering (mq);
       break;
     case PROP_LOW_PERCENT:
       mq->low_percent = g_value_get_int (value);
@@ -764,6 +789,7 @@
       SET_CHILD_PROPERTY (mqueue, visible);
 
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mqueue);
+      gst_multi_queue_post_buffering (mqueue);
 
       break;
     }
@@ -825,8 +851,9 @@
     result = gst_pad_pause_task (sq->srcpad);
     sq->sink_tainted = sq->src_tainted = TRUE;
   } else {
-    GST_MULTI_QUEUE_MUTEX_LOCK (mq);
     gst_single_queue_flush_queue (sq, full);
+
+    GST_MULTI_QUEUE_MUTEX_LOCK (mq);
     gst_segment_init (&sq->sink_segment, GST_FORMAT_TIME);
     gst_segment_init (&sq->src_segment, GST_FORMAT_TIME);
     sq->has_src_segment = FALSE;
@@ -857,20 +884,16 @@
   return result;
 }
 
-static void
-update_buffering (GstMultiQueue * mq, GstSingleQueue * sq)
+/* WITH LOCK TAKEN */
+static gint
+get_percentage (GstSingleQueue * sq)
 {
   GstDataQueueSize size;
   gint percent, tmp;
-  gboolean post = FALSE;
-
-  /* nothing to dowhen we are not in buffering mode */
-  if (!mq->use_buffering)
-    return;
 
   gst_data_queue_get_level (sq->queue, &size);
 
-  GST_DEBUG_OBJECT (mq,
+  GST_DEBUG_OBJECT (sq->mqueue,
       "queue %d: visible %u/%u, bytes %u/%u, time %" G_GUINT64_FORMAT "/%"
       G_GUINT64_FORMAT, sq->id, size.visible, sq->max_size.visible,
       size.bytes, sq->max_size.bytes, sq->cur_time, sq->max_size.time);
@@ -890,43 +913,76 @@
     }
   }
 
+  return percent;
+}
+
+/* WITH LOCK TAKEN */
+static void
+update_buffering (GstMultiQueue * mq, GstSingleQueue * sq)
+{
+  gint percent;
+
+  /* nothing to dowhen we are not in buffering mode */
+  if (!mq->use_buffering)
+    return;
+
+  percent = get_percentage (sq);
+
   if (mq->buffering) {
-    post = TRUE;
     if (percent >= mq->high_percent) {
       mq->buffering = FALSE;
     }
     /* make sure it increases */
     percent = MAX (mq->percent, percent);
 
-    if (percent == mq->percent)
-      /* don't post if nothing changed */
-      post = FALSE;
-    else
-      /* else keep last value we posted */
-      mq->percent = percent;
+    SET_PERCENT (mq, percent);
   } else {
-    if (percent < mq->low_percent) {
+    GList *iter;
+    gboolean is_buffering = TRUE;
+
+    for (iter = mq->queues; iter; iter = g_list_next (iter)) {
+      GstSingleQueue *oq = (GstSingleQueue *) iter->data;
+
+      if (get_percentage (oq) >= mq->high_percent) {
+        is_buffering = FALSE;
+
+        break;
+      }
+    }
+
+    if (is_buffering && percent < mq->low_percent) {
       mq->buffering = TRUE;
-      mq->percent = percent;
-      post = TRUE;
+      SET_PERCENT (mq, percent);
     }
   }
-  if (post) {
-    GstMessage *message;
+}
 
-    /* scale to high percent so that it becomes the 100% mark */
+static void
+gst_multi_queue_post_buffering (GstMultiQueue * mq)
+{
+  GstMessage *msg = NULL;
+
+  g_mutex_lock (&mq->buffering_post_lock);
+  GST_MULTI_QUEUE_MUTEX_LOCK (mq);
+  if (mq->percent_changed) {
+    gint percent = mq->percent;
+
+    mq->percent_changed = FALSE;
+
     percent = percent * 100 / mq->high_percent;
     /* clip */
     if (percent > 100)
       percent = 100;
 
-    GST_DEBUG_OBJECT (mq, "buffering %d percent", percent);
-    message = gst_message_new_buffering (GST_OBJECT_CAST (mq), percent);
-
-    gst_element_post_message (GST_ELEMENT_CAST (mq), message);
-  } else {
-    GST_DEBUG_OBJECT (mq, "filled %d percent", percent);
+    GST_DEBUG_OBJECT (mq, "Going to post buffering: %d%%", percent);
+    msg = gst_message_new_buffering (GST_OBJECT_CAST (mq), percent);
   }
+  GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+
+  if (msg != NULL)
+    gst_element_post_message (GST_ELEMENT_CAST (mq), msg);
+
+  g_mutex_unlock (&mq->buffering_post_lock);
 }
 
 /* calculate the diff between running time on the sink and src of the queue.
@@ -1027,6 +1083,7 @@
   update_time_level (mq, sq);
 
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
 }
 
 /* take a buffer and update segment, updating the time level of the queue. */
@@ -1058,6 +1115,39 @@
   /* calc diff with other end */
   update_time_level (mq, sq);
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
+}
+
+static void
+apply_gap (GstMultiQueue * mq, GstSingleQueue * sq, GstEvent * event,
+    GstSegment * segment)
+{
+  GstClockTime timestamp;
+  GstClockTime duration;
+
+  GST_MULTI_QUEUE_MUTEX_LOCK (mq);
+
+  gst_event_parse_gap (event, &timestamp, &duration);
+
+  if (GST_CLOCK_TIME_IS_VALID (timestamp)) {
+
+    if (GST_CLOCK_TIME_IS_VALID (duration)) {
+      timestamp += duration;
+    }
+
+    segment->position = timestamp;
+
+    if (segment == &sq->sink_segment)
+      sq->sink_tainted = TRUE;
+    else
+      sq->src_tainted = TRUE;
+
+    /* calc diff with other end */
+    update_time_level (mq, sq);
+  }
+
+  GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
 }
 
 static GstClockTime
@@ -1119,7 +1209,7 @@
 
 static GstFlowReturn
 gst_single_queue_push_one (GstMultiQueue * mq, GstSingleQueue * sq,
-    GstMiniObject * object)
+    GstMiniObject * object, gboolean * allow_drop)
 {
   GstFlowReturn result = sq->srcresult;
 
@@ -1136,11 +1226,17 @@
     /* Applying the buffer may have made the queue non-full again, unblock it if needed */
     gst_data_queue_limits_changed (sq->queue);
 
-    GST_DEBUG_OBJECT (mq,
-        "SingleQueue %d : Pushing buffer %p with ts %" GST_TIME_FORMAT,
-        sq->id, buffer, GST_TIME_ARGS (timestamp));
-
-    result = gst_pad_push (sq->srcpad, buffer);
+    if (G_UNLIKELY (*allow_drop)) {
+      GST_DEBUG_OBJECT (mq,
+          "SingleQueue %d : Dropping EOS buffer %p with ts %" GST_TIME_FORMAT,
+          sq->id, buffer, GST_TIME_ARGS (timestamp));
+      gst_buffer_unref (buffer);
+    } else {
+      GST_DEBUG_OBJECT (mq,
+          "SingleQueue %d : Pushing buffer %p with ts %" GST_TIME_FORMAT,
+          sq->id, buffer, GST_TIME_ARGS (timestamp));
+      result = gst_pad_push (sq->srcpad, buffer);
+    }
   } else if (GST_IS_EVENT (object)) {
     GstEvent *event;
 
@@ -1149,31 +1245,57 @@
     switch (GST_EVENT_TYPE (event)) {
       case GST_EVENT_EOS:
         result = GST_FLOW_EOS;
+        if (G_UNLIKELY (*allow_drop))
+          *allow_drop = FALSE;
         break;
       case GST_EVENT_SEGMENT:
         apply_segment (mq, sq, event, &sq->src_segment);
         /* Applying the segment may have made the queue non-full again, unblock it if needed */
         gst_data_queue_limits_changed (sq->queue);
+        if (G_UNLIKELY (*allow_drop)) {
+          result = GST_FLOW_OK;
+          *allow_drop = FALSE;
+        }
+        break;
+      case GST_EVENT_GAP:
+        apply_gap (mq, sq, event, &sq->src_segment);
+        /* Applying the gap may have made the queue non-full again, unblock it if needed */
+        gst_data_queue_limits_changed (sq->queue);
         break;
       default:
         break;
     }
 
-    GST_DEBUG_OBJECT (mq,
-        "SingleQueue %d : Pushing event %p of type %s",
-        sq->id, event, GST_EVENT_TYPE_NAME (event));
+    if (G_UNLIKELY (*allow_drop)) {
+      GST_DEBUG_OBJECT (mq,
+          "SingleQueue %d : Dropping EOS event %p of type %s",
+          sq->id, event, GST_EVENT_TYPE_NAME (event));
+      gst_event_unref (event);
+    } else {
+      GST_DEBUG_OBJECT (mq,
+          "SingleQueue %d : Pushing event %p of type %s",
+          sq->id, event, GST_EVENT_TYPE_NAME (event));
 
-    gst_pad_push_event (sq->srcpad, event);
+      gst_pad_push_event (sq->srcpad, event);
+    }
   } else if (GST_IS_QUERY (object)) {
     GstQuery *query;
     gboolean res;
 
     query = GST_QUERY_CAST (object);
 
-    res = gst_pad_peer_query (sq->srcpad, query);
+    if (G_UNLIKELY (*allow_drop)) {
+      GST_DEBUG_OBJECT (mq,
+          "SingleQueue %d : Dropping EOS query %p", sq->id, query);
+      gst_query_unref (query);
+      res = FALSE;
+    } else {
+      res = gst_pad_peer_query (sq->srcpad, query);
+    }
 
     GST_MULTI_QUEUE_MUTEX_LOCK (mq);
     sq->last_query = res;
+    sq->last_handled_query = query;
     g_cond_signal (&sq->query_handled);
     GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
   } else {
@@ -1258,10 +1380,12 @@
   GstClockTime next_time;
   gboolean is_buffer;
   gboolean do_update_buffering = FALSE;
+  gboolean dropping = FALSE;
 
   sq = (GstSingleQueue *) gst_pad_get_element_private (pad);
   mq = sq->mqueue;
 
+next:
   GST_DEBUG_OBJECT (mq, "SingleQueue %d : trying to pop an object", sq->id);
 
   if (sq->flushing)
@@ -1289,8 +1413,8 @@
 
   /* If we're not-linked, we do some extra work because we might need to
    * wait before pushing. If we're linked but there's a gap in the IDs,
-   * or it's the first loop, or we just passed the previous highid, 
-   * we might need to wake some sleeping pad up, so there's extra work 
+   * or it's the first loop, or we just passed the previous highid,
+   * we might need to wake some sleeping pad up, so there's extra work
    * there too */
   GST_MULTI_QUEUE_MUTEX_LOCK (mq);
   if (sq->srcresult == GST_FLOW_NOT_LINKED
@@ -1389,7 +1513,7 @@
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
 
   /* Try to push out the new object */
-  result = gst_single_queue_push_one (mq, sq, object);
+  result = gst_single_queue_push_one (mq, sq, object, &dropping);
   object = NULL;
 
   /* Check if we pushed something already and if this is
@@ -1429,6 +1553,25 @@
 
   if (is_buffer)
     sq->pushed = TRUE;
+
+  /* now hold on a bit;
+   * can not simply throw this result to upstream, because
+   * that might already be onto another segment, so we have to make
+   * sure we are relaying the correct info wrt proper segment */
+  if (result == GST_FLOW_EOS && !dropping &&
+      sq->srcresult != GST_FLOW_NOT_LINKED) {
+    GST_DEBUG_OBJECT (mq, "starting EOS drop on sq %d", sq->id);
+    dropping = TRUE;
+    /* pretend we have not seen EOS yet for upstream's sake */
+    result = sq->srcresult;
+  } else if (dropping && gst_data_queue_is_empty (sq->queue)) {
+    /* queue empty, so stop dropping
+     * we can commit the result we have now,
+     * which is either OK after a segment, or EOS */
+    GST_DEBUG_OBJECT (mq, "committed EOS drop on sq %d", sq->id);
+    dropping = FALSE;
+    result = GST_FLOW_EOS;
+  }
   sq->srcresult = result;
   sq->last_oldid = newid;
 
@@ -1436,6 +1579,10 @@
     update_buffering (mq, sq);
 
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
+
+  if (dropping)
+    goto next;
 
   if (result != GST_FLOW_OK && result != GST_FLOW_NOT_LINKED
       && result != GST_FLOW_EOS)
@@ -1444,6 +1591,14 @@
   GST_LOG_OBJECT (mq, "AFTER PUSHING sq->srcresult: %s",
       gst_flow_get_name (sq->srcresult));
 
+  GST_MULTI_QUEUE_MUTEX_LOCK (mq);
+  if (mq->numwaiting > 0 && sq->srcresult == GST_FLOW_EOS) {
+    compute_high_time (mq);
+    compute_high_id (mq);
+    wake_up_next_non_linked (mq);
+  }
+  GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+
   return;
 
 out_flushing:
@@ -1458,7 +1613,19 @@
     wake_up_next_non_linked (mq);
     sq->last_query = FALSE;
     g_cond_signal (&sq->query_handled);
-    GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+
+    /* Post an error message if we got EOS while downstream
+     * has returned an error flow return. After EOS there
+     * will be no further buffer which could propagate the
+     * error upstream */
+    if (sq->is_eos && sq->srcresult < GST_FLOW_EOS) {
+      GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      GST_ELEMENT_ERROR (mq, STREAM, FAILED,
+          ("Internal data stream error."),
+          ("streaming stopped, reason %s", gst_flow_get_name (sq->srcresult)));
+    } else {
+      GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+    }
 
     /* upstream needs to see fatal result ASAP to shut things down,
      * but might be stuck in one of our other full queues;
@@ -1627,7 +1794,9 @@
 
       gst_single_queue_flush (mq, sq, FALSE, FALSE);
       goto done;
+
     case GST_EVENT_SEGMENT:
+    case GST_EVENT_GAP:
       /* take ref because the queue will take ownership and we need the event
        * afterwards to update the segment */
       sref = gst_event_ref (event);
@@ -1658,20 +1827,45 @@
     goto flushing;
 
   /* mark EOS when we received one, we must do that after putting the
-   * buffer in the queue because EOS marks the buffer as filled. No need to take
-   * a lock, the _check_full happens from this thread only, right before pushing
-   * into dataqueue. */
+   * buffer in the queue because EOS marks the buffer as filled. */
   switch (type) {
     case GST_EVENT_EOS:
+      GST_MULTI_QUEUE_MUTEX_LOCK (mq);
       sq->is_eos = TRUE;
+
+      /* Post an error message if we got EOS while downstream
+       * has returned an error flow return. After EOS there
+       * will be no further buffer which could propagate the
+       * error upstream */
+      if (sq->srcresult < GST_FLOW_EOS) {
+        GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+        GST_ELEMENT_ERROR (mq, STREAM, FAILED,
+            ("Internal data stream error."),
+            ("streaming stopped, reason %s",
+                gst_flow_get_name (sq->srcresult)));
+      } else {
+        GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      }
+
       /* EOS affects the buffering state */
+      GST_MULTI_QUEUE_MUTEX_LOCK (mq);
       update_buffering (mq, sq);
+      GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       single_queue_overrun_cb (sq->queue, sq);
+      gst_multi_queue_post_buffering (mq);
       break;
     case GST_EVENT_SEGMENT:
       apply_segment (mq, sq, sref, &sq->sink_segment);
       gst_event_unref (sref);
+      /* a new segment allows us to accept more buffers if we got EOS
+       * from downstream */
+      GST_MULTI_QUEUE_MUTEX_LOCK (mq);
+      sq->srcresult = GST_FLOW_OK;
+      GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       break;
+    case GST_EVENT_GAP:
+      apply_gap (mq, sq, sref, &sq->sink_segment);
+      gst_event_unref (sref);
     default:
       break;
   }
@@ -1732,9 +1926,19 @@
           GST_DEBUG_OBJECT (mq,
               "SingleQueue %d : Enqueuing query %p of type %s with id %d",
               sq->id, query, GST_QUERY_TYPE_NAME (query), curid);
+          GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
           res = gst_data_queue_push (sq->queue, (GstDataQueueItem *) item);
-          g_cond_wait (&sq->query_handled, &mq->qlock);
+          GST_MULTI_QUEUE_MUTEX_LOCK (mq);
+          /* it might be that the query has been taken out of the queue
+           * while we were unlocked. So, we need to check if the last
+           * handled query is the same one than the one we just
+           * pushed. If it is, we don't need to wait for the condition
+           * variable, otherwise we wait for the condition variable to
+           * be signaled. */
+          if (sq->last_handled_query != query)
+            g_cond_wait (&sq->query_handled, &mq->qlock);
           res = sq->last_query;
+          sq->last_handled_query = NULL;
         } else {
           GST_DEBUG_OBJECT (mq, "refusing query, we are buffering and the "
               "queue is not empty");
@@ -1957,7 +2161,6 @@
   GList *tmp;
   GstDataQueueSize size;
   gboolean filled = TRUE;
-  gboolean all_not_linked = TRUE;
   gboolean empty_found = FALSE;
 
   gst_data_queue_get_level (sq->queue, &size);
@@ -1976,7 +2179,7 @@
     goto done;
   }
 
-  /* Search for empty or unlinked queues */
+  /* Search for empty queues */
   for (tmp = mq->queues; tmp; tmp = g_list_next (tmp)) {
     GstSingleQueue *oq = (GstSingleQueue *) tmp->data;
 
@@ -1988,7 +2191,6 @@
       continue;
     }
 
-    all_not_linked = FALSE;
     GST_LOG_OBJECT (mq, "Checking Queue %d", oq->id);
     if (gst_data_queue_is_empty (oq->queue)) {
       GST_LOG_OBJECT (mq, "Queue %d is empty", oq->id);
@@ -1997,16 +2199,9 @@
     }
   }
 
-  if (!mq->queues || !mq->queues->next)
-    all_not_linked = FALSE;
-
   /* if hard limits are not reached then we allow one more buffer in the full
-   * queue, but only if any of the other singelqueues are empty or all are
-   * not linked */
-  if (all_not_linked || empty_found) {
-    if (all_not_linked) {
-      GST_LOG_OBJECT (mq, "All other queues are not linked");
-    }
+   * queue, but only if any of the other singelqueues are empty */
+  if (empty_found) {
     if (IS_FILLED (sq, visible, size.visible)) {
       sq->max_size.visible = size.visible + 1;
       GST_DEBUG_OBJECT (mq,
@@ -2132,7 +2327,10 @@
   if (was_flushing)
     gst_data_queue_set_flushing (sq->queue, TRUE);
 
+  GST_MULTI_QUEUE_MUTEX_LOCK (sq->mqueue);
   update_buffering (sq->mqueue, sq);
+  GST_MULTI_QUEUE_MUTEX_UNLOCK (sq->mqueue);
+  gst_multi_queue_post_buffering (sq->mqueue);
 }
 
 static void
diff --git a/plugins/elements/gstmultiqueue.h b/plugins/elements/gstmultiqueue.h
index adeeb18..d63eda5 100644
--- a/plugins/elements/gstmultiqueue.h
+++ b/plugins/elements/gstmultiqueue.h
@@ -74,6 +74,9 @@
 			/* GstMultiQueueSize, counter and highid */
 
   gint numwaiting;	/* number of not-linked pads waiting */
+
+  gboolean percent_changed;
+  GMutex buffering_post_lock; /* assures only one posted at a time */
 };
 
 struct _GstMultiQueueClass {
diff --git a/plugins/elements/gstoutputselector.c b/plugins/elements/gstoutputselector.c
index ec12e28..8ad870c 100644
--- a/plugins/elements/gstoutputselector.c
+++ b/plugins/elements/gstoutputselector.c
@@ -52,7 +52,7 @@
 gst_output_selector_pad_negotiation_mode_get_type (void)
 {
   static GType pad_negotiation_mode_type = 0;
-  static GEnumValue pad_negotiation_modes[] = {
+  static const GEnumValue pad_negotiation_modes[] = {
     {GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE, "None", "none"},
     {GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL, "All", "all"},
     {GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE, "Active", "active"},
@@ -119,7 +119,8 @@
   g_object_class_install_property (gobject_class, PROP_ACTIVE_PAD,
       g_param_spec_object ("active-pad", "Active pad",
           "Currently active src pad", GST_TYPE_PAD,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_RESEND_LATEST,
       g_param_spec_boolean ("resend-latest", "Resend latest buffer",
           "Resend latest buffer after a switch to a new pad", FALSE,
@@ -534,29 +535,26 @@
   sel = GST_OUTPUT_SELECTOR (parent);
 
   switch (GST_EVENT_TYPE (event)) {
-    case GST_EVENT_SEGMENT:
+    case GST_EVENT_EOS:
     {
-      gst_event_copy_segment (event, &sel->segment);
-
-      GST_DEBUG_OBJECT (sel, "configured SEGMENT %" GST_SEGMENT_FORMAT,
-          &sel->segment);
-
       res = gst_output_selector_forward_event (sel, event);
       break;
     }
+    case GST_EVENT_SEGMENT:
+    {
+      gst_event_copy_segment (event, &sel->segment);
+      GST_DEBUG_OBJECT (sel, "configured SEGMENT %" GST_SEGMENT_FORMAT,
+          &sel->segment);
+      /* fall through */
+    }
     default:
     {
-      if (GST_EVENT_IS_STICKY (event)) {
-        res = gst_output_selector_forward_event (sel, event);
+      active = gst_output_selector_get_active (sel);
+      if (active) {
+        res = gst_pad_push_event (active, event);
+        gst_object_unref (active);
       } else {
-        /* Send other events to pending or active src pad */
-        active = gst_output_selector_get_active (sel);
-        if (active) {
-          res = gst_pad_push_event (active, event);
-          gst_object_unref (active);
-        } else {
-          gst_event_unref (event);
-        }
+        gst_event_unref (event);
       }
       break;
     }
diff --git a/plugins/elements/gstqueue.c b/plugins/elements/gstqueue.c
index 46e969f..02055cd 100644
--- a/plugins/elements/gstqueue.c
+++ b/plugins/elements/gstqueue.c
@@ -195,6 +195,8 @@
 
 static GstFlowReturn gst_queue_chain (GstPad * pad, GstObject * parent,
     GstBuffer * buffer);
+static GstFlowReturn gst_queue_chain_list (GstPad * pad, GstObject * parent,
+    GstBufferList * buffer_list);
 static GstFlowReturn gst_queue_push_one (GstQueue * queue);
 static void gst_queue_loop (GstPad * pad);
 
@@ -326,35 +328,46 @@
       g_param_spec_uint ("max-size-bytes", "Max. size (kB)",
           "Max. amount of data in the queue (bytes, 0=disable)",
           0, G_MAXUINT, DEFAULT_MAX_SIZE_BYTES,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_BUFFERS,
       g_param_spec_uint ("max-size-buffers", "Max. size (buffers)",
           "Max. number of buffers in the queue (0=disable)", 0, G_MAXUINT,
           DEFAULT_MAX_SIZE_BUFFERS,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_TIME,
       g_param_spec_uint64 ("max-size-time", "Max. size (ns)",
           "Max. amount of data in the queue (in ns, 0=disable)", 0, G_MAXUINT64,
-          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_MAX_SIZE_TIME,
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   g_object_class_install_property (gobject_class, PROP_MIN_THRESHOLD_BYTES,
       g_param_spec_uint ("min-threshold-bytes", "Min. threshold (kB)",
           "Min. amount of data in the queue to allow reading (bytes, 0=disable)",
-          0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          0, G_MAXUINT, 0,
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MIN_THRESHOLD_BUFFERS,
       g_param_spec_uint ("min-threshold-buffers", "Min. threshold (buffers)",
-          "Min. number of buffers in the queue to allow reading (0=disable)",
-          0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          "Min. number of buffers in the queue to allow reading (0=disable)", 0,
+          G_MAXUINT, 0,
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MIN_THRESHOLD_TIME,
       g_param_spec_uint64 ("min-threshold-time", "Min. threshold (ns)",
           "Min. amount of data in the queue to allow reading (in ns, 0=disable)",
-          0, G_MAXUINT64, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          0, G_MAXUINT64, 0,
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   g_object_class_install_property (gobject_class, PROP_LEAKY,
       g_param_spec_enum ("leaky", "Leaky",
           "Where the queue leaks, if at all",
           GST_TYPE_QUEUE_LEAKY, GST_QUEUE_NO_LEAK,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   /**
    * GstQueue:silent
@@ -365,7 +378,8 @@
   g_object_class_install_property (gobject_class, PROP_SILENT,
       g_param_spec_boolean ("silent", "Silent",
           "Don't emit queue signals", FALSE,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   /**
    * GstQueue:flush-on-eos
@@ -385,7 +399,8 @@
   g_object_class_install_property (gobject_class, PROP_FLUSH_ON_EOS,
       g_param_spec_boolean ("flush-on-eos", "Flush on EOS",
           "Discard all data in the queue when an EOS event is received", FALSE,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   gobject_class->finalize = gst_queue_finalize;
 
@@ -404,6 +419,7 @@
   GST_DEBUG_REGISTER_FUNCPTR (gst_queue_handle_src_event);
   GST_DEBUG_REGISTER_FUNCPTR (gst_queue_handle_src_query);
   GST_DEBUG_REGISTER_FUNCPTR (gst_queue_chain);
+  GST_DEBUG_REGISTER_FUNCPTR (gst_queue_chain_list);
 }
 
 static void
@@ -412,6 +428,7 @@
   queue->sinkpad = gst_pad_new_from_static_template (&sinktemplate, "sink");
 
   gst_pad_set_chain_function (queue->sinkpad, gst_queue_chain);
+  gst_pad_set_chain_list_function (queue->sinkpad, gst_queue_chain_list);
   gst_pad_set_activatemode_function (queue->sinkpad,
       gst_queue_sink_activate_mode);
   gst_pad_set_event_function (queue->sinkpad, gst_queue_handle_sink_event);
@@ -548,10 +565,38 @@
   update_time_level (queue);
 }
 
+static void
+apply_gap (GstQueue * queue, GstEvent * event,
+    GstSegment * segment, gboolean is_sink)
+{
+  GstClockTime timestamp;
+  GstClockTime duration;
+
+  gst_event_parse_gap (event, &timestamp, &duration);
+
+  if (GST_CLOCK_TIME_IS_VALID (timestamp)) {
+
+    if (GST_CLOCK_TIME_IS_VALID (duration)) {
+      timestamp += duration;
+    }
+
+    segment->position = timestamp;
+
+    if (is_sink)
+      queue->sink_tainted = TRUE;
+    else
+      queue->src_tainted = TRUE;
+
+    /* calc diff with other end */
+    update_time_level (queue);
+  }
+}
+
+
 /* take a buffer and update segment, updating the time level of the queue. */
 static void
 apply_buffer (GstQueue * queue, GstBuffer * buffer, GstSegment * segment,
-    gboolean with_duration, gboolean sink)
+    gboolean sink)
 {
   GstClockTime duration, timestamp;
 
@@ -564,7 +609,7 @@
     timestamp = segment->position;
 
   /* add duration */
-  if (with_duration && duration != GST_CLOCK_TIME_NONE)
+  if (duration != GST_CLOCK_TIME_NONE)
     timestamp += duration;
 
   GST_LOG_OBJECT (queue, "position updated to %" GST_TIME_FORMAT,
@@ -581,6 +626,53 @@
   update_time_level (queue);
 }
 
+static gboolean
+buffer_list_apply_time (GstBuffer ** buf, guint idx, gpointer user_data)
+{
+  GstClockTime *timestamp = user_data;
+
+  GST_TRACE ("buffer %u has ts %" GST_TIME_FORMAT
+      " duration %" GST_TIME_FORMAT, idx,
+      GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (*buf)),
+      GST_TIME_ARGS (GST_BUFFER_DURATION (*buf)));
+
+  if (GST_BUFFER_TIMESTAMP_IS_VALID (*buf))
+    *timestamp = GST_BUFFER_TIMESTAMP (*buf);
+
+  if (GST_BUFFER_DURATION_IS_VALID (*buf))
+    *timestamp += GST_BUFFER_DURATION (*buf);
+
+  GST_TRACE ("ts now %" GST_TIME_FORMAT, GST_TIME_ARGS (*timestamp));
+
+  return TRUE;
+}
+
+/* take a buffer list and update segment, updating the time level of the queue */
+static void
+apply_buffer_list (GstQueue * queue, GstBufferList * buffer_list,
+    GstSegment * segment, gboolean sink)
+{
+  GstClockTime timestamp;
+
+  /* if no timestamp is set, assume it's continuous with the previous time */
+  timestamp = segment->position;
+
+  gst_buffer_list_foreach (buffer_list, buffer_list_apply_time, &timestamp);
+
+  GST_DEBUG_OBJECT (queue, "position updated to %" GST_TIME_FORMAT,
+      GST_TIME_ARGS (timestamp));
+
+  segment->position = timestamp;
+
+  if (sink)
+    queue->sink_tainted = TRUE;
+  else
+    queue->src_tainted = TRUE;
+
+  /* calc diff with other end */
+  update_time_level (queue);
+}
+
 static void
 gst_queue_locked_flush (GstQueue * queue, gboolean full)
 {
@@ -627,7 +719,41 @@
   /* add buffer to the statistics */
   queue->cur_level.buffers++;
   queue->cur_level.bytes += bsize;
-  apply_buffer (queue, buffer, &queue->sink_segment, TRUE, TRUE);
+  apply_buffer (queue, buffer, &queue->sink_segment, TRUE);
+
+  qitem = g_slice_new (GstQueueItem);
+  qitem->item = item;
+  qitem->is_query = FALSE;
+  qitem->size = bsize;
+  gst_queue_array_push_tail (queue->queue, qitem);
+  GST_QUEUE_SIGNAL_ADD (queue);
+}
+
+static gboolean
+buffer_list_calc_size (GstBuffer ** buf, guint idx, gpointer data)
+{
+  guint *p_size = data;
+  gsize buf_size;
+
+  buf_size = gst_buffer_get_size (*buf);
+  GST_TRACE ("buffer %u in has size %" G_GSIZE_FORMAT, idx, buf_size);
+  *p_size += buf_size;
+  return TRUE;
+}
+
+static inline void
+gst_queue_locked_enqueue_buffer_list (GstQueue * queue, gpointer item)
+{
+  GstQueueItem *qitem;
+  GstBufferList *buffer_list = GST_BUFFER_LIST_CAST (item);
+  gsize bsize = 0;
+
+  gst_buffer_list_foreach (buffer_list, buffer_list_calc_size, &bsize);
+
+  /* add buffer to the statistics */
+  queue->cur_level.buffers += gst_buffer_list_length (buffer_list);
+  queue->cur_level.bytes += bsize;
+  apply_buffer_list (queue, buffer_list, &queue->sink_segment, TRUE);
 
   qitem = g_slice_new (GstQueueItem);
   qitem->item = item;
@@ -667,6 +793,9 @@
        * from downstream */
       queue->unexpected = FALSE;
       break;
+    case GST_EVENT_GAP:
+      apply_gap (queue, event, &queue->sink_segment, TRUE);
+      break;
     default:
       break;
   }
@@ -702,12 +831,24 @@
 
     queue->cur_level.buffers--;
     queue->cur_level.bytes -= bufsize;
-    apply_buffer (queue, buffer, &queue->src_segment, TRUE, FALSE);
+    apply_buffer (queue, buffer, &queue->src_segment, FALSE);
 
     /* if the queue is empty now, update the other side */
     if (queue->cur_level.buffers == 0)
       queue->cur_level.time = 0;
+  } else if (GST_IS_BUFFER_LIST (item)) {
+    GstBufferList *buffer_list = GST_BUFFER_LIST_CAST (item);
 
+    GST_CAT_LOG_OBJECT (queue_dataflow, queue,
+        "retrieved buffer list %p from queue", buffer_list);
+
+    queue->cur_level.buffers -= gst_buffer_list_length (buffer_list);
+    queue->cur_level.bytes -= bufsize;
+    apply_buffer_list (queue, buffer_list, &queue->src_segment, FALSE);
+
+    /* if the queue is empty now, update the other side */
+    if (queue->cur_level.buffers == 0)
+      queue->cur_level.time = 0;
   } else if (GST_IS_EVENT (item)) {
     GstEvent *event = GST_EVENT_CAST (item);
 
@@ -727,6 +868,9 @@
           queue->newseg_applied_to_src = FALSE;
         }
         break;
+      case GST_EVENT_GAP:
+        apply_gap (queue, event, &queue->src_segment, FALSE);
+        break;
       default:
         break;
     }
@@ -792,8 +936,13 @@
       queue->srcresult = GST_FLOW_OK;
       queue->eos = FALSE;
       queue->unexpected = FALSE;
-      gst_pad_start_task (queue->srcpad, (GstTaskFunction) gst_queue_loop,
-          queue->srcpad, NULL);
+      if (gst_pad_is_active (queue->srcpad)) {
+        gst_pad_start_task (queue->srcpad, (GstTaskFunction) gst_queue_loop,
+            queue->srcpad, NULL);
+      } else {
+        GST_INFO_OBJECT (queue->srcpad, "not re-starting task on srcpad, "
+            "pad not active any longer");
+      }
       GST_QUEUE_MUTEX_UNLOCK (queue);
 
       STATUS (queue, pad, "after flush");
@@ -806,11 +955,24 @@
           /* Errors in sticky event pushing are no problem and ignored here
            * as they will cause more meaningful errors during data flow.
            * For EOS events, that are not followed by data flow, we still
-           * return FALSE here though.
+           * return FALSE here though and report an error.
            */
-          if (!GST_EVENT_IS_STICKY (event) ||
-              GST_EVENT_TYPE (event) == GST_EVENT_EOS)
+          if (!GST_EVENT_IS_STICKY (event)) {
+            GST_QUEUE_MUTEX_UNLOCK (queue);
             goto out_flow_error;
+          } else if (GST_EVENT_TYPE (event) == GST_EVENT_EOS) {
+            if (queue->srcresult == GST_FLOW_NOT_LINKED
+                || queue->srcresult < GST_FLOW_EOS) {
+              GST_QUEUE_MUTEX_UNLOCK (queue);
+              GST_ELEMENT_ERROR (queue, STREAM, FAILED,
+                  (_("Internal data flow error.")),
+                  ("streaming task paused, reason %s (%d)",
+                      gst_flow_get_name (queue->srcresult), queue->srcresult));
+            } else {
+              GST_QUEUE_MUTEX_UNLOCK (queue);
+            }
+            goto out_flow_error;
+          }
         }
         /* refuse more events on EOS */
         if (queue->eos)
@@ -838,7 +1000,6 @@
     GST_CAT_LOG_OBJECT (queue_dataflow, queue,
         "refusing event, we have a downstream flow error: %s",
         gst_flow_get_name (queue->srcresult));
-    GST_QUEUE_MUTEX_UNLOCK (queue);
     gst_event_unref (event);
     return FALSE;
   }
@@ -950,11 +1111,27 @@
   }
 }
 
+static gboolean
+discont_first_buffer (GstBuffer ** buffer, guint i, gpointer user_data)
+{
+  GstQueue *queue = user_data;
+  GstBuffer *subbuffer = gst_buffer_make_writable (*buffer);
+
+  if (subbuffer) {
+    *buffer = subbuffer;
+    GST_BUFFER_FLAG_SET (*buffer, GST_BUFFER_FLAG_DISCONT);
+  } else {
+    GST_DEBUG_OBJECT (queue, "Could not mark buffer as DISCONT");
+  }
+
+  return FALSE;
+}
+
 static GstFlowReturn
-gst_queue_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
+gst_queue_chain_buffer_or_list (GstPad * pad, GstObject * parent,
+    GstMiniObject * obj, gboolean is_list)
 {
   GstQueue *queue;
-  GstClockTime duration, timestamp;
 
   queue = GST_QUEUE_CAST (parent);
 
@@ -966,13 +1143,22 @@
   if (queue->unexpected)
     goto out_unexpected;
 
-  timestamp = GST_BUFFER_TIMESTAMP (buffer);
-  duration = GST_BUFFER_DURATION (buffer);
+  if (!is_list) {
+    GstClockTime duration, timestamp;
+    GstBuffer *buffer = GST_BUFFER_CAST (obj);
 
-  GST_CAT_LOG_OBJECT (queue_dataflow, queue, "received buffer %p of size %"
-      G_GSIZE_FORMAT ", time %" GST_TIME_FORMAT ", duration %"
-      GST_TIME_FORMAT, buffer, gst_buffer_get_size (buffer),
-      GST_TIME_ARGS (timestamp), GST_TIME_ARGS (duration));
+    timestamp = GST_BUFFER_TIMESTAMP (buffer);
+    duration = GST_BUFFER_DURATION (buffer);
+
+    GST_CAT_LOG_OBJECT (queue_dataflow, queue, "received buffer %p of size %"
+        G_GSIZE_FORMAT ", time %" GST_TIME_FORMAT ", duration %"
+        GST_TIME_FORMAT, buffer, gst_buffer_get_size (buffer),
+        GST_TIME_ARGS (timestamp), GST_TIME_ARGS (duration));
+  } else {
+    GST_CAT_LOG_OBJECT (queue_dataflow, queue,
+        "received buffer list %p with %u buffers", obj,
+        gst_buffer_list_length (GST_BUFFER_LIST_CAST (obj)));
+  }
 
   /* We make space available if we're "full" according to whatever
    * the user defined as "full". Note that this only applies to buffers.
@@ -1027,19 +1213,33 @@
   }
 
   if (queue->tail_needs_discont) {
-    GstBuffer *subbuffer = gst_buffer_make_writable (buffer);
+    if (!is_list) {
+      GstBuffer *buffer = GST_BUFFER_CAST (obj);
+      GstBuffer *subbuffer = gst_buffer_make_writable (buffer);
 
-    if (subbuffer) {
-      buffer = subbuffer;
-      GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
+      if (subbuffer) {
+        buffer = subbuffer;
+        GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
+      } else {
+        GST_DEBUG_OBJECT (queue, "Could not mark buffer as DISCONT");
+      }
+
+      obj = GST_MINI_OBJECT_CAST (buffer);
     } else {
-      GST_DEBUG_OBJECT (queue, "Could not mark buffer as DISCONT");
+      GstBufferList *buffer_list = GST_BUFFER_LIST_CAST (obj);
+
+      buffer_list = gst_buffer_list_make_writable (buffer_list);
+      gst_buffer_list_foreach (buffer_list, discont_first_buffer, queue);
+      obj = GST_MINI_OBJECT_CAST (buffer_list);
     }
     queue->tail_needs_discont = FALSE;
   }
 
   /* put buffer in queue now */
-  gst_queue_locked_enqueue_buffer (queue, buffer);
+  if (is_list)
+    gst_queue_locked_enqueue_buffer_list (queue, obj);
+  else
+    gst_queue_locked_enqueue_buffer (queue, obj);
   GST_QUEUE_MUTEX_UNLOCK (queue);
 
   return GST_FLOW_OK;
@@ -1049,7 +1249,7 @@
   {
     GST_QUEUE_MUTEX_UNLOCK (queue);
 
-    gst_buffer_unref (buffer);
+    gst_mini_object_unref (obj);
 
     return GST_FLOW_OK;
   }
@@ -1060,7 +1260,7 @@
     GST_CAT_LOG_OBJECT (queue_dataflow, queue,
         "exit because task paused, reason: %s", gst_flow_get_name (ret));
     GST_QUEUE_MUTEX_UNLOCK (queue);
-    gst_buffer_unref (buffer);
+    gst_mini_object_unref (obj);
 
     return ret;
   }
@@ -1069,7 +1269,7 @@
     GST_CAT_LOG_OBJECT (queue_dataflow, queue, "exit because we received EOS");
     GST_QUEUE_MUTEX_UNLOCK (queue);
 
-    gst_buffer_unref (buffer);
+    gst_mini_object_unref (obj);
 
     return GST_FLOW_EOS;
   }
@@ -1078,12 +1278,27 @@
     GST_CAT_LOG_OBJECT (queue_dataflow, queue, "exit because we received EOS");
     GST_QUEUE_MUTEX_UNLOCK (queue);
 
-    gst_buffer_unref (buffer);
+    gst_mini_object_unref (obj);
 
     return GST_FLOW_EOS;
   }
 }
 
+static GstFlowReturn
+gst_queue_chain_list (GstPad * pad, GstObject * parent,
+    GstBufferList * buffer_list)
+{
+  return gst_queue_chain_buffer_or_list (pad, parent,
+      GST_MINI_OBJECT_CAST (buffer_list), TRUE);
+}
+
+static GstFlowReturn
+gst_queue_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
+{
+  return gst_queue_chain_buffer_or_list (pad, parent,
+      GST_MINI_OBJECT_CAST (buffer), FALSE);
+}
+
 /* dequeue an item from the queue an push it downstream. This functions returns
  * the result of the push. */
 static GstFlowReturn
@@ -1091,31 +1306,49 @@
 {
   GstFlowReturn result = queue->srcresult;
   GstMiniObject *data;
+  gboolean is_list;
 
   data = gst_queue_locked_dequeue (queue);
   if (data == NULL)
     goto no_item;
 
 next:
-  if (GST_IS_BUFFER (data)) {
-    GstBuffer *buffer;
+  is_list = GST_IS_BUFFER_LIST (data);
 
-    buffer = GST_BUFFER_CAST (data);
+  if (GST_IS_BUFFER (data) || is_list) {
+    if (!is_list) {
+      GstBuffer *buffer;
 
-    if (queue->head_needs_discont) {
-      GstBuffer *subbuffer = gst_buffer_make_writable (buffer);
+      buffer = GST_BUFFER_CAST (data);
 
-      if (subbuffer) {
-        buffer = subbuffer;
-        GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
-      } else {
-        GST_DEBUG_OBJECT (queue, "Could not mark buffer as DISCONT");
+      if (queue->head_needs_discont) {
+        GstBuffer *subbuffer = gst_buffer_make_writable (buffer);
+
+        if (subbuffer) {
+          buffer = subbuffer;
+          GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
+        } else {
+          GST_DEBUG_OBJECT (queue, "Could not mark buffer as DISCONT");
+        }
+        queue->head_needs_discont = FALSE;
       }
-      queue->head_needs_discont = FALSE;
-    }
 
-    GST_QUEUE_MUTEX_UNLOCK (queue);
-    result = gst_pad_push (queue->srcpad, buffer);
+      GST_QUEUE_MUTEX_UNLOCK (queue);
+      result = gst_pad_push (queue->srcpad, buffer);
+    } else {
+      GstBufferList *buffer_list;
+
+      buffer_list = GST_BUFFER_LIST_CAST (data);
+
+      if (queue->head_needs_discont) {
+        buffer_list = gst_buffer_list_make_writable (buffer_list);
+        gst_buffer_list_foreach (buffer_list, discont_first_buffer, queue);
+        queue->head_needs_discont = FALSE;
+      }
+
+      GST_QUEUE_MUTEX_UNLOCK (queue);
+      result = gst_pad_push_list (queue->srcpad, buffer_list);
+    }
 
     /* need to check for srcresult here as well */
     GST_QUEUE_MUTEX_LOCK_CHECK (queue, out_flushing);
@@ -1131,6 +1364,10 @@
           GST_CAT_LOG_OBJECT (queue_dataflow, queue,
               "dropping EOS buffer %p", data);
           gst_buffer_unref (GST_BUFFER_CAST (data));
+        } else if (GST_IS_BUFFER_LIST (data)) {
+          GST_CAT_LOG_OBJECT (queue_dataflow, queue,
+              "dropping EOS buffer list %p", data);
+          gst_buffer_list_unref (GST_BUFFER_LIST_CAST (data));
         } else if (GST_IS_EVENT (data)) {
           GstEvent *event = GST_EVENT_CAST (data);
           GstEventType type = GST_EVENT_TYPE (event);
@@ -1262,10 +1499,13 @@
     gst_pad_pause_task (queue->srcpad);
     GST_CAT_LOG_OBJECT (queue_dataflow, queue,
         "pause task, reason:  %s", gst_flow_get_name (ret));
-    if (ret == GST_FLOW_FLUSHING)
+    if (ret == GST_FLOW_FLUSHING) {
       gst_queue_locked_flush (queue, FALSE);
-    else
+    } else {
       GST_QUEUE_SIGNAL_DEL (queue);
+      queue->last_query = FALSE;
+      g_cond_signal (&queue->query_handled);
+    }
     GST_QUEUE_MUTEX_UNLOCK (queue);
     /* let app know about us giving up if upstream is not expected to do so */
     /* EOS is already taken care of elsewhere */
@@ -1371,13 +1611,17 @@
        * limit, the best thing we can do is to return an infinite delay. In
        * reality a better estimate would be the byte/buffer rate but that is not
        * possible right now. */
-      if (queue->max_size.time > 0 && max != -1)
+      /* TODO: Use CONVERT query? */
+      if (queue->max_size.time > 0 && max != -1
+          && queue->leaky == GST_QUEUE_NO_LEAK)
         max += queue->max_size.time;
+      else if (queue->max_size.time > 0 && queue->leaky != GST_QUEUE_NO_LEAK)
+        max = MIN (queue->max_size.time, max);
       else
         max = -1;
 
       /* adjust for min-threshold */
-      if (queue->min_threshold.time > 0 && min != -1)
+      if (queue->min_threshold.time > 0)
         min += queue->min_threshold.time;
 
       gst_query_set_latency (query, live, min, max);
diff --git a/plugins/elements/gstqueue2.c b/plugins/elements/gstqueue2.c
index 144c684..7ac1e4e 100644
--- a/plugins/elements/gstqueue2.c
+++ b/plugins/elements/gstqueue2.c
@@ -206,6 +206,16 @@
   }                                                                     \
 } G_STMT_END
 
+#define SET_PERCENT(q, perc) G_STMT_START {                              \
+  if (perc != q->buffering_percent) {                                    \
+    q->buffering_percent = perc;                                         \
+    q->percent_changed = TRUE;                                           \
+    GST_DEBUG_OBJECT (q, "buffering %d percent", perc);                  \
+    get_buffering_stats (q, perc, &q->mode, &q->avg_in, &q->avg_out,     \
+        &q->buffering_left);                                             \
+  }                                                                      \
+} G_STMT_END
+
 #define _do_init \
     GST_DEBUG_CATEGORY_INIT (queue_debug, "queue2", 0, "queue element"); \
     GST_DEBUG_CATEGORY_INIT (queue_dataflow, "queue2_dataflow", 0, \
@@ -254,6 +264,7 @@
 
 static void update_cur_level (GstQueue2 * queue, GstQueue2Range * range);
 static void update_in_rates (GstQueue2 * queue);
+static void gst_queue2_post_buffering (GstQueue2 * queue);
 
 typedef enum
 {
@@ -299,21 +310,25 @@
       g_param_spec_uint ("max-size-bytes", "Max. size (kB)",
           "Max. amount of data in the queue (bytes, 0=disable)",
           0, G_MAXUINT, DEFAULT_MAX_SIZE_BYTES,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_BUFFERS,
       g_param_spec_uint ("max-size-buffers", "Max. size (buffers)",
           "Max. number of buffers in the queue (0=disable)", 0, G_MAXUINT,
           DEFAULT_MAX_SIZE_BUFFERS,
-          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_MAX_SIZE_TIME,
       g_param_spec_uint64 ("max-size-time", "Max. size (ns)",
           "Max. amount of data in the queue (in ns, 0=disable)", 0, G_MAXUINT64,
-          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_MAX_SIZE_TIME, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   g_object_class_install_property (gobject_class, PROP_USE_BUFFERING,
       g_param_spec_boolean ("use-buffering", "Use buffering",
           "Emit GST_MESSAGE_BUFFERING based on low-/high-percent thresholds",
-          DEFAULT_USE_BUFFERING, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_USE_BUFFERING, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
   g_object_class_install_property (gobject_class, PROP_USE_RATE_ESTIMATE,
       g_param_spec_boolean ("use-rate-estimate", "Use Rate Estimate",
           "Estimate the bitrate of the stream to calculate time level",
@@ -449,6 +464,7 @@
   g_cond_init (&queue->query_handled);
   queue->last_query = FALSE;
 
+  g_mutex_init (&queue->buffering_post_lock);
   queue->buffering_percent = 100;
 
   /* tempfile related */
@@ -482,6 +498,7 @@
   queue->last_query = FALSE;
   g_queue_clear (&queue->queue);
   g_mutex_clear (&queue->qlock);
+  g_mutex_clear (&queue->buffering_post_lock);
   g_cond_clear (&queue->item_add);
   g_cond_clear (&queue->item_del);
   g_cond_clear (&queue->query_handled);
@@ -699,6 +716,33 @@
   update_time_level (queue);
 }
 
+static void
+apply_gap (GstQueue2 * queue, GstEvent * event,
+    GstSegment * segment, gboolean is_sink)
+{
+  GstClockTime timestamp;
+  GstClockTime duration;
+
+  gst_event_parse_gap (event, &timestamp, &duration);
+
+  if (GST_CLOCK_TIME_IS_VALID (timestamp)) {
+
+    if (GST_CLOCK_TIME_IS_VALID (duration)) {
+      timestamp += duration;
+    }
+
+    segment->position = timestamp;
+
+    if (is_sink)
+      queue->sink_tainted = TRUE;
+    else
+      queue->src_tainted = TRUE;
+
+    /* calc diff with other end */
+    update_time_level (queue);
+  }
+}
+
 /* take a buffer and update segment, updating the time level of the queue. */
 static void
 apply_buffer (GstQueue2 * queue, GstBuffer * buffer, GstSegment * segment,
@@ -869,10 +913,35 @@
 }
 
 static void
+gst_queue2_post_buffering (GstQueue2 * queue)
+{
+  GstMessage *msg = NULL;
+
+  g_mutex_lock (&queue->buffering_post_lock);
+  GST_QUEUE2_MUTEX_LOCK (queue);
+  if (queue->percent_changed) {
+    gint percent = queue->buffering_percent;
+
+    queue->percent_changed = FALSE;
+
+    GST_DEBUG_OBJECT (queue, "Going to post buffering: %d%%", percent);
+    msg = gst_message_new_buffering (GST_OBJECT_CAST (queue), percent);
+
+    gst_message_set_buffering_stats (msg, queue->mode, queue->avg_in,
+        queue->avg_out, queue->buffering_left);
+  }
+  GST_QUEUE2_MUTEX_UNLOCK (queue);
+
+  if (msg != NULL)
+    gst_element_post_message (GST_ELEMENT_CAST (queue), msg);
+
+  g_mutex_unlock (&queue->buffering_post_lock);
+}
+
+static void
 update_buffering (GstQueue2 * queue)
 {
   gint percent;
-  gboolean post = FALSE;
 
   /* Ensure the variables used to calculate buffering state are up-to-date. */
   if (queue->current)
@@ -883,42 +952,19 @@
     return;
 
   if (queue->is_buffering) {
-    post = TRUE;
     /* if we were buffering see if we reached the high watermark */
-    if (percent >= queue->high_percent)
+    if (percent >= 100)
       queue->is_buffering = FALSE;
+
+    SET_PERCENT (queue, percent);
   } else {
     /* we were not buffering, check if we need to start buffering if we drop
      * below the low threshold */
     if (percent < queue->low_percent) {
       queue->is_buffering = TRUE;
-      post = TRUE;
+      SET_PERCENT (queue, percent);
     }
   }
-
-  if (post) {
-    if (percent == queue->buffering_percent)
-      post = FALSE;
-    else
-      queue->buffering_percent = percent;
-  }
-
-  if (post) {
-    GstMessage *message;
-    GstBufferingMode mode;
-    gint avg_in, avg_out;
-    gint64 buffering_left;
-
-    get_buffering_stats (queue, percent, &mode, &avg_in, &avg_out,
-        &buffering_left);
-
-    message = gst_message_new_buffering (GST_OBJECT_CAST (queue),
-        (gint) percent);
-    gst_message_set_buffering_stats (message, mode,
-        avg_in, avg_out, buffering_left);
-
-    gst_element_post_message (GST_ELEMENT_CAST (queue), message);
-  }
 }
 
 static void
@@ -1983,7 +2029,7 @@
 
     /* add buffer to the statistics */
     if (QUEUE_IS_USING_QUEUE (queue)) {
-      queue->cur_level.buffers++;
+      queue->cur_level.buffers += gst_buffer_list_length (buffer_list);
       queue->cur_level.bytes += size;
     }
     queue->bytes_in += size;
@@ -2027,6 +2073,9 @@
          * from downstream */
         queue->unexpected = FALSE;
         break;
+      case GST_EVENT_GAP:
+        apply_gap (queue, event, &queue->sink_segment, TRUE);
+        break;
       case GST_EVENT_STREAM_START:
         if (!QUEUE_IS_USING_QUEUE (queue)) {
           gst_event_replace (&queue->stream_start_event, event);
@@ -2155,6 +2204,9 @@
       case GST_EVENT_SEGMENT:
         apply_segment (queue, event, &queue->src_segment, FALSE);
         break;
+      case GST_EVENT_GAP:
+        apply_gap (queue, event, &queue->src_segment, FALSE);
+        break;
       default:
         break;
     }
@@ -2170,7 +2222,7 @@
         "retrieved buffer list %p from queue", buffer_list);
 
     if (QUEUE_IS_USING_QUEUE (queue)) {
-      queue->cur_level.buffers--;
+      queue->cur_level.buffers -= gst_buffer_list_length (buffer_list);
       queue->cur_level.bytes -= size;
     }
     queue->bytes_out += size;
@@ -2286,11 +2338,31 @@
       if (GST_EVENT_IS_SERIALIZED (event)) {
         /* serialized events go in the queue */
         GST_QUEUE2_MUTEX_LOCK_CHECK (queue, queue->sinkresult, out_flushing);
+        if (queue->srcresult != GST_FLOW_OK) {
+          /* Errors in sticky event pushing are no problem and ignored here
+           * as they will cause more meaningful errors during data flow.
+           * For EOS events, that are not followed by data flow, we still
+           * return FALSE here though and report an error.
+           */
+          if (!GST_EVENT_IS_STICKY (event)) {
+            goto out_flow_error;
+          } else if (GST_EVENT_TYPE (event) == GST_EVENT_EOS) {
+            if (queue->srcresult == GST_FLOW_NOT_LINKED
+                || queue->srcresult < GST_FLOW_EOS) {
+              GST_ELEMENT_ERROR (queue, STREAM, FAILED,
+                  (_("Internal data flow error.")),
+                  ("streaming task paused, reason %s (%d)",
+                      gst_flow_get_name (queue->srcresult), queue->srcresult));
+            }
+            goto out_flow_error;
+          }
+        }
         /* refuse more events on EOS */
         if (queue->is_eos)
           goto out_eos;
         gst_queue2_locked_enqueue (queue, event, GST_QUEUE2_ITEM_TYPE_EVENT);
         GST_QUEUE2_MUTEX_UNLOCK (queue);
+        gst_queue2_post_buffering (queue);
       } else {
         /* non-serialized events are passed upstream. */
         ret = gst_pad_push_event (queue->srcpad, event);
@@ -2314,6 +2386,15 @@
     gst_event_unref (event);
     return FALSE;
   }
+out_flow_error:
+  {
+    GST_LOG_OBJECT (queue,
+        "refusing event, we have a downstream flow error: %s",
+        gst_flow_get_name (queue->srcresult));
+    GST_QUEUE2_MUTEX_UNLOCK (queue);
+    gst_event_unref (event);
+    return FALSE;
+  }
 }
 
 static gboolean
@@ -2358,6 +2439,7 @@
           res = FALSE;
         }
         GST_QUEUE2_MUTEX_UNLOCK (queue);
+        gst_queue2_post_buffering (queue);
       } else {
         res = gst_pad_query_default (pad, parent, query);
       }
@@ -2458,6 +2540,7 @@
   /* put buffer in queue now */
   gst_queue2_locked_enqueue (queue, item, item_type);
   GST_QUEUE2_MUTEX_UNLOCK (queue);
+  gst_queue2_post_buffering (queue);
 
   return GST_FLOW_OK;
 
@@ -2598,6 +2681,7 @@
       item_type == GST_QUEUE2_ITEM_TYPE_BUFFER ||
       item_type == GST_QUEUE2_ITEM_TYPE_BUFFER_LIST);
   GST_QUEUE2_MUTEX_UNLOCK (queue);
+  gst_queue2_post_buffering (queue);
 
   if (item_type == GST_QUEUE2_ITEM_TYPE_BUFFER) {
     GstBuffer *buffer;
@@ -2717,6 +2801,7 @@
     goto out_flushing;
 
   GST_QUEUE2_MUTEX_UNLOCK (queue);
+  gst_queue2_post_buffering (queue);
 
   return;
 
@@ -2727,6 +2812,13 @@
     GstFlowReturn ret = queue->srcresult;
 
     gst_pad_pause_task (queue->srcpad);
+    if (ret == GST_FLOW_FLUSHING) {
+      gst_queue2_locked_flush (queue, FALSE, FALSE);
+    } else {
+      GST_QUEUE2_SIGNAL_DEL (queue);
+      queue->last_query = FALSE;
+      g_cond_signal (&queue->query_handled);
+    }
     GST_QUEUE2_MUTEX_UNLOCK (queue);
     GST_CAT_LOG_OBJECT (queue_dataflow, queue,
         "pause task, reason:  %s", gst_flow_get_name (queue->srcresult));
@@ -3077,6 +3169,7 @@
   /* FIXME - function will block when the range is not yet available */
   ret = gst_queue2_create_read (queue, offset, length, buffer);
   GST_QUEUE2_MUTEX_UNLOCK (queue);
+  gst_queue2_post_buffering (queue);
 
   return ret;
 
@@ -3402,13 +3495,10 @@
     case PROP_USE_BUFFERING:
       queue->use_buffering = g_value_get_boolean (value);
       if (!queue->use_buffering && queue->is_buffering) {
-        GstMessage *msg = gst_message_new_buffering (GST_OBJECT_CAST (queue),
-            100);
-
         GST_DEBUG_OBJECT (queue, "Disabled buffering while buffering, "
             "posting 100%% message");
+        SET_PERCENT (queue, 100);
         queue->is_buffering = FALSE;
-        gst_element_post_message (GST_ELEMENT_CAST (queue), msg);
       }
 
       if (queue->use_buffering) {
@@ -3440,6 +3530,7 @@
   }
 
   GST_QUEUE2_MUTEX_UNLOCK (queue);
+  gst_queue2_post_buffering (queue);
 }
 
 static void
diff --git a/plugins/elements/gstqueue2.h b/plugins/elements/gstqueue2.h
index bbd614d..9a881b0 100644
--- a/plugins/elements/gstqueue2.h
+++ b/plugins/elements/gstqueue2.h
@@ -153,6 +153,13 @@
   guint8 * ring_buffer;
 
   volatile gint downstream_may_block;
+
+  GstBufferingMode mode;
+  gint64 buffering_left;
+  gint avg_in;
+  gint avg_out;
+  gboolean percent_changed;
+  GMutex buffering_post_lock; /* assures only one posted at a time */
 };
 
 struct _GstQueue2Class
diff --git a/plugins/elements/gststreamiddemux.c b/plugins/elements/gststreamiddemux.c
new file mode 100644
index 0000000..c9d99f1
--- /dev/null
+++ b/plugins/elements/gststreamiddemux.c
@@ -0,0 +1,402 @@
+/* GStreamer streamiddemux element
+ *
+ * Copyright 2013 LGE Corporation.
+ *  @author: Hoonhee Lee <hoonhee.lee@lge.com>
+ *  @author: Jeongseok Kim <jeongseok.kim@lge.com>
+ *  @author: Wonchul Lee <wonchul86.lee@lge.com>
+ *
+ * gststreamiddemux.c: Simple stream-id-demultiplexer element
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
+ */
+
+/**
+ * SECTION:element-streamid-demux
+ * @see_also: #GstFunnel
+ *
+ * Direct input stream to one out of N output pads by stream-id.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <string.h>
+
+#include "gststreamiddemux.h"
+
+GST_DEBUG_CATEGORY_STATIC (streamid_demux_debug);
+#define GST_CAT_DEFAULT streamid_demux_debug
+
+enum
+{
+  PROP_0,
+  PROP_ACTIVE_PAD,
+  PROP_LAST
+};
+
+static GstStaticPadTemplate gst_streamid_demux_sink_factory =
+GST_STATIC_PAD_TEMPLATE ("sink",
+    GST_PAD_SINK,
+    GST_PAD_ALWAYS,
+    GST_STATIC_CAPS_ANY);
+
+static GstStaticPadTemplate gst_streamid_demux_src_factory =
+GST_STATIC_PAD_TEMPLATE ("src_%u",
+    GST_PAD_SRC,
+    GST_PAD_SOMETIMES,
+    GST_STATIC_CAPS_ANY);
+
+#define _do_init \
+GST_DEBUG_CATEGORY_INIT (streamid_demux_debug, \
+        "streamiddemux", 0, "Streamid demuxer");
+#define gst_streamid_demux_parent_class parent_class
+G_DEFINE_TYPE_WITH_CODE (GstStreamidDemux, gst_streamid_demux,
+    GST_TYPE_ELEMENT, _do_init);
+
+static void gst_streamid_demux_dispose (GObject * object);
+static void gst_streamid_demux_get_property (GObject * object, guint prop_id,
+    GValue * value, GParamSpec * pspec);
+static GstFlowReturn gst_streamid_demux_chain (GstPad * pad,
+    GstObject * parent, GstBuffer * buf);
+static gboolean gst_streamid_demux_event (GstPad * pad, GstObject * parent,
+    GstEvent * event);
+static GstStateChangeReturn gst_streamid_demux_change_state (GstElement *
+    element, GstStateChange transition);
+static GstPad *gst_streamid_demux_get_srcpad_by_stream_id (GstStreamidDemux *
+    demux, const gchar * stream_id);
+static gboolean gst_streamid_demux_srcpad_create (GstStreamidDemux * demux,
+    GstPad * pad, const gchar * stream_id);
+static void gst_streamid_demux_reset (GstStreamidDemux * demux);
+static void gst_streamid_demux_release_srcpad (const GValue * item,
+    GstStreamidDemux * demux);
+
+static void
+gst_streamid_demux_class_init (GstStreamidDemuxClass * klass)
+{
+  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
+
+  gobject_class->get_property = gst_streamid_demux_get_property;
+  gobject_class->dispose = gst_streamid_demux_dispose;
+
+  g_object_class_install_property (gobject_class, PROP_ACTIVE_PAD,
+      g_param_spec_object ("active-pad", "Active pad",
+          "The currently active src pad", GST_TYPE_PAD,
+          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
+
+  gst_element_class_set_static_metadata (gstelement_class, "Streamid Demux",
+      "Generic", "1-to-N output stream by stream-id",
+      "HoonHee Lee <hoonhee.lee@lge.com>");
+  gst_element_class_add_pad_template (gstelement_class,
+      gst_static_pad_template_get (&gst_streamid_demux_sink_factory));
+
+  gst_element_class_add_pad_template (gstelement_class,
+      gst_static_pad_template_get (&gst_streamid_demux_src_factory));
+
+  gstelement_class->change_state = gst_streamid_demux_change_state;
+}
+
+static void
+gst_streamid_demux_init (GstStreamidDemux * demux)
+{
+  demux->sinkpad =
+      gst_pad_new_from_static_template (&gst_streamid_demux_sink_factory,
+      "sink");
+  gst_pad_set_chain_function (demux->sinkpad,
+      GST_DEBUG_FUNCPTR (gst_streamid_demux_chain));
+  gst_pad_set_event_function (demux->sinkpad,
+      GST_DEBUG_FUNCPTR (gst_streamid_demux_event));
+
+  gst_element_add_pad (GST_ELEMENT (demux), demux->sinkpad);
+
+  /* srcpad management */
+  demux->active_srcpad = NULL;
+  demux->nb_srcpads = 0;
+
+  /* initialize hash table for srcpad */
+  demux->stream_id_pairs =
+      g_hash_table_new_full (g_str_hash, g_str_equal, (GDestroyNotify) g_free,
+      (GDestroyNotify) gst_object_unref);
+}
+
+static void
+gst_streamid_demux_dispose (GObject * object)
+{
+  GstStreamidDemux *demux = GST_STREAMID_DEMUX (object);
+
+  gst_streamid_demux_reset (demux);
+
+  G_OBJECT_CLASS (parent_class)->dispose (object);
+}
+
+static void
+gst_streamid_demux_get_property (GObject * object, guint prop_id,
+    GValue * value, GParamSpec * pspec)
+{
+  GstStreamidDemux *demux = GST_STREAMID_DEMUX (object);
+
+  switch (prop_id) {
+    case PROP_ACTIVE_PAD:
+      GST_OBJECT_LOCK (demux);
+      g_value_set_object (value, demux->active_srcpad);
+      GST_OBJECT_UNLOCK (demux);
+      break;
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+      break;
+  }
+}
+
+static gboolean
+forward_sticky_events (GstPad * pad, GstEvent ** event, gpointer user_data)
+{
+  GstPad *srcpad = GST_PAD_CAST (user_data);
+
+  gst_pad_push_event (srcpad, gst_event_ref (*event));
+
+  return TRUE;
+}
+
+static gboolean
+gst_streamid_demux_srcpad_create (GstStreamidDemux * demux, GstPad * pad,
+    const gchar * stream_id)
+{
+  gchar *padname = NULL;
+  GstPad *srcpad = NULL;
+  GstPadTemplate *pad_tmpl = NULL;
+
+  padname = g_strdup_printf ("src_%u", demux->nb_srcpads++);
+  pad_tmpl = gst_static_pad_template_get (&gst_streamid_demux_src_factory);
+
+  GST_LOG_OBJECT (demux, "generating a srcpad:%s", padname);
+  srcpad = gst_pad_new_from_template (pad_tmpl, padname);
+  gst_object_unref (pad_tmpl);
+  g_free (padname);
+  g_return_val_if_fail (srcpad != NULL, FALSE);
+
+  demux->active_srcpad = srcpad;
+  g_hash_table_insert (demux->stream_id_pairs, g_strdup (stream_id),
+      gst_object_ref (srcpad));
+
+  return TRUE;
+}
+
+static GstFlowReturn
+gst_streamid_demux_chain (GstPad * pad, GstObject * parent, GstBuffer * buf)
+{
+  GstFlowReturn res = GST_FLOW_OK;
+  GstStreamidDemux *demux = NULL;
+  GstPad *srcpad = NULL;
+
+  demux = GST_STREAMID_DEMUX (parent);
+
+  GST_LOG_OBJECT (demux, "pushing buffer to %" GST_PTR_FORMAT,
+      demux->active_srcpad);
+
+  GST_OBJECT_LOCK (demux);
+  if (demux->active_srcpad) {
+    srcpad = gst_object_ref (demux->active_srcpad);
+    GST_OBJECT_UNLOCK (demux);
+    res = gst_pad_push (srcpad, buf);
+    gst_object_unref (srcpad);
+  } else {
+    GST_OBJECT_UNLOCK (demux);
+    goto no_active_srcpad;
+  }
+
+  GST_LOG_OBJECT (demux, "handled buffer %s", gst_flow_get_name (res));
+  return res;
+
+/* ERROR */
+no_active_srcpad:
+  {
+    GST_WARNING_OBJECT (demux, "srcpad is not initialized");
+    return GST_FLOW_NOT_NEGOTIATED;
+  }
+}
+
+static GstPad *
+gst_streamid_demux_get_srcpad_by_stream_id (GstStreamidDemux * demux,
+    const gchar * stream_id)
+{
+  GstPad *srcpad = NULL;
+
+  GST_DEBUG_OBJECT (demux, "stream_id = %s", stream_id);
+  if (demux->stream_id_pairs == NULL || stream_id == NULL) {
+    goto done;
+  }
+
+  srcpad = g_hash_table_lookup (demux->stream_id_pairs, stream_id);
+
+  if (srcpad) {
+    GST_DEBUG_OBJECT (demux, "srcpad = %s:%s matched",
+        GST_DEBUG_PAD_NAME (srcpad));
+  }
+
+done:
+  return srcpad;
+}
+
+static gboolean
+gst_streamid_demux_event (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  gboolean res = TRUE;
+  GstStreamidDemux *demux;
+  const gchar *stream_id = NULL;
+  GstPad *active_srcpad = NULL;
+
+  demux = GST_STREAMID_DEMUX (parent);
+
+  GST_DEBUG_OBJECT (demux, "event = %s, sticky = %d",
+      GST_EVENT_TYPE_NAME (event), GST_EVENT_IS_STICKY (event));
+
+  if (GST_EVENT_TYPE (event) == GST_EVENT_STREAM_START) {
+    gst_event_parse_stream_start (event, &stream_id);
+    if (!stream_id)
+      goto no_stream_id;
+
+    GST_OBJECT_LOCK (demux);
+    active_srcpad =
+        gst_streamid_demux_get_srcpad_by_stream_id (demux, stream_id);
+    if (!active_srcpad) {
+      /* try to generate a srcpad */
+      if (gst_streamid_demux_srcpad_create (demux, pad, stream_id)) {
+        GST_OBJECT_UNLOCK (demux);
+
+        gst_pad_set_active (demux->active_srcpad, TRUE);
+        /* Forward sticky events to the new srcpad */
+        gst_pad_sticky_events_foreach (demux->sinkpad, forward_sticky_events,
+            demux->active_srcpad);
+        gst_element_add_pad (GST_ELEMENT_CAST (demux), demux->active_srcpad);
+      } else {
+        GST_OBJECT_UNLOCK (demux);
+        goto fail_create_srcpad;
+      }
+    } else if (demux->active_srcpad != active_srcpad) {
+      demux->active_srcpad = active_srcpad;
+      GST_OBJECT_UNLOCK (demux);
+
+      g_object_notify (G_OBJECT (demux), "active-pad");
+    } else
+      GST_OBJECT_UNLOCK (demux);
+  }
+
+  if (GST_EVENT_TYPE (event) == GST_EVENT_FLUSH_START
+      || GST_EVENT_TYPE (event) == GST_EVENT_FLUSH_STOP
+      || GST_EVENT_TYPE (event) == GST_EVENT_EOS) {
+    res = gst_pad_event_default (pad, parent, event);
+  } else if (demux->active_srcpad) {
+    GstPad *srcpad = NULL;
+    GST_OBJECT_LOCK (demux);
+    srcpad = gst_object_ref (demux->active_srcpad);
+    GST_OBJECT_UNLOCK (demux);
+    res = gst_pad_push_event (srcpad, event);
+    gst_object_unref (srcpad);
+  } else {
+    gst_event_unref (event);
+  }
+  return res;
+
+  /* ERRORS */
+no_stream_id:
+  {
+    GST_ELEMENT_ERROR (demux, STREAM, DEMUX,
+        ("Error occurred trying to get stream-id to create a srcpad"),
+        ("no stream-id found at %s", GST_EVENT_TYPE_NAME (event)));
+
+    gst_event_unref (event);
+    return FALSE;
+  }
+
+fail_create_srcpad:
+  {
+    GST_ELEMENT_ERROR (demux, STREAM, FAILED,
+        ("Error occurred trying to create a srcpad"),
+        ("Failed to create a srcpad via stream-id:%s", stream_id));
+    gst_event_unref (event);
+    return FALSE;
+  }
+}
+
+static void
+gst_streamid_demux_release_srcpad (const GValue * item,
+    GstStreamidDemux * demux)
+{
+  GstPad *pad = g_value_get_object (item);
+
+  if (pad != NULL) {
+    gst_pad_set_active (pad, FALSE);
+    gst_element_remove_pad (GST_ELEMENT_CAST (demux), pad);
+  }
+}
+
+static void
+gst_streamid_demux_reset (GstStreamidDemux * demux)
+{
+  GstIterator *it = NULL;
+  GstIteratorResult itret = GST_ITERATOR_OK;
+
+  GST_OBJECT_LOCK (demux);
+  if (demux->active_srcpad != NULL)
+    demux->active_srcpad = NULL;
+
+  demux->nb_srcpads = 0;
+  GST_OBJECT_UNLOCK (demux);
+
+  if (demux->stream_id_pairs != NULL) {
+    g_hash_table_unref (demux->stream_id_pairs);
+    demux->stream_id_pairs = NULL;
+  }
+
+  it = gst_element_iterate_src_pads (GST_ELEMENT_CAST (demux));
+  while (itret == GST_ITERATOR_OK || itret == GST_ITERATOR_RESYNC) {
+    itret =
+        gst_iterator_foreach (it,
+        (GstIteratorForeachFunction) gst_streamid_demux_release_srcpad, demux);
+    if (itret == GST_ITERATOR_RESYNC)
+      gst_iterator_resync (it);
+  }
+  gst_iterator_free (it);
+}
+
+static GstStateChangeReturn
+gst_streamid_demux_change_state (GstElement * element,
+    GstStateChange transition)
+{
+  GstStreamidDemux *demux;
+  GstStateChangeReturn result;
+
+  demux = GST_STREAMID_DEMUX (element);
+
+  switch (transition) {
+    case GST_STATE_CHANGE_READY_TO_PAUSED:
+      break;
+    default:
+      break;
+  }
+
+  result = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
+
+  switch (transition) {
+    case GST_STATE_CHANGE_PAUSED_TO_READY:
+      gst_streamid_demux_reset (demux);
+      break;
+    default:
+      break;
+  }
+
+  return result;
+}
diff --git a/plugins/elements/gststreamiddemux.h b/plugins/elements/gststreamiddemux.h
new file mode 100644
index 0000000..ec5383b
--- /dev/null
+++ b/plugins/elements/gststreamiddemux.h
@@ -0,0 +1,66 @@
+/*
+ * GStreamer streamiddemux eleement
+ *
+ * Copyright 2013 LGE Corporation.
+ *  @author: Hoonhee Lee <hoonhee.lee@lge.com>
+ *  @author: Jeongseok Kim <jeongseok.kim@lge.com>
+ *  @author: Wonchul Lee <wonchul86.lee@lge.com>
+ *
+ * gststreamiddemux.h: Simple stream-id-demultiplexer element
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
+ */
+
+#ifndef __GST_STREAMID_DEMUX_H__
+#define __GST_STREAMID_DEMUX_H__
+
+#include <gst/gst.h>
+
+G_BEGIN_DECLS
+#define GST_TYPE_STREAMID_DEMUX \
+  (gst_streamid_demux_get_type())
+#define GST_STREAMID_DEMUX(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_STREAMID_DEMUX, GstStreamidDemux))
+#define GST_STREAMID_DEMUX_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_STREAMID_DEMUX, GstStreamidDemuxClass))
+#define GST_IS_STREAMID_DEMUX(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_STREAMID_DEMUX))
+#define GST_IS_STREAMID_DEMUX_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_STREAMID_DEMUX))
+typedef struct _GstStreamidDemux GstStreamidDemux;
+typedef struct _GstStreamidDemuxClass GstStreamidDemuxClass;
+
+struct _GstStreamidDemux
+{
+  GstElement element;
+
+  GstPad *sinkpad;
+
+  guint nb_srcpads;
+  GstPad *active_srcpad;
+
+  /* This table contains srcpad and stream-id */
+  GHashTable *stream_id_pairs;
+};
+
+struct _GstStreamidDemuxClass
+{
+  GstElementClass parent_class;
+};
+
+G_GNUC_INTERNAL GType gst_streamid_demux_get_type (void);
+
+G_END_DECLS
+#endif /* __GST_STREAMID_DEMUX_H__ */
diff --git a/plugins/elements/gsttee.c b/plugins/elements/gsttee.c
index fac7bbb..81fcea7 100644
--- a/plugins/elements/gsttee.c
+++ b/plugins/elements/gsttee.c
@@ -37,7 +37,7 @@
  * <refsect2>
  * <title>Example launch line</title>
  * |[
- * gst-launch filesrc location=song.ogg ! decodebin2 ! tee name=t ! queue ! autoaudiosink t. ! queue ! audioconvert ! goom ! videoconvert ! autovideosink
+ * gst-launch filesrc location=song.ogg ! decodebin ! tee name=t ! queue ! autoaudiosink t. ! queue ! audioconvert ! goom ! videoconvert ! autovideosink
  * ]| Play a song.ogg from local dir and render visualisations using the goom
  * element.
  * </refsect2>
diff --git a/plugins/elements/gsttypefindelement.c b/plugins/elements/gsttypefindelement.c
index 400c370..6ac9133 100644
--- a/plugins/elements/gsttypefindelement.c
+++ b/plugins/elements/gsttypefindelement.c
@@ -135,10 +135,6 @@
 static void gst_type_find_element_get_property (GObject * object,
     guint prop_id, GValue * value, GParamSpec * pspec);
 
-#if 0
-static const GstEventMask *gst_type_find_element_src_event_mask (GstPad * pad);
-#endif
-
 static gboolean gst_type_find_element_src_event (GstPad * pad,
     GstObject * parent, GstEvent * event);
 static gboolean gst_type_find_handle_src_query (GstPad * pad,
@@ -528,6 +524,7 @@
   GST_OBJECT_LOCK (typefind);
   if (typefind->caps)
     gst_caps_replace (&typefind->caps, NULL);
+  typefind->initial_offset = GST_BUFFER_OFFSET_NONE;
   GST_OBJECT_UNLOCK (typefind);
 
   typefind->mode = MODE_TYPEFIND;
@@ -540,6 +537,7 @@
   gboolean push_cached_buffers;
   gsize avail;
   GstBuffer *buffer;
+  GstClockTime pts, dts;
 
   gst_element_get_state (GST_ELEMENT (typefind), &state, NULL, 0);
 
@@ -557,7 +555,12 @@
   if (avail == 0)
     goto no_data;
 
+  pts = gst_adapter_prev_pts (typefind->adapter, NULL);
+  dts = gst_adapter_prev_dts (typefind->adapter, NULL);
   buffer = gst_adapter_take_buffer (typefind->adapter, avail);
+  GST_BUFFER_PTS (buffer) = pts;
+  GST_BUFFER_DTS (buffer) = dts;
+  GST_BUFFER_OFFSET (buffer) = typefind->initial_offset;
   GST_OBJECT_UNLOCK (typefind);
 
   if (!push_cached_buffers) {
@@ -648,13 +651,12 @@
           GST_OBJECT_LOCK (typefind);
 
           for (l = typefind->cached_events; l; l = l->next) {
-            if (!GST_EVENT_IS_STICKY (l->data) ||
-                GST_EVENT_TYPE (l->data) == GST_EVENT_SEGMENT ||
-                GST_EVENT_TYPE (l->data) == GST_EVENT_EOS) {
-              gst_event_unref (l->data);
-            } else {
+            if (GST_EVENT_IS_STICKY (l->data) &&
+                GST_EVENT_TYPE (l->data) != GST_EVENT_SEGMENT &&
+                GST_EVENT_TYPE (l->data) != GST_EVENT_EOS) {
               gst_pad_store_sticky_event (typefind->src, l->data);
             }
+            gst_event_unref (l->data);
           }
 
           g_list_free (typefind->cached_events);
@@ -839,6 +841,8 @@
     case MODE_TYPEFIND:
     {
       GST_OBJECT_LOCK (typefind);
+      if (typefind->initial_offset == GST_BUFFER_OFFSET_NONE)
+        typefind->initial_offset = GST_BUFFER_OFFSET (buffer);
       gst_adapter_push (typefind->adapter, buffer);
       GST_OBJECT_UNLOCK (typefind);
 
@@ -1175,10 +1179,12 @@
         typefind->offset = 0;
         res = TRUE;
       } else {
+        gst_segment_init (&typefind->segment, GST_FORMAT_UNDEFINED);
         res = gst_pad_stop_task (pad);
       }
       break;
     case GST_PAD_MODE_PUSH:
+      gst_segment_init (&typefind->segment, GST_FORMAT_UNDEFINED);
       if (active)
         start_typefinding (typefind);
       else
diff --git a/plugins/elements/gsttypefindelement.h b/plugins/elements/gsttypefindelement.h
index 3551ac5..bf92b4d 100644
--- a/plugins/elements/gsttypefindelement.h
+++ b/plugins/elements/gsttypefindelement.h
@@ -59,6 +59,8 @@
   GList *               cached_events;
   GstCaps *             force_caps;
 
+  guint64		initial_offset;
+  
   /* Only used when driving the pipeline */
   gboolean need_segment;
   gboolean need_stream_start;
diff --git a/plugins/elements/gstvalve.c b/plugins/elements/gstvalve.c
index e12e150..6a37353 100644
--- a/plugins/elements/gstvalve.c
+++ b/plugins/elements/gstvalve.c
@@ -26,7 +26,7 @@
  * The valve is a simple element that drops buffers when the #GstValve:drop
  * property is set to %TRUE and lets then through otherwise.
  *
- * Any downstream error received while the #GstValve:drop property is %FALSE
+ * Any downstream error received while the #GstValve:drop property is %TRUE
  * is ignored. So downstream element can be set to  %GST_STATE_NULL and removed,
  * without using pad blocking.
  */
@@ -92,7 +92,8 @@
   g_object_class_install_property (gobject_class, PROP_DROP,
       g_param_spec_boolean ("drop", "Drop buffers and events",
           "Whether to drop buffers and events or let them through",
-          DEFAULT_DROP, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          DEFAULT_DROP, G_PARAM_READWRITE | GST_PARAM_MUTABLE_PLAYING |
+          G_PARAM_STATIC_STRINGS));
 
   gst_element_class_add_pad_template (gstelement_class,
       gst_static_pad_template_get (&srctemplate));
diff --git a/po/af.gmo b/po/af.gmo
index 3d9b5f4..017b168 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index 2b96e93..c64cbd2 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.9.7\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2005-12-05 11:45+0200\n"
 "Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
 "Language-Team: Afrikaans <i18n@af.org.za>\n"
@@ -939,6 +939,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -1020,6 +1026,9 @@
 msgid "writable"
 msgstr "titel"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/az.gmo b/po/az.gmo
index 5f064da..aa32d81 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index 6cadef6..6c34653 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2004-03-19 18:40+0200\n"
 "Last-Translator: Metin Amiroff <metin@karegen.com>\n"
 "Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
@@ -888,6 +888,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -966,6 +972,9 @@
 msgid "writable"
 msgstr ""
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/be.gmo b/po/be.gmo
index 8dadaf2..db5a92f 100644
--- a/po/be.gmo
+++ b/po/be.gmo
Binary files differ
diff --git a/po/be.po b/po/be.po
index 8ee9cd3..08cdacc 100644
--- a/po/be.po
+++ b/po/be.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.9.7\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2006-01-18 22:26+0200\n"
 "Last-Translator: Ales Nyakhaychyk <nab@mail.by>\n"
 "Language-Team: Belarusian <i18n@mova.org>\n"
@@ -896,6 +896,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -976,6 +982,9 @@
 msgid "writable"
 msgstr "загаловак"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/bg.gmo b/po/bg.gmo
index f458001..41063e8 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index 0875d43..c67cc48 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2011-04-26 22:40+0300\n"
 "Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
@@ -931,6 +931,12 @@
 "Ограничаване на позволените възможности („NULL“ означава всякакви). "
 "Задаването на това свойство поема указател към подадения обект GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Не е указана временна папка"
 
@@ -1009,6 +1015,9 @@
 msgid "writable"
 msgstr "с права за запис"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "може да се контролира"
 
diff --git a/po/ca.gmo b/po/ca.gmo
index 3357b1f..04e95b6 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 82cb9cd..6b66492 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-11-04 19:41+0100\n"
 "Last-Translator: Jordi Mallach <jordi@sindominio.net>\n"
 "Language-Team: Catalan <ca@dodds.net>\n"
@@ -941,6 +941,12 @@
 "Restringeix les capacitats que es poden permetre (NUL vol dir QUALSEVOL). "
 "Establir aquesta propietat pren una referència a l'objecte GstCaps proveït."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "No s'ha especificat un directori temporal."
 
@@ -1019,6 +1025,9 @@
 msgid "writable"
 msgstr "escrivible"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "controlable"
 
diff --git a/po/cs.gmo b/po/cs.gmo
index 93f9073..5716b3d 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 8ce734e..ba944e2 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-03-09 11:07+0100\n"
 "Last-Translator: Marek Černocký <marek@manet.cz>\n"
 "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
@@ -930,6 +930,12 @@
 "Omezit povolené schopnosti (NULL znamená VŠECHNY). Nastavení této vlastnosti "
 "přebírá odkaz na zadaný objekt GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Není určena složka pro dočasné soubory."
 
@@ -1008,6 +1014,9 @@
 msgid "writable"
 msgstr "lze zapisovat"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "lze ovládat"
 
diff --git a/po/da.gmo b/po/da.gmo
index b5e2b77..d13b0cd 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index 7b9044e..2766a66 100644
--- a/po/da.po
+++ b/po/da.po
@@ -3,13 +3,13 @@
 # This file is distributed under the same license as the gstreamer package.
 #
 # Mogens Jæger <mogensjaeger@gmail.com>, 2010.
-# Mogens Jaeger <mogensjaeger@gmail.com>, 2007, 2010, 2013.
+# Mogens Jaeger <mogensjaeger@gmail.com>, 2007, 2010, 2013, 2014.
 msgid ""
 msgstr ""
-"Project-Id-Version: gstreamer 1.2.1\n"
+"Project-Id-Version: gstreamer 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
-"PO-Revision-Date: 2013-12-08 12:41+0100\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
+"PO-Revision-Date: 2014-07-16 13:26+0200\n"
 "Last-Translator: Mogens Jaeger <mogensjaeger@gmail.com>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
 "Language: da\n"
@@ -204,9 +204,8 @@
 msgid "No space left on the resource."
 msgstr "Der er ikke mere ledig plads på ressourcen."
 
-#, fuzzy
 msgid "Not authorized to access resource."
-msgstr "Der er ikke mere ledig plads på ressourcen."
+msgstr "Ikke autoriseret til at tilgå ressourcen."
 
 msgid "GStreamer encountered a general stream error."
 msgstr "GStreamer opdagede en generel fejl i mediestrømmen."
@@ -812,10 +811,10 @@
 msgstr "Information om personerne bag et remix og lignende fortolkninger"
 
 msgid "midi-base-note"
-msgstr ""
+msgstr "midi-base-node"
 
 msgid "Midi note number of the audio track."
-msgstr ""
+msgstr "Midi-nodenummer på lydsporet."
 
 msgid ", "
 msgstr ", "
@@ -842,11 +841,11 @@
 
 #, c-format
 msgid "link has no source [sink=%s@%p]"
-msgstr ""
+msgstr "Henvisningen har ingen kilde [sink=%s@%p]"
 
 #, c-format
 msgid "link has no sink [source=%s@%p]"
-msgstr ""
+msgstr "Linket har ingen sink [kilde=%s@%p]"
 
 #, c-format
 msgid "no property \"%s\" in element \"%s\""
@@ -866,11 +865,11 @@
 
 #, c-format
 msgid "unexpected reference \"%s\" - ignoring"
-msgstr ""
+msgstr "uventet reference \"%s\" - ignorerer"
 
 #, c-format
 msgid "unexpected pad-reference \"%s\" - ignoring"
-msgstr ""
+msgstr "uventet pad-reference \"%s\" - ignorerer"
 
 #, c-format
 msgid "could not parse caps \"%s\""
@@ -885,18 +884,18 @@
 msgstr "intet kildeelement for URI \"%s\""
 
 msgid "syntax error"
-msgstr ""
+msgstr "syntaksfejl"
 
 msgid "bin"
-msgstr ""
+msgstr "lager"
 
 #, c-format
 msgid "specified empty bin \"%s\", not allowed"
 msgstr "specificeret tomt lager \"%s\", er ikke tilladt"
 
-#, fuzzy, c-format
+#, c-format
 msgid "no bin \"%s\", unpacking elements"
-msgstr "intet lager \"%s\", sprunget over"
+msgstr "intet lager \"%s\", udpakker elementer"
 
 msgid "empty pipeline not allowed"
 msgstr "tom rørledning ikke tilladt"
@@ -929,6 +928,12 @@
 "Begræns den mulige tilladte kapabilitet (NUL betyder ALT). Sættes denne "
 "egenskab gives en reference til det leverede GstCaps objekt."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Der er ikke angivet en mappe til midlertidige filer."
 
@@ -1008,6 +1013,9 @@
 msgid "writable"
 msgstr "som kan skrives"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "kontrollerbar"
 
diff --git a/po/de.gmo b/po/de.gmo
index 49b888f..a69a5d2 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index d9ecdd2..d403a6a 100644
--- a/po/de.po
+++ b/po/de.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-22 20:48+0100\n"
 "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
@@ -956,6 +956,12 @@
 "Beschränkt die möglichen Filterfähigkeiten (NULL bedeutet ALLE). Setzen "
 "dieser Eigenschaft referenziert ein hinzugefügtes GstCaps-Objekt."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Kein temporärer Ordner angegeben."
 
@@ -1034,6 +1040,9 @@
 msgid "writable"
 msgstr "schreibbar"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "regelbar"
 
diff --git a/po/el.gmo b/po/el.gmo
index 3665af0..61bcc64 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index 72aaa7d..d1fb6d5 100644
--- a/po/el.po
+++ b/po/el.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-11-29 11:14+0200\n"
 "Last-Translator: Michael Kotsarinis <mk73628@gmail.com>\n"
 "Language-Team: Greek <team@lists.gnome.gr>\n"
@@ -953,6 +953,12 @@
 "ρύθμιση αυτής της ιδιότητας απαιτεί μια αναφορά στο παρεχόμενο αντικείμενο "
 "GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Δεν ορίσθηκε προσωρινός κατάλογος (Temp)."
 
@@ -1031,6 +1037,9 @@
 msgid "writable"
 msgstr "εγγράψιμο"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "ελεγχόμενο"
 
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index 5e85ea5..ef56b12 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 f97597f..2b4b4ac 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2004-04-26 10:36-0400\n"
 "Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
 "Language-Team: English (British) <en_gb@li.org>\n"
@@ -941,6 +941,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -1022,6 +1028,9 @@
 msgid "writable"
 msgstr "title"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/eo.gmo b/po/eo.gmo
index 7d42007..97b18ae 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index 637a2d7..92e801f 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2011-06-04 21:11+0100\n"
 "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
 "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
@@ -878,6 +878,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -956,6 +962,9 @@
 msgid "writable"
 msgstr "skribeble"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "regeble"
 
diff --git a/po/es.gmo b/po/es.gmo
index 23327a9..2a47f83 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index 051ac39..de3c883 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2011-10-02 15:45+0200\n"
 "Last-Translator: Jorge González González <aloriel@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -944,6 +944,12 @@
 "Al establecer esta propiedad se obtiene una referencia del objeto GstCaps "
 "proporcionado."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "No se especificó un directorio temporal."
 
@@ -1022,6 +1028,9 @@
 msgid "writable"
 msgstr "escribible"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "controlable"
 
diff --git a/po/eu.gmo b/po/eu.gmo
index 955e903..67f6481 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 07e5fcc..2188471 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-0.10.26.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-03-25 13:10+0100\n"
 "Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
 "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
@@ -942,6 +942,12 @@
 "Mugatu onar daitezkeen ahalmenak (NULLek EDOZER adierazten du). Propietate "
 "hori ezartzen bada, emandako GstCaps objektuaren erreferentzia hartzen du."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Ez da aldi baterako direktoriorik zehaztu."
 
@@ -1021,6 +1027,9 @@
 msgid "writable"
 msgstr "idatz daitekeena"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "kontrola daitekeena"
 
diff --git a/po/fi.gmo b/po/fi.gmo
index 6e7e85f..0ccb048 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 87223ce..fb6acc8 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -12,7 +12,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-11-17 23:10+0200\n"
 "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -939,6 +939,12 @@
 "Rajoita mahdollisia sallittuja kykyjä (NULL tarkoittaa mitä tahansa). Tämän "
 "ominaisuuden asettaminen ottaa kahvan annettuun GstCaps-olioon."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Tilapäishakemistoa ei ole määritetty."
 
@@ -1017,6 +1023,9 @@
 msgid "writable"
 msgstr "kirjoitettavissa"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "ohjattavissa"
 
diff --git a/po/fr.gmo b/po/fr.gmo
index 9cbb429..8d3c6d2 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index c24997b..ffae30b 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2012-12-05 19:31+0100\n"
 "Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
 "Language-Team: French <traduc@traduc.org>\n"
@@ -935,6 +935,12 @@
 "définition de cette propriété nécessite une référence à l'objet GSTCaps "
 "fourni."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Aucun répertoire temporaire indiqué."
 
@@ -1013,6 +1019,9 @@
 msgid "writable"
 msgstr "accès en écriture"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "contrôlable"
 
diff --git a/po/gl.gmo b/po/gl.gmo
index 148ca3e..ddbbf68 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index 0b2900a..1271bcf 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2012-12-15 03:29+0200\n"
 "Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n"
 "Language-Team: Galician <proxecto@trasno.net>\n"
@@ -932,6 +932,12 @@
 "estabelecer esta propiedade obtense unha referencia do obxecto GstCaps "
 "fornecido."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Non se especificou un directorio temporal."
 
@@ -1010,6 +1016,9 @@
 msgid "writable"
 msgstr "escribíbel"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "controlábel"
 
diff --git a/po/gstreamer-1.0.pot b/po/gstreamer-1.0.pot
index df059d6..ae58ea2 100644
--- a/po/gstreamer-1.0.pot
+++ b/po/gstreamer-1.0.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: gstreamer 1.3.3\n"
+"Project-Id-Version: gstreamer 1.5.0.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\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"
@@ -105,7 +105,7 @@
 msgid "Show GStreamer Options"
 msgstr ""
 
-#: gst/gst.c:872
+#: gst/gst.c:873
 msgid "Unknown option"
 msgstr ""
 
@@ -306,11 +306,11 @@
 msgid "No standard error message for domain %s and code %d."
 msgstr ""
 
-#: gst/gstpipeline.c:523
+#: gst/gstpipeline.c:524
 msgid "Selected clock cannot be used in pipeline."
 msgstr ""
 
-#: gst/gstregistry.c:1691
+#: gst/gstregistry.c:1693
 #, c-format
 msgid "Error writing registry cache to %s: %s"
 msgstr ""
@@ -1008,22 +1008,22 @@
 msgid ", "
 msgstr ""
 
-#: gst/gsturi.c:589
+#: gst/gsturi.c:674
 #, c-format
 msgid "No URI handler for the %s protocol found"
 msgstr ""
 
-#: gst/gsturi.c:762
+#: gst/gsturi.c:849
 #, c-format
 msgid "URI scheme '%s' not supported"
 msgstr ""
 
-#: gst/gstutils.c:2352 tools/gst-launch.c:321
+#: gst/gstutils.c:2419 tools/gst-launch.c:324
 #, c-format
 msgid "ERROR: from element %s: %s\n"
 msgstr ""
 
-#: gst/gstutils.c:2354 tools/gst-launch.c:323 tools/gst-launch.c:650
+#: gst/gstutils.c:2421 tools/gst-launch.c:326 tools/gst-launch.c:669
 #, c-format
 msgid ""
 "Additional debug info:\n"
@@ -1040,196 +1040,205 @@
 msgid "link has no sink [source=%s@%p]"
 msgstr ""
 
-#: gst/parse/grammar.y:408
+#: gst/parse/grammar.y:411
 #, c-format
 msgid "no property \"%s\" in element \"%s\""
 msgstr ""
 
-#: gst/parse/grammar.y:449
+#: gst/parse/grammar.y:452
 #, c-format
 msgid "could not set property \"%s\" in element \"%s\" to \"%s\""
 msgstr ""
 
-#: gst/parse/grammar.y:612
+#: gst/parse/grammar.y:615
 #, c-format
 msgid "could not link %s to %s"
 msgstr ""
 
-#: gst/parse/grammar.y:687
+#: gst/parse/grammar.y:690
 #, c-format
 msgid "no element \"%s\""
 msgstr ""
 
-#: gst/parse/grammar.y:748
+#: gst/parse/grammar.y:751
 #, c-format
 msgid "unexpected reference \"%s\" - ignoring"
 msgstr ""
 
-#: gst/parse/grammar.y:754
+#: gst/parse/grammar.y:757
 #, c-format
 msgid "unexpected pad-reference \"%s\" - ignoring"
 msgstr ""
 
-#: gst/parse/grammar.y:793
+#: gst/parse/grammar.y:796
 #, c-format
 msgid "could not parse caps \"%s\""
 msgstr ""
 
-#: gst/parse/grammar.y:821
+#: gst/parse/grammar.y:824
 #, c-format
 msgid "no sink element for URI \"%s\""
 msgstr ""
 
-#: gst/parse/grammar.y:840
+#: gst/parse/grammar.y:843
 #, c-format
 msgid "no source element for URI \"%s\""
 msgstr ""
 
-#: gst/parse/grammar.y:930
+#: gst/parse/grammar.y:933
 msgid "syntax error"
 msgstr ""
 
-#: gst/parse/grammar.y:944
+#: gst/parse/grammar.y:947
 msgid "bin"
 msgstr ""
 
-#: gst/parse/grammar.y:953
+#: gst/parse/grammar.y:956
 #, c-format
 msgid "specified empty bin \"%s\", not allowed"
 msgstr ""
 
-#: gst/parse/grammar.y:963
+#: gst/parse/grammar.y:966
 #, c-format
 msgid "no bin \"%s\", unpacking elements"
 msgstr ""
 
-#: gst/parse/grammar.y:994
+#: gst/parse/grammar.y:997
 msgid "empty pipeline not allowed"
 msgstr ""
 
-#: libs/gst/base/gstbasesink.c:2788
+#: libs/gst/base/gstbasesink.c:2792
 msgid "A lot of buffers are being dropped."
 msgstr ""
 
-#: libs/gst/base/gstbasesink.c:3300
+#: libs/gst/base/gstbasesink.c:3319
 msgid "Internal data flow problem."
 msgstr ""
 
-#: libs/gst/base/gstbasesink.c:3970
+#: libs/gst/base/gstbasesink.c:3995
 msgid "Internal data stream error."
 msgstr ""
 
-#: libs/gst/base/gstbasesink.c:3980 libs/gst/base/gstbasesrc.c:2932
-#: libs/gst/base/gstbasesrc.c:2941 plugins/elements/gstdownloadbuffer.c:1322
-#: plugins/elements/gstqueue.c:1274 plugins/elements/gstqueue2.c:2737
+#: libs/gst/base/gstbasesink.c:4005 libs/gst/base/gstbasesrc.c:2942
+#: libs/gst/base/gstbasesrc.c:2951 plugins/elements/gstdownloadbuffer.c:1324
+#: plugins/elements/gstqueue.c:968 plugins/elements/gstqueue.c:1514
+#: plugins/elements/gstqueue2.c:2353 plugins/elements/gstqueue2.c:2829
 msgid "Internal data flow error."
 msgstr ""
 
-#: libs/gst/base/gstbasesrc.c:2531
+#: libs/gst/base/gstbasesrc.c:2541
 msgid "Internal clock error."
 msgstr ""
 
-#: libs/gst/base/gstbasesrc.c:2559
+#: libs/gst/base/gstbasesrc.c:2569
 msgid "Failed to map buffer."
 msgstr ""
 
-#: plugins/elements/gstcapsfilter.c:103
+#: plugins/elements/gstcapsfilter.c:125
 msgid "Filter caps"
 msgstr ""
 
-#: plugins/elements/gstcapsfilter.c:104
+#: plugins/elements/gstcapsfilter.c:126
 msgid ""
 "Restrict the possible allowed capabilities (NULL means ANY). Setting this "
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
-#: plugins/elements/gstdownloadbuffer.c:919 plugins/elements/gstqueue2.c:1490
+#: plugins/elements/gstcapsfilter.c:133
+msgid "Caps Change Mode"
+msgstr ""
+
+#: plugins/elements/gstcapsfilter.c:134
+msgid "Filter caps change behaviour"
+msgstr ""
+
+#: plugins/elements/gstdownloadbuffer.c:921 plugins/elements/gstqueue2.c:1536
 msgid "No Temp directory specified."
 msgstr ""
 
-#: plugins/elements/gstdownloadbuffer.c:925 plugins/elements/gstqueue2.c:1496
+#: plugins/elements/gstdownloadbuffer.c:927 plugins/elements/gstqueue2.c:1542
 #, c-format
 msgid "Could not create temp file \"%s\"."
 msgstr ""
 
-#: plugins/elements/gstdownloadbuffer.c:933 plugins/elements/gstfilesrc.c:517
-#: plugins/elements/gstqueue2.c:1504
+#: plugins/elements/gstdownloadbuffer.c:935 plugins/elements/gstfilesrc.c:518
+#: plugins/elements/gstqueue2.c:1550
 #, c-format
 msgid "Could not open file \"%s\" for reading."
 msgstr ""
 
-#: plugins/elements/gstdownloadbuffer.c:1244 plugins/elements/gstqueue2.c:1910
+#: plugins/elements/gstdownloadbuffer.c:1246 plugins/elements/gstqueue2.c:1956
 msgid "Error while writing to download file."
 msgstr ""
 
-#: plugins/elements/gstfilesink.c:416
+#: plugins/elements/gstfilesink.c:422
 msgid "No file name specified for writing."
 msgstr ""
 
-#: plugins/elements/gstfilesink.c:422
+#: plugins/elements/gstfilesink.c:428
 #, c-format
 msgid "Could not open file \"%s\" for writing."
 msgstr ""
 
-#: plugins/elements/gstfilesink.c:447
+#: plugins/elements/gstfilesink.c:453
 #, c-format
 msgid "Error closing file \"%s\"."
 msgstr ""
 
-#: plugins/elements/gstfilesink.c:611
+#: plugins/elements/gstfilesink.c:617
 #, c-format
 msgid "Error while seeking in file \"%s\"."
 msgstr ""
 
-#: plugins/elements/gstfilesink.c:619 plugins/elements/gstfilesink.c:682
+#: plugins/elements/gstfilesink.c:625
 #, c-format
 msgid "Error while writing to file \"%s\"."
 msgstr ""
 
-#: plugins/elements/gstfilesrc.c:505
+#: plugins/elements/gstfilesrc.c:506
 msgid "No file name specified for reading."
 msgstr ""
 
-#: plugins/elements/gstfilesrc.c:526
+#: plugins/elements/gstfilesrc.c:527
 #, c-format
 msgid "Could not get info on \"%s\"."
 msgstr ""
 
-#: plugins/elements/gstfilesrc.c:532
+#: plugins/elements/gstfilesrc.c:533
 #, c-format
 msgid "\"%s\" is a directory."
 msgstr ""
 
-#: plugins/elements/gstfilesrc.c:538
+#: plugins/elements/gstfilesrc.c:539
 #, c-format
 msgid "File \"%s\" is a socket."
 msgstr ""
 
-#: plugins/elements/gstidentity.c:598
+#: plugins/elements/gstidentity.c:605
 msgid "Failed after iterations as requested."
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:204
+#: plugins/elements/gsttypefindelement.c:200
 msgid "caps"
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:205
+#: plugins/elements/gsttypefindelement.c:201
 msgid "detected capabilities in stream"
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:208
+#: plugins/elements/gsttypefindelement.c:204
 msgid "minimum"
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:213
+#: plugins/elements/gsttypefindelement.c:209
 msgid "force caps"
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:214
+#: plugins/elements/gsttypefindelement.c:210
 msgid "force caps without doing a typefind"
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:1051
+#: plugins/elements/gsttypefindelement.c:1055
 msgid "Stream contains no data."
 msgstr ""
 
@@ -1246,66 +1255,70 @@
 msgstr ""
 
 #: tools/gst-inspect.c:294
-msgid "controllable"
+msgid "deprecated"
 msgstr ""
 
 #: tools/gst-inspect.c:298
-msgid "changeable in NULL, READY, PAUSED or PLAYING state"
-msgstr ""
-
-#: tools/gst-inspect.c:300
-msgid "changeable only in NULL, READY or PAUSED state"
+msgid "controllable"
 msgstr ""
 
 #: tools/gst-inspect.c:302
+msgid "changeable in NULL, READY, PAUSED or PLAYING state"
+msgstr ""
+
+#: tools/gst-inspect.c:304
+msgid "changeable only in NULL, READY or PAUSED state"
+msgstr ""
+
+#: tools/gst-inspect.c:306
 msgid "changeable only in NULL or READY state"
 msgstr ""
 
-#: tools/gst-inspect.c:907
+#: tools/gst-inspect.c:910
 msgid "Blacklisted files:"
 msgstr ""
 
-#: tools/gst-inspect.c:919 tools/gst-inspect.c:1008
+#: tools/gst-inspect.c:922 tools/gst-inspect.c:1011
 msgid "Total count: "
 msgstr ""
 
-#: tools/gst-inspect.c:920
+#: tools/gst-inspect.c:923
 #, c-format
 msgid "%d blacklisted file"
 msgid_plural "%d blacklisted files"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tools/gst-inspect.c:1009
+#: tools/gst-inspect.c:1012
 #, c-format
 msgid "%d plugin"
 msgid_plural "%d plugins"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tools/gst-inspect.c:1012
+#: tools/gst-inspect.c:1015
 #, c-format
 msgid "%d blacklist entry"
 msgid_plural "%d blacklist entries"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tools/gst-inspect.c:1017
+#: tools/gst-inspect.c:1020
 #, c-format
 msgid "%d feature"
 msgid_plural "%d features"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tools/gst-inspect.c:1452
+#: tools/gst-inspect.c:1456
 msgid "Print all elements"
 msgstr ""
 
-#: tools/gst-inspect.c:1454
+#: tools/gst-inspect.c:1458
 msgid "Print list of blacklisted files"
 msgstr ""
 
-#: tools/gst-inspect.c:1456
+#: tools/gst-inspect.c:1460
 msgid ""
 "Print a machine-parsable list of features the specified plugin or all "
 "plugins provide.\n"
@@ -1313,282 +1326,282 @@
 "automatic plugin installation mechanisms"
 msgstr ""
 
-#: tools/gst-inspect.c:1461
+#: tools/gst-inspect.c:1465
 msgid "List the plugin contents"
 msgstr ""
 
-#: tools/gst-inspect.c:1463
+#: tools/gst-inspect.c:1467
 msgid "Check if the specified element or plugin exists"
 msgstr ""
 
-#: tools/gst-inspect.c:1466
+#: tools/gst-inspect.c:1470
 msgid ""
 "When checking if an element or plugin exists, also check that its version is "
 "at least the version specified"
 msgstr ""
 
-#: tools/gst-inspect.c:1470
+#: tools/gst-inspect.c:1474
 msgid "Print supported URI schemes, with the elements that implement them"
 msgstr ""
 
-#: tools/gst-inspect.c:1610
+#: tools/gst-inspect.c:1617
 #, c-format
 msgid "Could not load plugin file: %s\n"
 msgstr ""
 
-#: tools/gst-inspect.c:1615
+#: tools/gst-inspect.c:1622
 #, c-format
 msgid "No such element or plugin '%s'\n"
 msgstr ""
 
-#: tools/gst-launch.c:248
+#: tools/gst-launch.c:251
 msgid "Index statistics"
 msgstr ""
 
-#: tools/gst-launch.c:531
+#: tools/gst-launch.c:550
 #, c-format
 msgid "Got message #%u from element \"%s\" (%s): "
 msgstr ""
 
-#: tools/gst-launch.c:535
+#: tools/gst-launch.c:554
 #, c-format
 msgid "Got message #%u from pad \"%s:%s\" (%s): "
 msgstr ""
 
-#: tools/gst-launch.c:539
+#: tools/gst-launch.c:558
 #, c-format
 msgid "Got message #%u from object \"%s\" (%s): "
 msgstr ""
 
-#: tools/gst-launch.c:543
+#: tools/gst-launch.c:562
 #, c-format
 msgid "Got message #%u (%s): "
 msgstr ""
 
-#: tools/gst-launch.c:575
+#: tools/gst-launch.c:594
 #, c-format
 msgid "Got EOS from element \"%s\".\n"
 msgstr ""
 
-#: tools/gst-launch.c:584
+#: tools/gst-launch.c:603
 #, c-format
 msgid "FOUND TAG      : found by element \"%s\".\n"
 msgstr ""
 
-#: tools/gst-launch.c:587
+#: tools/gst-launch.c:606
 #, c-format
 msgid "FOUND TAG      : found by pad \"%s:%s\".\n"
 msgstr ""
 
-#: tools/gst-launch.c:590
+#: tools/gst-launch.c:609
 #, c-format
 msgid "FOUND TAG      : found by object \"%s\".\n"
 msgstr ""
 
-#: tools/gst-launch.c:593
+#: tools/gst-launch.c:612
 msgid "FOUND TAG\n"
 msgstr ""
 
-#: tools/gst-launch.c:608
+#: tools/gst-launch.c:627
 #, c-format
 msgid "FOUND TOC      : found by element \"%s\".\n"
 msgstr ""
 
-#: tools/gst-launch.c:611
+#: tools/gst-launch.c:630
 #, c-format
 msgid "FOUND TOC      : found by object \"%s\".\n"
 msgstr ""
 
-#: tools/gst-launch.c:614
+#: tools/gst-launch.c:633
 msgid "FOUND TOC\n"
 msgstr ""
 
-#: tools/gst-launch.c:631
+#: tools/gst-launch.c:650
 #, c-format
 msgid ""
 "INFO:\n"
 "%s\n"
 msgstr ""
 
-#: tools/gst-launch.c:648
+#: tools/gst-launch.c:667
 #, c-format
 msgid "WARNING: from element %s: %s\n"
 msgstr ""
 
-#: tools/gst-launch.c:683
+#: tools/gst-launch.c:702
 msgid "Prerolled, waiting for buffering to finish...\n"
 msgstr ""
 
-#: tools/gst-launch.c:687
+#: tools/gst-launch.c:706
 msgid "Prerolled, waiting for progress to finish...\n"
 msgstr ""
 
-#: tools/gst-launch.c:699
+#: tools/gst-launch.c:718
 msgid "buffering..."
 msgstr ""
 
-#: tools/gst-launch.c:710
+#: tools/gst-launch.c:729
 msgid "Done buffering, setting pipeline to PLAYING ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:718
+#: tools/gst-launch.c:737
 msgid "Buffering, setting pipeline to PAUSED ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:727
+#: tools/gst-launch.c:746
 msgid "Redistribute latency...\n"
 msgstr ""
 
-#: tools/gst-launch.c:738
+#: tools/gst-launch.c:757
 #, c-format
 msgid "Setting state to %s as requested by %s...\n"
 msgstr ""
 
-#: tools/gst-launch.c:754
+#: tools/gst-launch.c:773
 msgid "Interrupt: Stopping pipeline ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:783
+#: tools/gst-launch.c:802
 #, c-format
 msgid "Progress: (%s) %s\n"
 msgstr ""
 
-#: tools/gst-launch.c:796
+#: tools/gst-launch.c:815
 #, c-format
 msgid "Missing element: %s\n"
 msgstr ""
 
-#: tools/gst-launch.c:810
+#: tools/gst-launch.c:829
 #, c-format
 msgid "Got context from element '%s': %s=%s\n"
 msgstr ""
 
-#: tools/gst-launch.c:897
+#: tools/gst-launch.c:919
 msgid "Output tags (also known as metadata)"
 msgstr ""
 
-#: tools/gst-launch.c:899
+#: tools/gst-launch.c:921
 msgid "Output TOC (chapters and editions)"
 msgstr ""
 
-#: tools/gst-launch.c:901
+#: tools/gst-launch.c:923
 msgid "Output status information and property notifications"
 msgstr ""
 
-#: tools/gst-launch.c:903
+#: tools/gst-launch.c:925
 msgid "Do not print any progress information"
 msgstr ""
 
-#: tools/gst-launch.c:905
+#: tools/gst-launch.c:927
 msgid "Output messages"
 msgstr ""
 
-#: tools/gst-launch.c:907
+#: tools/gst-launch.c:929
 msgid "Do not output status information of TYPE"
 msgstr ""
 
-#: tools/gst-launch.c:907
+#: tools/gst-launch.c:929
 msgid "TYPE1,TYPE2,..."
 msgstr ""
 
-#: tools/gst-launch.c:909
+#: tools/gst-launch.c:931
 msgid "Do not install a fault handler"
 msgstr ""
 
-#: tools/gst-launch.c:911
+#: tools/gst-launch.c:933
 msgid "Force EOS on sources before shutting the pipeline down"
 msgstr ""
 
-#: tools/gst-launch.c:914
+#: tools/gst-launch.c:936
 msgid "Gather and print index statistics"
 msgstr ""
 
-#: tools/gst-launch.c:977
+#: tools/gst-launch.c:999
 #, c-format
 msgid "ERROR: pipeline could not be constructed: %s.\n"
 msgstr ""
 
-#: tools/gst-launch.c:981
+#: tools/gst-launch.c:1003
 msgid "ERROR: pipeline could not be constructed.\n"
 msgstr ""
 
-#: tools/gst-launch.c:985
+#: tools/gst-launch.c:1007
 #, c-format
 msgid "WARNING: erroneous pipeline: %s\n"
 msgstr ""
 
-#: tools/gst-launch.c:1001
+#: tools/gst-launch.c:1023
 msgid "ERROR: the 'pipeline' element wasn't found.\n"
 msgstr ""
 
-#: tools/gst-launch.c:1034 tools/gst-launch.c:1134
+#: tools/gst-launch.c:1056 tools/gst-launch.c:1156
 msgid "Setting pipeline to PAUSED ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1039
+#: tools/gst-launch.c:1061
 msgid "ERROR: Pipeline doesn't want to pause.\n"
 msgstr ""
 
-#: tools/gst-launch.c:1044
+#: tools/gst-launch.c:1066
 msgid "Pipeline is live and does not need PREROLL ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1048
+#: tools/gst-launch.c:1070
 msgid "Pipeline is PREROLLING ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1051 tools/gst-launch.c:1065
+#: tools/gst-launch.c:1073 tools/gst-launch.c:1087
 msgid "ERROR: pipeline doesn't want to preroll.\n"
 msgstr ""
 
-#: tools/gst-launch.c:1058
+#: tools/gst-launch.c:1080
 msgid "Pipeline is PREROLLED ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1071
+#: tools/gst-launch.c:1093
 msgid "Setting pipeline to PLAYING ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1078
+#: tools/gst-launch.c:1100
 msgid "ERROR: pipeline doesn't want to play.\n"
 msgstr ""
 
-#: tools/gst-launch.c:1096
+#: tools/gst-launch.c:1118
 msgid "EOS on shutdown enabled -- Forcing EOS on the pipeline\n"
 msgstr ""
 
-#: tools/gst-launch.c:1100
+#: tools/gst-launch.c:1122
 msgid "EOS on shutdown enabled -- waiting for EOS after Error\n"
 msgstr ""
 
-#: tools/gst-launch.c:1103
+#: tools/gst-launch.c:1125
 msgid "Waiting for EOS...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1110
+#: tools/gst-launch.c:1132
 msgid "EOS received - stopping pipeline...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1114
+#: tools/gst-launch.c:1136
 msgid "Interrupt while waiting for EOS - stopping pipeline...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1119
+#: tools/gst-launch.c:1141
 msgid "An error happened while waiting for EOS\n"
 msgstr ""
 
-#: tools/gst-launch.c:1130
+#: tools/gst-launch.c:1152
 msgid "Execution ended after %"
 msgstr ""
 
-#: tools/gst-launch.c:1146
+#: tools/gst-launch.c:1168
 msgid "Setting pipeline to READY ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1158
+#: tools/gst-launch.c:1180
 msgid "Setting pipeline to NULL ...\n"
 msgstr ""
 
-#: tools/gst-launch.c:1162
+#: tools/gst-launch.c:1184
 msgid "Freeing pipeline ...\n"
 msgstr ""
diff --git a/po/hr.gmo b/po/hr.gmo
index 7046cf0..c0d3fb6 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index 04e5a8f..edbc76f 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2012-05-25 16:47+0200\n"
 "Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
 "Language-Team: Croatian <lokalizacija@linux.hr>\n"
@@ -925,6 +925,12 @@
 "Ograniči dozvoljene mogućnosti (NULL znači ANY). Postavljanje ovog svojstva "
 "prosljeđuje referencu navedenom GstCaps objektu."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nije naveden privremeni direktorij."
 
@@ -1003,6 +1009,9 @@
 msgid "writable"
 msgstr "zapisivo"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "upravljivo"
 
diff --git a/po/hu.gmo b/po/hu.gmo
index 61abc40..fc66d2e 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index a250118..3eb262a 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-23 21:08+0200\n"
 "Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
@@ -927,6 +927,12 @@
 "Az engedélyezhető képességek korlátozása (a NULL, ANY-t jelent). Ezen "
 "tulajdonság beállítása a biztosított GstCaps objektumra hivatkozik."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nincs megadva ideiglenes könyvtár."
 
@@ -1005,6 +1011,9 @@
 msgid "writable"
 msgstr "írható"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "vezérelhető"
 
diff --git a/po/id.gmo b/po/id.gmo
index 71f3b78..1f1c9fe 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index 1ac9005..7848616 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-31 22:06+0700\n"
 "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
@@ -930,6 +930,12 @@
 "Larang kemampuan yang mungkin diizinkan (KOSONG berarti APAPUN). Pengaturan "
 "properti ini bersumber pada objek GstCaps yang disediakan."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Tak ada direktori Temp yang ditentukan."
 
@@ -1008,6 +1014,9 @@
 msgid "writable"
 msgstr "dapat ditulis"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "dapat dikendalikan"
 
diff --git a/po/it.gmo b/po/it.gmo
index 0de2f8c..0999071 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 600aca7..ec11b7b 100644
--- a/po/it.po
+++ b/po/it.po
@@ -106,7 +106,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-10-25 10:03+0200\n"
 "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
@@ -1091,6 +1091,12 @@
 "Impostando questa proprietà si prende un riferimento all'oggetto GstCaps "
 "fornito."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nessuna directory temporanea specificata."
 
@@ -1169,6 +1175,9 @@
 msgid "writable"
 msgstr "scrivibile"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "controllabile"
 
diff --git a/po/ja.gmo b/po/ja.gmo
index 54767d4..6dec707 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index ea30d5b..550fd93 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2013-08-20 14:56+0900\n"
 "Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
@@ -894,6 +894,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -972,6 +978,9 @@
 msgid "writable"
 msgstr "書き込み可能"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "コントロール可能"
 
diff --git a/po/lt.gmo b/po/lt.gmo
index bda011e..5e65ed0 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 1d1c006..00decb9 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.29.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-07-16 00:50+0300\n"
 "Last-Translator: Žygimantas Beručka <uid0@akl.lt>\n"
 "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
@@ -936,6 +936,12 @@
 "Riboti galimas leidžiamas galimybes (NULL – BET KOKIAS). Nustatant šią "
 "savybę nurodoma į pateiktą GstCaps objektą."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nenurodytas laikinas katalogas."
 
@@ -1014,6 +1020,9 @@
 msgid "writable"
 msgstr "rašomas"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "valdomas"
 
diff --git a/po/nb.gmo b/po/nb.gmo
index 577d0b0..b22cadf 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index de61396..eebee9a 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-10-24 21:36+0200\n"
 "Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
 "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
@@ -899,6 +899,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -978,6 +984,9 @@
 msgid "writable"
 msgstr "skrivbar"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "kontrollerbar"
 
diff --git a/po/nl.gmo b/po/nl.gmo
index 1b249b0..de82241 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index c431c47..13620cb 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-22 00:46+0200\n"
 "Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
@@ -940,6 +940,12 @@
 "instellen  van deze eigenschap vereist een referentie naar het gegeven "
 "GstCaps-object."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Geen tijdelijke map opgegeven."
 
@@ -1018,6 +1024,9 @@
 msgid "writable"
 msgstr "schrijfbaar"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "controleerbaar"
 
diff --git a/po/pl.gmo b/po/pl.gmo
index c5f12b8..4033ad9 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 3109a3a..c62f209 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-22 18:22+0200\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -932,6 +932,12 @@
 "Ograniczenie możliwych dozwolonych możliwości (NULL oznacza WSZYSTKIE). "
 "Ustawienie tej właściwości odwołuje się do przekazanego obiektu GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nie podano katalogu tymczasowego."
 
@@ -1010,6 +1016,9 @@
 msgid "writable"
 msgstr "zapis"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "sterowanie"
 
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 8b32f92..ffcd037 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 ed8bd83..78cfe3d 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -17,7 +17,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2013-12-29 18:20-0200\n"
 "Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
@@ -949,6 +949,12 @@
 "Restrinja as possíveis capacidades permitidas (NULL = ANY). Definindo essa "
 "propriedade é levada uma referência ao objeto GstCaps fornecido."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nenhum diretório temporário especificado."
 
@@ -1027,6 +1033,9 @@
 msgid "writable"
 msgstr "gravável"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "controlável"
 
diff --git a/po/ro.gmo b/po/ro.gmo
index 28a69ec..37c25b5 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index ac96689..c5cf68a 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.29.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-08-16 01:10+0300\n"
 "Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
@@ -954,6 +954,12 @@
 "Restricționează capacitățile permise (NULL înseamnă ORICE). Definirea "
 "acestei proprietăți preia o referință către obiectul GstCaps furnizat."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Niciun director temporar specificat."
 
@@ -1032,6 +1038,9 @@
 msgid "writable"
 msgstr "se poate scrie"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "se poate controla"
 
diff --git a/po/ru.gmo b/po/ru.gmo
index c0526f4..68396ed 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index aae3e94..3e0fa94 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-22 20:12+0400\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@mx.ru>\n"
@@ -931,6 +931,12 @@
 "Ограничить разрешённые возможности (NULL равносильно ANY). Установка этого "
 "свойства увеличивает количество ссылок для предоставленного объекта GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Не задана временный (Temp) каталог."
 
@@ -1009,6 +1015,9 @@
 msgid "writable"
 msgstr "записываемый"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "контролируемый"
 
diff --git a/po/rw.gmo b/po/rw.gmo
index a950b0c..2de84b1 100644
--- a/po/rw.gmo
+++ b/po/rw.gmo
Binary files differ
diff --git a/po/rw.po b/po/rw.po
index ee27537..1f35584 100644
--- a/po/rw.po
+++ b/po/rw.po
@@ -15,7 +15,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.8\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2005-04-04 10:55-0700\n"
 "Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
 "Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
@@ -1093,6 +1093,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -1187,6 +1193,9 @@
 msgid "writable"
 msgstr "umutwe"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/sk.gmo b/po/sk.gmo
index 90ebaf1..5fee22b 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index 1798634..6e26dda 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-01-30 10:24+0100\n"
 "Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
@@ -932,6 +932,12 @@
 "Obmedziť možné povolené schopnosti (NULOVÉ znamená ĽUBOVOĽNÉ). Nastavenie "
 "tejto vlastnosti berie referenciu na zadaný objekt GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Nebol určený dočasný priečinok (Temp)."
 
@@ -1010,6 +1016,9 @@
 msgid "writable"
 msgstr "zapisovateľné"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "ovládateľné"
 
diff --git a/po/sl.gmo b/po/sl.gmo
index cd3ae59..64fc242 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index bad2716..96bb647 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-04-09 22:38+0100\n"
 "Last-Translator: Klemen Košir <klemen913@gmail.com>\n"
 "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
@@ -929,6 +929,12 @@
 "Omeji možne dovoljene zmožnosti (NULL pomeni ANY, vse). S tem naslavljate "
 "priloženi predmet GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Začasna mapa ni določena."
 
@@ -1007,6 +1013,9 @@
 msgid "writable"
 msgstr "zapisljivo"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "nadzorljivo"
 
diff --git a/po/sq.gmo b/po/sq.gmo
index eee0ded..7350076 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index 56ac08a..6e260b3 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2004-08-07 23:46+0200\n"
 "Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
 "Language-Team: Albanian <begraj@hotmail.com>\n"
@@ -947,6 +947,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -1028,6 +1034,9 @@
 msgid "writable"
 msgstr "titulli"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/sr.gmo b/po/sr.gmo
index 4d34c6c..7f08279 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index 2740459..9fb17ea 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-06-18 20:12+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
@@ -930,6 +930,12 @@
 "Умањује могуће допуштене могућности (НИШТА значи БИЛО КОЈА). Постављање овог "
 "својства поставља као орјентир придодати објекат Гст могућности."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Није наведен привремени директоријум."
 
@@ -1009,6 +1015,9 @@
 msgid "writable"
 msgstr "уписив"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "управљив"
 
diff --git a/po/sv.gmo b/po/sv.gmo
index da07fdf..78668e9 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index d5dfbcc..afbd372 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -1,5 +1,5 @@
 # Swedish messages for gstreamer.
-# Copyright © 2004-2014 Free Software Foundation, Inc.
+# Copyright (C) 2004-2014 Free Software Foundation, Inc.
 # This file is distributed under the same license as the gstreamer package.
 # Christian Rose <menthos@menthos.com>, 2004, 2005.
 # Daniel Nylander <po@danielnylander.se>, 2007, 2008, 2009, 2010, 2011.
@@ -7,10 +7,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gstreamer 1.2.1\n"
+"Project-Id-Version: gstreamer 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
-"PO-Revision-Date: 2014-05-04 12:11+0100\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
+"PO-Revision-Date: 2014-07-11 02:52+0200\n"
 "Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
 "Language: sv\n"
@@ -20,7 +20,7 @@
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 msgid "Print the GStreamer version"
-msgstr "Skriv ut Gstreamer-versionen"
+msgstr "Skriv ut GStreamer-versionen"
 
 msgid "Make all warnings fatal"
 msgstr "Gör alla varningar ödesdigra"
@@ -197,7 +197,7 @@
 msgstr "Kunde inte utföra spolning på resursen."
 
 msgid "Could not synchronize on resource."
-msgstr "Kunde inte synronisera på resursen."
+msgstr "Kunde inte synkronisera på resursen."
 
 msgid "Could not get/set settings from/on resource."
 msgstr "Kunde inte hämta/ställa in inställningar från/på resursen."
@@ -205,9 +205,8 @@
 msgid "No space left on the resource."
 msgstr "Inget ledigt utrymme på resursen."
 
-#, fuzzy
 msgid "Not authorized to access resource."
-msgstr "Inget ledigt utrymme på resursen."
+msgstr "Har ej befogenhet att använda resursen."
 
 msgid "GStreamer encountered a general stream error."
 msgstr "GStreamer stötte på ett allmänt strömfel."
@@ -480,10 +479,10 @@
 msgstr "komprimeringsmetod som dessa ljuddata lagras med"
 
 msgid "subtitle codec"
-msgstr "kodek för undertext"
+msgstr "omkodare för undertext"
 
 msgid "codec the subtitle data is stored in"
-msgstr "kodek som undertextdata lagrats med"
+msgstr "omkodare som undertextdata lagrats med"
 
 msgid "container format"
 msgstr "behållarformat"
@@ -533,35 +532,30 @@
 msgid "serial number of track"
 msgstr "serienummer för spår"
 
-# Osäker.
 msgid "replaygain track gain"
 msgstr "uppspelningsförstärkning spårförstärkning"
 
 msgid "track gain in db"
 msgstr "spårförstärkning i db"
 
-# Osäker.
 msgid "replaygain track peak"
 msgstr "uppspelningsförstärkning spårtopp"
 
 msgid "peak of the track"
 msgstr "toppen för spåret"
 
-# Osäker.
 msgid "replaygain album gain"
 msgstr "uppspelningsförstärkning albumförstärkning"
 
 msgid "album gain in db"
 msgstr "albumförstärkning i db"
 
-# Osäker.
 msgid "replaygain album peak"
 msgstr "uppspelningsförstärkning albumtopp"
 
 msgid "peak of the album"
 msgstr "toppen för albumet"
 
-# Osäker.
 msgid "replaygain reference level"
 msgstr "referensnivå för uppspelningsförstärkning"
 
@@ -688,7 +682,7 @@
 
 msgid ""
 "movement speed of the capturing device while performing the capture in m/s"
-msgstr "förflyttningshastighet för fångstenheten när mediat skapas (i meter/s)"
+msgstr "förflyttningshastighet för fångstenheten när mediet skapas (i meter/s)"
 
 msgid "geo location movement direction"
 msgstr "förflyttningsriktning för geografisk plats"
@@ -698,7 +692,7 @@
 "media. It is represented as degrees in floating point representation, 0 "
 "means the geographic north, and increases clockwise"
 msgstr ""
-"indikerar riktningen som enheten förflyttas när mediat skapas. Det "
+"indikerar riktningen som enheten förflyttas när mediet skapas. Det "
 "representeras som grader i flyttalsrepresentation, 0 betyder geografiskt "
 "nordlig riktning och ökar medsols"
 
@@ -710,7 +704,7 @@
 "It is represented as degrees in floating point  representation, 0 means the "
 "geographic north, and increases clockwise"
 msgstr ""
-"indikerar riktningen som enheten pekar mot när mediat skapas. Det "
+"indikerar riktningen som enheten pekar mot när mediet skapas. Det "
 "representeras som grader i flyttalsrepresentation, 0 betyder geografiskt "
 "nordlig riktning och ökar medsols"
 
@@ -719,7 +713,7 @@
 msgstr "visningsnamn"
 
 msgid "Name of the tv/podcast/series show the media is from"
-msgstr "Namn på tv-program/poddsändning/serie som mediat kommer från"
+msgstr "Namn på TV-program/poddsändning/serie som mediet kommer från"
 
 #. TRANSLATORS: 'show sortname' = 'TV/radio/podcast show name as used for sorting purposes' here
 msgid "show sortname"
@@ -728,26 +722,26 @@
 msgid ""
 "Name of the tv/podcast/series show the media is from, for sorting purposes"
 msgstr ""
-"Namn på tv-program/poddsändning/serie som mediat kommer från, för "
+"Namn på TV-program/poddsändning/serie som mediet kommer från, för "
 "sorteringsändamål"
 
 msgid "episode number"
 msgstr "avsnittsnummer"
 
 msgid "The episode number in the season the media is part of"
-msgstr "Avsnittsnumret i säsongen som mediat är en del av"
+msgstr "Avsnittsnumret i säsongen som mediet är en del av"
 
 msgid "season number"
 msgstr "säsongsnummer"
 
 msgid "The season number of the show the media is part of"
-msgstr "Säsongsnumret för programmet som mediat är en del av"
+msgstr "Säsongsnumret för programmet som mediet är en del av"
 
 msgid "lyrics"
 msgstr "låttexter"
 
 msgid "The lyrics of the media, commonly used for songs"
-msgstr "Låttexter för mediat, används oftast för låtar"
+msgstr "Låttexter för mediet, används oftast för låtar"
 
 msgid "composer sortname"
 msgstr "sorteringsnamn för kompositör"
@@ -772,7 +766,7 @@
 "Rating attributed by a user. The higher the rank, the more the user likes "
 "this media"
 msgstr ""
-"Betyg angivit av en användare. Desto högre ranking, desto mer gillar "
+"Betyg angivit av en användare. Desto högre rankning, desto mer gillar "
 "användaren detta media"
 
 msgid "device manufacturer"
@@ -818,10 +812,10 @@
 msgstr "Information om människorna bakom en remix eller liknande tolkning"
 
 msgid "midi-base-note"
-msgstr ""
+msgstr "midi-bas-not"
 
 msgid "Midi note number of the audio track."
-msgstr ""
+msgstr "Midi-not-nummer för ljudspåret."
 
 msgid ", "
 msgstr ", "
@@ -848,11 +842,11 @@
 
 #, c-format
 msgid "link has no source [sink=%s@%p]"
-msgstr ""
+msgstr "länk har ingen källa [utgång=%s@%p]"
 
 #, c-format
 msgid "link has no sink [source=%s@%p]"
-msgstr ""
+msgstr "länk har ingen utgång [källa=%s@%p]"
 
 #, c-format
 msgid "no property \"%s\" in element \"%s\""
@@ -872,11 +866,11 @@
 
 #, c-format
 msgid "unexpected reference \"%s\" - ignoring"
-msgstr ""
+msgstr "oväntad referens \"%s\" - ignorerar"
 
 #, c-format
 msgid "unexpected pad-reference \"%s\" - ignoring"
-msgstr ""
+msgstr "oväntad kontakt-referens \"%s\" - ignorerar"
 
 #, c-format
 msgid "could not parse caps \"%s\""
@@ -891,18 +885,18 @@
 msgstr "inget källelement för URI:n \"%s\""
 
 msgid "syntax error"
-msgstr ""
+msgstr "syntaxfel"
 
 msgid "bin"
-msgstr ""
+msgstr "korg"
 
 #, c-format
 msgid "specified empty bin \"%s\", not allowed"
 msgstr "angav tom korg \"%s\", inte tillåtet"
 
-#, fuzzy, c-format
+#, c-format
 msgid "no bin \"%s\", unpacking elements"
-msgstr "ingen korg \"%s\", hoppar över"
+msgstr "ingen korg \"%s\", packar upp element"
 
 msgid "empty pipeline not allowed"
 msgstr "tom rörledning är inte tillåtet"
@@ -935,6 +929,12 @@
 "Begränsa de möjliga tillåtna förmågorna (NULL betyder ANY). Inställning av "
 "egenskapen tar en referens till det angivna GstCaps-objektet."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Ingen temporärkatalog angiven."
 
@@ -1013,6 +1013,9 @@
 msgid "writable"
 msgstr "skrivbar"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "kontrollerbar"
 
@@ -1192,14 +1195,14 @@
 
 #, c-format
 msgid "Missing element: %s\n"
-msgstr "Element saknas: \"%s\"\n"
+msgstr "Element saknas: %s\n"
 
 #, c-format
 msgid "Got context from element '%s': %s=%s\n"
-msgstr "Fick kontext från elementet '%s': %s=%s\n"
+msgstr "Fick kontext från elementet \"%s\": %s=%s\n"
 
 msgid "Output tags (also known as metadata)"
-msgstr "Utmatningstaggar (även känt som metadata)"
+msgstr "Mata ut taggar (även känt som metadata)"
 
 msgid "Output TOC (chapters and editions)"
 msgstr "Skriv ut INNEHÅLL (kapitel och utgåvor)"
@@ -1211,10 +1214,10 @@
 msgstr "Skriv inte ut någon förloppsinformation"
 
 msgid "Output messages"
-msgstr "Utmatningsmeddelanden"
+msgstr "Mata ut meddelanden"
 
 msgid "Do not output status information of TYPE"
-msgstr "Skriv inte ut statusinformation av TYP"
+msgstr "Mata inte ut statusinformation av TYP"
 
 msgid "TYPE1,TYPE2,..."
 msgstr "TYP1,TYP2,..."
@@ -1235,7 +1238,6 @@
 msgid "ERROR: pipeline could not be constructed.\n"
 msgstr "FEL: rörledningen kunde inte konstrueras.\n"
 
-# Felrapporterat i http://bugzilla.gnome.org/show_bug.cgi?id=137431
 #, c-format
 msgid "WARNING: erroneous pipeline: %s\n"
 msgstr "VARNING: felaktig rörledning: %s\n"
@@ -1273,7 +1275,6 @@
 msgid "EOS on shutdown enabled -- waiting for EOS after Error\n"
 msgstr "EOS vid avstängning aktiverad -- Väntar på EOS efter fel\n"
 
-# EOS = End Of Stream
 msgid "Waiting for EOS...\n"
 msgstr "Väntar på EOS...\n"
 
@@ -1286,7 +1287,6 @@
 msgid "An error happened while waiting for EOS\n"
 msgstr "Ett fel inträffade vid väntan på EOS\n"
 
-# Felrapporterat i http://bugzilla.gnome.org/show_bug.cgi?id=137431
 msgid "Execution ended after %"
 msgstr "Körning avslutades efter %"
 
@@ -1298,73 +1298,3 @@
 
 msgid "Freeing pipeline ...\n"
 msgstr "Frigör rörledning ...\n"
-
-#~ msgid "link without source element"
-#~ msgstr "länk utan källelement"
-
-#~ msgid "link without sink element"
-#~ msgstr "länk utan utgångselement"
-
-#~ msgid "no element to link URI \"%s\" to"
-#~ msgstr "inget element att länka URI:n \"%s\" till"
-
-#~ msgid "could not link sink element for URI \"%s\""
-#~ msgstr "kunde inte länka utgångselementet för URI:n \"%s\""
-
-#~ msgid "maximum"
-#~ msgstr "maximum"
-
-#~ msgid "Usage: gst-xmllaunch <file.xml> [ element.property=value ... ]\n"
-#~ msgstr ""
-#~ "Användning: gst-xmllaunch <fil.xml> [ element.egenskap=värde ... ]\n"
-
-#~ msgid "ERROR: parse of xml file '%s' failed.\n"
-#~ msgstr "FEL: tolkning av xml-filen \"%s\" misslyckades.\n"
-
-#~ msgid "ERROR: no toplevel pipeline element in file '%s'.\n"
-#~ msgstr "FEL: inget rörledningselement på översta nivån i filen \"%s\".\n"
-
-#~ msgid "WARNING: only one toplevel element is supported at this time.\n"
-#~ msgstr "VARNING: endast ett element på översta nivån stöds just nu.\n"
-
-#~ msgid "ERROR: could not parse command line argument %d: %s.\n"
-#~ msgstr "FEL: kunde inte tolka kommandoradsargumentet %d: %s.\n"
-
-#~ msgid "WARNING: element named '%s' not found.\n"
-#~ msgstr "VARNING: elementet med namnet \"%s\" hittades inte.\n"
-
-#~ msgid "Save xml representation of pipeline to FILE and exit"
-#~ msgstr "Spara xml-representation av rörledningen i FIL och avsluta"
-
-#~ msgid "FILE"
-#~ msgstr "FIL"
-
-#~ msgid "Do not install signal handlers for SIGUSR1 and SIGUSR2"
-#~ msgstr "Installera inte signalhanterare för SIGUSR1 och SIGUSR2"
-
-#~ msgid "Print alloc trace (if enabled at compile time)"
-#~ msgstr "Skriv ut alloc-spår (om aktiverat vid kompileringen)"
-
-#~ msgid "Error re-scanning registry %s: %s"
-#~ msgstr "Fel vid återsökning av registret %s: %s"
-
-#~ msgid "Error re-scanning registry %s"
-#~ msgstr "Fel vid återsökning av registret %s"
-
-#~ msgid "Internal GStreamer error: state change failed."
-#~ msgstr "Internt GStreamer-fel: tillståndsändring misslyckades."
-
-#~ msgid "Error while writing to file descriptor \"%d\"."
-#~ msgstr "Fel vid skrivning till filbeskrivaren \"%d\"."
-
-#~ msgid "File descriptor \"%d\" is not valid."
-#~ msgstr "Filbeskrivaren \"%d\" är ogiltig."
-
-#~ msgid "FREEING pipeline ...\n"
-#~ msgstr "FRIGÖR rörledning...\n"
-
-#~ msgid "original location of file as a URI"
-#~ msgstr "ursprunglig plats för filen som en URI"
-
-#~ msgid "Element \"%s\" has gone from PLAYING to PAUSED, quitting.\n"
-#~ msgstr "Elementet \"%s\" har gått från PLAYING till PAUSED, avslutar.\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index a06a3de..6e4f8f7 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index 64c707a..622f1e3 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2004-04-03 03:14+0300\n"
 "Last-Translator: Baris Cicek <baris@teamforce.name.tr>\n"
 "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
@@ -947,6 +947,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr ""
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr ""
 
@@ -1028,6 +1034,9 @@
 msgid "writable"
 msgstr "başlık"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr ""
 
diff --git a/po/uk.gmo b/po/uk.gmo
index 4be5465..3f4308b 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index 6b91ac3..8cbae83 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-05-22 07:45+0300\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
@@ -928,6 +928,12 @@
 "Обмежити допустимі можливості (NULL означає ANY). Встановлення цієї "
 "властивості призводить до посилання на поставлений об'єкт GstCaps."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Не вказано каталог тимчасових даних."
 
@@ -1006,6 +1012,9 @@
 msgid "writable"
 msgstr "запис"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "контроль"
 
diff --git a/po/vi.gmo b/po/vi.gmo
index e47237f..e9656a8 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index d766b0f..47960b8 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -1,16 +1,16 @@
 # Vietnamese Translation for GStreamer.
 # Bản dịch tiếng Việt dành cho GStreamer.
-# Copyright © 2013 Free Software Foundation, Inc.
+# Copyright © 2014 Free Software Foundation, Inc.
 # This file is distributed under the same license as the gstreamer package.
 # Clytie Siddall <clytie@riverland.net.au>, 2005-2010.
-# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-2013.
+# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-2014.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gstreamer-1.2.1\n"
+"Project-Id-Version: gstreamer 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
-"PO-Revision-Date: 2013-12-11 08:08+0700\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
+"PO-Revision-Date: 2014-06-30 09:40+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
 "Language: vi\n"
@@ -81,7 +81,7 @@
 "vào danh sách được cất giữ trong biến môi trường GST_PLUGIN_PATH"
 
 msgid "PLUGINS"
-msgstr "PHẦN BỔ SUNG"
+msgstr "PHẦN_BỔ_SUNG"
 
 msgid "Disable trapping of segmentation faults during plugin loading"
 msgstr "Tắt chức năng bắt lỗi phân đoạn trong khi nạp phần bổ sung"
@@ -107,7 +107,8 @@
 
 msgid ""
 "GStreamer developers were too lazy to assign an error code to this error."
-msgstr "Những nhà phát triển GStreamer chưa gán mã lỗi cho lỗi này."
+msgstr ""
+"Những nhà phát triển GStreamer đã quá lười mà chưa gán mã lỗi cho lỗi này."
 
 msgid "Internal GStreamer error: code not implemented."
 msgstr "Lỗi nội bộ GStreamer: chưa viết mã cho chức năng này."
@@ -205,9 +206,8 @@
 msgid "No space left on the resource."
 msgstr "Không còn không gian trống trên tài nguyên đó."
 
-#, fuzzy
 msgid "Not authorized to access resource."
-msgstr "Không còn không gian trống trên tài nguyên đó."
+msgstr "Không đủ thẩm quyền truy cập trên tài nguyên."
 
 msgid "GStreamer encountered a general stream error."
 msgstr "Trình GStreamer mới gặp một lỗi luồng chung."
@@ -307,7 +307,7 @@
 msgstr "Nghệ sĩ của toàn bộ tập nhạc, như hiển thị đúng"
 
 msgid "album artist sortname"
-msgstr "tên sắp nghệ sĩ tập"
+msgstr "tên sắp nghệ sĩ tập nhạc"
 
 msgid "The artist of the entire album, as it should be sorted"
 msgstr "Nghệ sĩ của toàn bộ tập nhạc, theo thứ tự đúng"
@@ -382,7 +382,7 @@
 msgstr "trang chủ"
 
 msgid "Homepage for this media (i.e. artist or movie homepage)"
-msgstr "Trang chủ của nghệ sĩ hay phim "
+msgstr "Trang chủ của nghệ sĩ hay phim"
 
 msgid "description"
 msgstr "mô tả"
@@ -402,7 +402,7 @@
 msgid "International Standard Recording Code - see http://www.ifpi.org/isrc/"
 msgstr ""
 "Luật thu âm Tiêu chuẩn Quốc tế (International Standard Recording Code) — xem "
-"<http://www.ifpi.org/isrc/>."
+"<http://www.ifpi.org/isrc/>"
 
 msgid "organization"
 msgstr "tổ chức"
@@ -462,13 +462,13 @@
 msgstr "thời gian bằng đơn vị thời gian kiểu GStreamer (phần tỷ giây: ns)"
 
 msgid "codec"
-msgstr "codec"
+msgstr "mã hóa"
 
 msgid "codec the data is stored in"
 msgstr "cách mã hóa/giải mà dữ liệu này"
 
 msgid "video codec"
-msgstr "codec ảnh động"
+msgstr "codec của phim"
 
 msgid "codec the video data is stored in"
 msgstr "cách mã hóa/giải mã dữ liệu ảnh động này"
@@ -655,14 +655,14 @@
 
 msgid "country (english name) where the media has been recorded or produced"
 msgstr ""
-"quốc gia (tên tiếng Anh, v.d. “Vietnam”) ở đó nhạc/phím đã được thu hay tạo"
+"quốc gia (tên tiếng Anh, v.d. “Vietnam”) ở đó nhạc/phim đã được quay/thu"
 
 msgid "geo location city"
 msgstr "vị trí địa lý của thành phố"
 
 msgid "city (english name) where the media has been recorded or produced"
 msgstr ""
-"thành phố (tên tiếng Anh, v.d. “Hanoi”) ở đó nhạc/phím đã được thu hay tạo"
+"thành phố (tên tiếng Anh, v.d. “Hanoi”) ở đó nhạc/phím đã được quay/thu"
 
 msgid "geo location sublocation"
 msgstr "vị trí phụ địa lý"
@@ -751,7 +751,7 @@
 msgstr "tên sắp nhạc sĩ"
 
 msgid "person(s) who composed the recording, for sorting purposes"
-msgstr "(các) người đã soạn bản thu, cho mục đích sắp xếp"
+msgstr "(những) người đã soạn bản thu, dành cho mục đích sắp xếp"
 
 msgid "grouping"
 msgstr "nhóm lại"
@@ -818,10 +818,10 @@
 msgstr "Thông tin về người đứng sau phối và biên tập lại"
 
 msgid "midi-base-note"
-msgstr ""
+msgstr "midi-base-note"
 
 msgid "Midi note number of the audio track."
-msgstr ""
+msgstr "Số ghi chú midi của rãnh âm thanh."
 
 msgid ", "
 msgstr ", "
@@ -848,11 +848,11 @@
 
 #, c-format
 msgid "link has no source [sink=%s@%p]"
-msgstr ""
+msgstr "liên kết không có nguồn [sink=%s@%p]"
 
 #, c-format
 msgid "link has no sink [source=%s@%p]"
-msgstr ""
+msgstr "liên kết không có sink [nguồn=%s@%p]"
 
 #, c-format
 msgid "no property \"%s\" in element \"%s\""
@@ -872,11 +872,11 @@
 
 #, c-format
 msgid "unexpected reference \"%s\" - ignoring"
-msgstr ""
+msgstr "gặp tham chiếu không cần \"%s\" nên bỏ qua"
 
 #, c-format
 msgid "unexpected pad-reference \"%s\" - ignoring"
-msgstr ""
+msgstr "gặp tham chiếu đệm không cần \"%s\" nên bỏ qua"
 
 #, c-format
 msgid "could not parse caps \"%s\""
@@ -893,18 +893,18 @@
 msgstr "không có phần tử nguồn cho URI “%s”"
 
 msgid "syntax error"
-msgstr ""
+msgstr "lỗi cú pháp"
 
 msgid "bin"
-msgstr ""
+msgstr "nhị phân"
 
 #, c-format
 msgid "specified empty bin \"%s\", not allowed"
 msgstr "không cho phép nhị phân trống được ghi rõ “%s”"
 
-#, fuzzy, c-format
+#, c-format
 msgid "no bin \"%s\", unpacking elements"
-msgstr "không có nhị phân “%s” nên bỏ qua"
+msgstr "không có nhị phân “%s”, đang giải nén các phần tử"
 
 msgid "empty pipeline not allowed"
 msgstr "không cho phép đường ống trống"
@@ -938,6 +938,12 @@
 "Đặt thuộc tính này thì chấp nhận tham chiếu đến đối tượng GstCaps đã cung "
 "cấp."
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "Chưa xác định thư mục tạm thời."
 
@@ -1011,10 +1017,13 @@
 msgstr "Giao diện đã thực hiện:\n"
 
 msgid "readable"
-msgstr "đọc được"
+msgstr "được đọc"
 
 msgid "writable"
-msgstr "ghi được"
+msgstr "được ghi"
+
+msgid "deprecated"
+msgstr ""
 
 msgid "controllable"
 msgstr "điều khiển được"
@@ -1224,10 +1233,10 @@
 
 #, c-format
 msgid "ERROR: pipeline could not be constructed: %s.\n"
-msgstr "LỖI: không thể cấu tạo đường ống: %s.\n"
+msgstr "LỖI: không thể xây dựng đường ống: %s.\n"
 
 msgid "ERROR: pipeline could not be constructed.\n"
-msgstr "LỖI: không thể cấu tạo đường ống.\n"
+msgstr "LỖI: không thể xây dựng đường ống.\n"
 
 #, c-format
 msgid "WARNING: erroneous pipeline: %s\n"
@@ -1284,10 +1293,10 @@
 msgstr "Thực hiện xong sau %"
 
 msgid "Setting pipeline to READY ...\n"
-msgstr "Đang đặt đường ống thành SẴN SÀNG ...\n"
+msgstr "Đang đặt đường ống thành SẴN_SÀNG ...\n"
 
 msgid "Setting pipeline to NULL ...\n"
-msgstr "Đang đặt đường ống thành VÔ GIÁ TRỊ ...\n"
+msgstr "Đang đặt đường ống thành VÔ_GIÁ_TRỊ ...\n"
 
 msgid "Freeing pipeline ...\n"
 msgstr "Đang giải phóng đường ống ...\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index 1a92185..434e27f 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 1b4b7ba..ae8e159 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.25.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2010-02-02 18:58+0800\n"
 "Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
@@ -914,6 +914,12 @@
 "限制所允许的功能 (NULL 表示无限制)。此属性可以为所提供的 GstCaps 对象设置一个"
 "关联应用。"
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "未指定临时目录。"
 
@@ -993,6 +999,9 @@
 msgid "writable"
 msgstr "可写"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "可控制"
 
diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo
index 14908bb..56a5369 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 cc1990d..9ea67c3 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -27,7 +27,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:12+0200\n"
+"POT-Creation-Date: 2015-03-16 19:04+0100\n"
 "PO-Revision-Date: 2014-06-08 00:22+0800\n"
 "Last-Translator: Wen Liao <wen.cf83@gmail.com>\n"
 "Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
@@ -923,6 +923,12 @@
 "property takes a reference to the supplied GstCaps object."
 msgstr "限制允許的capabilities (NULL表示不限制),打開該屬性將會參照GstCaps物件"
 
+msgid "Caps Change Mode"
+msgstr ""
+
+msgid "Filter caps change behaviour"
+msgstr ""
+
 msgid "No Temp directory specified."
 msgstr "未指定暫存目錄"
 
@@ -1002,6 +1008,9 @@
 msgid "writable"
 msgstr "可寫"
 
+msgid "deprecated"
+msgstr ""
+
 msgid "controllable"
 msgstr "可控制"
 
diff --git a/scripts/gst-uninstalled b/scripts/gst-uninstalled
index 7a60bac..7b2b911 100755
--- a/scripts/gst-uninstalled
+++ b/scripts/gst-uninstalled
@@ -101,7 +101,7 @@
 done
 
 # GStreamer plugins bad libraries
-for path in basecamerabinsrc codecparsers uridownloader egl gl insertbin interfaces mpegts
+for path in adaptivedemux basecamerabinsrc codecparsers uridownloader egl gl insertbin interfaces mpegts video base
 do
   LD_LIBRARY_PATH=$GST/gst-plugins-bad/gst-libs/gst/$path/.libs:$LD_LIBRARY_PATH
   DYLD_LIBRARY_PATH=$GST/gst-plugins-bad/gst-libs/gst/$path/.libs:$DYLD_LIBRARY_PATH
@@ -157,7 +157,6 @@
 :$GST/gst-plugins-bad/sys\
 :$GST/gst-libav/ext/\
 :$GST/gst-ffmpeg/ext/\
-:$GST/gnonlin/gnl/.libs\
 :$GST/gst-omx/omx/.libs\
 :$GST/clutter-gst/clutter-gst/.libs\
 :$GST/gstreamer-vaapi/gst/vaapi/.libs\
@@ -165,6 +164,7 @@
 :$GST/farsight2/gst\
 :$GST/farsight2/transmitters\
 :$GST/libnice/gst\
+:$GST/gst-rpicamsrc/src/.libs\
 ${GST_PLUGIN_PATH:+:$GST_PLUGIN_PATH}"
 
 # don't use any system-installed plug-ins at all
@@ -180,9 +180,11 @@
 # in the system-configured man paths from man.config
 # this still doesn't make it work for the uninstalled case, since man goes
 # look for a man directory "nearby" instead of the directory I'm telling it to
-export MANPATH=$GST/gstreamer/tools:$GST_PREFIX/share/man:$MANPATH
-pythonver=`python -c "import sys; print (sys.version[:3])"`
-export PYTHONPATH=$GST/gst-python:$GST_PREFIX/lib/python$pythonver/site-packages${PYTHONPATH:+:$PYTHONPATH}
+export MANPATH=$GST/gstreamer/tools:$GST_PREFIX/share/man:$GST/gst-editing-services/docs/man/:$MANPATH
+if [ -z "$PYTHON" ]; then PYTHON="python"; fi
+pythonver=`$PYTHON -c "import sys; print (sys.version[:3])"`
+pythonsites=`$PYTHON -c "import site; print(':'.join(site.getsitepackages()))"`
+export PYTHONPATH="${PYTHONPATH}:${pythonsites}:${GST}/gst-python"
 
 # clutter-gst
 export PKG_CONFIG_PATH=$GST/clutter-gst:$PKG_CONFIG_PATH
@@ -206,6 +208,8 @@
 export PATH=$GST/gst-devtools/validate/tools:$PATH
 export PKG_CONFIG_PATH=$GST/gst-devtools/validate/pkgconfig:$PKG_CONFIG_PATH
 export GST_VALIDATE_SCENARIOS_PATH=$GST/gst-devtools/validate/data:$GST_VALIDATE_SCENARIOS_PATH
+export GST_VALIDATE_APPS_DIR=$GST_VALIDATE_APPS_DIR:$GST/gst-editing-services/tests/validate/
+export GST_VALIDATE_PLUGIN_PATH=$GST_VALIDATE_PLUGIN_PATH:$GST/gst-devtools/validate/gst/plugins/
 
 if [ -d "$GST/gst-libav" -a -d "$GST/gst-ffmpeg" ]; then
   echo
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 867ea2d..f3ab937 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -212,6 +213,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -317,6 +322,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/benchmarks/Makefile.in b/tests/benchmarks/Makefile.in
index fb5c6a0..8f59e3c 100644
--- a/tests/benchmarks/Makefile.in
+++ b/tests/benchmarks/Makefile.in
@@ -94,6 +94,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -111,7 +112,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -253,6 +254,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -358,6 +363,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/check/Makefile.am b/tests/check/Makefile.am
index e197999..5e7e5ab 100644
--- a/tests/check/Makefile.am
+++ b/tests/check/Makefile.am
@@ -44,6 +44,12 @@
 endif
 endif
 
+if !GST_DISABLE_GST_DEBUG
+PRINTF_CHECKS = gst/gstprintf
+else
+PRINTF_CHECKS =
+endif
+
 LIBSABI_CHECKS = libs/libsabi
 
 if HAVE_CXX
@@ -75,6 +81,7 @@
 	gst/gstutils				\
 	generic/sinks				\
 	elements/capsfilter			\
+	elements/concat				\
 	elements/fakesink			\
 	elements/fakesrc			\
 	elements/fdsrc			  	\
@@ -88,6 +95,7 @@
 	elements/queue                          \
 	elements/queue2                         \
 	elements/valve                          \
+	elements/streamiddemux			\
 	libs/baseparse				\
 	libs/basesrc				\
 	libs/basesink				\
@@ -105,7 +113,7 @@
 	gst/gstatomicqueue			\
 	gst/gstbuffer				\
 	gst/gstbufferlist			\
-	gst/gstbufferpool				\
+	gst/gstbufferpool			\
 	gst/gstmeta				\
 	gst/gstmemory				\
 	gst/gstbus				\
@@ -113,6 +121,7 @@
 	gst/gstcapsfeatures    			\
 	$(CXX_CHECKS)			     	\
 	gst/gstdatetime     			\
+	gst/gstdevice				\
 	gst/gstinfo		 		\
 	gst/gstiterator 			\
 	gst/gstmessage	 			\
@@ -122,6 +131,7 @@
 	gst/gstparamspecs			\
 	gst/gstpipeline				\
 	gst/gstpoll     			\
+	$(PRINTF_CHECKS)			\
 	gst/gstsegment				\
 	gst/gstsystemclock			\
 	gst/gstclock				\
@@ -192,6 +202,10 @@
 
 gst_gstutils_LDADD = $(LDADD) $(GSL_LIBS) $(GMP_LIBS)
 
+gst_gstprintf_LDADD = \
+	$(top_builddir)/gst/printf/libgstprintf.la \
+	$(LDADD)
+
 elements_fdsrc_CFLAGS=$(GST_OBJ_CFLAGS) $(AM_CFLAGS) \
 	-DTESTFILE=\"$(top_srcdir)/configure.ac\"
 elements_filesrc_CFLAGS=$(GST_OBJ_CFLAGS) $(AM_CFLAGS) \
diff --git a/tests/check/Makefile.in b/tests/check/Makefile.in
index 739acca..b341a13 100644
--- a/tests/check/Makefile.in
+++ b/tests/check/Makefile.in
@@ -88,18 +88,19 @@
 	gst/gstbufferpool$(EXEEXT) gst/gstmeta$(EXEEXT) \
 	gst/gstmemory$(EXEEXT) gst/gstbus$(EXEEXT) \
 	gst/gstcaps$(EXEEXT) gst/gstcapsfeatures$(EXEEXT) \
-	$(am__EXEEXT_2) gst/gstdatetime$(EXEEXT) gst/gstinfo$(EXEEXT) \
+	$(am__EXEEXT_2) gst/gstdatetime$(EXEEXT) \
+	gst/gstdevice$(EXEEXT) gst/gstinfo$(EXEEXT) \
 	gst/gstiterator$(EXEEXT) gst/gstmessage$(EXEEXT) \
 	gst/gstminiobject$(EXEEXT) gst/gstobject$(EXEEXT) \
 	gst/gstpad$(EXEEXT) gst/gstparamspecs$(EXEEXT) \
-	gst/gstpipeline$(EXEEXT) gst/gstpoll$(EXEEXT) \
+	gst/gstpipeline$(EXEEXT) gst/gstpoll$(EXEEXT) $(am__EXEEXT_3) \
 	gst/gstsegment$(EXEEXT) gst/gstsystemclock$(EXEEXT) \
 	gst/gstclock$(EXEEXT) gst/gststructure$(EXEEXT) \
 	gst/gsttag$(EXEEXT) gst/gsttagsetter$(EXEEXT) \
 	gst/gsttask$(EXEEXT) gst/gsttoc$(EXEEXT) \
 	gst/gsttocsetter$(EXEEXT) gst/gstvalue$(EXEEXT) \
-	generic/states$(EXEEXT) $(am__EXEEXT_3) $(am__EXEEXT_4) \
-	$(am__EXEEXT_5) libs/adapter$(EXEEXT) libs/bitreader$(EXEEXT) \
+	generic/states$(EXEEXT) $(am__EXEEXT_4) $(am__EXEEXT_5) \
+	$(am__EXEEXT_6) libs/adapter$(EXEEXT) libs/bitreader$(EXEEXT) \
 	libs/bytereader$(EXEEXT) libs/bytewriter$(EXEEXT) \
 	libs/bitreader-noinline$(EXEEXT) \
 	libs/bytereader-noinline$(EXEEXT) \
@@ -118,6 +119,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -135,7 +137,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -155,12 +157,13 @@
 @GST_DISABLE_REGISTRY_FALSE@@GST_DISABLE_TRACE_FALSE@am__EXEEXT_1 = gst/gstabi$(EXEEXT)
 @HAVE_CXX_TRUE@am__EXEEXT_2 = gst/gstcpp$(EXEEXT) \
 @HAVE_CXX_TRUE@	libs/gstlibscpp$(EXEEXT)
-@GST_DISABLE_PARSE_FALSE@am__EXEEXT_3 = pipelines/simple-launch-lines$(EXEEXT) \
+@GST_DISABLE_GST_DEBUG_FALSE@am__EXEEXT_3 = gst/gstprintf$(EXEEXT)
+@GST_DISABLE_PARSE_FALSE@am__EXEEXT_4 = pipelines/simple-launch-lines$(EXEEXT) \
 @GST_DISABLE_PARSE_FALSE@	pipelines/cleanup$(EXEEXT) \
 @GST_DISABLE_PARSE_FALSE@	pipelines/parse-launch$(EXEEXT)
-@GST_DISABLE_PARSE_TRUE@am__EXEEXT_3 =  \
+@GST_DISABLE_PARSE_TRUE@am__EXEEXT_4 =  \
 @GST_DISABLE_PARSE_TRUE@	pipelines/parse-disabled$(EXEEXT)
-@GST_DISABLE_REGISTRY_FALSE@am__EXEEXT_4 = gst/gst$(EXEEXT) \
+@GST_DISABLE_REGISTRY_FALSE@am__EXEEXT_5 = gst/gst$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	gst/gstbin$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	gst/gstchildproxy$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	gst/gstcontext$(EXEEXT) \
@@ -177,6 +180,7 @@
 @GST_DISABLE_REGISTRY_FALSE@	gst/gstutils$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	generic/sinks$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	elements/capsfilter$(EXEEXT) \
+@GST_DISABLE_REGISTRY_FALSE@	elements/concat$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	elements/fakesink$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	elements/fakesrc$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	elements/fdsrc$(EXEEXT) \
@@ -190,6 +194,7 @@
 @GST_DISABLE_REGISTRY_FALSE@	elements/queue$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	elements/queue2$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	elements/valve$(EXEEXT) \
+@GST_DISABLE_REGISTRY_FALSE@	elements/streamiddemux$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	libs/baseparse$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	libs/basesrc$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	libs/basesink$(EXEEXT) \
@@ -200,7 +205,7 @@
 @GST_DISABLE_REGISTRY_FALSE@	pipelines/seek$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	pipelines/stress$(EXEEXT) \
 @GST_DISABLE_REGISTRY_FALSE@	pipelines/queue-error$(EXEEXT)
-am__EXEEXT_5 = libs/libsabi$(EXEEXT)
+am__EXEEXT_6 = libs/libsabi$(EXEEXT)
 PROGRAMS = $(noinst_PROGRAMS)
 elements_capsfilter_SOURCES = elements/capsfilter.c
 am__dirstamp = $(am__leading_dot)dirstamp
@@ -214,6 +219,12 @@
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
 am__v_lt_0 = --silent
 am__v_lt_1 = 
+elements_concat_SOURCES = elements/concat.c
+elements_concat_OBJECTS = elements/concat.$(OBJEXT)
+elements_concat_LDADD = $(LDADD)
+elements_concat_DEPENDENCIES = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
+	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
+	$(am__DEPENDENCIES_1)
 elements_fakesink_SOURCES = elements/fakesink.c
 elements_fakesink_OBJECTS = elements/fakesink.$(OBJEXT)
 elements_fakesink_LDADD = $(LDADD)
@@ -289,6 +300,12 @@
 elements_selector_DEPENDENCIES = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
 	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
 	$(am__DEPENDENCIES_1)
+elements_streamiddemux_SOURCES = elements/streamiddemux.c
+elements_streamiddemux_OBJECTS = elements/streamiddemux.$(OBJEXT)
+elements_streamiddemux_LDADD = $(LDADD)
+elements_streamiddemux_DEPENDENCIES = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
+	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
+	$(am__DEPENDENCIES_1)
 elements_tee_SOURCES = elements/tee.c
 elements_tee_OBJECTS = elements/tee.$(OBJEXT)
 elements_tee_LDADD = $(LDADD)
@@ -409,6 +426,12 @@
 gst_gstdatetime_DEPENDENCIES = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
 	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
 	$(am__DEPENDENCIES_1)
+gst_gstdevice_SOURCES = gst/gstdevice.c
+gst_gstdevice_OBJECTS = gst/gstdevice.$(OBJEXT)
+gst_gstdevice_LDADD = $(LDADD)
+gst_gstdevice_DEPENDENCIES = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
+	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
+	$(am__DEPENDENCIES_1)
 gst_gstelement_SOURCES = gst/gstelement.c
 gst_gstelement_OBJECTS = gst/gstelement.$(OBJEXT)
 gst_gstelement_LDADD = $(LDADD)
@@ -511,6 +534,14 @@
 gst_gstpreset_DEPENDENCIES = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
 	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
 	$(am__DEPENDENCIES_1)
+gst_gstprintf_SOURCES = gst/gstprintf.c
+gst_gstprintf_OBJECTS = gst/gstprintf.$(OBJEXT)
+am__DEPENDENCIES_2 = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
+	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
+	$(am__DEPENDENCIES_1)
+gst_gstprintf_DEPENDENCIES =  \
+	$(top_builddir)/gst/printf/libgstprintf.la \
+	$(am__DEPENDENCIES_2)
 gst_gstquery_SOURCES = gst/gstquery.c
 gst_gstquery_OBJECTS = gst/gstquery.$(OBJEXT)
 gst_gstquery_LDADD = $(LDADD)
@@ -579,9 +610,6 @@
 	$(am__DEPENDENCIES_1)
 gst_gstutils_SOURCES = gst/gstutils.c
 gst_gstutils_OBJECTS = gst/gstutils.$(OBJEXT)
-am__DEPENDENCIES_2 = $(top_builddir)/libs/gst/check/libgstcheck-@GST_API_VERSION@.la \
-	$(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \
-	$(am__DEPENDENCIES_1)
 gst_gstutils_DEPENDENCIES = $(am__DEPENDENCIES_2) \
 	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 gst_gstvalue_SOURCES = gst/gstvalue.c
@@ -820,27 +848,29 @@
 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
 am__v_CXXLD_0 = @echo "  CXXLD   " $@;
 am__v_CXXLD_1 = 
-SOURCES = elements/capsfilter.c elements/fakesink.c elements/fakesrc.c \
-	elements/fdsrc.c elements/filesink.c elements/filesrc.c \
-	elements/funnel.c elements/identity.c elements/multiqueue.c \
-	elements/queue.c elements/queue2.c elements/selector.c \
-	elements/tee.c elements/valve.c generic/sinks.c \
-	generic/states.c gst/gst.c gst/gstabi.c gst/gstatomicqueue.c \
-	gst/gstbin.c gst/gstbuffer.c gst/gstbufferlist.c \
-	gst/gstbufferpool.c gst/gstbus.c gst/gstcaps.c \
-	gst/gstcapsfeatures.c gst/gstchildproxy.c gst/gstclock.c \
-	gst/gstcontext.c gst/gstcontroller.c $(gst_gstcpp_SOURCES) \
-	gst/gstdatetime.c gst/gstelement.c gst/gstelementfactory.c \
-	gst/gstevent.c gst/gstghostpad.c gst/gstinfo.c \
-	gst/gstiterator.c gst/gstmemory.c gst/gstmessage.c \
-	gst/gstmeta.c gst/gstminiobject.c gst/gstobject.c gst/gstpad.c \
+SOURCES = elements/capsfilter.c elements/concat.c elements/fakesink.c \
+	elements/fakesrc.c elements/fdsrc.c elements/filesink.c \
+	elements/filesrc.c elements/funnel.c elements/identity.c \
+	elements/multiqueue.c elements/queue.c elements/queue2.c \
+	elements/selector.c elements/streamiddemux.c elements/tee.c \
+	elements/valve.c generic/sinks.c generic/states.c gst/gst.c \
+	gst/gstabi.c gst/gstatomicqueue.c gst/gstbin.c gst/gstbuffer.c \
+	gst/gstbufferlist.c gst/gstbufferpool.c gst/gstbus.c \
+	gst/gstcaps.c gst/gstcapsfeatures.c gst/gstchildproxy.c \
+	gst/gstclock.c gst/gstcontext.c gst/gstcontroller.c \
+	$(gst_gstcpp_SOURCES) gst/gstdatetime.c gst/gstdevice.c \
+	gst/gstelement.c gst/gstelementfactory.c gst/gstevent.c \
+	gst/gstghostpad.c gst/gstinfo.c gst/gstiterator.c \
+	gst/gstmemory.c gst/gstmessage.c gst/gstmeta.c \
+	gst/gstminiobject.c gst/gstobject.c gst/gstpad.c \
 	gst/gstparamspecs.c gst/gstpipeline.c gst/gstplugin.c \
-	gst/gstpoll.c gst/gstpreset.c gst/gstquery.c gst/gstregistry.c \
-	gst/gstsegment.c gst/gststructure.c gst/gstsystemclock.c \
-	gst/gsttag.c gst/gsttagsetter.c gst/gsttask.c gst/gsttoc.c \
-	gst/gsttocsetter.c gst/gsturi.c gst/gstutils.c gst/gstvalue.c \
-	libs/adapter.c libs/baseparse.c libs/basesink.c libs/basesrc.c \
-	libs/bitreader.c libs/bitreader-noinline.c libs/bytereader.c \
+	gst/gstpoll.c gst/gstpreset.c gst/gstprintf.c gst/gstquery.c \
+	gst/gstregistry.c gst/gstsegment.c gst/gststructure.c \
+	gst/gstsystemclock.c gst/gsttag.c gst/gsttagsetter.c \
+	gst/gsttask.c gst/gsttoc.c gst/gsttocsetter.c gst/gsturi.c \
+	gst/gstutils.c gst/gstvalue.c libs/adapter.c libs/baseparse.c \
+	libs/basesink.c libs/basesrc.c libs/bitreader.c \
+	libs/bitreader-noinline.c libs/bytereader.c \
 	libs/bytereader-noinline.c libs/bytewriter.c \
 	libs/bytewriter-noinline.c libs/collectpads.c \
 	libs/controller.c libs/flowcombiner.c \
@@ -852,28 +882,30 @@
 	pipelines/queue-error.c pipelines/seek.c \
 	pipelines/simple-launch-lines.c pipelines/stress.c \
 	tools/gstinspect.c
-DIST_SOURCES = elements/capsfilter.c elements/fakesink.c \
-	elements/fakesrc.c elements/fdsrc.c elements/filesink.c \
-	elements/filesrc.c elements/funnel.c elements/identity.c \
-	elements/multiqueue.c elements/queue.c elements/queue2.c \
-	elements/selector.c elements/tee.c elements/valve.c \
-	generic/sinks.c generic/states.c gst/gst.c gst/gstabi.c \
-	gst/gstatomicqueue.c gst/gstbin.c gst/gstbuffer.c \
-	gst/gstbufferlist.c gst/gstbufferpool.c gst/gstbus.c \
-	gst/gstcaps.c gst/gstcapsfeatures.c gst/gstchildproxy.c \
-	gst/gstclock.c gst/gstcontext.c gst/gstcontroller.c \
-	$(gst_gstcpp_SOURCES) gst/gstdatetime.c gst/gstelement.c \
+DIST_SOURCES = elements/capsfilter.c elements/concat.c \
+	elements/fakesink.c elements/fakesrc.c elements/fdsrc.c \
+	elements/filesink.c elements/filesrc.c elements/funnel.c \
+	elements/identity.c elements/multiqueue.c elements/queue.c \
+	elements/queue2.c elements/selector.c elements/streamiddemux.c \
+	elements/tee.c elements/valve.c generic/sinks.c \
+	generic/states.c gst/gst.c gst/gstabi.c gst/gstatomicqueue.c \
+	gst/gstbin.c gst/gstbuffer.c gst/gstbufferlist.c \
+	gst/gstbufferpool.c gst/gstbus.c gst/gstcaps.c \
+	gst/gstcapsfeatures.c gst/gstchildproxy.c gst/gstclock.c \
+	gst/gstcontext.c gst/gstcontroller.c $(gst_gstcpp_SOURCES) \
+	gst/gstdatetime.c gst/gstdevice.c gst/gstelement.c \
 	gst/gstelementfactory.c gst/gstevent.c gst/gstghostpad.c \
 	gst/gstinfo.c gst/gstiterator.c gst/gstmemory.c \
 	gst/gstmessage.c gst/gstmeta.c gst/gstminiobject.c \
 	gst/gstobject.c gst/gstpad.c gst/gstparamspecs.c \
 	gst/gstpipeline.c gst/gstplugin.c gst/gstpoll.c \
-	gst/gstpreset.c gst/gstquery.c gst/gstregistry.c \
-	gst/gstsegment.c gst/gststructure.c gst/gstsystemclock.c \
-	gst/gsttag.c gst/gsttagsetter.c gst/gsttask.c gst/gsttoc.c \
-	gst/gsttocsetter.c gst/gsturi.c gst/gstutils.c gst/gstvalue.c \
-	libs/adapter.c libs/baseparse.c libs/basesink.c libs/basesrc.c \
-	libs/bitreader.c libs/bitreader-noinline.c libs/bytereader.c \
+	gst/gstpreset.c gst/gstprintf.c gst/gstquery.c \
+	gst/gstregistry.c gst/gstsegment.c gst/gststructure.c \
+	gst/gstsystemclock.c gst/gsttag.c gst/gsttagsetter.c \
+	gst/gsttask.c gst/gsttoc.c gst/gsttocsetter.c gst/gsturi.c \
+	gst/gstutils.c gst/gstvalue.c libs/adapter.c libs/baseparse.c \
+	libs/basesink.c libs/basesrc.c libs/bitreader.c \
+	libs/bitreader-noinline.c libs/bytereader.c \
 	libs/bytereader-noinline.c libs/bytewriter.c \
 	libs/bytewriter-noinline.c libs/collectpads.c \
 	libs/controller.c libs/flowcombiner.c \
@@ -1125,6 +1157,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -1230,6 +1266,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -1420,6 +1457,8 @@
 # Do not run the abi test in case any option which causes the API to change has
 # been used
 @GST_DISABLE_REGISTRY_FALSE@@GST_DISABLE_TRACE_FALSE@ABI_CHECKS = gst/gstabi
+@GST_DISABLE_GST_DEBUG_FALSE@PRINTF_CHECKS = gst/gstprintf
+@GST_DISABLE_GST_DEBUG_TRUE@PRINTF_CHECKS = 
 LIBSABI_CHECKS = libs/libsabi
 @HAVE_CXX_FALSE@CXX_CHECKS = 
 @HAVE_CXX_TRUE@CXX_CHECKS = gst/gstcpp libs/gstlibscpp
@@ -1441,6 +1480,7 @@
 @GST_DISABLE_REGISTRY_FALSE@	gst/gstutils				\
 @GST_DISABLE_REGISTRY_FALSE@	generic/sinks				\
 @GST_DISABLE_REGISTRY_FALSE@	elements/capsfilter			\
+@GST_DISABLE_REGISTRY_FALSE@	elements/concat				\
 @GST_DISABLE_REGISTRY_FALSE@	elements/fakesink			\
 @GST_DISABLE_REGISTRY_FALSE@	elements/fakesrc			\
 @GST_DISABLE_REGISTRY_FALSE@	elements/fdsrc			  	\
@@ -1454,6 +1494,7 @@
 @GST_DISABLE_REGISTRY_FALSE@	elements/queue                          \
 @GST_DISABLE_REGISTRY_FALSE@	elements/queue2                         \
 @GST_DISABLE_REGISTRY_FALSE@	elements/valve                          \
+@GST_DISABLE_REGISTRY_FALSE@	elements/streamiddemux			\
 @GST_DISABLE_REGISTRY_FALSE@	libs/baseparse				\
 @GST_DISABLE_REGISTRY_FALSE@	libs/basesrc				\
 @GST_DISABLE_REGISTRY_FALSE@	libs/basesink				\
@@ -1502,6 +1543,10 @@
 gst_gstcpp_SOURCES = gst/gstcpp.cc
 libs_gstlibscpp_SOURCES = libs/gstlibscpp.cc
 gst_gstutils_LDADD = $(LDADD) $(GSL_LIBS) $(GMP_LIBS)
+gst_gstprintf_LDADD = \
+	$(top_builddir)/gst/printf/libgstprintf.la \
+	$(LDADD)
+
 elements_fdsrc_CFLAGS = $(GST_OBJ_CFLAGS) $(AM_CFLAGS) \
 	-DTESTFILE=\"$(top_srcdir)/configure.ac\"
 
@@ -1621,6 +1666,12 @@
 elements/capsfilter$(EXEEXT): $(elements_capsfilter_OBJECTS) $(elements_capsfilter_DEPENDENCIES) $(EXTRA_elements_capsfilter_DEPENDENCIES) elements/$(am__dirstamp)
 	@rm -f elements/capsfilter$(EXEEXT)
 	$(AM_V_CCLD)$(LINK) $(elements_capsfilter_OBJECTS) $(elements_capsfilter_LDADD) $(LIBS)
+elements/concat.$(OBJEXT): elements/$(am__dirstamp) \
+	elements/$(DEPDIR)/$(am__dirstamp)
+
+elements/concat$(EXEEXT): $(elements_concat_OBJECTS) $(elements_concat_DEPENDENCIES) $(EXTRA_elements_concat_DEPENDENCIES) elements/$(am__dirstamp)
+	@rm -f elements/concat$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(elements_concat_OBJECTS) $(elements_concat_LDADD) $(LIBS)
 elements/fakesink.$(OBJEXT): elements/$(am__dirstamp) \
 	elements/$(DEPDIR)/$(am__dirstamp)
 
@@ -1687,6 +1738,12 @@
 elements/selector$(EXEEXT): $(elements_selector_OBJECTS) $(elements_selector_DEPENDENCIES) $(EXTRA_elements_selector_DEPENDENCIES) elements/$(am__dirstamp)
 	@rm -f elements/selector$(EXEEXT)
 	$(AM_V_CCLD)$(LINK) $(elements_selector_OBJECTS) $(elements_selector_LDADD) $(LIBS)
+elements/streamiddemux.$(OBJEXT): elements/$(am__dirstamp) \
+	elements/$(DEPDIR)/$(am__dirstamp)
+
+elements/streamiddemux$(EXEEXT): $(elements_streamiddemux_OBJECTS) $(elements_streamiddemux_DEPENDENCIES) $(EXTRA_elements_streamiddemux_DEPENDENCIES) elements/$(am__dirstamp)
+	@rm -f elements/streamiddemux$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(elements_streamiddemux_OBJECTS) $(elements_streamiddemux_LDADD) $(LIBS)
 elements/tee.$(OBJEXT): elements/$(am__dirstamp) \
 	elements/$(DEPDIR)/$(am__dirstamp)
 
@@ -1818,6 +1875,12 @@
 gst/gstdatetime$(EXEEXT): $(gst_gstdatetime_OBJECTS) $(gst_gstdatetime_DEPENDENCIES) $(EXTRA_gst_gstdatetime_DEPENDENCIES) gst/$(am__dirstamp)
 	@rm -f gst/gstdatetime$(EXEEXT)
 	$(AM_V_CCLD)$(LINK) $(gst_gstdatetime_OBJECTS) $(gst_gstdatetime_LDADD) $(LIBS)
+gst/gstdevice.$(OBJEXT): gst/$(am__dirstamp) \
+	gst/$(DEPDIR)/$(am__dirstamp)
+
+gst/gstdevice$(EXEEXT): $(gst_gstdevice_OBJECTS) $(gst_gstdevice_DEPENDENCIES) $(EXTRA_gst_gstdevice_DEPENDENCIES) gst/$(am__dirstamp)
+	@rm -f gst/gstdevice$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(gst_gstdevice_OBJECTS) $(gst_gstdevice_LDADD) $(LIBS)
 gst/gstelement.$(OBJEXT): gst/$(am__dirstamp) \
 	gst/$(DEPDIR)/$(am__dirstamp)
 
@@ -1920,6 +1983,12 @@
 gst/gstpreset$(EXEEXT): $(gst_gstpreset_OBJECTS) $(gst_gstpreset_DEPENDENCIES) $(EXTRA_gst_gstpreset_DEPENDENCIES) gst/$(am__dirstamp)
 	@rm -f gst/gstpreset$(EXEEXT)
 	$(AM_V_CCLD)$(LINK) $(gst_gstpreset_OBJECTS) $(gst_gstpreset_LDADD) $(LIBS)
+gst/gstprintf.$(OBJEXT): gst/$(am__dirstamp) \
+	gst/$(DEPDIR)/$(am__dirstamp)
+
+gst/gstprintf$(EXEEXT): $(gst_gstprintf_OBJECTS) $(gst_gstprintf_DEPENDENCIES) $(EXTRA_gst_gstprintf_DEPENDENCIES) gst/$(am__dirstamp)
+	@rm -f gst/gstprintf$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(gst_gstprintf_OBJECTS) $(gst_gstprintf_LDADD) $(LIBS)
 gst/gstquery.$(OBJEXT): gst/$(am__dirstamp) \
 	gst/$(DEPDIR)/$(am__dirstamp)
 
@@ -2210,6 +2279,7 @@
 	-rm -f *.tab.c
 
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/capsfilter.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/concat.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/elements_fdsrc-fdsrc.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/elements_filesrc-filesrc.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/fakesink.Po@am__quote@
@@ -2221,6 +2291,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/queue.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/queue2.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/selector.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/streamiddemux.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/tee.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@elements/$(DEPDIR)/valve.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@generic/$(DEPDIR)/sinks.Po@am__quote@
@@ -2241,6 +2312,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstcontroller.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstcpp.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstdatetime.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstdevice.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstelement.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstelementfactory.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstevent.Po@am__quote@
@@ -2258,6 +2330,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstplugin.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstpoll.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstpreset.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstprintf.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstquery.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstregistry.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gst/$(DEPDIR)/gstsegment.Po@am__quote@
@@ -2674,6 +2747,13 @@
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+gst/gstdevice.log: gst/gstdevice$(EXEEXT)
+	@p='gst/gstdevice$(EXEEXT)'; \
+	b='gst/gstdevice'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 gst/gstinfo.log: gst/gstinfo$(EXEEXT)
 	@p='gst/gstinfo$(EXEEXT)'; \
 	b='gst/gstinfo'; \
@@ -2737,6 +2817,13 @@
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+gst/gstprintf.log: gst/gstprintf$(EXEEXT)
+	@p='gst/gstprintf$(EXEEXT)'; \
+	b='gst/gstprintf'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 gst/gstsegment.log: gst/gstsegment$(EXEEXT)
 	@p='gst/gstsegment$(EXEEXT)'; \
 	b='gst/gstsegment'; \
@@ -2961,6 +3048,13 @@
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+elements/concat.log: elements/concat$(EXEEXT)
+	@p='elements/concat$(EXEEXT)'; \
+	b='elements/concat'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 elements/fakesink.log: elements/fakesink$(EXEEXT)
 	@p='elements/fakesink$(EXEEXT)'; \
 	b='elements/fakesink'; \
@@ -3052,6 +3146,13 @@
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+elements/streamiddemux.log: elements/streamiddemux$(EXEEXT)
+	@p='elements/streamiddemux$(EXEEXT)'; \
+	b='elements/streamiddemux'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 libs/baseparse.log: libs/baseparse$(EXEEXT)
 	@p='libs/baseparse$(EXEEXT)'; \
 	b='libs/baseparse'; \
@@ -3458,7 +3559,8 @@
 
 # valgrind any given test by running make test.valgrind
 %.valgrind: %
-	@$(TESTS_ENVIRONMENT)					\
+	@valgrind_log=$(subst /,-,$*-valgrind.log);		\
+	$(TESTS_ENVIRONMENT)					\
 	CK_DEFAULT_TIMEOUT=360					\
 	G_SLICE=always-malloc					\
 	$(LIBTOOL) --mode=execute				\
@@ -3467,12 +3569,12 @@
 	--tool=memcheck --leak-check=full --trace-children=yes	\
 	--show-possibly-lost=no                                 \
 	--leak-resolution=high --num-callers=20			\
-	./$* 2>&1 | tee valgrind.log
-	@if grep "==" valgrind.log > /dev/null 2>&1; then	\
-	    rm valgrind.log;					\
+	./$* 2>&1 | tee $$valgrind_log ;			\
+	if grep "==" $$valgrind_log > /dev/null 2>&1; then	\
+	    rm $$valgrind_log;					\
 	    exit 1;						\
-	fi
-	@rm valgrind.log
+	fi ;							\
+	rm $$valgrind_log
 
 # valgrind any given test and generate suppressions for it
 %.valgrind.gen-suppressions: %
@@ -3559,19 +3661,13 @@
 # valgrind all tests
 valgrind: $(TESTS)
 	@echo "Valgrinding tests ..."
-	@failed=0;							\
+	@failed=0; valgrind_targets="";					\
 	for t in $(filter-out $(VALGRIND_TESTS_DISABLE),$(TESTS)); do	\
-		$(MAKE) $$t.valgrind;					\
-		if test "$$?" -ne 0; then                               \
-			echo "Valgrind error for test $$t";		\
-			failed=`expr $$failed + 1`;			\
-			whicht="$$whicht $$t";				\
-		fi;							\
+	  valgrind_targets="$$valgrind_targets $$t.valgrind";		\
 	done;								\
-	if test "$$failed" -ne 0; then					\
-		echo "$$failed tests had leaks or errors under valgrind:";	\
-		echo "$$whicht";					\
-		false;							\
+	if ! $(MAKE) $$valgrind_targets ; then				\
+	  echo "Some tests had leaks or errors under valgrind";		\
+	  false;							\
 	fi
 
 # valgrind all tests until failure
@@ -3621,6 +3717,9 @@
 	  do echo Inspecting $$e;					\
 	     $(GST_INSPECT) $$e > /dev/null 2>&1; done
 
+# build all tests
+build-checks: $(TESTS)
+
 help:
 	@echo
 	@echo "make check                         -- run all checks"
@@ -3643,6 +3742,7 @@
 	@echo "make (dir)/(test).valgrind.gen-suppressions -- generate suppressions"
 	@echo "                                               and save to suppressions.log"
 	@echo "make inspect                       -- inspect all plugin features"
+	@echo "make build-checks                  -- build all checks (but don't run them)"
 	@echo
 	@echo
 	@echo "Additionally, you can use the GST_CHECKS environment variable to"
diff --git a/tests/check/elements/capsfilter.c b/tests/check/elements/capsfilter.c
index 39bc6bd..008fee9 100644
--- a/tests/check/elements/capsfilter.c
+++ b/tests/check/elements/capsfilter.c
@@ -36,6 +36,16 @@
     GST_STATIC_CAPS (CAPS_TEMPLATE_STRING)
     );
 
+static GstStaticPadTemplate any_sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink",
+    GST_PAD_SINK,
+    GST_PAD_ALWAYS,
+    GST_STATIC_CAPS_ANY);
+
+static GstStaticPadTemplate any_srctemplate = GST_STATIC_PAD_TEMPLATE ("src",
+    GST_PAD_SRC,
+    GST_PAD_ALWAYS,
+    GST_STATIC_CAPS_ANY);
+
 static GList *events = NULL;
 
 static gboolean
@@ -325,6 +335,141 @@
 
 GST_END_TEST;
 
+GST_START_TEST (test_caps_change_mode_delayed)
+{
+  GstElement *filter;
+  GstPad *mysinkpad;
+  GstPad *mysrcpad;
+  GstSegment segment;
+  GstEvent *event;
+  GstCaps *caps;
+
+  filter = gst_check_setup_element ("capsfilter");
+  mysinkpad = gst_check_setup_sink_pad (filter, &any_sinktemplate);
+  gst_pad_set_event_function (mysinkpad, test_pad_eventfunc);
+  gst_pad_set_active (mysinkpad, TRUE);
+  mysrcpad = gst_check_setup_src_pad (filter, &any_srctemplate);
+  gst_pad_set_active (mysrcpad, TRUE);
+
+  g_object_set (filter, "caps-change-mode", 1, NULL);
+
+  fail_unless_equals_int (gst_element_set_state (filter, GST_STATE_PLAYING),
+      GST_STATE_CHANGE_SUCCESS);
+
+  /* push the stream start */
+  fail_unless (gst_pad_push_event (mysrcpad,
+          gst_event_new_stream_start ("test-stream")));
+  fail_unless_equals_int (g_list_length (events), 1);
+  event = events->data;
+  fail_unless (GST_EVENT_TYPE (event) == GST_EVENT_STREAM_START);
+  g_list_free_full (events, (GDestroyNotify) gst_event_unref);
+  events = NULL;
+
+  /* push a caps */
+  caps = gst_caps_from_string ("audio/x-raw, "
+      "channels=(int)2, " "rate = (int)44100");
+  g_object_set (filter, "caps", caps, NULL);
+  fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_caps (caps)));
+  gst_caps_unref (caps);
+  fail_unless_equals_int (g_list_length (events), 1);
+  event = events->data;
+  fail_unless (GST_EVENT_TYPE (event) == GST_EVENT_CAPS);
+  g_list_free_full (events, (GDestroyNotify) gst_event_unref);
+  events = NULL;
+
+  /* push a segment */
+  gst_segment_init (&segment, GST_FORMAT_TIME);
+  fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+  fail_unless_equals_int (g_list_length (events), 1);
+  event = events->data;
+  fail_unless (GST_EVENT_TYPE (event) == GST_EVENT_SEGMENT);
+  g_list_free_full (events, (GDestroyNotify) gst_event_unref);
+  events = NULL;
+
+  /* push a buffer */
+  fail_unless_equals_int (gst_pad_push (mysrcpad,
+          gst_buffer_new_wrapped (g_malloc0 (1024), 1024)), GST_FLOW_OK);
+  fail_unless_equals_int (g_list_length (buffers), 1);
+  g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+  buffers = NULL;
+
+  /* Set new incompatible caps */
+  caps = gst_caps_from_string ("audio/x-raw, "
+      "channels=(int)2, " "rate = (int)48000");
+  g_object_set (filter, "caps", caps, NULL);
+
+  /* push a buffer without updating the caps */
+  fail_unless_equals_int (gst_pad_push (mysrcpad,
+          gst_buffer_new_wrapped (g_malloc0 (1024), 1024)), GST_FLOW_OK);
+  fail_unless_equals_int (g_list_length (buffers), 1);
+  g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+  buffers = NULL;
+
+  /* No caps event here, we're still at the old caps */
+  fail_unless (g_list_length (events) == 0);
+
+  fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_caps (caps)));
+  gst_caps_unref (caps);
+  fail_unless_equals_int (g_list_length (events), 1);
+  event = events->data;
+  fail_unless (GST_EVENT_TYPE (event) == GST_EVENT_CAPS);
+  g_list_free_full (events, (GDestroyNotify) gst_event_unref);
+  events = NULL;
+
+  /* Push a new buffer, now we have the new caps */
+  fail_unless_equals_int (gst_pad_push (mysrcpad,
+          gst_buffer_new_wrapped (g_malloc0 (1024), 1024)), GST_FLOW_OK);
+  fail_unless_equals_int (g_list_length (buffers), 1);
+  g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+  buffers = NULL;
+
+  /* Set back old caps */
+  caps = gst_caps_from_string ("audio/x-raw, "
+      "channels=(int)2, " "rate = (int)44100");
+  g_object_set (filter, "caps", caps, NULL);
+  gst_caps_unref (caps);
+
+  /* push a buffer without updating the caps */
+  fail_unless_equals_int (gst_pad_push (mysrcpad,
+          gst_buffer_new_wrapped (g_malloc0 (1024), 1024)), GST_FLOW_OK);
+  fail_unless_equals_int (g_list_length (buffers), 1);
+  g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+  buffers = NULL;
+
+  /* Now set new caps again but the old caps are currently pushed */
+  caps = gst_caps_from_string ("audio/x-raw, "
+      "channels=(int)2, " "rate = (int)48000");
+  g_object_set (filter, "caps", caps, NULL);
+  gst_caps_unref (caps);
+  /* Race condition simulation here! */
+  caps = gst_caps_from_string ("audio/x-raw, "
+      "channels=(int)2, " "rate = (int)44100");
+  fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_caps (caps)));
+  gst_caps_unref (caps);
+  fail_unless_equals_int (g_list_length (events), 1);
+  event = events->data;
+  fail_unless (GST_EVENT_TYPE (event) == GST_EVENT_CAPS);
+  g_list_free_full (events, (GDestroyNotify) gst_event_unref);
+  events = NULL;
+
+  fail_unless_equals_int (gst_pad_push (mysrcpad,
+          gst_buffer_new_wrapped (g_malloc0 (1024), 1024)), GST_FLOW_OK);
+  fail_unless_equals_int (g_list_length (buffers), 1);
+  g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+  buffers = NULL;
+
+  /* cleanup */
+  GST_DEBUG ("cleanup");
+
+  gst_pad_set_active (mysrcpad, FALSE);
+  gst_pad_set_active (mysinkpad, FALSE);
+  gst_check_teardown_src_pad (filter);
+  gst_check_teardown_sink_pad (filter);
+  gst_check_teardown_element (filter);
+}
+
+GST_END_TEST;
+
 static Suite *
 capsfilter_suite (void)
 {
@@ -337,6 +482,7 @@
   tcase_add_test (tc_chain, test_caps_query);
   tcase_add_test (tc_chain, test_accept_caps_query);
   tcase_add_test (tc_chain, test_push_pending_events);
+  tcase_add_test (tc_chain, test_caps_change_mode_delayed);
 
   return s;
 }
diff --git a/tests/check/elements/concat.c b/tests/check/elements/concat.c
new file mode 100644
index 0000000..43054dc
--- /dev/null
+++ b/tests/check/elements/concat.c
@@ -0,0 +1,308 @@
+/* GStreamer unit tests for concat
+ *
+ * Copyright (C) 2014 Sebastian Dröge <sebastian@centricular.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
+*/
+
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <gst/check/gstcheck.h>
+
+#define N_BUFFERS 10
+static gboolean got_eos;
+static guint buffer_count;
+static GstSegment current_segment;
+static guint64 current_bytes;
+
+static GstFlowReturn
+output_chain_time (GstPad * pad, GstObject * parent, GstBuffer * buffer)
+{
+  GstClockTime timestamp;
+  guint8 b;
+
+  timestamp = GST_BUFFER_TIMESTAMP (buffer);
+  fail_unless_equals_int64 (timestamp,
+      (buffer_count % N_BUFFERS) * 25 * GST_MSECOND);
+  timestamp =
+      gst_segment_to_stream_time (&current_segment, GST_FORMAT_TIME, timestamp);
+  fail_unless_equals_int64 (timestamp,
+      (buffer_count % N_BUFFERS) * 25 * GST_MSECOND);
+
+  timestamp = GST_BUFFER_TIMESTAMP (buffer);
+  timestamp =
+      gst_segment_to_running_time (&current_segment, GST_FORMAT_TIME,
+      timestamp);
+  fail_unless_equals_int64 (timestamp, buffer_count * 25 * GST_MSECOND);
+
+  gst_buffer_extract (buffer, 0, &b, 1);
+  fail_unless_equals_int (b, buffer_count % N_BUFFERS);
+
+  buffer_count++;
+  gst_buffer_unref (buffer);
+  return GST_FLOW_OK;
+}
+
+static gboolean
+output_event_time (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_FLUSH_STOP:
+      gst_segment_init (&current_segment, GST_FORMAT_UNDEFINED);
+      break;
+    case GST_EVENT_SEGMENT:
+      gst_event_copy_segment (event, &current_segment);
+      break;
+    case GST_EVENT_EOS:
+      got_eos = TRUE;
+      break;
+    default:
+      break;
+  }
+
+  gst_event_unref (event);
+  return TRUE;
+}
+
+static gpointer
+push_buffers_time (gpointer data)
+{
+  GstSegment segment;
+  GstPad *pad = data;
+  gint i;
+  GstClockTime timestamp = 0;
+
+  gst_pad_send_event (pad, gst_event_new_stream_start ("test"));
+  gst_segment_init (&segment, GST_FORMAT_TIME);
+  gst_pad_send_event (pad, gst_event_new_segment (&segment));
+
+  for (i = 0; i < N_BUFFERS; i++) {
+    GstBuffer *buf = gst_buffer_new_and_alloc (1000);
+
+    gst_buffer_memset (buf, 0, i, 1);
+
+    GST_BUFFER_TIMESTAMP (buf) = timestamp;
+    timestamp += 25 * GST_MSECOND;
+    GST_BUFFER_DURATION (buf) = timestamp - GST_BUFFER_TIMESTAMP (buf);
+
+    fail_unless (gst_pad_chain (pad, buf) == GST_FLOW_OK);
+  }
+  gst_pad_send_event (pad, gst_event_new_eos ());
+
+  return NULL;
+}
+
+GST_START_TEST (test_concat_simple_time)
+{
+  GstElement *concat;
+  GstPad *sink1, *sink2, *sink3, *src, *output_sink;
+  GThread *thread1, *thread2, *thread3;
+
+  got_eos = FALSE;
+  buffer_count = 0;
+  gst_segment_init (&current_segment, GST_FORMAT_UNDEFINED);
+
+  concat = gst_element_factory_make ("concat", NULL);
+  fail_unless (concat != NULL);
+
+  sink1 = gst_element_get_request_pad (concat, "sink_%u");
+  fail_unless (sink1 != NULL);
+
+  sink2 = gst_element_get_request_pad (concat, "sink_%u");
+  fail_unless (sink2 != NULL);
+
+  sink3 = gst_element_get_request_pad (concat, "sink_%u");
+  fail_unless (sink3 != NULL);
+
+  src = gst_element_get_static_pad (concat, "src");
+  output_sink = gst_pad_new ("sink", GST_PAD_SINK);
+  fail_unless (output_sink != NULL);
+  fail_unless (gst_pad_link (src, output_sink) == GST_PAD_LINK_OK);
+
+  gst_pad_set_chain_function (output_sink, output_chain_time);
+  gst_pad_set_event_function (output_sink, output_event_time);
+
+  gst_pad_set_active (output_sink, TRUE);
+  fail_unless (gst_element_set_state (concat,
+          GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS);
+
+  thread1 = g_thread_new ("thread1", (GThreadFunc) push_buffers_time, sink1);
+  thread2 = g_thread_new ("thread2", (GThreadFunc) push_buffers_time, sink2);
+  thread3 = g_thread_new ("thread3", (GThreadFunc) push_buffers_time, sink3);
+
+  g_thread_join (thread1);
+  g_thread_join (thread2);
+  g_thread_join (thread3);
+
+  fail_unless (got_eos);
+  fail_unless_equals_int (buffer_count, 3 * N_BUFFERS);
+
+  gst_element_set_state (concat, GST_STATE_NULL);
+  gst_pad_unlink (src, output_sink);
+  gst_object_unref (src);
+  gst_element_release_request_pad (concat, sink1);
+  gst_object_unref (sink1);
+  gst_element_release_request_pad (concat, sink2);
+  gst_object_unref (sink2);
+  gst_element_release_request_pad (concat, sink3);
+  gst_object_unref (sink3);
+  gst_pad_set_active (output_sink, FALSE);
+  gst_object_unref (output_sink);
+  gst_object_unref (concat);
+}
+
+GST_END_TEST;
+
+static GstFlowReturn
+output_chain_bytes (GstPad * pad, GstObject * parent, GstBuffer * buffer)
+{
+  guint8 b;
+
+  fail_unless (current_bytes >= current_segment.start);
+  fail_unless_equals_int64 (current_segment.start,
+      (buffer_count / N_BUFFERS) * 1000 * N_BUFFERS);
+
+  gst_buffer_extract (buffer, 0, &b, 1);
+  fail_unless_equals_int (b, buffer_count % N_BUFFERS);
+
+  current_bytes += gst_buffer_get_size (buffer), buffer_count++;
+  gst_buffer_unref (buffer);
+  return GST_FLOW_OK;
+}
+
+static gboolean
+output_event_bytes (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_FLUSH_STOP:
+      gst_segment_init (&current_segment, GST_FORMAT_UNDEFINED);
+      break;
+    case GST_EVENT_SEGMENT:
+      gst_event_copy_segment (event, &current_segment);
+      break;
+    case GST_EVENT_EOS:
+      got_eos = TRUE;
+      break;
+    default:
+      break;
+  }
+
+  gst_event_unref (event);
+  return TRUE;
+}
+
+static gpointer
+push_buffers_bytes (gpointer data)
+{
+  GstSegment segment;
+  GstPad *pad = data;
+  gint i;
+
+  gst_pad_send_event (pad, gst_event_new_stream_start ("test"));
+  gst_segment_init (&segment, GST_FORMAT_BYTES);
+  gst_pad_send_event (pad, gst_event_new_segment (&segment));
+
+  for (i = 0; i < N_BUFFERS; i++) {
+    GstBuffer *buf = gst_buffer_new_and_alloc (1000);
+    gst_buffer_memset (buf, 0, i, 1);
+
+    fail_unless (gst_pad_chain (pad, buf) == GST_FLOW_OK);
+  }
+  gst_pad_send_event (pad, gst_event_new_eos ());
+
+  return NULL;
+}
+
+GST_START_TEST (test_concat_simple_bytes)
+{
+  GstElement *concat;
+  GstPad *sink1, *sink2, *sink3, *src, *output_sink;
+  GThread *thread1, *thread2, *thread3;
+
+  got_eos = FALSE;
+  buffer_count = 0;
+  current_bytes = 0;
+  gst_segment_init (&current_segment, GST_FORMAT_UNDEFINED);
+
+  concat = gst_element_factory_make ("concat", NULL);
+  fail_unless (concat != NULL);
+
+  sink1 = gst_element_get_request_pad (concat, "sink_%u");
+  fail_unless (sink1 != NULL);
+
+  sink2 = gst_element_get_request_pad (concat, "sink_%u");
+  fail_unless (sink2 != NULL);
+
+  sink3 = gst_element_get_request_pad (concat, "sink_%u");
+  fail_unless (sink3 != NULL);
+
+  src = gst_element_get_static_pad (concat, "src");
+  output_sink = gst_pad_new ("sink", GST_PAD_SINK);
+  fail_unless (output_sink != NULL);
+  fail_unless (gst_pad_link (src, output_sink) == GST_PAD_LINK_OK);
+
+  gst_pad_set_chain_function (output_sink, output_chain_bytes);
+  gst_pad_set_event_function (output_sink, output_event_bytes);
+
+  gst_pad_set_active (output_sink, TRUE);
+  fail_unless (gst_element_set_state (concat,
+          GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS);
+
+  thread1 = g_thread_new ("thread1", (GThreadFunc) push_buffers_bytes, sink1);
+  thread2 = g_thread_new ("thread2", (GThreadFunc) push_buffers_bytes, sink2);
+  thread3 = g_thread_new ("thread3", (GThreadFunc) push_buffers_bytes, sink3);
+
+  g_thread_join (thread1);
+  g_thread_join (thread2);
+  g_thread_join (thread3);
+
+  fail_unless (got_eos);
+  fail_unless_equals_int (buffer_count, 3 * N_BUFFERS);
+  fail_unless_equals_int64 (current_bytes, 3 * N_BUFFERS * 1000);
+
+  gst_element_set_state (concat, GST_STATE_NULL);
+  gst_pad_unlink (src, output_sink);
+  gst_object_unref (src);
+  gst_element_release_request_pad (concat, sink1);
+  gst_object_unref (sink1);
+  gst_element_release_request_pad (concat, sink2);
+  gst_object_unref (sink2);
+  gst_element_release_request_pad (concat, sink3);
+  gst_object_unref (sink3);
+  gst_pad_set_active (output_sink, FALSE);
+  gst_object_unref (output_sink);
+  gst_object_unref (concat);
+}
+
+GST_END_TEST;
+
+static Suite *
+concat_suite (void)
+{
+  Suite *s = suite_create ("concat");
+  TCase *tc_chain;
+
+  tc_chain = tcase_create ("concat");
+  tcase_add_test (tc_chain, test_concat_simple_time);
+  tcase_add_test (tc_chain, test_concat_simple_bytes);
+  suite_add_tcase (s, tc_chain);
+
+  return s;
+}
+
+GST_CHECK_MAIN (concat);
diff --git a/tests/check/elements/fdsrc.c b/tests/check/elements/fdsrc.c
index 12e9d10..ffe6194 100644
--- a/tests/check/elements/fdsrc.c
+++ b/tests/check/elements/fdsrc.c
@@ -24,6 +24,7 @@
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
+#include <errno.h>
 
 #include <gst/check/gstcheck.h>
 
@@ -87,9 +88,19 @@
           GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS,
       "could not set to playing");
 
+#if defined (G_OS_UNIX) && defined (O_NONBLOCK)
+  {
+    int flags;
+
+    flags = fcntl (pipe_fd[1], F_GETFL, 0);
+    fcntl (pipe_fd[1], F_SETFL, flags | O_NONBLOCK);
+  }
+#endif
+
   memset (data, 0, 4096);
   while (!have_eos) {
-    fail_if (write (pipe_fd[1], data, 4096) < 0);
+    int ret = write (pipe_fd[1], data, 4096);
+    fail_if (ret < 0 && errno != EAGAIN);
     g_usleep (100);
   }
 
diff --git a/tests/check/elements/funnel.c b/tests/check/elements/funnel.c
index e5fe75f..313dd48 100644
--- a/tests/check/elements/funnel.c
+++ b/tests/check/elements/funnel.c
@@ -243,6 +243,135 @@
 
 GST_END_TEST;
 
+guint nb_stream_start_event = 0;
+guint nb_caps_event = 0;
+guint nb_segment_event = 0;
+guint nb_gap_event = 0;
+
+static GstPadProbeReturn
+event_counter (GstObject * pad, GstPadProbeInfo * info, gpointer user_data)
+{
+  GstEvent *event = GST_PAD_PROBE_INFO_EVENT (info);
+
+  fail_unless (event != NULL);
+  fail_unless (GST_IS_EVENT (event));
+
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_STREAM_START:
+      ++nb_stream_start_event;
+      break;
+    case GST_EVENT_CAPS:
+      ++nb_caps_event;
+      break;
+    case GST_EVENT_SEGMENT:
+      ++nb_segment_event;
+      break;
+    case GST_EVENT_GAP:
+      ++nb_gap_event;
+      break;
+    default:
+      break;
+  }
+
+  return GST_PAD_PROBE_OK;
+}
+
+/*
+ * Push GAP events into funnel to forward sticky events.
+ * Funnel element shoud also treat GAP events likes buffers.
+ * For example, funnel can be used for internal subtitle with streamiddemux. 
+ *  +--------------------------------------------------------------------------+
+ *  | playbin                               +--------------------------------+ |
+ *  | +--------------+  +----------------+  | +------------+     playsink    | |
+ *  | | uridecodebin |  | input-selector |  | | video-sink |                 | |
+ *  | |              |  +----------------+  | +------------+                 | |
+ *  | |              |                      |                                | |
+ *  | |              |  +----------------+  | +------------+                 | |
+ *  | |              |  | input-selector |  | | audio-sink |                 | |
+ *  | |              |  +----------------+  | +------------+                 | |
+ *  | |              |                      |                                | |
+ *  | |              |  +----------------+  | +---------------+ +----------+ | |
+ *  | |              |  | funnel         |  | | streamiddemux | | appsink0 | | |
+ *  | +--------------+  +----------------+  | +---------------+ +----------+ | |
+ *  |                                       |                   +----------+ | |
+ *  |                                       |                   | appsinkn | | |
+ *  |                                       |                   +----------+ | |
+ *  |                                       +--------------------------------+ |
+ *  +--------------------------------------------------------------------------+
+ * If no data was received in funnel and then sticky events can be pending continuously. 
+ * And streamiddemux only receive gap events continuously. 
+ * Thus, pipeline can not be constructed completely.
+ * For support it, need to handle GAP events likes buffers.
+ */
+GST_START_TEST (test_funnel_gap_event)
+{
+  struct TestData td;
+  guint probe = 0;
+
+  setup_test_objects (&td, chain_ok);
+
+  nb_stream_start_event = 0;
+  nb_caps_event = 0;
+  nb_segment_event = 0;
+  nb_gap_event = 0;
+  bufcount = 0;
+
+  probe = gst_pad_add_probe (td.mysink, GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM,
+      (GstPadProbeCallback) event_counter, NULL, NULL);
+
+  /* push a gap event to srcpad1 to push sticky events */
+  fail_unless (gst_pad_push_event (td.mysrc1, gst_event_new_gap (0,
+              GST_SECOND)));
+
+  fail_unless (nb_stream_start_event == 1);
+  fail_unless (nb_caps_event == 1);
+  fail_unless (nb_segment_event == 1);
+  fail_unless (nb_gap_event == 1);
+
+  /* push a gap event to srcpad2 to push sticky events */
+  fail_unless (gst_pad_push_event (td.mysrc2, gst_event_new_gap (0,
+              GST_SECOND)));
+
+  fail_unless (nb_stream_start_event == 2);
+  fail_unless (nb_caps_event == 2);
+  fail_unless (nb_segment_event == 2);
+  fail_unless (nb_gap_event == 2);
+
+  /* push a gap event to srcpad2 */
+  fail_unless (gst_pad_push_event (td.mysrc2, gst_event_new_gap (0,
+              GST_SECOND)));
+
+  fail_unless (nb_stream_start_event == 2);
+  fail_unless (nb_caps_event == 2);
+  fail_unless (nb_segment_event == 2);
+  fail_unless (nb_gap_event == 3);
+
+  /* push a gap event to srcpad1 */
+  fail_unless (gst_pad_push_event (td.mysrc1, gst_event_new_gap (0,
+              GST_SECOND)));
+
+  fail_unless (nb_stream_start_event == 3);
+  fail_unless (nb_caps_event == 3);
+  fail_unless (nb_segment_event == 3);
+  fail_unless (nb_gap_event == 4);
+
+  /* push buffer */
+  fail_unless (gst_pad_push (td.mysrc1, gst_buffer_new ()) == GST_FLOW_OK);
+  fail_unless (gst_pad_push (td.mysrc2, gst_buffer_new ()) == GST_FLOW_OK);
+
+  fail_unless (nb_stream_start_event == 4);
+  fail_unless (nb_caps_event == 4);
+  fail_unless (nb_segment_event == 4);
+  fail_unless (nb_gap_event == 4);
+  fail_unless (bufcount == 2);
+
+  gst_pad_remove_probe (td.mysink, probe);
+
+  release_test_objects (&td);
+}
+
+GST_END_TEST;
+
 static Suite *
 funnel_suite (void)
 {
@@ -252,6 +381,7 @@
   tc_chain = tcase_create ("funnel simple");
   tcase_add_test (tc_chain, test_funnel_simple);
   tcase_add_test (tc_chain, test_funnel_eos);
+  tcase_add_test (tc_chain, test_funnel_gap_event);
   suite_add_tcase (s, tc_chain);
 
   return s;
diff --git a/tests/check/elements/queue.c b/tests/check/elements/queue.c
index 9a2ebcf..1e9e9ca 100644
--- a/tests/check/elements/queue.c
+++ b/tests/check/elements/queue.c
@@ -894,6 +894,200 @@
 
 GST_END_TEST;
 
+static gpointer
+push_event_thread_func (gpointer data)
+{
+  GstEvent *event;
+
+  event = GST_EVENT (data);
+
+  GST_DEBUG ("pushing event %p on pad %p", event, mysrcpad);
+  gst_pad_push_event (mysrcpad, event);
+
+  return NULL;
+}
+
+GST_START_TEST (test_state_change_when_flushing)
+{
+  GstEvent *event;
+  GThread *thread;
+
+  mysinkpad = gst_check_setup_sink_pad (queue, &sinktemplate);
+  gst_pad_set_active (mysinkpad, TRUE);
+
+  fail_unless (gst_element_set_state (queue, GST_STATE_PAUSED) ==
+      GST_STATE_CHANGE_SUCCESS);
+
+  event = gst_event_new_flush_start ();
+  gst_pad_push_event (mysrcpad, event);
+
+  event = gst_event_new_flush_stop (TRUE);
+  thread = g_thread_new ("send event", push_event_thread_func, event);
+
+  GST_DEBUG ("changing state to READY");
+  fail_unless (gst_element_set_state (queue, GST_STATE_READY) ==
+      GST_STATE_CHANGE_SUCCESS);
+  GST_DEBUG ("state changed");
+
+  g_thread_join (thread);
+
+  fail_unless (gst_element_set_state (queue, GST_STATE_NULL) ==
+      GST_STATE_CHANGE_SUCCESS);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_time_level_buffer_list)
+{
+  GstBuffer *buffer = NULL;
+  GstBufferList *buffer_list = NULL;
+  GstClockTime time;
+  guint buffers;
+  GstSegment segment;
+
+  g_signal_connect (queue, "overrun",
+      G_CALLBACK (queue_overrun_link_and_activate), NULL);
+  g_object_set (G_OBJECT (queue), "max-size-buffers", 11, NULL);
+  g_object_set (G_OBJECT (queue), "max-size-time",
+      G_GUINT64_CONSTANT (7000) * GST_MSECOND, NULL);
+
+  GST_DEBUG ("starting");
+
+  block_src ();
+
+  UNDERRUN_LOCK ();
+  fail_unless (gst_element_set_state (queue,
+          GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS,
+      "could not set to playing");
+  UNDERRUN_WAIT ();
+  UNDERRUN_UNLOCK ();
+
+  gst_segment_init (&segment, GST_FORMAT_BYTES);
+  gst_pad_push_event (mysrcpad, gst_event_new_stream_start ("test"));
+  gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment));
+
+  /* push buffer without duration */
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 1000 * GST_MSECOND;
+  /* pushing gives away my reference */
+  gst_pad_push (mysrcpad, buffer);
+
+  /* level should be 1 seconds because buffer has no duration and starts at 1
+   * SECOND (sparse stream). */
+  g_object_get (G_OBJECT (queue), "current-level-time", &time, NULL);
+  fail_unless_equals_uint64 (time, 1000 * GST_MSECOND);
+  g_object_get (G_OBJECT (queue), "current-level-buffers", &buffers, NULL);
+  fail_unless_equals_int (buffers, 1);
+
+  /* second push should set the level to 2 second */
+  buffer_list = gst_buffer_list_new ();
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 1500 * GST_MSECOND;
+  gst_buffer_list_add (buffer_list, buffer);
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 2000 * GST_MSECOND;
+  gst_buffer_list_add (buffer_list, buffer);
+  gst_pad_push_list (mysrcpad, buffer_list);
+
+  g_object_get (G_OBJECT (queue), "current-level-time", &time, NULL);
+  fail_unless_equals_uint64 (time, 2000 * GST_MSECOND);
+  g_object_get (G_OBJECT (queue), "current-level-buffers", &buffers, NULL);
+  fail_unless_equals_int (buffers, 3);
+
+  /* third push should set the level to 4 seconds, the 1 second diff with the
+   * previous buffer (without duration) and the 1 second duration of this
+   * buffer. */
+  buffer_list = gst_buffer_list_new ();
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 3000 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 500 * GST_MSECOND;
+  ASSERT_BUFFER_REFCOUNT (buffer, "buffer", 1);
+  gst_buffer_list_add (buffer_list, buffer);
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 3500 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 500 * GST_MSECOND;
+  ASSERT_BUFFER_REFCOUNT (buffer, "buffer", 1);
+  gst_buffer_list_add (buffer_list, buffer);
+  gst_pad_push_list (mysrcpad, buffer_list);
+
+  g_object_get (G_OBJECT (queue), "current-level-time", &time, NULL);
+  fail_unless_equals_uint64 (time, 4000 * GST_MSECOND);
+  g_object_get (G_OBJECT (queue), "current-level-buffers", &buffers, NULL);
+  fail_unless_equals_int (buffers, 5);
+
+  /* fourth push should set the level to 6 seconds, the 2 second diff with the
+   * previous buffer, same duration. */
+  buffer_list = gst_buffer_list_new ();
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 5000 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 1000 * GST_MSECOND;
+  ASSERT_BUFFER_REFCOUNT (buffer, "buffer", 1);
+  gst_buffer_list_add (buffer_list, buffer);
+  gst_pad_push_list (mysrcpad, buffer_list);
+
+  g_object_get (G_OBJECT (queue), "current-level-time", &time, NULL);
+  fail_unless_equals_uint64 (time, 6000 * GST_MSECOND);
+  g_object_get (G_OBJECT (queue), "current-level-buffers", &buffers, NULL);
+  fail_unless_equals_int (buffers, 6);
+
+  /* fifth push should not adjust the level, the timestamp and duration are the
+   * same, meaning the previous buffer did not really have a duration. */
+  buffer_list = gst_buffer_list_new ();
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 5000 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 250 * GST_MSECOND;
+  gst_buffer_list_add (buffer_list, buffer);
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 5250 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 250 * GST_MSECOND;
+  gst_buffer_list_add (buffer_list, buffer);
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 5500 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 250 * GST_MSECOND;
+  gst_buffer_list_add (buffer_list, buffer);
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 5750 * GST_MSECOND;
+  GST_BUFFER_DURATION (buffer) = 250 * GST_MSECOND;
+  gst_buffer_list_add (buffer_list, buffer);
+  gst_pad_push_list (mysrcpad, buffer_list);
+
+  g_object_get (G_OBJECT (queue), "current-level-time", &time, NULL);
+  fail_unless_equals_uint64 (time, 6000 * GST_MSECOND);
+  g_object_get (G_OBJECT (queue), "current-level-buffers", &buffers, NULL);
+  fail_unless_equals_int (buffers, 10);
+
+  /* sixth push should adjust the level with 1 second, we now know the
+   * previous buffer actually had a duration of 2 SECONDS */
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 7000 * GST_MSECOND;
+  gst_pad_push (mysrcpad, buffer);
+
+  g_object_get (G_OBJECT (queue), "current-level-time", &time, NULL);
+  fail_unless_equals_uint64 (time, 7000 * GST_MSECOND);
+  g_object_get (G_OBJECT (queue), "current-level-buffers", &buffers, NULL);
+  fail_unless_equals_int (buffers, 11);
+
+  /* eighth push should cause overrun */
+  fail_unless (overrun_count == 0);
+  buffer_list = gst_buffer_list_new ();
+  buffer = gst_buffer_new_and_alloc (4);
+  GST_BUFFER_TIMESTAMP (buffer) = 8000 * GST_MSECOND;
+  /* the next call to gst_pad_push will emit the overrun signal. The signal
+   * handler queue_overrun_link_and_activate() (above) increases overrun_count,
+   * activates and links mysinkpad. The queue task then dequeues a buffer and
+   * gst_pad_push() will return. */
+  gst_buffer_list_add (buffer_list, buffer);
+  gst_pad_push_list (mysrcpad, buffer_list);
+
+  fail_unless (overrun_count == 1);
+
+  GST_DEBUG ("stopping");
+  fail_unless (gst_element_set_state (queue,
+          GST_STATE_NULL) == GST_STATE_CHANGE_SUCCESS, "could not set to null");
+}
+
+GST_END_TEST;
+
 static Suite *
 queue_suite (void)
 {
@@ -909,10 +1103,12 @@
   tcase_add_test (tc_chain, test_time_level);
   tcase_add_test (tc_chain, test_time_level_task_not_started);
   tcase_add_test (tc_chain, test_queries_while_flushing);
+  tcase_add_test (tc_chain, test_state_change_when_flushing);
 #if 0
   tcase_add_test (tc_chain, test_newsegment);
 #endif
   tcase_add_test (tc_chain, test_sticky_not_linked);
+  tcase_add_test (tc_chain, test_time_level_buffer_list);
 
   return s;
 }
diff --git a/tests/check/elements/streamiddemux.c b/tests/check/elements/streamiddemux.c
new file mode 100644
index 0000000..8c10bce
--- /dev/null
+++ b/tests/check/elements/streamiddemux.c
@@ -0,0 +1,514 @@
+/* GStreamer unit tests for the streamiddemux
+ *
+ * Copyright 2013 LGE Corporation.
+ *  @author: Hoonhee Lee <hoonhee.lee@lge.com>
+ *  @author: Jeongseok Kim <jeongseok.kim@lge.com>
+ *  @author: Wonchul Lee <wonchul86.lee@lge.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
+*/
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gst/check/gstcheck.h>
+#include <stdlib.h>
+
+#define NUM_SUBSTREAMS 100
+#define NUM_BUFFER 1000
+
+static GstPad *active_srcpad;
+
+struct TestData
+{
+  GstElement *demux;
+  GstPad *mysrc, *mysink[NUM_SUBSTREAMS];
+  GstPad *demuxsink, *demuxsrc[NUM_SUBSTREAMS];
+  gint srcpad_cnt;
+  GstCaps *mycaps;
+  GstCaps *caps[NUM_SUBSTREAMS];
+  GstSegment segment[NUM_SUBSTREAMS];
+  gchar *stream_ids[NUM_SUBSTREAMS];
+};
+
+static void
+set_active_srcpad (struct TestData *td)
+{
+  if (active_srcpad)
+    gst_object_unref (active_srcpad);
+
+  g_object_get (td->demux, "active-pad", &active_srcpad, NULL);
+}
+
+static void
+release_test_objects (struct TestData *td)
+{
+  fail_unless (gst_element_set_state (td->demux, GST_STATE_NULL) ==
+      GST_STATE_CHANGE_SUCCESS);
+
+  gst_object_unref (td->demuxsink);
+
+  gst_caps_unref (td->mycaps);
+
+  if (active_srcpad)
+    gst_object_unref (active_srcpad);
+
+  gst_object_unref (td->demux);
+}
+
+static void
+src_pad_added_cb (GstElement * demux, GstPad * pad, struct TestData *td)
+{
+  if (td->srcpad_cnt < NUM_SUBSTREAMS) {
+    td->demuxsrc[td->srcpad_cnt] = pad;
+    fail_unless (gst_pad_link (pad,
+            td->mysink[td->srcpad_cnt++]) == GST_PAD_LINK_OK);
+  }
+}
+
+static void
+setup_test_objects (struct TestData *td)
+{
+  td->mycaps = gst_caps_new_empty_simple ("test/test");
+  td->srcpad_cnt = 0;
+
+  td->demux = gst_element_factory_make ("streamiddemux", NULL);
+  fail_unless (td->demux != NULL);
+  g_signal_connect (td->demux, "pad-added", G_CALLBACK (src_pad_added_cb), td);
+  td->demuxsink = gst_element_get_static_pad (td->demux, "sink");
+  fail_unless (td->demuxsink != NULL);
+
+  fail_unless (gst_element_set_state (td->demux, GST_STATE_PLAYING) ==
+      GST_STATE_CHANGE_SUCCESS);
+}
+
+static GstFlowReturn
+chain_ok (GstPad * pad, GstObject * parent, GstBuffer * buffer)
+{
+  GstPad *peer_pad = NULL;
+  gchar *pad_stream_id, *active_srcpad_stream_id;
+
+  peer_pad = gst_pad_get_peer (active_srcpad);
+  pad_stream_id = gst_pad_get_stream_id (pad);
+  active_srcpad_stream_id = gst_pad_get_stream_id (active_srcpad);
+  fail_unless (pad == peer_pad);
+  fail_unless (g_strcmp0 (pad_stream_id, active_srcpad_stream_id) == 0);
+
+  g_free (pad_stream_id);
+  g_free (active_srcpad_stream_id);
+  gst_object_unref (peer_pad);
+  gst_buffer_unref (buffer);
+
+  return GST_FLOW_OK;
+}
+
+GST_START_TEST (test_simple_create_destroy)
+{
+  GstElement *demux;
+
+  demux = gst_element_factory_make ("streamiddemux", NULL);
+  gst_object_unref (demux);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_streamiddemux_with_stream_start)
+{
+  struct TestData td;
+
+  setup_test_objects (&td);
+
+  GST_DEBUG ("Creating mysink");
+  td.mysink[0] = gst_pad_new ("mysink0", GST_PAD_SINK);
+  gst_pad_set_active (td.mysink[0], TRUE);
+
+  GST_DEBUG ("Creating mysrc");
+  td.mysrc = gst_pad_new ("mysrc", GST_PAD_SRC);
+  fail_unless (GST_PAD_LINK_SUCCESSFUL (gst_pad_link (td.mysrc, td.demuxsink)));
+  gst_pad_set_active (td.mysrc, TRUE);
+
+  GST_DEBUG ("Pushing stream-start event");
+  fail_unless (gst_pad_push_event (td.mysrc,
+          gst_event_new_stream_start ("test0")));
+
+  g_object_get (td.demux, "active-pad", &active_srcpad, NULL);
+  fail_unless (active_srcpad != NULL, "Failed to generate a srcpad");
+  fail_unless (td.srcpad_cnt == 1, "pad-added signal has not emmited");
+
+  GST_DEBUG ("Releasing mysink and mysrc");
+  gst_pad_set_active (td.mysink[0], FALSE);
+  gst_pad_set_active (td.mysrc, FALSE);
+
+  gst_object_unref (td.mysink[0]);
+  gst_object_unref (td.mysrc);
+
+  GST_DEBUG ("Releasing streamiddemux");
+  release_test_objects (&td);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_streamiddemux_without_stream_start)
+{
+  struct TestData td;
+  GstSegment segment;
+
+  setup_test_objects (&td);
+
+  GST_DEBUG ("Creating mysink");
+  td.mysink[0] = gst_pad_new ("mysink0", GST_PAD_SINK);
+  gst_pad_set_active (td.mysink[0], TRUE);
+
+  GST_DEBUG ("Creating mysrc");
+  td.mysrc = gst_pad_new ("mysrc", GST_PAD_SRC);
+  fail_unless (GST_PAD_LINK_SUCCESSFUL (gst_pad_link (td.mysrc, td.demuxsink)));
+  gst_pad_set_active (td.mysrc, TRUE);
+
+  GST_DEBUG ("Pushing caps and segment event without stream-start");
+  fail_unless (gst_pad_push_event (td.mysrc, gst_event_new_caps (td.mycaps)));
+  gst_segment_init (&segment, GST_FORMAT_BYTES);
+  fail_unless (gst_pad_push_event (td.mysrc, gst_event_new_segment (&segment)));
+
+  g_object_get (td.demux, "active-pad", &active_srcpad, NULL);
+  fail_unless (active_srcpad == NULL, "srcpad has created unexpectedly");
+  fail_unless (td.srcpad_cnt == 0, "pad-added signal is emmited unexpectedly");
+
+  GST_DEBUG ("Releasing mysink and mysrc");
+  gst_pad_set_active (td.mysink[0], FALSE);
+  gst_pad_set_active (td.mysrc, FALSE);
+
+  gst_object_unref (td.mysink[0]);
+  gst_object_unref (td.mysrc);
+
+  GST_DEBUG ("Releasing streamiddemux");
+  release_test_objects (&td);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_streamiddemux_simple)
+{
+  struct TestData td;
+
+  setup_test_objects (&td);
+
+  GST_DEBUG ("Creating mysink");
+  td.mysink[0] = gst_pad_new ("mysink0", GST_PAD_SINK);
+  td.mysink[0]->chaindata = &td;
+  gst_pad_set_chain_function (td.mysink[0], chain_ok);
+  gst_pad_set_active (td.mysink[0], TRUE);
+
+  td.mysink[1] = gst_pad_new ("mysink1", GST_PAD_SINK);
+  td.mysink[1]->chaindata = &td;
+  gst_pad_set_chain_function (td.mysink[1], chain_ok);
+  gst_pad_set_active (td.mysink[1], TRUE);
+
+  GST_DEBUG ("Creating mysrc");
+  td.mysrc = gst_pad_new ("mysrc", GST_PAD_SRC);
+  fail_unless (GST_PAD_LINK_SUCCESSFUL (gst_pad_link (td.mysrc, td.demuxsink)));
+  gst_pad_set_active (td.mysrc, TRUE);
+
+  GST_DEBUG ("Pushing stream-start, caps and segment event");
+  gst_check_setup_events_with_stream_id (td.mysrc, td.demux, td.mycaps,
+      GST_FORMAT_BYTES, "test0");
+  set_active_srcpad (&td);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+
+  gst_check_setup_events_with_stream_id (td.mysrc, td.demux, td.mycaps,
+      GST_FORMAT_BYTES, "test1");
+  set_active_srcpad (&td);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+
+  GST_DEBUG ("Pushing buffer");
+  fail_unless (gst_pad_push_event (td.mysrc,
+          gst_event_new_stream_start ("test0")));
+  set_active_srcpad (&td);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+
+  fail_unless (gst_pad_push_event (td.mysrc,
+          gst_event_new_stream_start ("test1")));
+  set_active_srcpad (&td);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+
+  GST_DEBUG ("Releasing mysink and mysrc");
+  gst_pad_set_active (td.mysink[0], FALSE);
+  gst_pad_set_active (td.mysink[1], FALSE);
+  gst_pad_set_active (td.mysrc, FALSE);
+
+  gst_object_unref (td.mysink[0]);
+  gst_object_unref (td.mysink[1]);
+  gst_object_unref (td.mysrc);
+
+  GST_DEBUG ("Releasing streamiddemux");
+  release_test_objects (&td);
+}
+
+GST_END_TEST;
+
+GList *expected[NUM_SUBSTREAMS];
+
+static gboolean
+sink_event_func (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  GList **expected = GST_PAD_ELEMENT_PRIVATE (pad);
+  GstEvent *exp;
+
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_CAPS:{
+      GstCaps *recvcaps, *expectcaps;
+
+      *expected = g_list_first (*expected);
+      exp = GST_EVENT ((*expected)->data);
+
+      gst_event_parse_caps (event, &recvcaps);
+      gst_event_parse_caps (exp, &expectcaps);
+
+      fail_unless (gst_caps_is_equal (recvcaps, expectcaps));
+      break;
+    }
+    case GST_EVENT_SEGMENT:{
+      const GstSegment *recvseg, *expectseg;
+
+      *expected = g_list_last (*expected);
+      exp = GST_EVENT ((*expected)->data);
+
+      gst_event_parse_segment (event, &recvseg);
+      gst_event_parse_segment (exp, &expectseg);
+
+      fail_unless_equals_uint64 (recvseg->position, expectseg->position);
+      break;
+    }
+    default:
+      break;
+  }
+
+  return gst_pad_event_default (pad, parent, event);
+}
+
+GST_START_TEST (test_streamiddemux_num_buffers)
+{
+  struct TestData td;
+  gint buffer_cnt = 0;
+  gint stream_cnt = 0;
+  GstEvent *event;
+
+  setup_test_objects (&td);
+
+  GST_DEBUG ("Creating mysink");
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt) {
+    gchar *name;
+    name = g_strdup_printf ("mysink%d", stream_cnt);
+    td.mysink[stream_cnt] = gst_pad_new (name, GST_PAD_SINK);
+    g_free (name);
+    gst_pad_set_chain_function (td.mysink[stream_cnt], chain_ok);
+    gst_pad_set_event_function (td.mysink[stream_cnt], sink_event_func);
+    gst_pad_set_active (td.mysink[stream_cnt], TRUE);
+    GST_PAD_ELEMENT_PRIVATE (td.mysink[stream_cnt]) = &expected[stream_cnt];
+  }
+
+  GST_DEBUG ("Creating mysrc");
+  td.mysrc = gst_pad_new ("mysrc", GST_PAD_SRC);
+  fail_unless (GST_PAD_LINK_SUCCESSFUL (gst_pad_link (td.mysrc, td.demuxsink)));
+  gst_pad_set_active (td.mysrc, TRUE);
+
+  GST_DEBUG ("Creating caps");
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt) {
+    gchar *caps_name;
+    caps_name = g_strdup_printf ("test/test%d", stream_cnt);
+    td.caps[stream_cnt] = gst_caps_new_empty_simple (caps_name);
+
+    g_free (caps_name);
+  }
+
+  GST_DEBUG ("Creating segment");
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt) {
+    gst_segment_init (&td.segment[stream_cnt], GST_FORMAT_BYTES);
+    td.segment[stream_cnt].position = stream_cnt * GST_SECOND;
+  }
+
+  GST_DEBUG ("Pushing stream-start, caps and segment event");
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt) {
+    gchar *name;
+    name = g_strdup_printf ("test%d", stream_cnt);
+
+    fail_unless (gst_pad_push_event (td.mysrc,
+            gst_event_new_stream_start (name)));
+
+    event = gst_event_new_caps (td.caps[stream_cnt]);
+    expected[stream_cnt] =
+        g_list_append (expected[stream_cnt], gst_event_ref (event));
+    fail_unless (gst_pad_push_event (td.mysrc, event));
+
+    event = gst_event_new_segment (&td.segment[stream_cnt]);
+    expected[stream_cnt] =
+        g_list_append (expected[stream_cnt], gst_event_ref (event));
+    fail_unless (gst_pad_push_event (td.mysrc, event));
+
+    g_free (name);
+    set_active_srcpad (&td);
+
+    fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+  }
+
+  GST_DEBUG ("Pushing buffers to random srcpad");
+  for (buffer_cnt = 0; buffer_cnt < NUM_BUFFER; ++buffer_cnt) {
+    gchar *name;
+    gint active_stream = rand () % NUM_SUBSTREAMS;
+    name = g_strdup_printf ("test%d", active_stream);
+
+    fail_unless (gst_pad_push_event (td.mysrc,
+            gst_event_new_stream_start (name)));
+    fail_unless (gst_pad_push_event (td.mysrc,
+            gst_event_new_caps (td.caps[active_stream])));
+    fail_unless (gst_pad_push_event (td.mysrc,
+            gst_event_new_segment (&td.segment[active_stream])));
+
+    g_free (name);
+    set_active_srcpad (&td);
+
+    fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+  }
+
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt)
+    gst_caps_unref (td.caps[stream_cnt]);
+
+  GST_DEBUG ("Releasing mysink and mysrc");
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt) {
+    gst_pad_set_active (td.mysink[stream_cnt], FALSE);
+  }
+  gst_pad_set_active (td.mysrc, FALSE);
+
+  for (stream_cnt = 0; stream_cnt < NUM_SUBSTREAMS; ++stream_cnt) {
+    gst_object_unref (td.mysink[stream_cnt]);
+  }
+  gst_object_unref (td.mysrc);
+
+  GST_DEBUG ("Releasing streamiddemux");
+  release_test_objects (&td);
+}
+
+GST_END_TEST;
+
+guint num_eos = 0;
+guint num_flush_start = 0;
+guint num_flush_stop = 0;
+
+static gboolean
+event_func (GstPad * pad, GstObject * parent, GstEvent * event)
+{
+  switch (GST_EVENT_TYPE (event)) {
+    case GST_EVENT_STREAM_START:
+      ++num_flush_start;
+      break;
+    case GST_EVENT_FLUSH_STOP:
+      ++num_flush_stop;
+      break;
+    case GST_EVENT_EOS:
+      ++num_eos;
+      break;
+    default:
+      break;
+  }
+
+  return gst_pad_event_default (pad, parent, event);
+}
+
+GST_START_TEST (test_streamiddemux_eos)
+{
+  struct TestData td;
+
+  setup_test_objects (&td);
+
+  num_eos = 0;
+
+  GST_DEBUG ("Creating mysink");
+  td.mysink[0] = gst_pad_new ("mysink0", GST_PAD_SINK);
+  gst_pad_set_chain_function (td.mysink[0], chain_ok);
+  gst_pad_set_event_function (td.mysink[0], event_func);
+  gst_pad_set_active (td.mysink[0], TRUE);
+
+  td.mysink[1] = gst_pad_new ("mysink1", GST_PAD_SINK);
+  gst_pad_set_chain_function (td.mysink[1], chain_ok);
+  gst_pad_set_event_function (td.mysink[1], event_func);
+  gst_pad_set_active (td.mysink[1], TRUE);
+
+  GST_DEBUG ("Creating mysrc");
+  td.mysrc = gst_pad_new ("mysrc", GST_PAD_SRC);
+  fail_unless (GST_PAD_LINK_SUCCESSFUL (gst_pad_link (td.mysrc, td.demuxsink)));
+  gst_pad_set_active (td.mysrc, TRUE);
+
+  GST_DEBUG ("Pushing stream-start, caps and segment event");
+  gst_check_setup_events_with_stream_id (td.mysrc, td.demux, td.mycaps,
+      GST_FORMAT_BYTES, "test0");
+  set_active_srcpad (&td);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+
+  gst_check_setup_events_with_stream_id (td.mysrc, td.demux, td.mycaps,
+      GST_FORMAT_BYTES, "test1");
+  set_active_srcpad (&td);
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_OK);
+
+  GST_DEBUG ("Pushing flush event");
+  fail_unless (gst_pad_push_event (td.mysrc, gst_event_new_flush_start ()));
+  fail_unless (num_flush_start == 2,
+      "Failed to send flush-start event to all pads internally linked");
+  fail_unless (gst_pad_push_event (td.mysrc, gst_event_new_flush_stop (TRUE)));
+  fail_unless (num_flush_stop == 2,
+      "Failed to send flush-stop event to all pads internally linked");
+
+  GST_DEBUG ("Pushing eos event");
+  fail_unless (gst_pad_push_event (td.mysrc, gst_event_new_eos ()));
+  fail_unless (num_eos == 2,
+      "Failed to send eos event to all pads internally linked");
+
+  fail_unless (gst_pad_push (td.mysrc, gst_buffer_new ()) == GST_FLOW_EOS);
+
+  GST_DEBUG ("Releasing mysink and mysrc");
+  gst_pad_set_active (td.mysink[0], FALSE);
+  gst_pad_set_active (td.mysink[1], FALSE);
+  gst_pad_set_active (td.mysrc, FALSE);
+
+  gst_object_unref (td.mysink[0]);
+  gst_object_unref (td.mysink[1]);
+  gst_object_unref (td.mysrc);
+
+  GST_DEBUG ("Releasing streamiddemux");
+  release_test_objects (&td);
+}
+
+GST_END_TEST;
+
+static Suite *
+streamiddemux_suite (void)
+{
+  Suite *s = suite_create ("streamiddemux");
+  TCase *tc_chain;
+
+  tc_chain = tcase_create ("streamiddemux simple");
+  tcase_add_test (tc_chain, test_simple_create_destroy);
+  tcase_add_test (tc_chain, test_streamiddemux_with_stream_start);
+  tcase_add_test (tc_chain, test_streamiddemux_without_stream_start);
+  tcase_add_test (tc_chain, test_streamiddemux_simple);
+  tcase_add_test (tc_chain, test_streamiddemux_num_buffers);
+  tcase_add_test (tc_chain, test_streamiddemux_eos);
+  suite_add_tcase (s, tc_chain);
+
+  return s;
+}
+
+GST_CHECK_MAIN (streamiddemux);
diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c
index 58c91ea..409e273 100644
--- a/tests/check/gst/gstbin.c
+++ b/tests/check/gst/gstbin.c
@@ -201,6 +201,7 @@
   gst_pad_set_active (pad2, FALSE);
   gst_check_teardown_src_pad (sink1);
   gst_check_teardown_src_pad (sink2);
+  gst_object_unref (bus);
   gst_object_unref (pipeline);
 }
 
@@ -259,6 +260,7 @@
   gst_pad_set_active (pad2, FALSE);
   gst_check_teardown_src_pad (sink1);
   gst_check_teardown_src_pad (sink2);
+  gst_object_unref (bus);
   gst_object_unref (pipeline);
 }
 
diff --git a/tests/check/gst/gstbuffer.c b/tests/check/gst/gstbuffer.c
index e52175f..70cb191 100644
--- a/tests/check/gst/gstbuffer.c
+++ b/tests/check/gst/gstbuffer.c
@@ -340,6 +340,8 @@
 
   /* NOTE that data is refcounted */
   fail_unless (info.size == sinfo.size);
+  /* GstBuffer was copied but the underlying GstMemory should be the same */
+  fail_unless (info.data == sinfo.data);
 
   gst_buffer_unmap (copy, &sinfo);
   gst_buffer_unmap (buffer, &info);
@@ -408,6 +410,37 @@
 
 GST_END_TEST;
 
+GST_START_TEST (test_copy_deep)
+{
+  GstBuffer *buffer, *copy;
+  GstMapInfo info, sinfo;
+
+  buffer = gst_buffer_new_and_alloc (4);
+  ASSERT_BUFFER_REFCOUNT (buffer, "buffer", 1);
+
+  copy = gst_buffer_copy_deep (buffer);
+  ASSERT_BUFFER_REFCOUNT (buffer, "buffer", 1);
+  ASSERT_BUFFER_REFCOUNT (copy, "copy", 1);
+  /* buffers are copied and must point to different memory */
+  fail_if (buffer == copy);
+
+  fail_unless (gst_buffer_map (buffer, &info, GST_MAP_READ));
+  fail_unless (gst_buffer_map (copy, &sinfo, GST_MAP_READ));
+
+  /* NOTE that data is refcounted */
+  fail_unless (info.size == sinfo.size);
+  /* copy_deep() forces new GstMemory to be used */
+  fail_unless (info.data != sinfo.data);
+
+  gst_buffer_unmap (copy, &sinfo);
+  gst_buffer_unmap (buffer, &info);
+
+  gst_buffer_unref (copy);
+  gst_buffer_unref (buffer);
+}
+
+GST_END_TEST;
+
 GST_START_TEST (test_try_new_and_alloc)
 {
   GstBuffer *buf;
@@ -871,6 +904,7 @@
   tcase_add_test (tc_chain, test_metadata_writable);
   tcase_add_test (tc_chain, test_memcmp);
   tcase_add_test (tc_chain, test_copy);
+  tcase_add_test (tc_chain, test_copy_deep);
   tcase_add_test (tc_chain, test_try_new_and_alloc);
   tcase_add_test (tc_chain, test_size);
   tcase_add_test (tc_chain, test_resize);
diff --git a/tests/check/gst/gstbufferlist.c b/tests/check/gst/gstbufferlist.c
index 8af3db0..9d5c2df 100644
--- a/tests/check/gst/gstbufferlist.c
+++ b/tests/check/gst/gstbufferlist.c
@@ -25,8 +25,6 @@
 #include <gst/gstbufferlist.h>
 #include <string.h>
 
-#define TIMESTAMP 42
-
 static GstBufferList *list;
 
 static void
@@ -42,40 +40,6 @@
   list = NULL;
 }
 
-#if 0
-static GstBuffer *
-buffer_from_string (const gchar * str)
-{
-  gsize size;
-  GstBuffer *buf;
-  gpointer data;
-
-  size = strlen (str);
-  buf = gst_buffer_new_and_alloc (size);
-  GST_BUFFER_TIMESTAMP (buf) = TIMESTAMP;
-
-  data = gst_buffer_map (buf, NULL, NULL, GST_MAP_WRITE);
-  memcpy (data, str, size);
-  gst_buffer_unmap (buf, data, size);
-
-  return buf;
-}
-
-static void
-check_buffer (GstBuffer * buf, gsize size, const gchar * data)
-{
-  gchar *bdata;
-  gsize bsize, csize, msize;
-
-  bdata = gst_buffer_map (buf, &bsize, &msize, GST_MAP_READ);
-  csize = size ? size : bsize;
-  GST_DEBUG ("%lu %lu %lu", bsize, csize, msize);
-  fail_unless (bsize == csize);
-  fail_unless (memcmp (bdata, data, csize) == 0);
-  gst_buffer_unmap (buf, bdata, bsize);
-}
-#endif
-
 GST_START_TEST (test_add_and_iterate)
 {
   GstBuffer *buf1;
@@ -131,10 +95,8 @@
 
 GST_END_TEST;
 
-#if 0
 GST_START_TEST (test_make_writable)
 {
-  GstBufferListIterator *it;
   GstBufferList *wlist;
   GstBuffer *buf1;
   GstBuffer *buf2;
@@ -142,69 +104,62 @@
   GstBuffer *buf;
 
   /* add buffers to list */
-  it = gst_buffer_list_iterate (list);
-  gst_buffer_list_iterator_add_group (it);
-  buf1 = gst_buffer_new_and_alloc (1);
-  gst_buffer_list_iterator_add (it, buf1);
-  gst_buffer_list_iterator_add_group (it);
-  buf2 = gst_buffer_new_and_alloc (2);
-  gst_buffer_list_iterator_add (it, buf2);
-  buf3 = gst_buffer_new_and_alloc (3);
-  gst_buffer_list_iterator_add (it, buf3);
-  gst_buffer_list_iterator_free (it);
+  buf1 = gst_buffer_new_allocate (NULL, 1, NULL);
+  gst_buffer_list_add (list, buf1);
+
+  buf2 = gst_buffer_new_allocate (NULL, 2, NULL);
+  buf3 = gst_buffer_new_allocate (NULL, 3, NULL);
+  gst_buffer_list_add (list, gst_buffer_append (buf2, buf3));
 
   /* making it writable with refcount 1 returns the same list */
   wlist = gst_buffer_list_make_writable (list);
   fail_unless (wlist == list);
-  it = gst_buffer_list_iterate (list);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  buf = gst_buffer_list_iterator_next (it);
+  fail_unless_equals_int (gst_buffer_list_length (list), 2);
+  buf = gst_buffer_list_get (list, 0);
   fail_unless (buf == buf1);
   ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 1);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  buf = gst_buffer_list_iterator_next (it);
+  fail_unless_equals_int (gst_buffer_get_size (buf), 1);
+  buf = gst_buffer_list_get (list, 1);
   fail_unless (buf == buf2);
   ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 1);
-  buf = gst_buffer_list_iterator_next (it);
-  fail_unless (buf == buf3);
-  ASSERT_BUFFER_REFCOUNT (buf3, "buf3", 1);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_if (gst_buffer_list_iterator_next_group (it));
-  gst_buffer_list_iterator_free (it);
+  fail_unless_equals_int (gst_buffer_n_memory (buf), 2);
 
   /* making it writable with refcount 2 returns a copy of the list with
    * increased refcount on the buffers in the list */
   gst_buffer_list_ref (list);
-  fail_unless (GST_MINI_OBJECT_REFCOUNT_VALUE (list) == 2);
+  fail_unless_equals_int (GST_MINI_OBJECT_REFCOUNT_VALUE (list), 2);
   wlist = gst_buffer_list_make_writable (list);
-  fail_unless (GST_MINI_OBJECT_REFCOUNT_VALUE (list) == 1);
-  fail_unless (GST_MINI_OBJECT_REFCOUNT_VALUE (wlist) == 1);
+  fail_unless_equals_int (GST_MINI_OBJECT_REFCOUNT_VALUE (list), 1);
+  fail_unless_equals_int (GST_MINI_OBJECT_REFCOUNT_VALUE (wlist), 1);
   fail_unless (wlist != list);
-  it = gst_buffer_list_iterate (wlist);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  buf = gst_buffer_list_iterator_next (it);
+  /* check list */
+  fail_unless_equals_int (gst_buffer_list_length (list), 2);
+  buf = gst_buffer_list_get (list, 0);
   fail_unless (buf == buf1);
   ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  buf = gst_buffer_list_iterator_next (it);
+  fail_unless_equals_int (gst_buffer_get_size (buf), 1);
+  buf = gst_buffer_list_get (list, 1);
   fail_unless (buf == buf2);
   ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 2);
-  buf = gst_buffer_list_iterator_next (it);
-  fail_unless (buf == buf3);
-  ASSERT_BUFFER_REFCOUNT (buf3, "buf3", 2);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_if (gst_buffer_list_iterator_next_group (it));
-  gst_buffer_list_iterator_free (it);
+  fail_unless_equals_int (gst_buffer_n_memory (buf), 2);
+  /* check wlist */
+  fail_unless_equals_int (gst_buffer_list_length (wlist), 2);
+  buf = gst_buffer_list_get (wlist, 0);
+  fail_unless (buf == buf1);
+  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
+  fail_unless_equals_int (gst_buffer_get_size (buf), 1);
+  buf = gst_buffer_list_get (wlist, 1);
+  fail_unless (buf == buf2);
+  ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 2);
+  fail_unless_equals_int (gst_buffer_n_memory (buf), 2);
   gst_buffer_list_unref (wlist);
+  /* list will be unrefed in cleanup hook */
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_copy)
 {
-  GstBufferListIterator *it;
   GstBufferList *list_copy;
   GstBuffer *buf1;
   GstBuffer *buf2;
@@ -212,401 +167,115 @@
   GstBuffer *buf;
 
   /* add buffers to the list */
-  it = gst_buffer_list_iterate (list);
-  gst_buffer_list_iterator_add_group (it);
-  buf1 = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, buf1);
-  gst_buffer_list_iterator_add_group (it);
-  buf2 = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, buf2);
-  buf3 = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, buf3);
-  gst_buffer_list_iterator_free (it);
+  buf1 = gst_buffer_new_allocate (NULL, 1, NULL);
+  gst_buffer_list_add (list, buf1);
+
+  buf2 = gst_buffer_new_allocate (NULL, 2, NULL);
+  buf3 = gst_buffer_new_allocate (NULL, 3, NULL);
+  gst_buffer_list_add (list, gst_buffer_append (buf2, buf3));
 
   /* make a copy */
   list_copy = gst_buffer_list_copy (list);
   fail_unless (GST_MINI_OBJECT_REFCOUNT_VALUE (list) == 1);
   fail_unless (GST_MINI_OBJECT_REFCOUNT_VALUE (list_copy) == 1);
   fail_unless (list_copy != list);
-  it = gst_buffer_list_iterate (list_copy);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  buf = gst_buffer_list_iterator_next (it);
+  fail_unless_equals_int (gst_buffer_list_length (list_copy), 2);
+  buf = gst_buffer_list_get (list_copy, 0);
   fail_unless (buf == buf1);
   ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  buf = gst_buffer_list_iterator_next (it);
+  fail_unless_equals_int (gst_buffer_get_size (buf1), 1);
+  buf = gst_buffer_list_get (list_copy, 1);
   fail_unless (buf == buf2);
   ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 2);
-  buf = gst_buffer_list_iterator_next (it);
-  fail_unless (buf == buf3);
-  ASSERT_BUFFER_REFCOUNT (buf3, "buf3", 2);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_if (gst_buffer_list_iterator_next_group (it));
-  gst_buffer_list_iterator_free (it);
+  fail_unless_equals_int (gst_buffer_get_size (buf2), 5);
+  fail_unless_equals_int (gst_buffer_n_memory (buf2), 2);
+
   gst_buffer_list_unref (list_copy);
 }
 
 GST_END_TEST;
 
-GST_START_TEST (test_steal)
-{
-  GstBufferListIterator *it;
-  GstBuffer *buf1;
-  GstBuffer *buf2;
-  GstBuffer *buf3;
-  GstBuffer *buf;
-
-  /* add buffers to the list */
-  it = gst_buffer_list_iterate (list);
-  gst_buffer_list_iterator_add_group (it);
-  buf1 = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, buf1);
-  gst_buffer_list_iterator_add_group (it);
-  buf2 = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, buf2);
-  buf3 = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, buf3);
-  gst_buffer_list_iterator_free (it);
-
-  /* check some error handling */
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (NULL)));
-  fail_unless (buf == NULL);
-  it = gst_buffer_list_iterate (list);
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-  fail_unless (buf == NULL);
-
-  /* steal the first buffer */
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-  fail_unless (gst_buffer_list_iterator_next (it) == buf1);
-  buf = gst_buffer_list_iterator_steal (it);
-  fail_unless (buf == buf1);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 1);
-  gst_buffer_unref (buf);
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-  fail_unless (buf == NULL);
-
-  /* steal the second buffer */
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-  fail_unless (gst_buffer_list_iterator_next (it) == buf2);
-  buf = gst_buffer_list_iterator_steal (it);
-  fail_unless (buf == buf2);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 1);
-  gst_buffer_unref (buf);
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-
-  /* steal the third buffer */
-  fail_unless (gst_buffer_list_iterator_next (it) == buf3);
-  buf = gst_buffer_list_iterator_steal (it);
-  fail_unless (buf == buf3);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 1);
-  gst_buffer_unref (buf);
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_steal (it)));
-
-  gst_buffer_list_iterator_free (it);
-
-  /* iterate again when all buffers have been stolen */
-  it = gst_buffer_list_iterate (list);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_if (gst_buffer_list_iterator_next_group (it));
-  gst_buffer_list_iterator_free (it);
-}
-
-GST_END_TEST;
-
-GST_START_TEST (test_take)
-{
-  GstBufferListIterator *it;
-  GstBuffer *buf1;
-  GstBuffer *buf2;
-  GstBuffer *buf3;
-  GstBuffer *buf;
-
-  /* add buffers to the list */
-  it = gst_buffer_list_iterate (list);
-  gst_buffer_list_iterator_add_group (it);
-  buf1 = gst_buffer_new ();
-  gst_buffer_ref (buf1);
-  gst_buffer_list_iterator_add (it, buf1);
-  gst_buffer_list_iterator_add_group (it);
-  buf2 = gst_buffer_new ();
-  gst_buffer_ref (buf2);
-  gst_buffer_list_iterator_add (it, buf2);
-  buf3 = gst_buffer_new ();
-  gst_buffer_ref (buf3);
-  gst_buffer_list_iterator_add (it, buf3);
-  gst_buffer_list_iterator_free (it);
-
-  /* check some error handling */
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (NULL, NULL));
-  it = gst_buffer_list_iterate (list);
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, NULL));
-  buf = gst_buffer_new ();
-  gst_buffer_ref (buf);
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (NULL, buf));
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 2);
-
-  /* replace the first buffer */
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, buf));
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 2);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, buf));
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 2);
-  fail_unless (gst_buffer_list_iterator_next (it) == buf1);
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, NULL));
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
-  gst_buffer_list_iterator_take (it, buf);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 2);
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 1);
-  gst_buffer_unref (buf1);
-
-  /* replace the first buffer again, with itself */
-  gst_buffer_ref (buf);
-  gst_buffer_list_iterator_take (it, buf);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 2);
-
-  /* replace the second buffer */
-  gst_buffer_ref (buf);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, buf));
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 3);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 2);
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, buf));
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 3);
-  ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 2);
-  fail_unless (gst_buffer_list_iterator_next (it) == buf2);
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, NULL));
-  ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 2);
-  gst_buffer_list_iterator_take (it, buf);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 3);
-  ASSERT_BUFFER_REFCOUNT (buf2, "buf2", 1);
-  gst_buffer_unref (buf2);
-
-  /* replace the third buffer */
-  gst_buffer_ref (buf);
-  fail_unless (gst_buffer_list_iterator_next (it) == buf3);
-  ASSERT_BUFFER_REFCOUNT (buf3, "buf3", 2);
-  gst_buffer_list_iterator_take (it, buf);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 4);
-  ASSERT_BUFFER_REFCOUNT (buf3, "buf3", 1);
-  gst_buffer_unref (buf3);
-  fail_if (gst_buffer_list_iterator_next_group (it));
-  ASSERT_CRITICAL (gst_buffer_list_iterator_take (it, buf));
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 4);
-  gst_buffer_unref (buf);
-
-  gst_buffer_list_iterator_free (it);
-}
-
-GST_END_TEST;
-
-static gpointer do_data_func_data;
-static gboolean notified;
-
-static GstBuffer *
-do_data_func (GstBuffer * buffer, gpointer data)
-{
-  do_data_func_data = data;
-  fail_if (notified);
-
-  return buffer;
-}
-
-static GstBuffer *
-do_func_null (GstBuffer * buffer)
-{
-  gst_buffer_unref (buffer);
-
-  return NULL;
-}
-
-GST_START_TEST (test_do)
-{
-  GstBufferListIterator *it;
-  GstBuffer *buf1;
-  GstBuffer *buf;
-  gchar *data;
-
-  /* error handling */
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_do (NULL, NULL, NULL)));
-  fail_unless (buf == NULL);
-  fail_unless (buf == NULL);
-  it = gst_buffer_list_iterate (list);
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_do (it, NULL, NULL)));
-  fail_unless (buf == NULL);
-  fail_unless (buf == NULL);
-
-  /* add buffers to the list */
-  gst_buffer_list_iterator_add_group (it);
-  buf1 = gst_buffer_new ();
-  gst_buffer_ref (buf1);
-  gst_buffer_list_iterator_add (it, buf1);
-  gst_buffer_list_iterator_add_group (it);
-  gst_buffer_list_iterator_free (it);
-
-  /* call do-function */
-  it = gst_buffer_list_iterate (list);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  ASSERT_CRITICAL ((buf =
-          gst_buffer_list_iterator_do (it,
-              (GstBufferListDoFunction) gst_buffer_ref, NULL)));
-  fail_unless (buf == NULL);
-  data = (char *) "data";
-  ASSERT_CRITICAL ((buf = gst_buffer_list_iterator_do (it, do_data_func,
-              data)));
-  fail_unless (buf == NULL);
-  fail_unless (do_data_func_data != data);
-  buf = gst_buffer_list_iterator_next (it);
-  fail_unless (buf == buf1);
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
-  buf =
-      gst_buffer_list_iterator_do (it, (GstBufferListDoFunction) gst_buffer_ref,
-      NULL);
-  fail_unless (buf == buf1);
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 3);
-  gst_buffer_unref (buf);
-  buf = gst_buffer_list_iterator_do (it, do_data_func, data);
-  fail_unless (buf == buf1);
-  fail_unless (do_data_func_data == data);
-
-  /* do-function that return a new buffer replaces the buffer in the list */
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
-  buf = gst_buffer_list_iterator_do (it,
-      (GstBufferListDoFunction) gst_mini_object_make_writable, NULL);
-  fail_unless (buf != buf1);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf", 1);
-  ASSERT_BUFFER_REFCOUNT (buf, "buf1", 1);
-  gst_buffer_replace (&buf1, buf);
-
-  /* do-function that return NULL removes the buffer from the list */
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 2);
-  fail_unless (gst_buffer_list_iterator_do (it,
-          (GstBufferListDoFunction) do_func_null, NULL) == NULL);
-  ASSERT_BUFFER_REFCOUNT (buf1, "buf1", 1);
-  ASSERT_CRITICAL ((buf =
-          gst_buffer_list_iterator_do (it,
-              (GstBufferListDoFunction) gst_buffer_ref, NULL)));
-  fail_unless (buf == NULL);
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  gst_buffer_list_iterator_free (it);
-  it = gst_buffer_list_iterate (list);
-  fail_unless (gst_buffer_list_iterator_next_group (it));
-  fail_unless (gst_buffer_list_iterator_next (it) == NULL);
-  fail_if (gst_buffer_list_iterator_next_group (it));
-  gst_buffer_list_iterator_free (it);
-  gst_buffer_unref (buf1);
-}
-
-GST_END_TEST;
-
 typedef struct
 {
-  GstBuffer *buf[3][3];
+  GstBuffer *buf[2];
   guint iter;
 } ForeachData;
 
-static GstBufferListItem
-foreach_func1 (GstBuffer ** buffer, guint group, guint idx, ForeachData * data)
+static gboolean
+foreach_func1 (GstBuffer ** buffer, guint idx, ForeachData * data)
 {
   fail_unless (buffer != NULL);
-  fail_unless (*buffer == data->buf[group][idx]);
+  fail_unless (GST_IS_BUFFER (*buffer));
+  fail_unless (*buffer == data->buf[idx]);
 
   data->iter++;
 
-  return GST_BUFFER_LIST_CONTINUE;
+  return TRUE;
 }
 
-static GstBufferListItem
-foreach_func2 (GstBuffer ** buffer, guint group, guint idx, ForeachData * data)
+static gboolean
+foreach_func3 (GstBuffer ** buffer, guint idx, ForeachData * data)
 {
   fail_unless (idx == 0);
   fail_unless (buffer != NULL);
-  fail_unless (*buffer == data->buf[group][idx]);
+  fail_unless (GST_IS_BUFFER (*buffer));
+  fail_unless (*buffer == data->buf[idx]);
 
   data->iter++;
 
-  return GST_BUFFER_LIST_SKIP_GROUP;
+  return FALSE;
 }
 
-static GstBufferListItem
-foreach_func3 (GstBuffer ** buffer, guint group, guint idx, ForeachData * data)
-{
-  fail_unless (group == 0);
-  fail_unless (idx == 0);
-  fail_unless (buffer != NULL);
-  fail_unless (*buffer == data->buf[group][idx]);
-
-  data->iter++;
-
-  return GST_BUFFER_LIST_END;
-}
-
-static GstBufferListItem
-foreach_func4 (GstBuffer ** buffer, guint group, guint idx, ForeachData * data)
+static gboolean
+foreach_func4 (GstBuffer ** buffer, guint idx, ForeachData * data)
 {
   fail_unless (idx == 0);
   fail_unless (buffer != NULL);
-  fail_unless (*buffer == data->buf[group][idx]);
+  fail_unless (GST_IS_BUFFER (*buffer));
+  fail_unless (*buffer == data->buf[data->iter]);
 
-  gst_buffer_unref (*buffer);
-  *buffer = NULL;
+  /* remove first */
+  if (*buffer == data->buf[0]) {
+    gst_buffer_unref (*buffer);
+    *buffer = NULL;
+  }
+
   data->iter++;
 
-  return GST_BUFFER_LIST_SKIP_GROUP;
+  return TRUE;
 }
 
-static GstBufferListItem
-foreach_func5 (GstBuffer ** buffer, guint group, guint idx, ForeachData * data)
+static gboolean
+foreach_func5 (GstBuffer ** buffer, guint idx, ForeachData * data)
 {
   fail_unless (buffer != NULL);
+  fail_unless (GST_IS_BUFFER (*buffer));
 
   data->iter++;
 
-  return GST_BUFFER_LIST_CONTINUE;
+  return TRUE;
 }
 
 GST_START_TEST (test_foreach)
 {
-  GstBufferListIterator *it;
+  GstBuffer *buf2, *buf3;
   ForeachData data;
 
   /* add buffers to the list */
-  it = gst_buffer_list_iterate (list);
-  gst_buffer_list_iterator_add_group (it);
-  data.buf[0][0] = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, data.buf[0][0]);
-  gst_buffer_list_iterator_add_group (it);
-  data.buf[1][0] = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, data.buf[1][0]);
-  data.buf[1][1] = gst_buffer_new ();
-  gst_buffer_list_iterator_add (it, data.buf[1][1]);
-  gst_buffer_list_iterator_free (it);
+  data.buf[0] = gst_buffer_new_allocate (NULL, 1, NULL);
+  gst_buffer_list_add (list, data.buf[0]);
 
-  fail_unless (gst_buffer_list_get (list, 0, 0) == data.buf[0][0]);
-  fail_unless (gst_buffer_list_get (list, 0, 1) == NULL);
-  fail_unless (gst_buffer_list_get (list, 1, 0) == data.buf[1][0]);
-  fail_unless (gst_buffer_list_get (list, 1, 1) == data.buf[1][1]);
-  fail_unless (gst_buffer_list_get (list, 1, 2) == NULL);
-  fail_unless (gst_buffer_list_get (list, 2, 0) == NULL);
-  fail_unless (gst_buffer_list_get (list, 2, 1) == NULL);
-  fail_unless (gst_buffer_list_get (list, 3, 3) == NULL);
+  buf2 = gst_buffer_new_allocate (NULL, 2, NULL);
+  buf3 = gst_buffer_new_allocate (NULL, 3, NULL);
+  data.buf[1] = gst_buffer_append (buf2, buf3);
+  gst_buffer_list_add (list, data.buf[1]);
+
+  fail_unless (gst_buffer_list_get (list, 0) == data.buf[0]);
+  fail_unless (gst_buffer_list_get (list, 1) == data.buf[1]);
 
   /* iterate everything */
   data.iter = 0;
   gst_buffer_list_foreach (list, (GstBufferListFunc) foreach_func1, &data);
-  fail_unless (data.iter == 3);
-
-  /* iterate only the first buffer of groups */
-  data.iter = 0;
-  gst_buffer_list_foreach (list, (GstBufferListFunc) foreach_func2, &data);
   fail_unless (data.iter == 2);
 
   /* iterate only the first buffer */
@@ -614,17 +283,13 @@
   gst_buffer_list_foreach (list, (GstBufferListFunc) foreach_func3, &data);
   fail_unless (data.iter == 1);
 
-  /* remove the first buffer of each group */
+  /* remove the first buffer */
   data.iter = 0;
   gst_buffer_list_foreach (list, (GstBufferListFunc) foreach_func4, &data);
   fail_unless (data.iter == 2);
 
-  fail_unless (gst_buffer_list_get (list, 0, 0) == NULL);
-  fail_unless (gst_buffer_list_get (list, 0, 1) == NULL);
-  fail_unless (gst_buffer_list_get (list, 1, 0) == data.buf[1][1]);
-  fail_unless (gst_buffer_list_get (list, 1, 1) == NULL);
-  fail_unless (gst_buffer_list_get (list, 1, 2) == NULL);
-  fail_unless (gst_buffer_list_get (list, 2, 0) == NULL);
+  fail_unless (gst_buffer_list_get (list, 0) == data.buf[1]);
+  fail_unless_equals_int (gst_buffer_list_length (list), 1);
 
   /* iterate everything, just one more buffer now */
   data.iter = 0;
@@ -634,43 +299,84 @@
 
 GST_END_TEST;
 
-GST_START_TEST (test_list)
+/* make sure everything is fine if we exceed the pre-allocated size */
+GST_START_TEST (test_expand_and_remove)
 {
-  GstBufferListIterator *it;
-  GList *l = NULL;
-  gint i;
+  GArray *arr;
+  GstBuffer *buf;
+  guint i, idx, num, counter = 0;
 
-  for (i = 0; i < 10; i++) {
-    gchar name[10];
-    g_snprintf (name, 10, "%d", i);
-    l = g_list_append (l, buffer_from_string (name));
+  gst_buffer_list_unref (list);
+
+  arr = g_array_new (FALSE, FALSE, sizeof (guint));
+
+  list = gst_buffer_list_new_sized (1);
+
+  for (i = 0; i < 250; ++i) {
+    num = ++counter;
+    buf = gst_buffer_new_allocate (NULL, num, NULL);
+    gst_buffer_list_add (list, buf);
+    g_array_append_val (arr, num);
   }
 
-  /* add buffers to the list */
-  it = gst_buffer_list_iterate (list);
-  gst_buffer_list_iterator_add_group (it);
-  gst_buffer_list_iterator_add_list (it, l);
-
-  /* add a buffer */
-  gst_buffer_list_iterator_add (it, buffer_from_string ("10"));
-
-  /* add another list */
-  l = g_list_append (NULL, buffer_from_string ("11"));
-  gst_buffer_list_iterator_add_list (it, l);
-
-  for (i = 0; i < 12; i++) {
-    GstBuffer *buf;
-    gchar name[10];
-
-    buf = gst_buffer_list_get (list, 0, i);
-    g_snprintf (name, 10, "%d", i);
-    check_buffer (buf, 0, name);
+  for (i = 0; i < 250; ++i) {
+    num = ++counter;
+    buf = gst_buffer_new_allocate (NULL, num, NULL);
+    idx = g_random_int_range (0, gst_buffer_list_length (list));
+    gst_buffer_list_insert (list, idx, buf);
+    g_array_insert_val (arr, idx, num);
   }
-  gst_buffer_list_iterator_free (it);
+
+  /* make sure the list looks like it should */
+  fail_unless_equals_int (arr->len, gst_buffer_list_length (list));
+  for (i = 0; i < arr->len; ++i) {
+    buf = gst_buffer_list_get (list, i);
+    num = gst_buffer_get_size (buf);
+    fail_unless_equals_int (num, g_array_index (arr, guint, i));
+  }
+
+  for (i = 0; i < 44; ++i) {
+    num = g_random_int_range (1, 5);
+    idx = g_random_int_range (0, gst_buffer_list_length (list) - num);
+    gst_buffer_list_remove (list, idx, num);
+    g_array_remove_range (arr, idx, num);
+  }
+
+  /* make sure the list still looks like it should */
+  fail_unless_equals_int (arr->len, gst_buffer_list_length (list));
+  for (i = 0; i < arr->len; ++i) {
+    buf = gst_buffer_list_get (list, i);
+    num = gst_buffer_get_size (buf);
+    fail_unless_equals_int (num, g_array_index (arr, guint, i));
+  }
+
+  for (i = 0; i < 500; ++i) {
+    num = ++counter;
+    buf = gst_buffer_new_allocate (NULL, num, NULL);
+    gst_buffer_list_add (list, buf);
+    g_array_append_val (arr, num);
+  }
+
+  for (i = 0; i < 500; ++i) {
+    num = ++counter;
+    buf = gst_buffer_new_allocate (NULL, num, NULL);
+    idx = g_random_int_range (0, gst_buffer_list_length (list));
+    gst_buffer_list_insert (list, idx, buf);
+    g_array_insert_val (arr, idx, num);
+  }
+
+  /* make sure the list still looks like it should */
+  fail_unless_equals_int (arr->len, gst_buffer_list_length (list));
+  for (i = 0; i < arr->len; ++i) {
+    buf = gst_buffer_list_get (list, i);
+    num = gst_buffer_get_size (buf);
+    fail_unless_equals_int (num, g_array_index (arr, guint, i));
+  }
+
+  g_array_unref (arr);
 }
 
 GST_END_TEST;
-#endif
 
 static Suite *
 gst_buffer_list_suite (void)
@@ -682,15 +388,10 @@
   tcase_add_checked_fixture (tc_chain, setup, cleanup);
   tcase_add_test (tc_chain, test_add_and_iterate);
   tcase_add_test (tc_chain, test_remove);
-#if 0
   tcase_add_test (tc_chain, test_make_writable);
   tcase_add_test (tc_chain, test_copy);
-  tcase_add_test (tc_chain, test_steal);
-  tcase_add_test (tc_chain, test_take);
-  tcase_add_test (tc_chain, test_do);
   tcase_add_test (tc_chain, test_foreach);
-  tcase_add_test (tc_chain, test_list);
-#endif
+  tcase_add_test (tc_chain, test_expand_and_remove);
 
   return s;
 }
diff --git a/tests/check/gst/gstbufferpool.c b/tests/check/gst/gstbufferpool.c
index 7dcf1bf..8dd265a 100644
--- a/tests/check/gst/gstbufferpool.c
+++ b/tests/check/gst/gstbufferpool.c
@@ -179,7 +179,6 @@
   GstBufferPool *pool = gst_buffer_pool_new ();
   GstStructure *config = gst_buffer_pool_get_config (pool);
   GstCaps *caps = gst_caps_new_empty_simple ("test/data");
-  GstBuffer *buffer = NULL;
 
   /* unconfigured pool cannot be activated */
   fail_if (gst_buffer_pool_set_active (pool, TRUE));
@@ -192,26 +191,11 @@
   config = gst_buffer_pool_get_config (pool);
   fail_unless (gst_buffer_pool_set_config (pool, config));
 
-  /* setting a different config should deactivate the pool */
+  /* setting a different config on active pool should fail */
   config = gst_buffer_pool_get_config (pool);
   gst_buffer_pool_config_set_params (config, caps, 12, 10, 0);
-  fail_unless (gst_buffer_pool_set_config (pool, config));
-  fail_if (gst_buffer_pool_is_active (pool));
-
-  /* though it should fail if there is outstanding buffers */
-  gst_buffer_pool_set_active (pool, TRUE);
-  gst_buffer_pool_acquire_buffer (pool, &buffer, NULL);
-  fail_if (buffer == NULL);
-  config = gst_buffer_pool_get_config (pool);
-  gst_buffer_pool_config_set_params (config, caps, 10, 10, 0);
   fail_if (gst_buffer_pool_set_config (pool, config));
-
-  /* and work when last buffer is back */
-  config = gst_buffer_pool_get_config (pool);
-  gst_buffer_pool_config_set_params (config, caps, 10, 10, 0);
-  gst_buffer_unref (buffer);
-  fail_unless (gst_buffer_pool_set_config (pool, config));
-  fail_unless (gst_buffer_pool_set_active (pool, TRUE));
+  fail_unless (gst_buffer_pool_is_active (pool));
 
   gst_buffer_pool_set_active (pool, FALSE);
   gst_object_unref (pool);
@@ -228,8 +212,8 @@
 
   fail_unless (gst_buffer_pool_config_validate_params (config, caps, 5, 4, 0));
   fail_unless (gst_buffer_pool_config_validate_params (config, caps, 5, 2, 0));
+  fail_unless (gst_buffer_pool_config_validate_params (config, caps, 4, 4, 0));
   fail_if (gst_buffer_pool_config_validate_params (config, caps, 5, 6, 0));
-  fail_if (gst_buffer_pool_config_validate_params (config, caps, 4, 4, 0));
 
   gst_caps_unref (caps);
   caps = gst_caps_new_empty_simple ("test/data2");
diff --git a/tests/check/gst/gstbus.c b/tests/check/gst/gstbus.c
index 5eaa7f1..f0308c6 100644
--- a/tests/check/gst/gstbus.c
+++ b/tests/check/gst/gstbus.c
@@ -188,7 +188,7 @@
   fail_unless_equals_int (num_eos, 10);
   fail_unless_equals_int (num_app, 10);
 
-  g_source_remove (id);
+  fail_unless (gst_bus_remove_watch (test_bus));
   g_main_loop_unref (main_loop);
 
   gst_object_unref ((GstObject *) test_bus);
@@ -286,6 +286,31 @@
 
 GST_END_TEST;
 
+static gboolean
+dummy_bus_func (GstBus * bus, GstMessage * msg, gpointer user_data)
+{
+  return TRUE;
+}
+
+GST_START_TEST (test_remove_watch)
+{
+  test_bus = gst_bus_new ();
+
+  /* removing a non-existing watch should fail */
+  fail_if (gst_bus_remove_watch (test_bus));
+
+  gst_bus_add_watch (test_bus, dummy_bus_func, NULL);
+
+  fail_unless (gst_bus_remove_watch (test_bus));
+
+  /* now it should fail to remove the watch again */
+  fail_if (gst_bus_remove_watch (test_bus));
+
+  gst_object_unref (test_bus);
+}
+
+GST_END_TEST;
+
 static gint messages_seen;
 
 static void
@@ -704,6 +729,86 @@
 
 GST_END_TEST;
 
+static GstBusSyncReply
+test_async_sync_handler (GstBus * bus, GstMessage * msg, gpointer user_data)
+{
+  GArray *timestamps = user_data;
+  gint64 ts = g_get_monotonic_time () * 1000;   /* microsecs -> nanosecs */
+
+  g_array_append_val (timestamps, ts);
+  GST_INFO ("[msg %p] %" GST_PTR_FORMAT, msg, msg);
+
+  return GST_BUS_ASYNC;
+}
+
+static gpointer
+post_10_app_messages_thread (gpointer data)
+{
+  THREAD_START ();
+  send_10_app_messages ();
+  return NULL;
+}
+
+/* Test GST_BUS_ASYNC actually causes the thread posting the message to
+ * block until the message has been freed. We spawn a thread to post ten
+ * messages. We install a bus sync handler to get the timestamp of each
+ * message as it is being posted, and to return GST_BUS_ASYNC. In the main
+ * thread we sleep a bit after we pop off a message and before we free it.
+ * The posting thread should be blocked while the main thread sleeps, so
+ * we expect the interval as the messages are posted to be roughly the same
+ * as the sleep time in the main thread. g_usleep() is not super-precise, so
+ * we allow for some slack there, we just want to check that the posting
+ * thread was blocked at all really. */
+GST_START_TEST (test_async_message)
+{
+  GArray *timestamps;
+  guint i;
+
+  MAIN_INIT ();
+
+  timestamps = g_array_sized_new (FALSE, FALSE, sizeof (gint64), 10);
+
+  test_bus = gst_bus_new ();
+
+  gst_bus_set_sync_handler (test_bus, test_async_sync_handler, timestamps,
+      NULL);
+
+  MAIN_START_THREAD_FUNCTIONS (1, post_10_app_messages_thread, NULL);
+
+  MAIN_SYNCHRONIZE ();
+
+  for (i = 0; i < 10; i++) {
+    GstMessage *msg;
+
+    GST_LOG ("(%d) waiting for message..", i);
+    msg = gst_bus_timed_pop (test_bus, GST_CLOCK_TIME_NONE);
+    GST_LOG ("(%d) got message, sleeping a bit", i);
+    g_usleep (60 * GST_MSECOND / (GST_SECOND / G_USEC_PER_SEC));
+    GST_LOG ("(%d) about to free message", i);
+    gst_message_unref (msg);
+  }
+
+  for (i = 1; i < 10; i++) {
+    gint64 prev_ts = g_array_index (timestamps, gint64, i - 1);
+    gint64 ts = g_array_index (timestamps, gint64, i);
+    gint64 diff = ts - prev_ts;
+
+    fail_unless (prev_ts < ts);
+    fail_unless (diff >= 20 * GST_MSECOND, "interval between messages being "
+        "posted was just %" G_GINT64_FORMAT "ms", diff / GST_MSECOND);
+  }
+
+  fail_if (gst_bus_have_pending (test_bus), "unexpected messages on bus");
+
+  MAIN_STOP_THREADS ();
+
+  gst_object_unref (test_bus);
+
+  g_array_unref (timestamps);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_bus_suite (void)
 {
@@ -718,11 +823,13 @@
   tcase_add_test (tc_chain, test_watch_with_poll);
   tcase_add_test (tc_chain, test_watch_with_custom_context);
   tcase_add_test (tc_chain, test_add_watch_with_custom_context);
+  tcase_add_test (tc_chain, test_remove_watch);
   tcase_add_test (tc_chain, test_timed_pop);
   tcase_add_test (tc_chain, test_timed_pop_thread);
   tcase_add_test (tc_chain, test_timed_pop_filtered);
   tcase_add_test (tc_chain, test_timed_pop_filtered_with_timeout);
   tcase_add_test (tc_chain, test_custom_main_context);
+  tcase_add_test (tc_chain, test_async_message);
   return s;
 }
 
diff --git a/tests/check/gst/gstcaps.c b/tests/check/gst/gstcaps.c
index b1a1352..6645361 100644
--- a/tests/check/gst/gstcaps.c
+++ b/tests/check/gst/gstcaps.c
@@ -1122,6 +1122,7 @@
   gst_caps_features_add (f1, "memory:VASurface");
 
   fail_unless (gst_caps_features_is_equal (f1, gst_caps_get_features (c1, 0)));
+  fail_if (gst_caps_can_intersect (c1, c2));
 
   f2 = gst_caps_get_features (c2, 0);
   fail_unless (gst_caps_features_is_equal
@@ -1129,6 +1130,13 @@
 
   gst_caps_unref (c2);
   gst_caps_unref (c1);
+
+  c1 = gst_caps_from_string ("video/x-raw");
+  f1 = gst_caps_get_features (c1, 0);
+  f2 = gst_caps_features_new ("memory:dmabuf", NULL);
+  gst_caps_set_features (c1, 0, f2);
+
+  gst_caps_unref (c1);
 }
 
 GST_END_TEST;
@@ -1153,6 +1161,131 @@
 }
 
 GST_END_TEST;
+
+static gboolean
+foreach_append_function (GstCapsFeatures * features, GstStructure * structure,
+    gpointer user_data)
+{
+  GstCaps *caps = user_data;
+
+  gst_caps_append_structure_full (caps, gst_structure_copy (structure),
+      features ? gst_caps_features_copy (features) : NULL);
+
+  return TRUE;
+}
+
+GST_START_TEST (test_foreach)
+{
+  GstCaps *caps, *caps2;
+
+  caps =
+      gst_caps_from_string
+      ("video/x-raw, format=I420; video/x-raw(foo:bar); video/x-h264");
+  caps2 = gst_caps_new_empty ();
+  fail_unless (gst_caps_foreach (caps, foreach_append_function, caps2));
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+
+  caps = gst_caps_new_empty ();
+  caps2 = gst_caps_new_empty ();
+  fail_unless (gst_caps_foreach (caps, foreach_append_function, caps2));
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+}
+
+GST_END_TEST;
+
+static gboolean
+map_function (GstCapsFeatures * features, GstStructure * structure,
+    gpointer user_data)
+{
+  /* Remove caps features if there are any, otherwise add some dummy */
+  if (gst_caps_features_contains (features, "foo:bar")) {
+    gst_caps_features_remove (features, "foo:bar");
+  } else {
+    gst_caps_features_add (features, "foo:bar");
+    gst_caps_features_remove (features, GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY);
+  }
+
+  /* Set some dummy integer in the structure */
+  gst_structure_set (structure, "foo", G_TYPE_INT, 123, NULL);
+
+  return TRUE;
+}
+
+GST_START_TEST (test_map_in_place)
+{
+  GstCaps *caps, *caps2;
+
+  caps =
+      gst_caps_from_string
+      ("video/x-raw, format=I420; video/x-raw(foo:bar); video/x-h264");
+  caps2 =
+      gst_caps_from_string
+      ("video/x-raw(foo:bar), foo=(int)123, format=I420; video/x-raw, foo=(int)123; video/x-h264(foo:bar), foo=(int)123");
+  fail_unless (gst_caps_map_in_place (caps, map_function, NULL));
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+
+  caps = gst_caps_new_empty ();
+  caps2 = gst_caps_new_empty ();
+  fail_unless (gst_caps_map_in_place (caps, map_function, NULL));
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+}
+
+GST_END_TEST;
+
+static gboolean
+filter_map_function (GstCapsFeatures * features, GstStructure * structure,
+    gpointer user_data)
+{
+  if (!gst_structure_has_name (structure, "video/x-raw"))
+    return FALSE;
+
+  if (!gst_caps_features_contains (features, "foo:bar"))
+    return FALSE;
+
+  /* Set some dummy integer in the structure */
+  gst_structure_set (structure, "foo", G_TYPE_INT, 123, NULL);
+
+  return TRUE;
+}
+
+GST_START_TEST (test_filter_and_map_in_place)
+{
+  GstCaps *caps, *caps2;
+
+  caps =
+      gst_caps_from_string
+      ("video/x-raw, format=I420; video/x-raw(foo:bar); video/x-h264");
+  caps2 = gst_caps_from_string ("video/x-raw(foo:bar), foo=(int)123");
+  gst_caps_filter_and_map_in_place (caps, filter_map_function, NULL);
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+
+  caps = gst_caps_from_string ("video/x-raw, format=I420; video/x-h264");
+  caps2 = gst_caps_new_empty ();
+  gst_caps_filter_and_map_in_place (caps, filter_map_function, NULL);
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+
+  caps = gst_caps_new_empty ();
+  caps2 = gst_caps_new_empty ();
+  gst_caps_filter_and_map_in_place (caps, filter_map_function, NULL);
+  fail_unless (gst_caps_is_strictly_equal (caps, caps2));
+  gst_caps_unref (caps);
+  gst_caps_unref (caps2);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_caps_suite (void)
 {
@@ -1182,6 +1315,9 @@
   tcase_add_test (tc_chain, test_broken);
   tcase_add_test (tc_chain, test_features);
   tcase_add_test (tc_chain, test_special_caps);
+  tcase_add_test (tc_chain, test_foreach);
+  tcase_add_test (tc_chain, test_map_in_place);
+  tcase_add_test (tc_chain, test_filter_and_map_in_place);
 
   return s;
 }
diff --git a/tests/check/gst/gstclock.c b/tests/check/gst/gstclock.c
index a394cf8..ab0fbd0 100644
--- a/tests/check/gst/gstclock.c
+++ b/tests/check/gst/gstclock.c
@@ -17,6 +17,8 @@
  * Boston, MA 02110-1301, USA.
  */
 
+/* Include the non-public linear regression function */
+#include "../../gst/gstclock-linreg.c"
 #include <gst/check/gstcheck.h>
 
 typedef struct
@@ -109,6 +111,202 @@
 
 GST_END_TEST;
 
+GstClockTime times1[] = {
+  257116899087539, 0, 120632754291904, 0,
+  257117935914250, 0, 120633825367344, 0,
+  257119448289434, 0, 120635306141271, 0,
+  257120493671524, 0, 120636384357825, 0,
+  257121550784861, 0, 120637417438878, 0,
+  257123042669403, 0, 120638895344150, 0,
+  257124089184865, 0, 120639971729651, 0,
+  257125545836474, 0, 120641406788243, 0,
+  257127030618490, 0, 120642885914220, 0,
+  257128033712770, 0, 120643888843907, 0,
+  257129081768074, 0, 120644981892002, 0,
+  257130145383845, 0, 120646016376867, 0,
+  257131532530200, 0, 120647389850987, 0,
+  257132578136034, 0, 120648472767247, 0,
+  257134102475722, 0, 120649953785315, 0,
+  257135142994788, 0, 120651028858556, 0,
+  257136585079868, 0, 120652441303624, 0,
+  257137618260656, 0, 120653491627112, 0,
+  257139108694546, 0, 120654963978184, 0,
+  257140644022048, 0, 120656500233068, 0,
+  257141685671825, 0, 120657578510655, 0,
+  257142741238288, 0, 120658610889805, 0,
+  257144243633074, 0, 120660093098060, 0,
+  257145287962271, 0, 120661172901525, 0,
+  257146740596716, 0, 120662591572179, 0,
+  257147757607150, 0, 120663622822179, 0,
+  257149263992401, 0, 120665135578527, 0,
+  257150303719290, 0, 120666176166905, 0,
+  257151355569906, 0, 120667217304601, 0,
+  257152430578406, 0, 120668326099768, 0,
+  257153490501095, 0, 120669360554111, 0,
+  257154512360784, 0, 120670365497960, 0,
+  257155530610577, 0, 120671399006259, 0,
+  257156562091659, 0, 120672432728185, 0,
+  257157945388742, 0, 120673800312414, 0,
+  257159287547073, 0, 120675142444983, 0,
+  257160324912880, 0, 120676215076817, 0,
+  257345408328042, 0, 120861261738196, 0,
+  257346412270919, 0, 120862265613926, 0,
+  257347420532284, 0, 120863278644933, 0,
+  257348431187638, 0, 120864284412754, 0,
+  257349439018028, 0, 120865293110265, 0,
+  257351796217938, 0, 120867651111973, 0,
+  257352803038092, 0, 120868659107578, 0,
+  257354152688899, 0, 120870008594883, 0,
+  257355157088906, 0, 120871011097327, 0,
+  257356162439182, 0, 120872016346348, 0,
+  257357167872040, 0, 120873021656407, 0,
+  257358182440058, 0, 120874048633945, 0,
+  257359198881356, 0, 120875052265538, 0,
+  257100756525466, 0, 120616619282139, 0,
+  257101789337770, 0, 120617655475988, 0,
+  257102816323472, 0, 120618674000157, 0,
+  257103822485250, 0, 120619679005039, 0,
+  257104840760423, 0, 120620710743321, 0,
+  257105859459496, 0, 120621715351476, 0,
+  257106886662470, 0, 120622764942539, 0,
+  257108387497864, 0, 120624244221106, 0,
+  257109428859191, 0, 120625321461096, 0,
+  257110485892785, 0, 120626356892003, 0,
+  257111869872141, 0, 120627726459874, 0,
+  257112915903774, 0, 120628813190830, 0,
+  257114329982208, 0, 120630187061682, 0,
+  257115376666026, 0, 120631271992101, 0
+};
+
+
+GstClockTime times2[] = {
+  291678579009762, 0, 162107345029507, 0,
+  291679770464405, 0, 162108597684538, 0,
+  291680972924370, 0, 162109745816863, 0,
+  291682278949629, 0, 162111000577605, 0,
+  291683590706117, 0, 162112357724822, 0,
+  291684792322541, 0, 162113613156950, 0,
+  291685931362506, 0, 162114760556854, 0,
+  291687132156589, 0, 162115909238493, 0,
+  291688265012060, 0, 162117120603240, 0,
+  291689372183047, 0, 162118126279508, 0,
+  291705506022294, 0, 162134329373992, 0,
+  291667914301004, 0, 162096795553658, 0,
+  291668119537668, 0, 162096949051905, 0,
+  291668274671455, 0, 162097049238371, 0,
+  291668429435600, 0, 162097256356719, 0,
+  291668586128535, 0, 162097355689763, 0,
+  291668741306233, 0, 162097565678460, 0,
+  291668893789203, 0, 162097661044916, 0,
+  291669100256555, 0, 162097865694145, 0,
+  291669216417563, 0, 162098069214693, 0,
+  291669836394620, 0, 162098677275530, 0,
+  291669990447821, 0, 162098792601263, 0,
+  291670149426086, 0, 162098916899184, 0,
+  291670300232152, 0, 162099114225621, 0,
+  291670411261917, 0, 162099236784112, 0,
+  291670598483507, 0, 162099402158751, 0,
+  291671716582687, 0, 162100558744122, 0,
+  291672600759788, 0, 162101499326359, 0,
+  291673919988307, 0, 162102751981384, 0,
+  291675174441643, 0, 162104005551939, 0,
+  291676271562197, 0, 162105105252898, 0,
+  291677376345374, 0, 162106195737516, 0
+};
+
+GstClockTime times3[] = {
+  291881924291688, 0, 162223997578228, 0,
+  291883318122262, 0, 162224167198360, 0,
+  291884786394838, 0, 162224335172501, 0,
+  291886004374386, 0, 162224503695531, 0,
+  291887224353285, 0, 162224673560021, 0,
+  291888472403367, 0, 162224843760361, 0,
+  291889727977561, 0, 162225014479362, 0,
+  291890989982306, 0, 162225174554558, 0,
+  291892247875763, 0, 162225339753039, 0,
+  291893502163547, 0, 162225673230987, 0,
+  291894711382216, 0, 162225829494101, 0,
+  291895961021506, 0, 162225964530832, 0,
+  291897251690854, 0, 162226127287981, 0,
+  291898508630785, 0, 162226303710406, 0,
+  291899740172868, 0, 162226472478047, 0,
+  291900998878873, 0, 162226637402085, 0,
+  291902334919875, 0, 162226797873245, 0,
+  291903572196610, 0, 162226964352963, 0,
+  291904727342699, 0, 162227125312525, 0,
+  291906071189108, 0, 162228361337153, 0,
+  291907308146005, 0, 162229560625638, 0,
+  291908351925126, 0, 162230604986650, 0,
+  291909396411423, 0, 162231653690543, 0,
+  291910453965348, 0, 162232698550995, 0,
+  291912096870744, 0, 162233475264947, 0,
+  291913234148395, 0, 162233606516855, 0,
+  291915448096576, 0, 162233921145559, 0,
+  291916707748827, 0, 162234047154298, 0,
+  291918737451070, 0, 162234370837425, 0,
+  291919896016205, 0, 162234705504337, 0,
+  291921098663980, 0, 162234872320397, 0,
+  291922315691409, 0, 162235031023366, 0
+};
+
+struct test_entry
+{
+  gint n;
+  GstClockTime *v;
+  GstClockTime expect_internal;
+  GstClockTime expect_external;
+  guint64 expect_num;
+  guint64 expect_denom;
+} times[] = {
+  {
+  32, times1, 257154512360784, 120670380469753, 4052622913376634109,
+        4052799313904261962}, {
+  64, times1, 257359198881356, 120875054227405, 2011895759027682422,
+        2012014931360215503}, {
+  32, times2, 291705506022294, 162134297192792, 2319535707505209857,
+        2321009753483354451}, {
+  32, times3, 291922315691409, 162234934150296, 1370930728180888261,
+        4392719527011673456}
+};
+
+GST_START_TEST (test_regression)
+{
+  GstClockTime m_num, m_den, internal, external;
+  gdouble r_squared, rate, expect_rate;
+  gint i;
+
+  for (i = 0; i < G_N_ELEMENTS (times); i++) {
+    fail_unless (_priv_gst_do_linear_regression (times[i].v, times[i].n,
+            &m_num, &m_den, &external, &internal, &r_squared));
+
+    GST_LOG ("xbase %" G_GUINT64_FORMAT " ybase %" G_GUINT64_FORMAT " rate = %"
+        G_GUINT64_FORMAT " / %" G_GUINT64_FORMAT " = %.10f r_squared %f\n",
+        internal, external, m_num, m_den, (gdouble) (m_num) / (m_den),
+        r_squared);
+
+    /* Require high correlation */
+    fail_unless (r_squared >= 0.9);
+
+    fail_unless (internal == times[i].expect_internal,
+        "Regression params %d fail. internal %" G_GUINT64_FORMAT
+        " != expected %" G_GUINT64_FORMAT, i, internal,
+        times[i].expect_internal);
+    /* Rate must be within 1% tolerance */
+    expect_rate = ((gdouble) (times[i].expect_num) / times[i].expect_denom);
+    rate = ((gdouble) (m_num) / m_den);
+    fail_unless ((expect_rate - rate) >= -0.1 && (expect_rate - rate) <= 0.1,
+        "Regression params %d fail. Rate out of range. Expected %f, got %f",
+        i, expect_rate, rate);
+    fail_unless (external >= times[i].expect_external * 0.99 &&
+        external <= times[i].expect_external * 1.01,
+        "Regression params %d fail. external %" G_GUINT64_FORMAT
+        " != expected %" G_GUINT64_FORMAT, i, external,
+        times[i].expect_external);
+  }
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_clock_suite (void)
 {
@@ -117,6 +315,7 @@
 
   suite_add_tcase (s, tc_chain);
   tcase_add_test (tc_chain, test_set_master_refcount);
+  tcase_add_test (tc_chain, test_regression);
 
   return s;
 }
diff --git a/tests/check/gst/gstdevice.c b/tests/check/gst/gstdevice.c
new file mode 100644
index 0000000..c59d43b
--- /dev/null
+++ b/tests/check/gst/gstdevice.c
@@ -0,0 +1,561 @@
+/* GStreamer
+ * Copyright (C) 2014 Collabora
+ *   Author: Olivier Crete <olivier.crete@collabora.com>
+ *
+ * gstdevice.c: Unit test for GstDevice
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <gst/check/gstcheck.h>
+#include <gst/gst.h>
+
+typedef struct _GstTestDevice
+{
+  GstDevice parent;
+} GstTestDevice;
+
+typedef struct _GstTestDeviceClass
+{
+  GstDeviceClass parent_class;
+} GstTestDeviceClass;
+
+GType gst_test_device_get_type (void);
+
+
+G_DEFINE_TYPE (GstTestDevice, gst_test_device, GST_TYPE_DEVICE)
+
+     static GstElement *gst_test_device_create_element (GstDevice * device,
+    const gchar * name)
+{
+  return gst_bin_new (name);
+}
+
+static gboolean
+gst_test_device_reconfigure_element (GstDevice * device, GstElement * element)
+{
+  if (!strcmp (GST_ELEMENT_NAME (element), "reconfigurable"))
+    return TRUE;
+  else
+    return FALSE;
+}
+
+static void
+gst_test_device_class_init (GstTestDeviceClass * klass)
+{
+  GstDeviceClass *dclass = GST_DEVICE_CLASS (klass);
+
+  dclass->create_element = gst_test_device_create_element;
+  dclass->reconfigure_element = gst_test_device_reconfigure_element;
+}
+
+static void
+gst_test_device_init (GstTestDevice * self)
+{
+}
+
+#define DEVICE_CLASS "Test0/Test1/Test2/Test3/Test4/TestDev"
+#define DISPLAY_NAME "Test device"
+
+static GstDevice *
+test_device_new (void)
+{
+  GstCaps *caps = gst_caps_new_empty_simple ("video/test");
+  GstDevice *device = g_object_new (gst_test_device_get_type (), "caps", caps,
+      "display-name", DISPLAY_NAME, "device-class", DEVICE_CLASS, NULL);
+
+  gst_caps_unref (caps);
+
+  return device;
+}
+
+GST_START_TEST (test_device)
+{
+  GstDevice *device = test_device_new ();
+  GstCaps *caps;
+  gchar *display_name;
+  gchar *device_class;
+  GstCaps *compare_caps = gst_caps_new_empty_simple ("video/test");
+  GstElement *element;
+
+  caps = gst_device_get_caps (device);
+  display_name = gst_device_get_display_name (device);
+  device_class = gst_device_get_device_class (device);
+
+  fail_unless_equals_string (DISPLAY_NAME, display_name);
+  fail_unless_equals_string (DEVICE_CLASS, device_class);
+  gst_check_caps_equal (caps, compare_caps);
+
+  g_free (display_name);
+  g_free (device_class);
+  gst_caps_unref (caps);
+
+  fail_unless (gst_device_has_classes (device, "Test1"));
+  fail_unless (gst_device_has_classes (device, "Test2/Test1"));
+
+  element = gst_device_create_element (device, "reconfigurable");
+  fail_unless (GST_IS_BIN (element));
+
+  fail_unless (gst_device_reconfigure_element (device, element));
+
+  gst_element_set_name (element, "no-no");
+
+  fail_unless (!gst_device_reconfigure_element (device, element));
+
+  gst_object_unref (element);
+
+  gst_caps_unref (compare_caps);
+  gst_object_unref (device);
+}
+
+GST_END_TEST;
+
+
+typedef struct _GstTestDeviceProvider
+{
+  GstDeviceProvider parent;
+
+} GstTestDeviceProvider;
+
+typedef struct _GstTestDeviceProviderClass
+{
+  GstDeviceProviderClass parent_class;
+} GstTestDeviceProviderClass;
+
+GType gst_test_device_provider_get_type (void);
+
+
+G_DEFINE_TYPE (GstTestDeviceProvider, gst_test_device_provider,
+    GST_TYPE_DEVICE_PROVIDER)
+
+
+     static GList *devices = NULL;
+
+     static GList *gst_test_device_provider_probe (GstDeviceProvider * provider)
+{
+  GList *devs;
+
+  devs = g_list_copy (devices);
+  g_list_foreach (devs, (GFunc) gst_object_ref, NULL);
+
+  return devs;
+}
+
+static void
+gst_test_device_provider_class_init (GstTestDeviceProviderClass * klass)
+{
+  GstDeviceProviderClass *dpclass = GST_DEVICE_PROVIDER_CLASS (klass);
+
+  dpclass->probe = gst_test_device_provider_probe;
+
+  gst_device_provider_class_set_static_metadata (dpclass,
+      "Test Device Provider", "Test0/Test1/Test2/Test3/TestProvider",
+      "List but does NOT monitor test devices",
+      "Olivier Crete <olivier.crete@collabora.com>");
+}
+
+static void
+gst_test_device_provider_init (GstTestDeviceProvider * self)
+{
+}
+
+static void
+register_test_device_provider (void)
+{
+  gst_device_provider_register (NULL, "testdeviceprovider", 1,
+      gst_test_device_provider_get_type ());
+}
+
+GST_START_TEST (test_device_provider_factory)
+{
+  GstDeviceProvider *dp, *dp2;
+  GList *factories;
+  GstDeviceProviderFactory *f;
+
+  register_test_device_provider ();
+
+  factories = gst_device_provider_factory_list_get_device_providers (1);
+
+  fail_unless (factories != NULL);
+
+  f = gst_device_provider_factory_find ("testdeviceprovider");
+  fail_unless (f != NULL);
+
+  gst_plugin_feature_list_free (factories);
+
+  fail_unless (gst_device_provider_factory_has_classes (f, "Test2"));
+  fail_unless (gst_device_provider_factory_has_classes (f, "Test2/Test0"));
+  fail_unless (!gst_device_provider_factory_has_classes (f,
+          "Test2/TestN/Test0"));
+  fail_unless (!gst_device_provider_factory_has_classes (f, "TestN"));
+  fail_unless (!gst_device_provider_factory_has_classes (f, "Test"));
+
+  dp = gst_device_provider_factory_get (f);
+
+  gst_object_unref (f);
+
+  dp2 = gst_device_provider_factory_get_by_name ("testdeviceprovider");
+
+  fail_unless_equals_pointer (dp, dp2);
+
+  gst_object_unref (dp);
+  gst_object_unref (dp2);
+
+  dp2 = gst_device_provider_factory_get_by_name ("testdeviceprovider");
+  fail_unless_equals_pointer (dp, dp2);
+  gst_object_unref (dp2);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_device_provider)
+{
+  GstDeviceProvider *dp;
+  GList *devs;
+  GstBus *bus;
+
+  register_test_device_provider ();
+
+  dp = gst_device_provider_factory_get_by_name ("testdeviceprovider");
+
+  fail_unless (gst_device_provider_get_devices (dp) == NULL);
+
+  devices = g_list_append (NULL, test_device_new ());
+
+  devs = gst_device_provider_get_devices (dp);
+  fail_unless (g_list_length (devs) == 1);
+  fail_unless_equals_pointer (devs->data, devices->data);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+  fail_if (gst_device_provider_can_monitor (dp));
+  fail_if (gst_device_provider_start (dp));
+
+  bus = gst_device_provider_get_bus (dp);
+  fail_unless (GST_IS_BUS (bus));
+  gst_object_unref (bus);
+
+  g_list_free_full (devices, (GDestroyNotify) gst_object_unref);
+  gst_object_unref (dp);
+}
+
+GST_END_TEST;
+
+typedef struct _GstTestDeviceProviderMonitor
+{
+  GstDeviceProvider parent;
+
+} GstTestDeviceProviderMonitor;
+
+typedef struct _GstTestDeviceProviderMonitorClass
+{
+  GstDeviceProviderClass parent_class;
+} GstTestDeviceProviderMonitorClass;
+
+GType gst_test_device_provider_monitor_get_type (void);
+
+
+G_DEFINE_TYPE (GstTestDeviceProviderMonitor, gst_test_device_provider_monitor,
+    GST_TYPE_DEVICE_PROVIDER)
+
+
+     static gboolean
+         gst_test_device_provider_monitor_start (GstDeviceProvider * monitor)
+{
+  return TRUE;
+}
+
+static void
+gst_test_device_provider_monitor_class_init (GstTestDeviceProviderMonitorClass *
+    klass)
+{
+  GstDeviceProviderClass *dpclass = GST_DEVICE_PROVIDER_CLASS (klass);
+
+  dpclass->probe = gst_test_device_provider_probe;
+  dpclass->start = gst_test_device_provider_monitor_start;
+
+  gst_device_provider_class_set_static_metadata (dpclass,
+      "Test Device Provider Monitor",
+      "Test0/Test1/Test2/Test4/TestProviderMonitor",
+      "List and monitors Test devices",
+      "Olivier Crete <olivier.crete@collabora.com>");
+}
+
+static void
+gst_test_device_provider_monitor_init (GstTestDeviceProviderMonitor * self)
+{
+}
+
+static void
+register_test_device_provider_monitor (void)
+{
+  gst_device_provider_register (NULL, "testdeviceprovidermonitor", 2,
+      gst_test_device_provider_monitor_get_type ());
+}
+
+
+GST_START_TEST (test_device_provider_monitor)
+{
+  GstDeviceProvider *dp;
+  GList *devs;
+  GstBus *bus;
+  GstDevice *mydev;
+  GstDevice *dev;
+  GstMessage *msg;
+
+  register_test_device_provider_monitor ();
+
+  devices = g_list_append (NULL, test_device_new ());
+
+  dp = gst_device_provider_factory_get_by_name ("testdeviceprovidermonitor");
+
+  bus = gst_device_provider_get_bus (dp);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg == NULL);
+
+  fail_unless (gst_device_provider_can_monitor (dp));
+  fail_unless (gst_device_provider_start (dp));
+
+  fail_unless (gst_device_provider_get_devices (dp) == NULL);
+
+  devs = gst_device_provider_get_devices (dp);
+  fail_unless (devs == NULL);
+
+  mydev = test_device_new ();
+  fail_unless (g_object_is_floating (mydev));
+  ASSERT_OBJECT_REFCOUNT (mydev, "dev", 1);
+
+  gst_device_provider_device_add (dp, mydev);
+  fail_unless (!g_object_is_floating (mydev));
+  ASSERT_OBJECT_REFCOUNT (mydev, "dev", 2);
+
+  devs = gst_device_provider_get_devices (dp);
+  ASSERT_OBJECT_REFCOUNT (mydev, "dev", 3);
+
+  fail_unless_equals_int (g_list_length (devs), 1);
+  fail_unless_equals_pointer (devs->data, mydev);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+  ASSERT_OBJECT_REFCOUNT (mydev, "dev", 2);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg != NULL);
+
+  fail_unless (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_DEVICE_ADDED);
+
+  gst_message_parse_device_added (msg, &dev);
+  fail_unless_equals_pointer (dev, mydev);
+  gst_object_unref (dev);
+  gst_message_unref (msg);
+
+  ASSERT_OBJECT_REFCOUNT (mydev, "dev", 1);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg == NULL);
+
+  gst_device_provider_device_remove (dp, mydev);
+  devs = gst_device_provider_get_devices (dp);
+  fail_unless (devs == NULL);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg != NULL);
+
+  fail_unless (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_DEVICE_REMOVED);
+
+  gst_message_parse_device_removed (msg, &dev);
+  fail_unless_equals_pointer (dev, mydev);
+  ASSERT_OBJECT_REFCOUNT (mydev, "dev", 2);
+  gst_object_unref (dev);
+  gst_message_unref (msg);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg == NULL);
+
+  gst_device_provider_stop (dp);
+  gst_object_unref (bus);
+  ASSERT_OBJECT_REFCOUNT (dp, "monitor", 2);
+  gst_object_unref (dp);
+
+  /* Is singleton, so system keeps a ref */
+  ASSERT_OBJECT_REFCOUNT (dp, "monitor", 1);
+
+  g_list_free_full (devices, (GDestroyNotify) gst_object_unref);
+}
+
+GST_END_TEST;
+
+
+GST_START_TEST (test_device_monitor)
+{
+  GstDeviceProvider *dp, *dp2;
+  GstDeviceMonitor *mon;
+  GList *devs;
+  guint id, id2;
+  GstDevice *mydev;
+  GstMessage *msg;
+  GstBus *bus;
+  GstDevice *dev;
+
+  register_test_device_provider ();
+  register_test_device_provider_monitor ();
+
+  dp = gst_device_provider_factory_get_by_name ("testdeviceprovider");
+  dp2 = gst_device_provider_factory_get_by_name ("testdeviceprovidermonitor");
+
+  mon = gst_device_monitor_new ();
+
+  devices = g_list_append (NULL, test_device_new ());
+
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (devs == NULL);
+
+  id = gst_device_monitor_add_filter (mon, "TestProvider", NULL);
+  fail_unless (id > 0);
+
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (devs == NULL);
+
+  fail_unless (gst_device_monitor_add_filter (mon, "TestDevice", NULL) == 0);
+  ASSERT_CRITICAL (gst_device_monitor_remove_filter (mon, 0));
+
+  fail_unless (gst_device_monitor_remove_filter (mon, id));
+
+  id = gst_device_monitor_add_filter (mon, "Test3", NULL);
+  fail_unless (id > 0);
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (g_list_length (devs) == 1);
+  fail_unless_equals_pointer (devs->data, devices->data);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+  id2 = gst_device_monitor_add_filter (mon, "Test1", NULL);
+  fail_unless (id2 > 0);
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (g_list_length (devs) == 2);
+  fail_unless_equals_pointer (devs->data, devices->data);
+  fail_unless_equals_pointer (devs->next->data, devices->data);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+  fail_unless (gst_device_monitor_remove_filter (mon, id));
+
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (g_list_length (devs) == 2);
+  fail_unless_equals_pointer (devs->data, devices->data);
+  fail_unless_equals_pointer (devs->next->data, devices->data);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+
+  fail_unless (gst_device_monitor_start (mon));
+
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (g_list_length (devs) == 1);
+  fail_unless_equals_pointer (devs->data, devices->data);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+  gst_device_monitor_stop (mon);
+
+  fail_unless (gst_device_monitor_remove_filter (mon, id2));
+
+  id = gst_device_monitor_add_filter (mon, "Test4", NULL);
+  fail_unless (id > 0);
+
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (g_list_length (devs) == 1);
+  fail_unless_equals_pointer (devs->data, devices->data);
+  g_list_free_full (devs, (GDestroyNotify) gst_object_unref);
+
+  fail_unless (gst_device_monitor_start (mon));
+
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (devs == NULL);
+
+  bus = gst_device_monitor_get_bus (mon);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg == NULL);
+
+  mydev = test_device_new ();
+  gst_device_provider_device_add (dp2, mydev);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg != NULL);
+
+  fail_unless (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_DEVICE_ADDED);
+
+  gst_message_parse_device_added (msg, &dev);
+  fail_unless_equals_pointer (dev, mydev);
+  gst_object_unref (dev);
+  gst_message_unref (msg);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg == NULL);
+
+  gst_device_provider_device_remove (dp2, mydev);
+  devs = gst_device_monitor_get_devices (mon);
+  fail_unless (devs == NULL);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg != NULL);
+
+  fail_unless (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_DEVICE_REMOVED);
+
+  gst_message_parse_device_removed (msg, &dev);
+  fail_unless_equals_pointer (dev, mydev);
+  gst_object_unref (dev);
+  gst_message_unref (msg);
+
+  msg = gst_bus_pop (bus);
+  fail_unless (msg == NULL);
+
+
+  gst_device_monitor_stop (mon);
+
+  gst_object_unref (bus);
+  gst_object_unref (mon);
+
+  gst_object_unref (dp);
+  gst_object_unref (dp2);
+  g_list_free_full (devices, (GDestroyNotify) gst_object_unref);
+
+  /* should work fine without any filters */
+  mon = gst_device_monitor_new ();
+  fail_unless (gst_device_monitor_start (mon));
+  gst_device_monitor_stop (mon);
+  gst_object_unref (mon);
+}
+
+GST_END_TEST;
+
+
+static Suite *
+gst_device_suite (void)
+{
+  Suite *s = suite_create ("GstDevice");
+  TCase *tc_chain = tcase_create ("device tests");
+
+  suite_add_tcase (s, tc_chain);
+  tcase_add_test (tc_chain, test_device);
+  tcase_add_test (tc_chain, test_device_provider_factory);
+  tcase_add_test (tc_chain, test_device_provider);
+  tcase_add_test (tc_chain, test_device_provider_monitor);
+  tcase_add_test (tc_chain, test_device_monitor);
+
+  return s;
+}
+
+GST_CHECK_MAIN (gst_device);
diff --git a/tests/check/gst/gstelement.c b/tests/check/gst/gstelement.c
index faa95a5..8732611 100644
--- a/tests/check/gst/gstelement.c
+++ b/tests/check/gst/gstelement.c
@@ -50,40 +50,6 @@
 
 GST_END_TEST;
 
-
-GST_START_TEST (test_add_remove_readd_pad)
-{
-  GstElement *e;
-  GstPad *p;
-
-  /* getting an existing element class is cheating, but easier */
-  e = gst_element_factory_make ("fakesrc", "source");
-
-  /* create a new floating pad with refcount 1 */
-  p = gst_pad_new ("source", GST_PAD_SRC);
-
-  gst_object_ref (p);
-
-  /* simulate a real scenario where the pad is activated before added */
-  fail_unless (gst_pad_set_active (p, TRUE));
-  gst_element_add_pad (e, p);
-
-  /* now remove and deactivate it */
-  fail_unless (gst_pad_set_active (p, FALSE));
-  gst_element_remove_pad (e, p);
-
-  /* should be able to reuse the same pad */
-  fail_unless (gst_pad_set_active (p, TRUE));
-  fail_unless (gst_element_add_pad (e, p));
-
-  /* clean up our own reference */
-  gst_object_unref (p);
-  gst_object_unref (e);
-}
-
-GST_END_TEST;
-
-
 GST_START_TEST (test_add_pad_unref_element)
 {
   GstElement *e;
@@ -389,7 +355,6 @@
 
   suite_add_tcase (s, tc_chain);
   tcase_add_test (tc_chain, test_add_remove_pad);
-  tcase_add_test (tc_chain, test_add_remove_readd_pad);
   tcase_add_test (tc_chain, test_add_pad_unref_element);
   tcase_add_test (tc_chain, test_error_no_bus);
   tcase_add_test (tc_chain, test_link);
diff --git a/tests/check/gst/gstinfo.c b/tests/check/gst/gstinfo.c
index cd9b018..595b908 100644
--- a/tests/check/gst/gstinfo.c
+++ b/tests/check/gst/gstinfo.c
@@ -332,6 +332,23 @@
 GST_END_TEST;
 #endif
 
+GST_START_TEST (info_fourcc)
+{
+  gchar *res;
+  const gchar *cmp;
+
+  cmp = "abcd";
+  res = g_strdup_printf ("%" GST_FOURCC_FORMAT, GST_FOURCC_ARGS (0x64636261));
+  fail_unless_equals_string (res, cmp);
+  g_free (res);
+
+  cmp = ".bcd";
+  res = g_strdup_printf ("%" GST_FOURCC_FORMAT, GST_FOURCC_ARGS (0x646362a9));
+  fail_unless_equals_string (res, cmp);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_info_suite (void)
 {
@@ -341,6 +358,7 @@
   tcase_set_timeout (tc_chain, 30);
 
   suite_add_tcase (s, tc_chain);
+  tcase_add_test (tc_chain, info_fourcc);
 #ifndef GST_DISABLE_GST_DEBUG
   tcase_add_test (tc_chain, info_segment_format_printf_extension);
   tcase_add_test (tc_chain, info_ptr_format_printf_extension);
diff --git a/tests/check/gst/gstobject.c b/tests/check/gst/gstobject.c
index 96f6bcf..d02e357 100644
--- a/tests/check/gst/gstobject.c
+++ b/tests/check/gst/gstobject.c
@@ -355,10 +355,15 @@
   fail_if (parent != NULL, "GstFakeObject has parent");
   /* try to set a NULL parent, this should give a warning */
   ASSERT_CRITICAL (result = gst_object_set_parent (object1, NULL));
-  fail_if (result == TRUE, "GstFakeObject accepted NULL parent");
+  fail_if (result, "GstFakeObject accepted NULL parent");
   /* try to set itself as parent, we expect a warning here */
   ASSERT_CRITICAL (result = gst_object_set_parent (object1, object1));
-  fail_if (result == TRUE, "GstFakeObject accepted itself as parent");
+  fail_if (result, "GstFakeObject accepted itself as parent");
+
+  /* _has_parent always returns FALSE if there is no parent */
+  fail_if (gst_object_has_parent (object1, NULL));
+  fail_if (gst_object_has_parent (NULL, object1));
+  fail_if (gst_object_has_parent (object1, object1));
 
   /* should still be floating */
   fail_unless (g_object_is_floating (object1),
@@ -373,10 +378,12 @@
   fail_unless (g_object_is_floating (object1),
       "GstFakeObject instance is not floating");
 
+  result = gst_object_has_parent (object1, object2);
+  fail_if (result, "GstFakeObject has a parent");
+
   /* try to set other object as parent */
   result = gst_object_set_parent (object1, object2);
-  fail_if (result == FALSE,
-      "GstFakeObject could not accept other object as parent");
+  fail_unless (result, "GstFakeObject could not accept other object as parent");
 
   /* should not be floating anymore */
   fail_if (g_object_is_floating (object1),
@@ -386,12 +393,20 @@
       "GstFakeObject instance is not floating");
 
   /* check the parent */
-  parent = gst_object_get_parent (object1);
-  fail_if (parent != object2, "GstFakeObject has wrong parent");
-  gst_object_unref (parent);
+  fail_unless (gst_object_has_parent (object1, object2));
+
+  /* any other combination is invalid */
+  fail_if (gst_object_has_parent (object2, object1));
+  fail_if (gst_object_has_parent (object1, NULL));
+  fail_if (gst_object_has_parent (object2, NULL));
+  fail_if (gst_object_has_parent (NULL, object1));
+  fail_if (gst_object_has_parent (NULL, object2));
+  fail_if (gst_object_has_parent (object1, object1));
+  fail_if (gst_object_has_parent (object2, object2));
+
   /* try to set other object as parent again */
   result = gst_object_set_parent (object1, object2);
-  fail_if (result == TRUE, "GstFakeObject could set parent twice");
+  fail_if (result, "GstFakeObject could set parent twice");
 
   /* ref before unparenting */
   gst_object_ref (object1);
@@ -430,8 +445,7 @@
 
   /* try to set other object as parent */
   result = gst_object_set_parent (object1, object2);
-  fail_if (result == FALSE,
-      "GstFakeObject could not accept other object as parent");
+  fail_unless (result, "GstFakeObject could not accept other object as parent");
 
   /* clear parent of object */
   gst_object_unparent (object1);
@@ -461,25 +475,56 @@
 
   /* try to set other object as parent */
   result = gst_object_set_parent (object1, object3);
-  fail_if (result == FALSE,
-      "GstFakeObject could not accept other object as parent");
+  fail_unless (result, "GstFakeObject could not accept other object as parent");
   result = gst_object_set_parent (object2, object3);
-  fail_if (result == FALSE,
-      "GstFakeObject could not accept other object as parent");
+  fail_unless (result, "GstFakeObject could not accept other object as parent");
   result = gst_object_set_parent (object3, object4);
-  fail_if (result == FALSE,
-      "GstFakeObject could not accept other object as parent");
+  fail_unless (result, "GstFakeObject could not accept other object as parent");
 
+  /* Hierarchy:
+   *  object4
+   *   `- object3
+   *       |- object2
+   *       `- object1
+   */
+
+  /* An object isn't its own parent, but it is its own ancestor */
+  fail_if (gst_object_has_parent (object1, object1));
   fail_unless (gst_object_has_ancestor (object1, object1));
-  fail_if (gst_object_has_ancestor (object1, object2));
-  fail_unless (gst_object_has_ancestor (object1, object3));
-  fail_unless (gst_object_has_ancestor (object1, object4));
-  fail_if (gst_object_has_ancestor (object3, object1));
-  fail_if (gst_object_has_ancestor (object4, object1));
-  fail_unless (gst_object_has_ancestor (object3, object4));
-  fail_if (gst_object_has_ancestor (object4, object3));
+
+  fail_if (gst_object_has_parent (object4, object4));
   fail_unless (gst_object_has_ancestor (object4, object4));
 
+  /* direct parents */
+  fail_unless (gst_object_has_parent (object1, object3));
+  fail_unless (gst_object_has_ancestor (object1, object3));
+
+  fail_unless (gst_object_has_parent (object2, object3));
+  fail_unless (gst_object_has_ancestor (object2, object3));
+
+  fail_unless (gst_object_has_parent (object3, object4));
+  fail_unless (gst_object_has_ancestor (object3, object4));
+
+  /* grandparents */
+  fail_if (gst_object_has_parent (object1, object4));
+  fail_unless (gst_object_has_ancestor (object1, object4));
+
+  fail_if (gst_object_has_parent (object2, object4));
+  fail_unless (gst_object_has_ancestor (object2, object4));
+
+  /* not ancestors */
+  fail_if (gst_object_has_parent (object1, object2));
+  fail_if (gst_object_has_ancestor (object1, object2));
+
+  fail_if (gst_object_has_parent (object3, object1));
+  fail_if (gst_object_has_ancestor (object3, object1));
+
+  fail_if (gst_object_has_parent (object4, object1));
+  fail_if (gst_object_has_ancestor (object4, object1));
+
+  fail_if (gst_object_has_parent (object4, object3));
+  fail_if (gst_object_has_ancestor (object4, object3));
+
   /* unparent everything */
   gst_object_unparent (object3);
   gst_object_unparent (object2);
diff --git a/tests/check/gst/gstpad.c b/tests/check/gst/gstpad.c
index cf4586d..625fec0 100644
--- a/tests/check/gst/gstpad.c
+++ b/tests/check/gst/gstpad.c
@@ -1976,6 +1976,82 @@
 
 GST_END_TEST;
 
+GST_START_TEST (test_flush_stop_inactive)
+{
+  GstPad *sinkpad, *srcpad;
+
+  sinkpad = gst_pad_new ("sink", GST_PAD_SINK);
+  fail_unless (sinkpad != NULL);
+
+  /* new pads are inactive and flushing */
+  fail_if (GST_PAD_IS_ACTIVE (sinkpad));
+  fail_unless (GST_PAD_IS_FLUSHING (sinkpad));
+
+  /* this should fail, pad is inactive */
+  fail_if (gst_pad_send_event (sinkpad, gst_event_new_flush_stop (FALSE)));
+
+  /* nothing should have changed */
+  fail_if (GST_PAD_IS_ACTIVE (sinkpad));
+  fail_unless (GST_PAD_IS_FLUSHING (sinkpad));
+
+  gst_pad_set_active (sinkpad, TRUE);
+
+  /* pad is now active an not flushing anymore */
+  fail_unless (GST_PAD_IS_ACTIVE (sinkpad));
+  fail_if (GST_PAD_IS_FLUSHING (sinkpad));
+
+  /* do flush, does not deactivate the pad */
+  fail_unless (gst_pad_send_event (sinkpad, gst_event_new_flush_start ()));
+  fail_unless (GST_PAD_IS_ACTIVE (sinkpad));
+  fail_unless (GST_PAD_IS_FLUSHING (sinkpad));
+
+  fail_unless (gst_pad_send_event (sinkpad, gst_event_new_flush_stop (FALSE)));
+  fail_unless (GST_PAD_IS_ACTIVE (sinkpad));
+  fail_if (GST_PAD_IS_FLUSHING (sinkpad));
+
+  gst_pad_set_active (sinkpad, FALSE);
+  fail_if (GST_PAD_IS_ACTIVE (sinkpad));
+  fail_unless (GST_PAD_IS_FLUSHING (sinkpad));
+
+  gst_object_unref (sinkpad);
+
+  /* we should not be able to push on an inactive srcpad */
+  srcpad = gst_pad_new ("src", GST_PAD_SRC);
+  fail_unless (srcpad != NULL);
+
+  fail_if (GST_PAD_IS_ACTIVE (srcpad));
+  fail_unless (GST_PAD_IS_FLUSHING (srcpad));
+
+  fail_if (gst_pad_push_event (srcpad, gst_event_new_flush_stop (FALSE)));
+
+  /* should still be inactive and flushing */
+  fail_if (GST_PAD_IS_ACTIVE (srcpad));
+  fail_unless (GST_PAD_IS_FLUSHING (srcpad));
+
+  gst_pad_set_active (srcpad, TRUE);
+
+  /* pad is now active an not flushing anymore */
+  fail_unless (GST_PAD_IS_ACTIVE (srcpad));
+  fail_if (GST_PAD_IS_FLUSHING (srcpad));
+
+  /* do flush, does not deactivate the pad */
+  fail_if (gst_pad_push_event (srcpad, gst_event_new_flush_start ()));
+  fail_unless (GST_PAD_IS_ACTIVE (srcpad));
+  fail_unless (GST_PAD_IS_FLUSHING (srcpad));
+
+  fail_if (gst_pad_push_event (srcpad, gst_event_new_flush_stop (FALSE)));
+  fail_unless (GST_PAD_IS_ACTIVE (srcpad));
+  fail_if (GST_PAD_IS_FLUSHING (srcpad));
+
+  gst_pad_set_active (srcpad, FALSE);
+  fail_if (GST_PAD_IS_ACTIVE (srcpad));
+  fail_unless (GST_PAD_IS_FLUSHING (srcpad));
+
+  gst_object_unref (srcpad);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_pad_suite (void)
 {
@@ -2021,6 +2097,7 @@
   tcase_add_test (tc_chain, test_sticky_events);
   tcase_add_test (tc_chain, test_last_flow_return_push);
   tcase_add_test (tc_chain, test_last_flow_return_pull);
+  tcase_add_test (tc_chain, test_flush_stop_inactive);
 
   return s;
 }
diff --git a/tests/check/gst/gstpipeline.c b/tests/check/gst/gstpipeline.c
index e1b4670..d186bc7 100644
--- a/tests/check/gst/gstpipeline.c
+++ b/tests/check/gst/gstpipeline.c
@@ -574,6 +574,89 @@
 
 GST_END_TEST;
 
+GST_START_TEST (test_pipeline_reset_start_time)
+{
+  GstElement *pipeline, *fakesrc, *fakesink;
+  GstState state;
+  GstClock *clock;
+  GstClockID id;
+  gint64 position;
+
+  pipeline = gst_element_factory_make ("pipeline", "pipeline");
+  fakesrc = gst_element_factory_make ("fakesrc", "fakesrc");
+  fakesink = gst_element_factory_make ("fakesink", "fakesink");
+
+  g_object_set (fakesrc, "do-timestamp", TRUE, "format", GST_FORMAT_TIME, NULL);
+
+  fail_unless (pipeline && fakesrc && fakesink);
+
+  gst_bin_add_many (GST_BIN (pipeline), fakesrc, fakesink, NULL);
+  gst_element_link (fakesrc, fakesink);
+
+  fail_unless (gst_element_get_start_time (fakesink) == 0);
+
+  fail_unless_equals_int (gst_element_set_state (pipeline, GST_STATE_PLAYING),
+      GST_STATE_CHANGE_ASYNC);
+  fail_unless_equals_int (gst_element_get_state (pipeline, &state, NULL, -1),
+      GST_STATE_CHANGE_SUCCESS);
+  fail_unless_equals_int (state, GST_STATE_PLAYING);
+
+  /* We just started and never paused, start time must be 0 */
+  fail_unless (gst_element_get_start_time (fakesink) == 0);
+
+  clock = gst_pipeline_get_clock (GST_PIPELINE (pipeline));
+  fail_unless (clock != NULL);
+  id = gst_clock_new_single_shot_id (clock,
+      gst_element_get_base_time (pipeline) + 55 * GST_MSECOND);
+  gst_clock_id_wait (id, NULL);
+  gst_clock_id_unref (id);
+  gst_object_unref (clock);
+
+  /* We waited 50ms, so the position should be now >= 50ms */
+  fail_unless (gst_element_query_position (fakesink, GST_FORMAT_TIME,
+          &position));
+  fail_unless (position >= 50 * GST_MSECOND);
+
+  fail_unless_equals_int (gst_element_set_state (pipeline, GST_STATE_PAUSED),
+      GST_STATE_CHANGE_ASYNC);
+  fail_unless_equals_int (gst_element_get_state (pipeline, &state, NULL, -1),
+      GST_STATE_CHANGE_SUCCESS);
+  fail_unless_equals_int (state, GST_STATE_PAUSED);
+
+  /* And now after pausing the start time should be bigger than the last
+   * position */
+  fail_unless (gst_element_get_start_time (fakesink) >= 50 * GST_MSECOND);
+  fail_unless (gst_element_query_position (fakesink, GST_FORMAT_TIME,
+          &position));
+  fail_unless (position >= 50 * GST_MSECOND);
+
+  fail_unless_equals_int (gst_element_set_state (pipeline, GST_STATE_READY),
+      GST_STATE_CHANGE_SUCCESS);
+
+  /* When going back to ready the start time should be reset everywhere */
+  fail_unless (gst_element_get_start_time (fakesink) == 0);
+
+  fail_unless_equals_int (gst_element_set_state (pipeline, GST_STATE_PAUSED),
+      GST_STATE_CHANGE_ASYNC);
+  fail_unless_equals_int (gst_element_get_state (pipeline, &state, NULL, -1),
+      GST_STATE_CHANGE_SUCCESS);
+  fail_unless_equals_int (state, GST_STATE_PAUSED);
+
+  /* And the start time should still be set to 0 when we go to paused for the
+   * first time. Same goes for the position */
+  fail_unless (gst_element_query_position (fakesink, GST_FORMAT_TIME,
+          &position));
+  fail_unless (position < 50 * GST_MSECOND);
+
+  fail_unless (gst_element_get_start_time (fakesink) == 0);
+
+  gst_element_set_state (pipeline, GST_STATE_NULL);
+
+  gst_object_unref (pipeline);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_pipeline_suite (void)
 {
@@ -591,6 +674,7 @@
   tcase_add_test (tc_chain, test_base_time);
   tcase_add_test (tc_chain, test_concurrent_create);
   tcase_add_test (tc_chain, test_pipeline_in_pipeline);
+  tcase_add_test (tc_chain, test_pipeline_reset_start_time);
 
   return s;
 }
diff --git a/tests/check/gst/gstpoll.c b/tests/check/gst/gstpoll.c
index 3357bf5..2fd756b 100644
--- a/tests/check/gst/gstpoll.c
+++ b/tests/check/gst/gstpoll.c
@@ -275,6 +275,7 @@
   gst_poll_fd_ctl_write (set, &fd, TRUE);
   gst_poll_restart (set);
 
+  g_mutex_lock (&mutex);
   THREAD_SYNCHRONIZE ();
 
   g_usleep (500000);
diff --git a/tests/check/gst/gstprintf.c b/tests/check/gst/gstprintf.c
new file mode 100644
index 0000000..724de35
--- /dev/null
+++ b/tests/check/gst/gstprintf.c
@@ -0,0 +1,135 @@
+/* GStreamer unit tests for the custom printf
+ * Copyright (C) 2015 Tim-Philipp Müller <tim centricular com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include <gst/check/gstcheck.h>
+
+#include <string.h>
+
+#ifdef GST_DISABLE_GST_DEBUG
+#error "Something wrong with the build system setup"
+#endif
+
+#include "gst/printf/printf.h"
+/*
+#include "gst/printf/printf-extension.h"
+*/
+
+static char *
+test_printf (const char *format, ...)
+{
+  va_list varargs;
+  char *str = NULL;
+  int len;
+
+  va_start (varargs, format);
+  len = __gst_vasprintf (&str, format, varargs);
+  va_end (varargs);
+
+  if (len <= 0)
+    return NULL;
+
+  GST_INFO ("[%s]", str);
+  return str;
+}
+
+GST_START_TEST (printf_I32_I64)
+{
+  guint64 v64 = 0xf1e2d3c4b5a6978f;
+  guint32 v32 = 0xf1e2d3cf;
+  guint vu = 0xf1e2d3cf;
+  gchar *str;
+
+  /* standard int/uint */
+  str = test_printf ("x = %x", vu);
+  fail_unless_equals_string (str, "x = f1e2d3cf");
+  g_free (str);
+  str = test_printf ("u = %u", vu);
+  fail_unless_equals_string (str, "u = 4058174415");
+  g_free (str);
+  str = test_printf ("d = %d", vu);
+  fail_unless_equals_string (str, "d = -236792881");
+  g_free (str);
+
+  /* 32 bit GLib */
+  str = test_printf ("32-bit x value = %" G_GINT32_MODIFIER "x", v32);
+  fail_unless_equals_string (str, "32-bit x value = f1e2d3cf");
+  g_free (str);
+  str = test_printf ("32-bit u value = %" G_GUINT32_FORMAT, v32);
+  fail_unless_equals_string (str, "32-bit u value = 4058174415");
+  g_free (str);
+  str = test_printf ("32-bit d value = %" G_GINT32_FORMAT, v32);
+  fail_unless_equals_string (str, "32-bit d value = -236792881");
+  g_free (str);
+
+  /* 64 bit Glib */
+  str = test_printf ("64-bit x value = %" G_GINT64_MODIFIER "x", v64);
+  fail_unless_equals_string (str, "64-bit x value = f1e2d3c4b5a6978f");
+  g_free (str);
+  str = test_printf ("64-bit u value = %" G_GUINT64_FORMAT, v64);
+  fail_unless_equals_string (str, "64-bit u value = 17429726349691885455");
+  g_free (str);
+  str = test_printf ("64-bit d value = %" G_GINT64_FORMAT, v64);
+  fail_unless_equals_string (str, "64-bit d value = -1017017724017666161");
+  g_free (str);
+
+  /* 32 bit Windows */
+  str = test_printf ("I32x value = %I32x", v32);
+  fail_unless_equals_string (str, "I32x value = f1e2d3cf");
+  g_free (str);
+  str = test_printf ("I32u value = %I32u", v32);
+  fail_unless_equals_string (str, "I32u value = 4058174415");
+  g_free (str);
+  str = test_printf ("I32d value = %I32d", v32);
+  fail_unless_equals_string (str, "I32d value = -236792881");
+  g_free (str);
+
+  /* needs testing first */
+#if 0
+#ifdef G_OS_WIN32
+  /* 64 bit Windows */
+  str = test_printf ("I64x value = %I64x", v64);
+  fail_unless_equals_string (str, "I64x value = f1e2d3c4b5a6978f");
+  g_free (str);
+  str = test_printf ("I64u value = %I64u", v64);
+  fail_unless_equals_string (str, "I64u value = 17429726349691885455");
+  g_free (str);
+  str = test_printf ("I64d value = %I64d", v64);
+  fail_unless_equals_string (str, "I64d value = -1017017724017666161");
+  g_free (str);
+#endif
+#endif
+}
+
+GST_END_TEST;
+
+static Suite *
+gst_printf_suite (void)
+{
+  Suite *s = suite_create ("GstPrintf");
+  TCase *tc_chain = tcase_create ("gstprintf");
+
+  tcase_set_timeout (tc_chain, 30);
+
+  suite_add_tcase (s, tc_chain);
+  tcase_add_test (tc_chain, printf_I32_I64);
+
+  return s;
+}
+
+GST_CHECK_MAIN (gst_printf);
diff --git a/tests/check/gst/gststructure.c b/tests/check/gst/gststructure.c
index 58ee819..18c58f6 100644
--- a/tests/check/gst/gststructure.c
+++ b/tests/check/gst/gststructure.c
@@ -174,6 +174,20 @@
   ASSERT_WARNING (structure = gst_structure_from_string (s, NULL));
   fail_if (structure == NULL, "Could not get structure from string %s", s);
   gst_structure_free (structure);
+
+  /* make sure we handle \ as last character in various things, run with valgrind */
+  s = "foo,test=\"foobar\\";
+  structure = gst_structure_from_string (s, NULL);
+  fail_unless (structure == NULL);
+  s = "\\";
+  structure = gst_structure_from_string (s, NULL);
+  fail_unless (structure == NULL);
+  s = "foobar,test\\";
+  structure = gst_structure_from_string (s, NULL);
+  fail_unless (structure == NULL);
+  s = "foobar,test=(string)foo\\";
+  structure = gst_structure_from_string (s, NULL);
+  fail_unless (structure == NULL);
 }
 
 GST_END_TEST;
@@ -228,6 +242,48 @@
 
 GST_END_TEST;
 
+/* Added to make sure taglists are properly serialized/deserialized after bug
+ * https://bugzilla.gnome.org/show_bug.cgi?id=733131 */
+GST_START_TEST (test_to_from_string_tag_event)
+{
+  GstEvent *tagevent;
+  GstTagList *taglist;
+  GstStructure *st1, *st2;
+  gchar *str;
+
+  /* empty taglist */
+  taglist = gst_tag_list_new_empty ();
+  tagevent = gst_event_new_tag (taglist);
+
+  st1 = (GstStructure *) gst_event_get_structure (tagevent);
+  str = gst_structure_to_string (st1);
+  fail_unless (str != NULL);
+
+  st2 = gst_structure_new_from_string (str);
+  fail_unless (st2 != NULL);
+  fail_unless (gst_structure_is_equal (st1, st2));
+  gst_event_unref (tagevent);
+  gst_structure_free (st2);
+  g_free (str);
+
+  /* taglist with data */
+  taglist = gst_tag_list_new ("title", "TEST TITLE", NULL);
+  tagevent = gst_event_new_tag (taglist);
+
+  st1 = (GstStructure *) gst_event_get_structure (tagevent);
+  str = gst_structure_to_string (st1);
+  fail_unless (str != NULL);
+
+  st2 = gst_structure_new_from_string (str);
+  fail_unless (st2 != NULL);
+  fail_unless (gst_structure_is_equal (st1, st2));
+  gst_event_unref (tagevent);
+  gst_structure_free (st2);
+  g_free (str);
+}
+
+GST_END_TEST;
+
 GST_START_TEST (test_complete_structure)
 {
   GstStructure *structure;
@@ -612,6 +668,87 @@
 
 GST_END_TEST;
 
+static gboolean
+foreach_func (GQuark field_id, const GValue * value, gpointer user_data)
+{
+  gint *sum = user_data;
+  gint v = 0;
+
+  if (G_VALUE_HOLDS_INT (value))
+    v = g_value_get_int (value);
+  *sum += v;
+
+  return TRUE;
+}
+
+GST_START_TEST (test_foreach)
+{
+  GstStructure *s;
+  gint sum = 0;
+
+  s = gst_structure_new ("foo/bar", "baz", G_TYPE_INT, 1, "bla", G_TYPE_INT, 3,
+      NULL);
+  fail_unless (gst_structure_foreach (s, foreach_func, &sum));
+  fail_unless_equals_int (sum, 4);
+  gst_structure_free (s);
+
+}
+
+GST_END_TEST;
+
+static gboolean
+map_func (GQuark field_id, GValue * value, gpointer user_data)
+{
+  if (G_VALUE_HOLDS_INT (value))
+    g_value_set_int (value, 123);
+
+  return TRUE;
+}
+
+GST_START_TEST (test_map_in_place)
+{
+  GstStructure *s, *s2;
+
+  s = gst_structure_new ("foo/bar", "baz", G_TYPE_INT, 1, "bla", G_TYPE_INT, 3,
+      NULL);
+  s2 = gst_structure_new ("foo/bar", "baz", G_TYPE_INT, 123, "bla", G_TYPE_INT,
+      123, NULL);
+  fail_unless (gst_structure_map_in_place (s, map_func, NULL));
+  fail_unless (gst_structure_is_equal (s, s2));
+  gst_structure_free (s);
+  gst_structure_free (s2);
+
+}
+
+GST_END_TEST;
+
+static gboolean
+filter_map_func (GQuark field_id, GValue * value, gpointer user_data)
+{
+  if (strcmp (g_quark_to_string (field_id), "bla") == 0)
+    return FALSE;
+
+  if (G_VALUE_HOLDS_INT (value))
+    g_value_set_int (value, 2);
+
+  return TRUE;
+}
+
+GST_START_TEST (test_filter_and_map_in_place)
+{
+  GstStructure *s, *s2;
+
+  s = gst_structure_new ("foo/bar", "baz", G_TYPE_INT, 1, "bla", G_TYPE_INT, 3,
+      NULL);
+  s2 = gst_structure_new ("foo/bar", "baz", G_TYPE_INT, 2, NULL);
+  gst_structure_filter_and_map_in_place (s, filter_map_func, NULL);
+  fail_unless (gst_structure_is_equal (s, s2));
+  gst_structure_free (s);
+  gst_structure_free (s2);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_structure_suite (void)
 {
@@ -624,6 +761,7 @@
   tcase_add_test (tc_chain, test_from_string);
   tcase_add_test (tc_chain, test_to_string);
   tcase_add_test (tc_chain, test_to_from_string);
+  tcase_add_test (tc_chain, test_to_from_string_tag_event);
   tcase_add_test (tc_chain, test_string_properties);
   tcase_add_test (tc_chain, test_complete_structure);
   tcase_add_test (tc_chain, test_structure_new);
@@ -633,6 +771,9 @@
   tcase_add_test (tc_chain, test_structure_nested);
   tcase_add_test (tc_chain, test_structure_nested_from_and_to_string);
   tcase_add_test (tc_chain, test_vararg_getters);
+  tcase_add_test (tc_chain, test_foreach);
+  tcase_add_test (tc_chain, test_map_in_place);
+  tcase_add_test (tc_chain, test_filter_and_map_in_place);
   return s;
 }
 
diff --git a/tests/check/gst/gsttag.c b/tests/check/gst/gsttag.c
index fe770a0..7a5e5ca 100644
--- a/tests/check/gst/gsttag.c
+++ b/tests/check/gst/gsttag.c
@@ -608,6 +608,25 @@
 
 GST_END_TEST;
 
+GST_START_TEST (test_empty_taglist_serialization)
+{
+  GstTagList *taglist, *taglist2;
+  gchar *str;
+
+  taglist = gst_tag_list_new_empty ();
+  str = gst_tag_list_to_string (taglist);
+  taglist2 = gst_tag_list_new_from_string (str);
+  fail_if (taglist2 == NULL);
+  fail_unless (gst_tag_list_is_equal (taglist, taglist2));
+
+  gst_tag_list_unref (taglist);
+  gst_tag_list_unref (taglist2);
+  g_free (str);
+}
+
+GST_END_TEST;
+
+
 static Suite *
 gst_tag_suite (void)
 {
@@ -628,6 +647,7 @@
   tcase_add_test (tc_chain, test_equal);
   tcase_add_test (tc_chain, test_writability);
   tcase_add_test (tc_chain, test_serialization);
+  tcase_add_test (tc_chain, test_empty_taglist_serialization);
 
   return s;
 }
diff --git a/tests/check/gst/gsttask.c b/tests/check/gst/gsttask.c
index 986c403..db79558 100644
--- a/tests/check/gst/gsttask.c
+++ b/tests/check/gst/gsttask.c
@@ -26,6 +26,64 @@
 
 static GRecMutex task_mutex;
 
+#define TEST_RACE_ITERATIONS 1000
+
+static void
+task_signal_pause_func (void *data)
+{
+  GstTask **t = data;
+
+  g_mutex_lock (&task_lock);
+  GST_DEBUG ("signal");
+  g_cond_signal (&task_cond);
+
+  gst_task_pause (*t);
+  g_mutex_unlock (&task_lock);
+}
+
+GST_START_TEST (test_pause_stop_race)
+{
+  guint it = TEST_RACE_ITERATIONS;
+  GstTask *t;
+  gboolean ret;
+
+  t = gst_task_new (task_signal_pause_func, &t, NULL);
+  fail_if (t == NULL);
+
+  g_rec_mutex_init (&task_mutex);
+  gst_task_set_lock (t, &task_mutex);
+
+  g_cond_init (&task_cond);
+  g_mutex_init (&task_lock);
+
+  while (it-- > 0) {
+    g_mutex_lock (&task_lock);
+    GST_DEBUG ("starting");
+    ret = gst_task_start (t);
+    fail_unless (ret == TRUE);
+    /* wait for it to spin up */
+    GST_DEBUG ("waiting");
+    g_cond_wait (&task_cond, &task_lock);
+    GST_DEBUG ("done waiting");
+    g_mutex_unlock (&task_lock);
+
+    GST_DEBUG ("starting");
+    ret = gst_task_stop (t);
+    fail_unless (ret == TRUE);
+
+    GST_DEBUG ("joining");
+    ret = gst_task_join (t);
+    fail_unless (ret == TRUE);
+  }
+
+  g_cond_clear (&task_cond);
+  g_mutex_clear (&task_lock);
+
+  gst_object_unref (t);
+}
+
+GST_END_TEST;
+
 static void
 task_func2 (void *data)
 {
@@ -203,6 +261,7 @@
   tcase_add_test (tc_chain, test_lock);
   tcase_add_test (tc_chain, test_lock_start);
   tcase_add_test (tc_chain, test_join);
+  tcase_add_test (tc_chain, test_pause_stop_race);
 
   return s;
 }
diff --git a/tests/check/gst/gsturi.c b/tests/check/gst/gsturi.c
index 1d53265..3d80098 100644
--- a/tests/check/gst/gsturi.c
+++ b/tests/check/gst/gsturi.c
@@ -164,6 +164,790 @@
 
 GST_END_TEST;
 
+/* Taken from the GNet unit test and extended with other URIs:
+ * https://git.gnome.org/browse/archive/gnet/plain/tests/check/gnet/gneturi.c
+ */
+struct QueryValue
+{
+  const gchar *key;
+  const gchar *value;
+};
+
+struct URITest
+{
+  const gchar *str;
+  struct
+  {
+    const gchar *scheme;
+    const gchar *userinfo;
+    const gchar *host;
+    gint port;
+    const gchar *path;
+    /* needs to be updated if more than 10 */
+    struct QueryValue query[10];
+    const gchar *fragment;
+  } uri;
+};
+
+static const struct URITest tests[] = {
+  /* VALID URIS.  PARSING AND PRINTING OF THESE SHOULD NOT CHANGE */
+
+  /* scheme/path */
+  {"scheme:",
+      {"scheme", NULL, NULL, GST_URI_NO_PORT, NULL, {{NULL, NULL}}, NULL}},
+
+  {"scheme:path",
+      {"scheme", NULL, NULL, GST_URI_NO_PORT, "path", {{NULL, NULL}}, NULL}},
+
+  {"path",
+      {NULL, NULL, NULL, GST_URI_NO_PORT, "path", {{NULL, NULL}}, NULL}},
+
+  {"/path",
+      {NULL, NULL, NULL, GST_URI_NO_PORT, "/path", {{NULL, NULL}}, NULL}},
+
+  /* hostname/port */
+  {"scheme://hostname/path",
+        {"scheme", NULL, "hostname", GST_URI_NO_PORT, "/path", {{NULL, NULL}},
+          NULL}},
+
+  {"scheme://hostname:123/path",
+      {"scheme", NULL, "hostname", 123, "/path", {{NULL, NULL}}, NULL}},
+
+  /* ipv6 hostname/port */
+  {"scheme://[01:23:45:67:89:ab:cd:ef]/path",
+        {"scheme", NULL, "01:23:45:67:89:ab:cd:ef", GST_URI_NO_PORT, "/path",
+          {{NULL, NULL}}, NULL}},
+
+  {"scheme://[01:23:45:67:89:ab:cd:ef]:123/path",
+        {"scheme", NULL, "01:23:45:67:89:ab:cd:ef", 123, "/path", {{NULL,
+                  NULL}}, NULL}},
+
+  /* query/fragment */
+  {"path?query",
+        {NULL, NULL, NULL, GST_URI_NO_PORT, "path", {{"query", NULL}, {NULL,
+                  NULL}}, NULL}},
+  {"path?query=value",
+        {NULL, NULL, NULL, GST_URI_NO_PORT, "path", {{"query", "value"}, {NULL,
+                  NULL}}, NULL}},
+
+  {"path?query#fragment",
+        {NULL, NULL, NULL, GST_URI_NO_PORT, "path", {{"query", NULL}, {NULL,
+                  NULL}}, "fragment"}},
+
+  {"path?query=value#fragment",
+        {NULL, NULL, NULL, GST_URI_NO_PORT, "path", {{"query", "value"}, {NULL,
+                  NULL}}, "fragment"}},
+
+  {"scheme:path?query#fragment",
+        {"scheme", NULL, NULL, GST_URI_NO_PORT, "path", {{"query", NULL}, {NULL,
+                  NULL}}, "fragment"}},
+
+  /* full */
+  {"scheme://hostname:123/path?query#fragment",
+        {"scheme", NULL, "hostname", 123, "/path", {{"query", NULL}, {NULL,
+                  NULL}}, "fragment"}},
+
+  {"scheme://hostname:123/path?query=value#fragment",
+        {"scheme", NULL, "hostname", 123, "/path", {{"query", "value"}, {NULL,
+                  NULL}}, "fragment"}},
+
+  {"scheme://hostname:123?query",
+        {"scheme", NULL, "hostname", 123, NULL, {{"query", NULL}, {NULL,
+                  NULL}}, NULL}},
+
+  {"scheme://hostname:123?query=value",
+        {"scheme", NULL, "hostname", 123, NULL, {{"query", "value"}, {NULL,
+                  NULL}}, NULL}},
+
+  {"scheme://hostname:123?query#fragment",
+        {"scheme", NULL, "hostname", 123, NULL, {{"query", NULL}, {NULL,
+                  NULL}}, "fragment"}},
+
+  {"scheme://hostname:123?query=value#fragment",
+        {"scheme", NULL, "hostname", 123, NULL, {{"query", "value"}, {NULL,
+                  NULL}}, "fragment"}},
+
+  /* user/pass */
+  {"scheme://userinfo@hostname",
+        {"scheme", "userinfo", "hostname", GST_URI_NO_PORT, NULL, {{NULL,
+                  NULL}}, NULL}},
+
+  {"scheme://userinfo@hostname:123/path?query#fragment",
+        {"scheme", "userinfo", "hostname", 123, "/path", {{"query", NULL},
+              {NULL, NULL}}, "fragment"}},
+
+  {"scheme://user:pass@hostname",
+        {"scheme", "user:pass", "hostname", GST_URI_NO_PORT, NULL, {{NULL,
+                  NULL}}, NULL}},
+
+  {"scheme://user:pass@hostname:123/path?query#fragment",
+        {"scheme", "user:pass", "hostname", 123, "/path", {{"query", NULL},
+              {NULL, NULL}}, "fragment"}},
+
+  /* FUNNY URIS.  PARSING AND PRINTING OF THESE MAY CHANGE */
+
+  {"scheme:hostname:123/path?query#fragment",
+        {"scheme", NULL, NULL, GST_URI_NO_PORT, "hostname:123/path", {{"query",
+                  NULL}, {NULL, NULL}}, "fragment"}},
+
+  {"scheme://:pass@hostname:123/path?query#fragment",
+        {"scheme", ":pass", "hostname", 123, "/path", {{"query", NULL}, {NULL,
+                  NULL}}, "fragment"}},
+
+  /* Skip initial white space */
+  {" \f\n\r\t\vscheme:",
+      {"scheme", NULL, NULL, GST_URI_NO_PORT, NULL, {{NULL, NULL}}, NULL}},
+
+  {" \f\n\r\t\vpath",
+      {NULL, NULL, NULL, GST_URI_NO_PORT, "path", {{NULL, NULL}}, NULL}},
+
+  /* file URI */
+  {"file://host/home/joe/foo.txt",
+        {"file", NULL, "host", GST_URI_NO_PORT, "/home/joe/foo.txt", {{NULL,
+                  NULL}}, NULL}},
+  {"file:///home/joe/foo.txt",
+        {"file", NULL, NULL, GST_URI_NO_PORT, "/home/joe/foo.txt", {{NULL,
+                  NULL}}, NULL}},
+};
+
+static const gchar *unparsable_uri_tests[] = {
+  /* Path not started correctly */
+  "scheme://hostname:123path?query#fragment",
+
+  /* Brackets that don't close */
+  "scheme://[01:23:45:67:89:ab:cd:ef:123/path",
+
+  /* IPv6 hostname without brackets */
+  "scheme://01:23:45:67:89:ab:cd:ef:123/path",
+};
+
+GST_START_TEST (test_url_parsing)
+{
+  GstUri *uri;
+  GList *list;
+  gchar *tmp_str;
+  guint i, j;
+
+  for (i = 0; i < G_N_ELEMENTS (tests); i++) {
+    GST_DEBUG ("Testing URI '%s'", tests[i].str);
+
+    uri = gst_uri_from_string (tests[i].str);
+    fail_unless (uri != NULL);
+    fail_unless_equals_string (gst_uri_get_scheme (uri), tests[i].uri.scheme);
+    fail_unless_equals_string (gst_uri_get_userinfo (uri),
+        tests[i].uri.userinfo);
+    fail_unless_equals_string (gst_uri_get_host (uri), tests[i].uri.host);
+    fail_unless_equals_int (gst_uri_get_port (uri), tests[i].uri.port);
+    tmp_str = gst_uri_get_path (uri);
+    fail_unless_equals_string (tmp_str, tests[i].uri.path);
+    g_free (tmp_str);
+
+    for (j = 0; j < 10; j++) {
+      if (!tests[i].uri.query[j].key)
+        break;
+
+      if (tests[i].uri.query[j].value) {
+        fail_unless_equals_string (gst_uri_get_query_value (uri,
+                tests[i].uri.query[j].key), tests[i].uri.query[j].value);
+      } else {
+        fail_unless (gst_uri_query_has_key (uri, tests[i].uri.query[j].key));
+      }
+    }
+    list = gst_uri_get_query_keys (uri);
+    fail_unless_equals_int (j, g_list_length (list));
+    g_list_free (list);
+    gst_uri_unref (uri);
+  }
+
+  for (i = 0; i < G_N_ELEMENTS (unparsable_uri_tests); i++) {
+    GST_DEBUG ("Testing unparsable URI '%s'", unparsable_uri_tests[i]);
+
+    uri = gst_uri_from_string (unparsable_uri_tests[i]);
+    fail_unless (uri == NULL);
+  }
+}
+
+GST_END_TEST;
+
+static const struct URITest url_presenting_tests[] = {
+  /* check all URI elements present */
+  {.uri = {"scheme", "user:pass", "host", 1234, "/path/to/dir",
+          {{"query", NULL}, {"key", "value"}}, "fragment"},
+      .str =
+      "scheme://user:pass@host:1234/path/to/dir?query&key=value#fragment"},
+
+  /* IPv6 literal should render in square brackets */
+  {.uri = {"scheme", "user:pass", "12:34:56:78:9a:bc:de:f0", 1234,
+          "/path/to/dir", {{"query", "value"}}, "fragment"},
+      .str =
+      "scheme://user:pass@[12:34:56:78:9a:bc:de:f0]:1234/path/to/dir?query=value#fragment"},
+};
+
+GST_START_TEST (test_url_presenting)
+{
+  GstUri *uri;
+  gchar *result;
+  guint i, j;
+
+  for (i = 0; i < G_N_ELEMENTS (url_presenting_tests); i++) {
+    uri = gst_uri_new (url_presenting_tests[i].uri.scheme,
+        url_presenting_tests[i].uri.userinfo,
+        url_presenting_tests[i].uri.host,
+        url_presenting_tests[i].uri.port,
+        url_presenting_tests[i].uri.path,
+        NULL, url_presenting_tests[i].uri.fragment);
+    fail_unless (uri != NULL);
+    for (j = 0; j < 10; j++) {
+      if (!url_presenting_tests[i].uri.query[j].key)
+        break;
+
+      fail_unless (gst_uri_set_query_value (uri,
+              url_presenting_tests[i].uri.query[j].key,
+              url_presenting_tests[i].uri.query[j].value));
+    }
+
+    result = gst_uri_to_string (uri);
+    fail_unless_equals_string (result, url_presenting_tests[i].str);
+    g_free (result);
+    gst_uri_unref (uri);
+  }
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_url_normalization)
+{
+  GstUri *url;
+  gchar *tmp_str;
+
+  url =
+      gst_uri_from_string
+      ("ScHeMe://User:P%61ss@HOST.%63om:1234/path/./from/../to%7d/item%2dobj?qu%65ry=something#fr%61gment");
+  fail_unless (gst_uri_normalize (url));
+  fail_unless_equals_string (gst_uri_get_scheme (url), "scheme");
+  fail_unless_equals_string (gst_uri_get_userinfo (url), "User:Pass");
+  fail_unless_equals_string (gst_uri_get_host (url), "host.com");
+  tmp_str = gst_uri_get_path (url);
+  fail_unless_equals_string (tmp_str, "/path/to}/item-obj");
+  g_free (tmp_str);
+  fail_unless (gst_uri_query_has_key (url, "query"));
+  fail_unless_equals_string (gst_uri_get_query_value (url, "query"),
+      "something");
+  fail_unless_equals_string (gst_uri_get_fragment (url), "fragment");
+  gst_uri_unref (url);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_url_joining)
+{
+  GstUri *base, *rel, *joined;
+  gchar *l;
+
+  base =
+      gst_uri_from_string
+      ("http://example.com/path/to/dir/filename.html#fragment");
+
+  /* test change of fragment only */
+  rel = gst_uri_from_string ("#new_frag");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/filename.html#new_frag");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test addition of new query string */
+  rel = gst_uri_from_string ("?key=val");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/filename.html?key=val");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test new base filename */
+  rel = gst_uri_from_string ("new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test relative file same directory */
+  rel = gst_uri_from_string ("./new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test relative file parent directory */
+  rel = gst_uri_from_string ("../new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l, "http://example.com/path/to/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test relative file grandparent directory */
+  rel = gst_uri_from_string ("../../new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l, "http://example.com/path/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test relative file root directory */
+  rel = gst_uri_from_string ("../../../new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l, "http://example.com/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test relative file beyond root directory */
+  rel = gst_uri_from_string ("../../../../new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l, "http://example.com/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test add subdirectory */
+  rel = gst_uri_from_string ("subdir/new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/subdir/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test change directory */
+  rel = gst_uri_from_string ("../subdir/new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/subdir/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  gst_uri_unref (base);
+
+  /* change base for path ending in directory */
+  base = gst_uri_from_string ("http://example.com/path/to/dir/");
+
+  /* test adding file to directory */
+  rel = gst_uri_from_string ("new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test adding file to directory using relative path */
+  rel = gst_uri_from_string ("./new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l,
+      "http://example.com/path/to/dir/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test filename in parent directory */
+  rel = gst_uri_from_string ("../new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l, "http://example.com/path/to/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  /* test replace with absolute */
+  rel = gst_uri_from_string ("https://ssl.example.com/new_filename.xml");
+  joined = gst_uri_join (base, rel);
+  l = gst_uri_to_string (joined);
+  fail_unless_equals_string (l, "https://ssl.example.com/new_filename.xml");
+  g_free (l);
+  gst_uri_unref (joined);
+  gst_uri_unref (rel);
+
+  gst_uri_unref (base);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_url_equality)
+{
+  GstUri *url1, *url2;
+
+  url1 =
+      gst_uri_from_string
+      ("ScHeMe://User:Pass@HOST.com:1234/path/./from/../to%7d/item%2dobj?query=something#fragment");
+
+  /* equal */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (gst_uri_equal (url1, url2));
+  fail_unless (gst_uri_equal (url2, url1));
+  gst_uri_unref (url2);
+
+  /* different fragment */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234/path/to%7D/item-obj?query=something#different-fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different query */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234/path/to%7D/item-obj?query=different-something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different path */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234/path/to%7D/different-item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different port */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:4321/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different host */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@different-host.com:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different userinfo */
+  url2 =
+      gst_uri_from_string
+      ("scheme://Different-User:Pass@host.com:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different scheme */
+  url2 =
+      gst_uri_from_string
+      ("different+scheme://User:Pass@host.com:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no scheme) */
+  url2 =
+      gst_uri_from_string
+      ("//User:Pass@host.com:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no userinfo) */
+  url2 =
+      gst_uri_from_string
+      ("scheme://host.com:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no host) */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@:1234/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no port) */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com/path/to%7D/item-obj?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no path) */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234?query=something#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no query) */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234/path/to%7D/item-obj#fragment");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* different (no fragment) */
+  url2 =
+      gst_uri_from_string
+      ("scheme://User:Pass@host.com:1234/path/to%7D/item-obj?query=something");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  /* compare two NULL uris */
+  fail_unless (gst_uri_equal (NULL, NULL));
+
+  /* compare same object */
+  fail_unless (gst_uri_equal (url1, url1));
+
+  /* compare one NULL and one non-NULL uri */
+  fail_unless (!gst_uri_equal (url1, NULL));
+  fail_unless (!gst_uri_equal (NULL, url1));
+
+  gst_uri_unref (url1);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_url_constructors)
+{
+  GstUri *url1, *url2;
+  gchar *tmp_str;
+  GHashTable *tmp_table;
+
+  url1 =
+      gst_uri_new ("scheme", "userinfo", "hostname", 1234, "/path/to/file",
+      "query", "fragment");
+  fail_unless_equals_string (gst_uri_get_scheme (url1), "scheme");
+  fail_unless_equals_string (gst_uri_get_userinfo (url1), "userinfo");
+  fail_unless_equals_string (gst_uri_get_host (url1), "hostname");
+  fail_unless (gst_uri_get_port (url1) == 1234);
+  tmp_str = gst_uri_get_path (url1);
+  fail_unless_equals_string (tmp_str, "/path/to/file");
+  g_free (tmp_str);
+  tmp_table = gst_uri_get_query_table (url1);
+  fail_unless (g_hash_table_size (tmp_table) == 1);
+  fail_unless (g_hash_table_contains (tmp_table, "query"));
+  fail_unless (g_hash_table_lookup (tmp_table, "query") == NULL);
+  g_hash_table_unref (tmp_table);
+  fail_unless_equals_string (gst_uri_get_fragment (url1), "fragment");
+  tmp_str = gst_uri_to_string (url1);
+  fail_unless_equals_string (tmp_str,
+      "scheme://userinfo@hostname:1234/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  url2 =
+      gst_uri_new_with_base (url1, NULL, NULL, NULL, GST_URI_NO_PORT,
+      "new_file", NULL, NULL);
+  fail_unless_equals_string (gst_uri_get_scheme (url2), "scheme");
+  fail_unless_equals_string (gst_uri_get_userinfo (url2), "userinfo");
+  fail_unless_equals_string (gst_uri_get_host (url2), "hostname");
+  fail_unless (gst_uri_get_port (url2) == 1234);
+  tmp_str = gst_uri_get_path (url2);
+  fail_unless_equals_string (tmp_str, "/path/to/new_file");
+  g_free (tmp_str);
+  fail_unless (gst_uri_get_query_table (url2) == NULL);
+  fail_unless (gst_uri_get_fragment (url2) == NULL);
+  tmp_str = gst_uri_to_string (url2);
+  fail_unless_equals_string (tmp_str,
+      "scheme://userinfo@hostname:1234/path/to/new_file");
+  g_free (tmp_str);
+  gst_uri_unref (url2);
+
+  url2 = gst_uri_from_string_with_base (url1, "/a/new/path/to/file");
+  fail_unless_equals_string (gst_uri_get_scheme (url2), "scheme");
+  fail_unless_equals_string (gst_uri_get_userinfo (url2), "userinfo");
+  fail_unless_equals_string (gst_uri_get_host (url2), "hostname");
+  fail_unless (gst_uri_get_port (url2) == 1234);
+  tmp_str = gst_uri_get_path (url2);
+  fail_unless_equals_string (tmp_str, "/a/new/path/to/file");
+  g_free (tmp_str);
+  fail_unless (gst_uri_get_query_table (url2) == NULL);
+  fail_unless (gst_uri_get_fragment (url2) == NULL);
+  tmp_str = gst_uri_to_string (url2);
+  fail_unless_equals_string (tmp_str,
+      "scheme://userinfo@hostname:1234/a/new/path/to/file");
+  g_free (tmp_str);
+  gst_uri_unref (url2);
+
+  url2 = gst_uri_copy (url1);
+  fail_unless (gst_uri_equal (url1, url2));
+  gst_uri_set_query_value (url2, "key", "value");
+  fail_unless (!gst_uri_equal (url1, url2));
+  gst_uri_unref (url2);
+
+  gst_uri_unref (url1);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_url_get_set)
+{
+  GstUri *url;
+  gchar *tmp_str;
+  GList *tmp_list;
+
+  url = gst_uri_from_string ("scheme://hostname/path/to/file?query#fragment");
+
+  fail_unless (gst_uri_set_scheme (url, "new+scheme"));
+  fail_unless_equals_string (gst_uri_get_scheme (url), "new+scheme");
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "new+scheme://hostname/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (gst_uri_set_scheme (url, NULL));
+  fail_unless (gst_uri_get_scheme (url) == NULL);
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str, "//hostname/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_set_scheme (NULL, "fail"));
+  fail_unless (gst_uri_set_scheme (NULL, NULL));
+
+  fail_unless (gst_uri_set_userinfo (url, "username:password"));
+  fail_unless_equals_string (gst_uri_get_userinfo (url), "username:password");
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//username:password@hostname/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (gst_uri_set_userinfo (url, NULL));
+  fail_unless (gst_uri_get_userinfo (url) == NULL);
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str, "//hostname/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_set_userinfo (NULL, "fail"));
+  fail_unless (gst_uri_set_userinfo (NULL, NULL));
+
+  fail_unless (gst_uri_set_host (url, NULL));
+  fail_unless (gst_uri_get_host (url) == NULL);
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str, "/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (gst_uri_set_host (url, "example.com"));
+  fail_unless_equals_string (gst_uri_get_host (url), "example.com");
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_set_host (NULL, "fail"));
+  fail_unless (gst_uri_set_host (NULL, NULL));
+
+  fail_unless (gst_uri_set_port (url, 12345));
+  fail_unless (gst_uri_get_port (url) == 12345);
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com:12345/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (gst_uri_set_port (url, GST_URI_NO_PORT));
+  fail_unless (gst_uri_get_port (url) == GST_URI_NO_PORT);
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_set_port (NULL, 1234));
+  fail_unless (gst_uri_set_port (NULL, GST_URI_NO_PORT));
+
+  fail_unless (gst_uri_append_path_segment (url, "here"));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/here?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_append_path_segment (NULL, "fail"));
+  fail_unless (gst_uri_append_path_segment (NULL, NULL));
+
+  fail_unless (gst_uri_append_path (url, "../there"));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/here/../there?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_append_path (NULL, "fail"));
+  fail_unless (gst_uri_append_path (NULL, NULL));
+
+  gst_uri_normalize (url);
+
+  tmp_list = gst_uri_get_path_segments (url);
+  fail_unless (tmp_list != NULL);
+  tmp_list = g_list_append (tmp_list, g_strdup ("segment"));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there?query#fragment");
+  g_free (tmp_str);
+  fail_unless (gst_uri_set_path_segments (url, tmp_list));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there/segment?query#fragment");
+  g_free (tmp_str);
+
+  tmp_list = g_list_append (NULL, g_strdup ("test"));
+  fail_unless (!gst_uri_set_path_segments (NULL, tmp_list));
+  fail_unless (gst_uri_set_path_segments (NULL, NULL));
+
+  fail_unless (gst_uri_set_query_value (url, "key", "value"));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there/segment?query&key=value#fragment");
+  g_free (tmp_str);
+
+  fail_unless (gst_uri_set_query_value (url, "key", NULL));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there/segment?query&key#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_set_query_value (NULL, "key", "value"));
+
+  fail_unless (gst_uri_remove_query_key (url, "key"));
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there/segment?query#fragment");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_remove_query_key (url, "key"));
+  fail_unless (!gst_uri_remove_query_key (NULL, "key"));
+
+  fail_unless (gst_uri_set_fragment (url, NULL));
+  fail_unless (gst_uri_get_fragment (url) == NULL);
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there/segment?query");
+  g_free (tmp_str);
+
+  fail_unless (gst_uri_set_fragment (url, "tag"));
+  fail_unless_equals_string (gst_uri_get_fragment (url), "tag");
+  tmp_str = gst_uri_to_string (url);
+  fail_unless_equals_string (tmp_str,
+      "//example.com/path/to/file/there/segment?query#tag");
+  g_free (tmp_str);
+
+  fail_unless (!gst_uri_set_fragment (NULL, "can't set if no URI"));
+  fail_unless (gst_uri_set_fragment (NULL, NULL));
+
+  gst_uri_unref (url);
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_uri_suite (void)
 {
@@ -180,6 +964,13 @@
 #ifdef G_OS_WIN32
   tcase_add_test (tc_chain, test_win32_uri);
 #endif
+  tcase_add_test (tc_chain, test_url_parsing);
+  tcase_add_test (tc_chain, test_url_presenting);
+  tcase_add_test (tc_chain, test_url_normalization);
+  tcase_add_test (tc_chain, test_url_joining);
+  tcase_add_test (tc_chain, test_url_equality);
+  tcase_add_test (tc_chain, test_url_constructors);
+  tcase_add_test (tc_chain, test_url_get_set);
 
   return s;
 }
diff --git a/tests/check/gst/gstutils.c b/tests/check/gst/gstutils.c
index b1daf39..8ee6be0 100644
--- a/tests/check/gst/gstutils.c
+++ b/tests/check/gst/gstutils.c
@@ -1304,6 +1304,239 @@
 }
 
 GST_END_TEST;
+
+static void
+count_request_pad (const GValue * item, gpointer user_data)
+{
+  GstPad *pad = GST_PAD (g_value_get_object (item));
+  guint *count = (guint *) user_data;
+
+  if (GST_PAD_TEMPLATE_PRESENCE (GST_PAD_PAD_TEMPLATE (pad)) == GST_PAD_REQUEST)
+    (*count)++;
+}
+
+static guint
+request_pads (GstElement * element)
+{
+  GstIterator *iter;
+  guint pads = 0;
+
+  iter = gst_element_iterate_pads (element);
+  fail_unless (gst_iterator_foreach (iter, count_request_pad, &pads) ==
+      GST_ITERATOR_DONE);
+  gst_iterator_free (iter);
+
+  return pads;
+}
+
+static GstPadLinkReturn
+refuse_to_link (GstPad * pad, GstObject * parent, GstPad * peer)
+{
+  return GST_PAD_LINK_REFUSED;
+}
+
+typedef struct _GstFakeReqSink GstFakeReqSink;
+typedef struct _GstFakeReqSinkClass GstFakeReqSinkClass;
+
+struct _GstFakeReqSink
+{
+  GstElement element;
+};
+
+struct _GstFakeReqSinkClass
+{
+  GstElementClass parent_class;
+};
+
+G_GNUC_INTERNAL GType gst_fakereqsink_get_type (void);
+
+static GstStaticPadTemplate fakereqsink_sink_template =
+GST_STATIC_PAD_TEMPLATE ("sink_%u",
+    GST_PAD_SINK,
+    GST_PAD_REQUEST,
+    GST_STATIC_CAPS_ANY);
+
+G_DEFINE_TYPE (GstFakeReqSink, gst_fakereqsink, GST_TYPE_ELEMENT);
+
+static GstPad *
+gst_fakereqsink_request_new_pad (GstElement * element, GstPadTemplate * templ,
+    const gchar * name, const GstCaps * caps)
+{
+  GstPad *pad;
+  pad = gst_pad_new_from_static_template (&fakereqsink_sink_template, name);
+  gst_pad_set_link_function (pad, refuse_to_link);
+  gst_element_add_pad (GST_ELEMENT_CAST (element), pad);
+  return pad;
+}
+
+static void
+gst_fakereqsink_release_pad (GstElement * element, GstPad * pad)
+{
+  gst_pad_set_active (pad, FALSE);
+  gst_element_remove_pad (element, pad);
+}
+
+static void
+gst_fakereqsink_class_init (GstFakeReqSinkClass * klass)
+{
+  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
+
+  gst_element_class_set_static_metadata (gstelement_class,
+      "Fake Request Source", "Source", "Push empty buffers from request pads",
+      "Sebastian Rasmussen <sebras@hotmail.com>");
+
+  gst_element_class_add_pad_template (gstelement_class,
+      gst_static_pad_template_get (&fakereqsink_sink_template));
+
+  gstelement_class->request_new_pad = gst_fakereqsink_request_new_pad;
+  gstelement_class->release_pad = gst_fakereqsink_release_pad;
+}
+
+static void
+gst_fakereqsink_init (GstFakeReqSink * fakereqsink)
+{
+}
+
+static void
+test_link (const gchar * expectation, const gchar * srcname,
+    const gchar * srcpad, const gchar * srcstate, const gchar * sinkname,
+    const gchar * sinkpad, const gchar * sinkstate)
+{
+  GstElement *src, *sink, *othersrc, *othersink;
+  guint src_pads, sink_pads;
+
+  if (g_strcmp0 (srcname, "requestsrc") == 0)
+    src = gst_element_factory_make ("tee", NULL);
+  else if (g_strcmp0 (srcname, "requestsink") == 0)
+    src = gst_element_factory_make ("funnel", NULL);
+  else if (g_strcmp0 (srcname, "staticsrc") == 0)
+    src = gst_element_factory_make ("fakesrc", NULL);
+  else if (g_strcmp0 (srcname, "staticsink") == 0)
+    src = gst_element_factory_make ("fakesink", NULL);
+  else
+    g_assert_not_reached ();
+
+  if (g_strcmp0 (sinkname, "requestsink") == 0)
+    sink = gst_element_factory_make ("funnel", NULL);
+  else if (g_strcmp0 (sinkname, "requestsrc") == 0)
+    sink = gst_element_factory_make ("tee", NULL);
+  else if (g_strcmp0 (sinkname, "staticsink") == 0)
+    sink = gst_element_factory_make ("fakesink", NULL);
+  else if (g_strcmp0 (sinkname, "staticsrc") == 0)
+    sink = gst_element_factory_make ("fakesrc", NULL);
+  else if (g_strcmp0 (sinkname, "fakerequestsink") == 0)
+    sink = gst_element_factory_make ("fakereqsink", NULL);
+  else
+    g_assert_not_reached ();
+
+  othersrc = gst_element_factory_make ("fakesrc", NULL);
+  othersink = gst_element_factory_make ("fakesink", NULL);
+
+  if (g_strcmp0 (srcstate, "linked") == 0)
+    fail_unless (gst_element_link_pads (src, srcpad, othersink, NULL));
+  if (g_strcmp0 (sinkstate, "linked") == 0)
+    fail_unless (gst_element_link_pads (othersrc, NULL, sink, sinkpad));
+  if (g_strcmp0 (srcstate, "unlinkable") == 0) {
+    GstPad *pad = gst_element_get_static_pad (src, srcpad ? srcpad : "src");
+    gst_pad_set_link_function (pad, refuse_to_link);
+    gst_object_unref (pad);
+  }
+  if (g_strcmp0 (sinkstate, "unlinkable") == 0) {
+    GstPad *pad = gst_element_get_static_pad (sink, sinkpad ? sinkpad : "sink");
+    gst_pad_set_link_function (pad, refuse_to_link);
+    gst_object_unref (pad);
+  }
+
+  src_pads = request_pads (src);
+  sink_pads = request_pads (sink);
+  if (g_strcmp0 (expectation, "OK") == 0) {
+    fail_unless (gst_element_link_pads (src, srcpad, sink, sinkpad));
+    if (g_str_has_prefix (srcname, "request")) {
+      fail_unless_equals_int (request_pads (src), src_pads + 1);
+    } else {
+      fail_unless_equals_int (request_pads (src), src_pads);
+    }
+    if (g_str_has_prefix (sinkname, "request")) {
+      fail_unless_equals_int (request_pads (sink), sink_pads + 1);
+    } else {
+      fail_unless_equals_int (request_pads (sink), sink_pads);
+    }
+  } else {
+    fail_if (gst_element_link_pads (src, srcpad, sink, sinkpad));
+    fail_unless_equals_int (request_pads (src), src_pads);
+    fail_unless_equals_int (request_pads (sink), sink_pads);
+  }
+
+  gst_object_unref (othersrc);
+  gst_object_unref (othersink);
+
+  gst_object_unref (src);
+  gst_object_unref (sink);
+}
+
+GST_START_TEST (test_element_link)
+{
+  /* Successful cases */
+
+  gst_element_register (NULL, "fakereqsink", GST_RANK_NONE,
+      gst_fakereqsink_get_type ());
+
+  test_link ("OK", "staticsrc", "src", "", "staticsink", "sink", "");
+  test_link ("OK", "staticsrc", "src", "", "requestsink", "sink_0", "");
+  test_link ("OK", "staticsrc", "src", "", "staticsink", NULL, "");
+  test_link ("OK", "staticsrc", "src", "", "requestsink", NULL, "");
+  test_link ("OK", "requestsrc", "src_0", "", "staticsink", "sink", "");
+  test_link ("OK", "requestsrc", "src_0", "", "requestsink", "sink_0", "");
+  test_link ("OK", "requestsrc", "src_0", "", "staticsink", NULL, "");
+  test_link ("OK", "requestsrc", "src_0", "", "requestsink", NULL, "");
+  test_link ("OK", "staticsrc", NULL, "", "staticsink", "sink", "");
+  test_link ("OK", "staticsrc", NULL, "", "requestsink", "sink_0", "");
+  test_link ("OK", "staticsrc", NULL, "", "staticsink", NULL, "");
+  test_link ("OK", "staticsrc", NULL, "", "requestsink", NULL, "");
+  test_link ("OK", "requestsrc", NULL, "", "staticsink", "sink", "");
+  test_link ("OK", "requestsrc", NULL, "", "requestsink", "sink_0", "");
+  test_link ("OK", "requestsrc", NULL, "", "staticsink", NULL, "");
+  test_link ("OK", "requestsrc", NULL, "", "requestsink", NULL, "");
+
+  /* Failure cases */
+
+  test_link ("NOK", "staticsrc", "missing", "", "staticsink", "sink", "");
+  test_link ("NOK", "staticsink", "sink", "", "staticsink", "sink", "");
+  test_link ("NOK", "staticsrc", "src", "linked", "staticsink", "sink", "");
+  test_link ("NOK", "staticsrc", "src", "", "staticsink", "missing", "");
+  test_link ("NOK", "staticsrc", "src", "", "staticsrc", "src", "");
+  test_link ("NOK", "staticsrc", "src", "", "staticsink", "sink", "linked");
+  test_link ("NOK", "staticsrc", "src", "", "staticsink", "sink", "unlinkable");
+  test_link ("NOK", "staticsrc", NULL, "", "staticsink", "sink", "unlinkable");
+  test_link ("NOK", "staticsrc", NULL, "", "staticsink", NULL, "unlinkable");
+  test_link ("NOK", "requestsrc", "missing", "", "staticsink", "sink", "");
+  test_link ("NOK", "requestsink", "sink_0", "", "staticsink", "sink", "");
+  test_link ("NOK", "requestsrc", "src_0", "linked", "staticsink", "sink", "");
+  test_link ("NOK", "requestsrc", "src_0", "", "staticsink", "missing", "");
+  test_link ("NOK", "requestsrc", "src_0", "", "staticsrc", "src", "");
+  test_link ("NOK", "requestsrc", "src_0", "", "staticsink", "sink", "linked");
+  test_link ("NOK", "requestsrc", "src_0", "", "staticsink", "sink",
+      "unlinkable");
+  test_link ("NOK", "requestsrc", NULL, "", "staticsink", "sink", "unlinkable");
+  test_link ("NOK", "requestsrc", NULL, "", "staticsink", NULL, "unlinkable");
+  test_link ("NOK", "staticsrc", "missing", "", "requestsink", "sink_0", "");
+  test_link ("NOK", "staticsink", "sink", "", "requestsink", "sink_0", "");
+  test_link ("NOK", "staticsrc", "src", "linked", "requestsink", "sink_0", "");
+  test_link ("NOK", "staticsrc", "src", "", "requestsink", "missing", "");
+  test_link ("NOK", "staticsrc", "src", "", "requestsrc", "src_0", "");
+  test_link ("NOK", "staticsrc", "src", "", "requestsink", "sink_0", "linked");
+  test_link ("NOK", "staticsrc", "src", "unlinkable", "requestsink",
+      "sink_0", "");
+  test_link ("NOK", "staticsrc", NULL, "unlinkable", "requestsink",
+      "sink_0", "");
+  test_link ("NOK", "staticsrc", NULL, "unlinkable", "requestsink", NULL, "");
+  test_link ("NOK", "requestsrc", "src_0", "", "staticsink", NULL,
+      "unlinkable");
+  test_link ("NOK", "requestsrc", NULL, "", "fakerequestsink", NULL, "");
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_utils_suite (void)
 {
@@ -1331,6 +1564,7 @@
   tcase_add_test (tc_chain, test_parse_bin_from_description);
 #endif
   tcase_add_test (tc_chain, test_element_found_tags);
+  tcase_add_test (tc_chain, test_element_link);
   tcase_add_test (tc_chain, test_element_unlink);
   tcase_add_test (tc_chain, test_set_value_from_string);
   tcase_add_test (tc_chain, test_binary_search);
diff --git a/tests/check/libs/adapter.c b/tests/check/libs/adapter.c
index a99c8e0..5794aa8 100644
--- a/tests/check/libs/adapter.c
+++ b/tests/check/libs/adapter.c
@@ -807,6 +807,53 @@
 
 GST_END_TEST;
 
+/* Fill a buffer with a sequence of 32 bit ints and read them back out
+ * using take_buffer, checking that they're still in the right order */
+GST_START_TEST (test_take_buffer_list)
+{
+  GstAdapter *adapter;
+  int i = 0;
+
+  adapter = create_and_fill_adapter ();
+  while (gst_adapter_available (adapter) >= sizeof (guint32)) {
+    GstBufferList *buffer_list;
+    GstBuffer *buf;
+    gsize left;
+    GstMapInfo info;
+    guint8 *ptr;
+    guint n, num;
+
+    buffer_list = gst_adapter_take_buffer_list (adapter, sizeof (guint32) * 5);
+    fail_unless (buffer_list != NULL);
+    num = gst_buffer_list_length (buffer_list);
+    fail_unless (num > 0);
+
+    for (n = 0; n < num; ++n) {
+      buf = gst_buffer_list_get (buffer_list, n);
+
+      fail_unless (gst_buffer_map (buf, &info, GST_MAP_READ));
+
+      ptr = info.data;
+      left = info.size;
+
+      while (left > 0) {
+        fail_unless (GST_READ_UINT32_LE (ptr) == i);
+        i++;
+        ptr += sizeof (guint32);
+        left -= sizeof (guint32);
+      }
+      gst_buffer_unmap (buf, &info);
+    }
+    gst_buffer_list_unref (buffer_list);
+  }
+  fail_unless (gst_adapter_available (adapter) == 0,
+      "Data was left in the adapter");
+
+  g_object_unref (adapter);
+}
+
+GST_END_TEST;
+
 GST_START_TEST (test_merge)
 {
   GstAdapter *adapter;
@@ -916,6 +963,7 @@
   tcase_add_test (tc_chain, test_timestamp);
   tcase_add_test (tc_chain, test_scan);
   tcase_add_test (tc_chain, test_take_list);
+  tcase_add_test (tc_chain, test_take_buffer_list);
   tcase_add_test (tc_chain, test_merge);
   tcase_add_test (tc_chain, test_take_buffer_fast);
 
diff --git a/tests/check/libs/baseparse.c b/tests/check/libs/baseparse.c
index 3adb86c..4491c41 100644
--- a/tests/check/libs/baseparse.c
+++ b/tests/check/libs/baseparse.c
@@ -68,7 +68,6 @@
 gst_parser_tester_set_sink_caps (GstBaseParse * parse, GstCaps * caps)
 {
   gst_pad_set_caps (GST_BASE_PARSE_SRC_PAD (parse), caps);
-  gst_caps_unref (caps);
   return TRUE;
 }
 
@@ -181,6 +180,7 @@
       TEST_VIDEO_WIDTH, "height", G_TYPE_INT, TEST_VIDEO_HEIGHT, "framerate",
       GST_TYPE_FRACTION, TEST_VIDEO_FPS_N, TEST_VIDEO_FPS_D, NULL);
   fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_caps (caps)));
+  gst_caps_unref (caps);
 }
 
 static void
diff --git a/tests/check/libs/bytereader.c b/tests/check/libs/bytereader.c
index ecb3ddb..fd4f95d 100644
--- a/tests/check/libs/bytereader.c
+++ b/tests/check/libs/bytereader.c
@@ -467,7 +467,17 @@
 GST_END_TEST;
 
 #define do_scan(r,m,p,o,s,x) \
-    fail_unless_equals_int (gst_byte_reader_masked_scan_uint32 (r,m,p,o,s), x);
+G_STMT_START {								\
+    fail_unless_equals_int (gst_byte_reader_masked_scan_uint32 (r,m,p,o,s), x); \
+    if (x != -1) { \
+      guint32 v, res_v; \
+      const guint8 *rdata = NULL; \
+      fail_unless (gst_byte_reader_peek_data (r, x + 4, &rdata)); \
+      res_v = GST_READ_UINT32_BE (rdata + x); \
+      fail_unless_equals_int (gst_byte_reader_masked_scan_uint32_peek (r,m,p,o,s,&v), x); \
+      fail_unless_equals_int (v, res_v); \
+    } \
+} G_STMT_END;
 
 GST_START_TEST (test_scan)
 {
@@ -686,6 +696,88 @@
 
 GST_END_TEST;
 
+GST_START_TEST (test_sub_reader)
+{
+  const guint8 memdata[] = {
+    0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+    0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f
+  };
+  GstByteReader reader = GST_BYTE_READER_INIT (memdata, sizeof (memdata));
+  GstByteReader sub;
+  const guint8 *data = NULL, *sub_data = NULL;
+  guint16 v = 0;
+
+  /* init sub reader */
+  fail_if (gst_byte_reader_peek_sub_reader (&reader, &sub, 17));
+  fail_unless (gst_byte_reader_peek_sub_reader (&reader, &sub, 16));
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&sub), 16);
+  fail_unless (gst_byte_reader_peek_data (&reader, 16, &data));
+  fail_unless (gst_byte_reader_peek_data (&sub, 16, &sub_data));
+  fail_unless (memcmp (data, sub_data, 16) == 0);
+
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&reader), 16);
+  fail_unless (gst_byte_reader_skip (&reader, 3));
+  fail_if (gst_byte_reader_peek_sub_reader (&reader, &sub, 14));
+  fail_unless (gst_byte_reader_peek_sub_reader (&reader, &sub, 13));
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&sub), 13);
+  fail_unless (gst_byte_reader_peek_data (&reader, 13, &data));
+  fail_unless (gst_byte_reader_peek_data (&sub, 13, &sub_data));
+  fail_unless (memcmp (data, sub_data, 13) == 0);
+  fail_unless (memcmp (memdata + 3, sub_data, 13) == 0);
+
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&reader), 13);
+  fail_unless (gst_byte_reader_peek_sub_reader (&reader, &sub, 3));
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&sub), 3);
+  fail_if (gst_byte_reader_peek_data (&sub, 10, &sub_data));
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0304);
+  fail_if (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&sub), 1);
+
+  fail_unless (gst_byte_reader_get_uint16_be (&reader, &v));
+  fail_unless_equals_int (v, 0x0304);
+  fail_unless (gst_byte_reader_get_uint16_be (&reader, &v));
+  fail_unless_equals_int (v, 0x0506);
+  fail_unless_equals_int (gst_byte_reader_get_remaining (&reader), 9);
+
+  /* get sub reader */
+  gst_byte_reader_init (&reader, memdata, sizeof (memdata));
+  fail_if (gst_byte_reader_get_sub_reader (&reader, &sub, 17));
+  fail_unless (gst_byte_reader_get_sub_reader (&reader, &sub, 16));
+  fail_if (gst_byte_reader_get_sub_reader (&reader, &sub, 1));
+  fail_unless (gst_byte_reader_get_sub_reader (&reader, &sub, 0));
+
+  gst_byte_reader_init (&reader, memdata, sizeof (memdata));
+  fail_unless (gst_byte_reader_get_sub_reader (&reader, &sub, 2));
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0001);
+  fail_if (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless (gst_byte_reader_get_sub_reader (&reader, &sub, 3));
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0203);
+  fail_if (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (gst_byte_reader_get_uint8_unchecked (&sub), 0x04);
+  fail_unless (gst_byte_reader_get_sub_reader (&reader, &sub, 9));
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0506);
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0708);
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x090a);
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0b0c);
+  fail_if (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (gst_byte_reader_get_uint8_unchecked (&sub), 0x0d);
+  fail_if (gst_byte_reader_get_sub_reader (&reader, &sub, 3));
+  fail_unless (gst_byte_reader_get_sub_reader (&reader, &sub, 2));
+  fail_unless (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_unless_equals_int (v, 0x0e0f);
+  fail_if (gst_byte_reader_get_uint16_be (&sub, &v));
+  fail_if (gst_byte_reader_get_uint16_be (&reader, &v));
+}
+
+GST_END_TEST;
+
 static Suite *
 gst_byte_reader_suite (void)
 {
@@ -705,6 +797,7 @@
   tcase_add_test (tc_chain, test_scan);
   tcase_add_test (tc_chain, test_string_funcs);
   tcase_add_test (tc_chain, test_dup_string);
+  tcase_add_test (tc_chain, test_sub_reader);
 
   return s;
 }
diff --git a/tests/check/libs/flowcombiner.c b/tests/check/libs/flowcombiner.c
index 372a7fc..6c634c1 100644
--- a/tests/check/libs/flowcombiner.c
+++ b/tests/check/libs/flowcombiner.c
@@ -152,6 +152,86 @@
 }
 
 GST_END_TEST;
+
+GST_START_TEST (test_clear)
+{
+  GstFlowCombiner *combiner;
+  GstPad *pad;
+  GstPad *peer;
+  GstSegment segment;
+  GstFlowReturn ret;
+
+  combiner = gst_flow_combiner_new ();
+
+  /* add a pad and make it return _FLUSHING */
+  pad = gst_pad_new ("src1", GST_PAD_SRC);
+  peer = gst_pad_new ("sink1", GST_PAD_SINK);
+  gst_pad_set_chain_function (peer, _sink_chain);
+  gst_pad_link (pad, peer);
+  gst_pad_set_active (peer, TRUE);
+  gst_pad_set_active (pad, TRUE);
+  gst_segment_init (&segment, GST_FORMAT_BYTES);
+  gst_pad_push_event (pad, gst_event_new_stream_start ("test1"));
+  gst_pad_push_event (pad, gst_event_new_segment (&segment));
+  gst_flow_combiner_add_pad (combiner, pad);
+  sink_flowret = GST_FLOW_FLUSHING;
+  fail_unless_equals_int (gst_pad_push (pad, gst_buffer_new ()),
+      GST_FLOW_FLUSHING);
+
+  /* the combined flow is _FLUSHING */
+  ret = gst_flow_combiner_update_flow (combiner, GST_FLOW_FLUSHING);
+  fail_unless_equals_int (ret, GST_FLOW_FLUSHING);
+  gst_object_unref (pad);
+  gst_object_unref (peer);
+
+  /* add one more pad and make it return _OK */
+  pad = gst_pad_new ("src2", GST_PAD_SRC);
+  peer = gst_pad_new ("sink2", GST_PAD_SINK);
+  gst_pad_set_chain_function (peer, _sink_chain);
+  gst_pad_link (pad, peer);
+  gst_pad_set_active (peer, TRUE);
+  gst_pad_set_active (pad, TRUE);
+  gst_segment_init (&segment, GST_FORMAT_BYTES);
+  gst_pad_push_event (pad, gst_event_new_stream_start ("test2"));
+  gst_pad_push_event (pad, gst_event_new_segment (&segment));
+  gst_flow_combiner_add_pad (combiner, pad);
+  sink_flowret = GST_FLOW_OK;
+  fail_unless_equals_int (gst_pad_push (pad, gst_buffer_new ()), GST_FLOW_OK);
+
+  /* the combined flow is _FLUSHING because of the first pad */
+  ret = gst_flow_combiner_update_flow (combiner, GST_FLOW_OK);
+  fail_unless_equals_int (ret, GST_FLOW_FLUSHING);
+  gst_object_unref (pad);
+  gst_object_unref (peer);
+
+  /* clear the combiner */
+  gst_flow_combiner_clear (combiner);
+
+  /* add a pad and make it return _OK */
+  pad = gst_pad_new ("src3", GST_PAD_SRC);
+  peer = gst_pad_new ("sink3", GST_PAD_SINK);
+  gst_pad_set_chain_function (peer, _sink_chain);
+  gst_pad_link (pad, peer);
+  gst_pad_set_active (peer, TRUE);
+  gst_pad_set_active (pad, TRUE);
+  gst_segment_init (&segment, GST_FORMAT_BYTES);
+  gst_pad_push_event (pad, gst_event_new_stream_start ("test3"));
+  gst_pad_push_event (pad, gst_event_new_segment (&segment));
+  gst_flow_combiner_add_pad (combiner, pad);
+  sink_flowret = GST_FLOW_OK;
+  fail_unless_equals_int (gst_pad_push (pad, gst_buffer_new ()), GST_FLOW_OK);
+
+  /* the combined flow is _OK since the other pads have been removed */
+  ret = gst_flow_combiner_update_flow (combiner, GST_FLOW_OK);
+  fail_unless_equals_int (ret, GST_FLOW_OK);
+  gst_object_unref (pad);
+  gst_object_unref (peer);
+
+  gst_flow_combiner_free (combiner);
+}
+
+GST_END_TEST;
+
 static Suite *
 flow_combiner_suite (void)
 {
@@ -160,6 +240,7 @@
 
   suite_add_tcase (s, tc_chain);
   tcase_add_test (tc_chain, test_combined_flows);
+  tcase_add_test (tc_chain, test_clear);
 
   return s;
 }
diff --git a/tests/check/libs/sparsefile.c b/tests/check/libs/sparsefile.c
index 6d291b4..fd5c81e 100644
--- a/tests/check/libs/sparsefile.c
+++ b/tests/check/libs/sparsefile.c
@@ -59,7 +59,7 @@
     gsize avail)
 {
   GError *error = NULL;
-  gchar buffer[200];
+  gchar buffer[200] = { 0, };
   gsize res, a;
 
   res = gst_sparse_file_write (file, offset, buffer, count, &a, &error);
diff --git a/tests/check/pipelines/parse-launch.c b/tests/check/pipelines/parse-launch.c
index 8b6a6bc..78a2ba4 100644
--- a/tests/check/pipelines/parse-launch.c
+++ b/tests/check/pipelines/parse-launch.c
@@ -467,6 +467,7 @@
     fail_if (peer_elem == NULL, "Could not retrieve peer %s", peer);
 
     sinkpad = gst_element_get_static_pad (peer_elem, "sink");
+    gst_object_unref (peer_elem);
     fail_if (sinkpad == NULL, "Peer element did not have a 'sink' pad");
 
     fail_unless (peerpad == sinkpad,
diff --git a/tests/check/pipelines/queue-error.c b/tests/check/pipelines/queue-error.c
index 81e9d25..a8408bd 100644
--- a/tests/check/pipelines/queue-error.c
+++ b/tests/check/pipelines/queue-error.c
@@ -80,7 +80,7 @@
   fail_unless (state_ret != GST_STATE_CHANGE_FAILURE);
 
   msg = gst_bus_poll (bus, GST_MESSAGE_ERROR | GST_MESSAGE_EOS, 5 * GST_SECOND);
-  fail_unless (msg != NULL, "timeout waiting for error or eos message");;
+  fail_unless (msg != NULL, "timeout waiting for error or eos message");
 
   gst_message_unref (msg);
   gst_object_unref (bus);
diff --git a/tests/check/tools/gstinspect.c b/tests/check/tools/gstinspect.c
index 1d3d8cc..72e23a4 100644
--- a/tests/check/tools/gstinspect.c
+++ b/tests/check/tools/gstinspect.c
@@ -17,7 +17,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-/* FIXME 0.11: suppress warnings for deprecated API such as GValueArray
+/* FIXME 2.0: suppress warnings for deprecated API such as GValueArray
  * with newer GLib versions (>= 2.31.0) */
 #define GLIB_DISABLE_DEPRECATION_WARNINGS
 
@@ -32,56 +32,82 @@
 
 GST_START_TEST (test_exists)
 {
-  gchar **argv;
+#define ARGV_LEN (G_N_ELEMENTS (argv) - 1)
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists foo", " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 1);
-  g_strfreev (argv);
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists", "foo", NULL };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists bin", " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 0);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 1);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists", "bin", NULL };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=" VERSION " "
-      "bin", " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 0);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 0);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=" VERSION, "bin", NULL
+    };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=1.0 bin", " ",
-      -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 0);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 0);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=1.0", "bin", NULL
+    };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=1.0.0 bin",
-      " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 0);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 0);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=1.0.0", "bin", NULL
+    };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=2.0 bin",
-      " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 1);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 0);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=1.2.0", "bin", NULL
+    };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=2.0.0 bin",
-      " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 1);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 0);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=2.0", "bin", NULL
+    };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=1.44 bin",
-      " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 1);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 1);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=2.0.0", "bin", NULL
+    };
 
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=1.60.4 bin",
-      " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 1);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 1);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=1.44", "bin", NULL
+    };
 
-  /* check for plugin should fail like this */
-  argv = g_strsplit ("gst-inspect-1.0 --exists --atleast-version=1.0 "
-      "coreelements", " ", -1);
-  fail_unless_equals_int (gst_inspect_main (g_strv_length (argv), argv), 1);
-  g_strfreev (argv);
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 1);
+  }
+  {
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=1.60.4", "bin", NULL
+    };
+
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 1);
+  }
+  {
+    /* check for plugin should fail like this */
+    const gchar *argv[] = { "gst-inspect-1.0", "--exists",
+      "--atleast-version=1.0", "coreelements", NULL
+    };
+
+    fail_unless_equals_int (gst_inspect_main (ARGV_LEN, (gchar **) argv), 1);
+  }
 }
 
 GST_END_TEST;
diff --git a/tests/examples/Makefile.am b/tests/examples/Makefile.am
index 7454b5c..fce72a1 100644
--- a/tests/examples/Makefile.am
+++ b/tests/examples/Makefile.am
@@ -17,8 +17,10 @@
 	manual     \
 	memory   \
 	metadata   \
+	netclock \
 	queue      \
 	stepping \
+	streamiddemux \
 	streams \
 	typefind
 
diff --git a/tests/examples/Makefile.in b/tests/examples/Makefile.in
index f351470..9a59d14 100644
--- a/tests/examples/Makefile.in
+++ b/tests/examples/Makefile.in
@@ -94,6 +94,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -111,7 +112,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -218,6 +219,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -323,6 +328,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
@@ -496,8 +502,10 @@
 	manual     \
 	memory   \
 	metadata   \
+	netclock \
 	queue      \
 	stepping \
+	streamiddemux \
 	streams \
 	typefind
 
diff --git a/tests/examples/adapter/Makefile.in b/tests/examples/adapter/Makefile.in
index 6995a53..50a5451 100644
--- a/tests/examples/adapter/Makefile.in
+++ b/tests/examples/adapter/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -209,6 +210,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -314,6 +319,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/controller/Makefile.in b/tests/examples/controller/Makefile.in
index e7db527..9e36b95 100644
--- a/tests/examples/controller/Makefile.in
+++ b/tests/examples/controller/Makefile.in
@@ -92,6 +92,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -109,7 +110,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -218,6 +219,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -323,6 +328,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/controller/audio-example.c b/tests/examples/controller/audio-example.c
index 6494498..f57731f 100644
--- a/tests/examples/controller/audio-example.c
+++ b/tests/examples/controller/audio-example.c
@@ -4,7 +4,7 @@
  * Builds a pipeline with [ audiotestsource ! autoaudiosink ] and sweeps
  * frequency and volume.
  *
- * Needs gst-plugin-base + gst-plugins-good installed.
+ * Needs gst-plugins-base + gst-plugins-good installed.
  */
 
 #include <gst/gst.h>
diff --git a/tests/examples/controller/text-color-example.c b/tests/examples/controller/text-color-example.c
index 00b3c9f..c9e1119 100644
--- a/tests/examples/controller/text-color-example.c
+++ b/tests/examples/controller/text-color-example.c
@@ -4,7 +4,7 @@
  * Builds a pipeline with [videotestsrc ! textoverlay ! ximagesink] and
  * modulates color, text and text pos.
  *
- * Needs gst-plugin-base installed.
+ * Needs gst-plugins-base installed.
  */
 
 #include <gst/gst.h>
diff --git a/tests/examples/helloworld/Makefile.in b/tests/examples/helloworld/Makefile.in
index 726d551..7176122 100644
--- a/tests/examples/helloworld/Makefile.in
+++ b/tests/examples/helloworld/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/launch/Makefile.in b/tests/examples/launch/Makefile.in
index ee53fa1..95a5210 100644
--- a/tests/examples/launch/Makefile.in
+++ b/tests/examples/launch/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -209,6 +210,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -314,6 +319,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/launch/mp3parselaunch.c b/tests/examples/launch/mp3parselaunch.c
index cc00a07..e77c1bd 100644
--- a/tests/examples/launch/mp3parselaunch.c
+++ b/tests/examples/launch/mp3parselaunch.c
@@ -72,6 +72,7 @@
 
   filesrc = gst_bin_get_by_name (GST_BIN (bin), "my_filesrc");
   g_object_set (G_OBJECT (filesrc), "location", argv[1], NULL);
+  gst_object_unref (filesrc);
 
   /* start playing */
   gst_element_set_state (bin, GST_STATE_PLAYING);
diff --git a/tests/examples/manual/Makefile.in b/tests/examples/manual/Makefile.in
index 9c25b72..ba7233d 100644
--- a/tests/examples/manual/Makefile.in
+++ b/tests/examples/manual/Makefile.in
@@ -96,6 +96,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -113,7 +114,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -568,6 +569,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -673,6 +678,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/manual/norebuffer.c b/tests/examples/manual/norebuffer.c
index 67db10f..e9d4423 100644
--- a/tests/examples/manual/norebuffer.c
+++ b/tests/examples/manual/norebuffer.c
@@ -66,7 +66,7 @@
 
   if (percent < 100) {
     /* buffering busy */
-    if (is_buffering == FALSE) {
+    if (!is_buffering) {
       is_buffering = TRUE;
       if (target_state == GST_STATE_PLAYING) {
         /* we were not buffering but PLAYING, PAUSE  the pipeline. */
@@ -81,7 +81,7 @@
 {
   GstElement *pipeline = user_data;
 
-  if (is_buffering == FALSE)
+  if (!is_buffering)
     gst_element_set_state (pipeline, target_state);
   else
     g_timeout_add (500, buffer_timeout, pipeline);
diff --git a/tests/examples/memory/Makefile.in b/tests/examples/memory/Makefile.in
index 3d27df7..bdbfaf9 100644
--- a/tests/examples/memory/Makefile.in
+++ b/tests/examples/memory/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -210,6 +211,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -315,6 +320,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/metadata/Makefile.in b/tests/examples/metadata/Makefile.in
index 61a9698..953c539 100644
--- a/tests/examples/metadata/Makefile.in
+++ b/tests/examples/metadata/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/netclock/Makefile.am b/tests/examples/netclock/Makefile.am
new file mode 100644
index 0000000..9506997
--- /dev/null
+++ b/tests/examples/netclock/Makefile.am
@@ -0,0 +1,11 @@
+noinst_PROGRAMS = netclock-server netclock-client
+
+netclock_server_LDADD = \
+	$(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \
+	$(GST_OBJ_LIBS)
+netclock_server_CFLAGS = $(GST_OBJ_CFLAGS)
+
+netclock_client_LDADD = \
+	$(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \
+	$(GST_OBJ_LIBS)
+netclock_client_CFLAGS = $(GST_OBJ_CFLAGS)
diff --git a/tests/examples/netclock/Makefile.in b/tests/examples/netclock/Makefile.in
new file mode 100644
index 0000000..c048855
--- /dev/null
+++ b/tests/examples/netclock/Makefile.in
@@ -0,0 +1,830 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+noinst_PROGRAMS = netclock-server$(EXEEXT) netclock-client$(EXEEXT)
+subdir = tests/examples/netclock
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+	$(top_srcdir)/depcomp
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
+	$(top_srcdir)/common/m4/as-auto-alt.m4 \
+	$(top_srcdir)/common/m4/as-compiler-flag.m4 \
+	$(top_srcdir)/common/m4/as-docbook.m4 \
+	$(top_srcdir)/common/m4/as-libtool.m4 \
+	$(top_srcdir)/common/m4/as-version.m4 \
+	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/gst-arch.m4 \
+	$(top_srcdir)/common/m4/gst-args.m4 \
+	$(top_srcdir)/common/m4/gst-check.m4 \
+	$(top_srcdir)/common/m4/gst-doc.m4 \
+	$(top_srcdir)/common/m4/gst-error.m4 \
+	$(top_srcdir)/common/m4/gst-feature.m4 \
+	$(top_srcdir)/common/m4/gst-function.m4 \
+	$(top_srcdir)/common/m4/gst-gettext.m4 \
+	$(top_srcdir)/common/m4/gst-glib2.m4 \
+	$(top_srcdir)/common/m4/gst-package-release-datetime.m4 \
+	$(top_srcdir)/common/m4/gst-parser.m4 \
+	$(top_srcdir)/common/m4/gst-platform.m4 \
+	$(top_srcdir)/common/m4/gst-plugin-docs.m4 \
+	$(top_srcdir)/common/m4/gst-plugindir.m4 \
+	$(top_srcdir)/common/m4/gst.m4 \
+	$(top_srcdir)/common/m4/gtk-doc.m4 \
+	$(top_srcdir)/common/m4/introspection.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
+	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
+	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
+	$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+	$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+	$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stdint_h.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+netclock_client_SOURCES = netclock-client.c
+netclock_client_OBJECTS = netclock_client-netclock-client.$(OBJEXT)
+am__DEPENDENCIES_1 =
+netclock_client_DEPENDENCIES =  \
+	$(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \
+	$(am__DEPENDENCIES_1)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+netclock_client_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(netclock_client_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+	-o $@
+netclock_server_SOURCES = netclock-server.c
+netclock_server_OBJECTS = netclock_server-netclock-server.$(OBJEXT)
+netclock_server_DEPENDENCIES =  \
+	$(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \
+	$(am__DEPENDENCIES_1)
+netclock_server_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(netclock_server_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+	-o $@
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo "  CC      " $@;
+am__v_CC_1 = 
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo "  CCLD    " $@;
+am__v_CCLD_1 = 
+SOURCES = netclock-client.c netclock-server.c
+DIST_SOURCES = netclock-client.c netclock-server.c
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
+BISON_PATH = @BISON_PATH@
+CAT_ENTRY_END = @CAT_ENTRY_END@
+CAT_ENTRY_START = @CAT_ENTRY_START@
+CC = @CC@
+CCAS = @CCAS@
+CCASDEPMODE = @CCASDEPMODE@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CHECK_MAJOR_VERSION = @CHECK_MAJOR_VERSION@
+CHECK_MICRO_VERSION = @CHECK_MICRO_VERSION@
+CHECK_MINOR_VERSION = @CHECK_MINOR_VERSION@
+CHECK_VERSION = @CHECK_VERSION@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIR = @DATADIR@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DEPRECATED_CFLAGS = @DEPRECATED_CFLAGS@
+DLLTOOL = @DLLTOOL@
+DOCBOOK_ROOT = @DOCBOOK_ROOT@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SUBUNIT = @ENABLE_SUBUNIT@
+ERROR_CFLAGS = @ERROR_CFLAGS@
+EXEEXT = @EXEEXT@
+FFLAGS = @FFLAGS@
+FGREP = @FGREP@
+FLEX_PATH = @FLEX_PATH@
+GCOV = @GCOV@
+GCOV_CFLAGS = @GCOV_CFLAGS@
+GCOV_LIBS = @GCOV_LIBS@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GIO_CFLAGS = @GIO_CFLAGS@
+GIO_LDFLAGS = @GIO_LDFLAGS@
+GIO_LIBS = @GIO_LIBS@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GLIB_LIBS = @GLIB_LIBS@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GLIB_PREFIX = @GLIB_PREFIX@
+GLIB_REQ = @GLIB_REQ@
+GMP_LIBS = @GMP_LIBS@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GREP = @GREP@
+GSL_LIBS = @GSL_LIBS@
+GST_AGE = @GST_AGE@
+GST_ALL_CFLAGS = @GST_ALL_CFLAGS@
+GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@
+GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
+GST_ALL_LIBS = @GST_ALL_LIBS@
+GST_API_VERSION = @GST_API_VERSION@
+GST_CURRENT = @GST_CURRENT@
+GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@
+GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@
+GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@
+GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@
+GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@
+GST_DISABLE_REGISTRY_DEFINE = @GST_DISABLE_REGISTRY_DEFINE@
+GST_DISABLE_TRACE_DEFINE = @GST_DISABLE_TRACE_DEFINE@
+GST_HAVE_MONOTONIC_CLOCK_DEFINE = @GST_HAVE_MONOTONIC_CLOCK_DEFINE@
+GST_HAVE_POSIX_TIMERS_DEFINE = @GST_HAVE_POSIX_TIMERS_DEFINE@
+GST_HAVE_UNALIGNED_ACCESS_DEFINE = @GST_HAVE_UNALIGNED_ACCESS_DEFINE@
+GST_LEVEL_DEFAULT = @GST_LEVEL_DEFAULT@
+GST_LIBVERSION = @GST_LIBVERSION@
+GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@
+GST_LICENSE = @GST_LICENSE@
+GST_LT_LDFLAGS = @GST_LT_LDFLAGS@
+GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@
+GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@
+GST_OBJ_LIBS = @GST_OBJ_LIBS@
+GST_OPTION_CFLAGS = @GST_OPTION_CFLAGS@
+GST_OPTION_CXXFLAGS = @GST_OPTION_CXXFLAGS@
+GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
+GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
+GST_PLUGIN_LDFLAGS = @GST_PLUGIN_LDFLAGS@
+GST_PLUGIN_LIBTOOLFLAGS = @GST_PLUGIN_LIBTOOLFLAGS@
+GST_PLUGIN_SCANNER_INSTALLED = @GST_PLUGIN_SCANNER_INSTALLED@
+GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@
+GST_REVISION = @GST_REVISION@
+GST_VERSION_MAJOR = @GST_VERSION_MAJOR@
+GST_VERSION_MICRO = @GST_VERSION_MICRO@
+GST_VERSION_MINOR = @GST_VERSION_MINOR@
+GST_VERSION_NANO = @GST_VERSION_NANO@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
+GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
+GTKDOC_MKPDF = @GTKDOC_MKPDF@
+GTKDOC_REBASE = @GTKDOC_REBASE@
+HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
+HAVE_DVIPS = @HAVE_DVIPS@
+HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
+HAVE_GMP = @HAVE_GMP@
+HAVE_GSL = @HAVE_GSL@
+HAVE_JADETEX = @HAVE_JADETEX@
+HAVE_PNGTOPNM = @HAVE_PNGTOPNM@
+HAVE_PNMTOPS = @HAVE_PNMTOPS@
+HAVE_PS2PDF = @HAVE_PS2PDF@
+HAVE_XMLLINT = @HAVE_XMLLINT@
+HAVE_XSLTPROC = @HAVE_XSLTPROC@
+HOST_CPU = @HOST_CPU@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INTLLIBS = @INTLLIBS@
+INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBDIR = @LIBDIR@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBM = @LIBM@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LOCALEDIR = @LOCALEDIR@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
+PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
+PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
+PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
+PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL_PATH = @PERL_PATH@
+PKG_CONFIG = @PKG_CONFIG@
+PLUGINDIR = @PLUGINDIR@
+POSUB = @POSUB@
+PRINTF_CFLAGS = @PRINTF_CFLAGS@
+PROFILE_CFLAGS = @PROFILE_CFLAGS@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VALGRIND_CFLAGS = @VALGRIND_CFLAGS@
+VALGRIND_LIBS = @VALGRIND_LIBS@
+VALGRIND_PATH = @VALGRIND_PATH@
+VERSION = @VERSION@
+WARNING_CFLAGS = @WARNING_CFLAGS@
+WIN32_LIBS = @WIN32_LIBS@
+XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
+XML_CATALOG = @XML_CATALOG@
+XSLTPROC = @XSLTPROC@
+XSLTPROC_FLAGS = @XSLTPROC_FLAGS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+ax_pthread_config = @ax_pthread_config@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+plugindir = @plugindir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+netclock_server_LDADD = \
+	$(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \
+	$(GST_OBJ_LIBS)
+
+netclock_server_CFLAGS = $(GST_OBJ_CFLAGS)
+netclock_client_LDADD = \
+	$(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \
+	$(GST_OBJ_LIBS)
+
+netclock_client_CFLAGS = $(GST_OBJ_CFLAGS)
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/examples/netclock/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu tests/examples/netclock/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+	echo " rm -f" $$list; \
+	rm -f $$list || exit $$?; \
+	test -n "$(EXEEXT)" || exit 0; \
+	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+	echo " rm -f" $$list; \
+	rm -f $$list
+
+netclock-client$(EXEEXT): $(netclock_client_OBJECTS) $(netclock_client_DEPENDENCIES) $(EXTRA_netclock_client_DEPENDENCIES) 
+	@rm -f netclock-client$(EXEEXT)
+	$(AM_V_CCLD)$(netclock_client_LINK) $(netclock_client_OBJECTS) $(netclock_client_LDADD) $(LIBS)
+
+netclock-server$(EXEEXT): $(netclock_server_OBJECTS) $(netclock_server_DEPENDENCIES) $(EXTRA_netclock_server_DEPENDENCIES) 
+	@rm -f netclock-server$(EXEEXT)
+	$(AM_V_CCLD)$(netclock_server_LINK) $(netclock_server_OBJECTS) $(netclock_server_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/netclock_client-netclock-client.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/netclock_server-netclock-server.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+
+.c.obj:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+
+netclock_client-netclock-client.o: netclock-client.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_client_CFLAGS) $(CFLAGS) -MT netclock_client-netclock-client.o -MD -MP -MF $(DEPDIR)/netclock_client-netclock-client.Tpo -c -o netclock_client-netclock-client.o `test -f 'netclock-client.c' || echo '$(srcdir)/'`netclock-client.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/netclock_client-netclock-client.Tpo $(DEPDIR)/netclock_client-netclock-client.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='netclock-client.c' object='netclock_client-netclock-client.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_client_CFLAGS) $(CFLAGS) -c -o netclock_client-netclock-client.o `test -f 'netclock-client.c' || echo '$(srcdir)/'`netclock-client.c
+
+netclock_client-netclock-client.obj: netclock-client.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_client_CFLAGS) $(CFLAGS) -MT netclock_client-netclock-client.obj -MD -MP -MF $(DEPDIR)/netclock_client-netclock-client.Tpo -c -o netclock_client-netclock-client.obj `if test -f 'netclock-client.c'; then $(CYGPATH_W) 'netclock-client.c'; else $(CYGPATH_W) '$(srcdir)/netclock-client.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/netclock_client-netclock-client.Tpo $(DEPDIR)/netclock_client-netclock-client.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='netclock-client.c' object='netclock_client-netclock-client.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_client_CFLAGS) $(CFLAGS) -c -o netclock_client-netclock-client.obj `if test -f 'netclock-client.c'; then $(CYGPATH_W) 'netclock-client.c'; else $(CYGPATH_W) '$(srcdir)/netclock-client.c'; fi`
+
+netclock_server-netclock-server.o: netclock-server.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_server_CFLAGS) $(CFLAGS) -MT netclock_server-netclock-server.o -MD -MP -MF $(DEPDIR)/netclock_server-netclock-server.Tpo -c -o netclock_server-netclock-server.o `test -f 'netclock-server.c' || echo '$(srcdir)/'`netclock-server.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/netclock_server-netclock-server.Tpo $(DEPDIR)/netclock_server-netclock-server.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='netclock-server.c' object='netclock_server-netclock-server.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_server_CFLAGS) $(CFLAGS) -c -o netclock_server-netclock-server.o `test -f 'netclock-server.c' || echo '$(srcdir)/'`netclock-server.c
+
+netclock_server-netclock-server.obj: netclock-server.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_server_CFLAGS) $(CFLAGS) -MT netclock_server-netclock-server.obj -MD -MP -MF $(DEPDIR)/netclock_server-netclock-server.Tpo -c -o netclock_server-netclock-server.obj `if test -f 'netclock-server.c'; then $(CYGPATH_W) 'netclock-server.c'; else $(CYGPATH_W) '$(srcdir)/netclock-server.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/netclock_server-netclock-server.Tpo $(DEPDIR)/netclock_server-netclock-server.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='netclock-server.c' object='netclock_server-netclock-server.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(netclock_server_CFLAGS) $(CFLAGS) -c -o netclock_server-netclock-server.obj `if test -f 'netclock-server.c'; then $(CYGPATH_W) 'netclock-server.c'; else $(CYGPATH_W) '$(srcdir)/netclock-server.c'; fi`
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(PROGRAMS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+	mostlyclean-am
+
+distclean: distclean-am
+	-rm -rf ./$(DEPDIR)
+	-rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+	distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -rf ./$(DEPDIR)
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+	clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \
+	ctags-am distclean distclean-compile distclean-generic \
+	distclean-libtool distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-dvi install-dvi-am install-exec \
+	install-exec-am install-html install-html-am install-info \
+	install-info-am install-man install-pdf install-pdf-am \
+	install-ps install-ps-am install-strip installcheck \
+	installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/tests/examples/netclock/netclock-client.c b/tests/examples/netclock/netclock-client.c
new file mode 100644
index 0000000..2082297
--- /dev/null
+++ b/tests/examples/netclock/netclock-client.c
@@ -0,0 +1,59 @@
+#include <stdlib.h>
+#include <gst/gst.h>
+#include <gst/net/gstnetclientclock.h>
+
+static gboolean
+handle_bus_message (GstBus * bus, GstMessage * message, GstClock * client_clock)
+{
+  if (GST_MESSAGE_TYPE (message) == GST_MESSAGE_ELEMENT) {
+    const GstStructure *s = gst_message_get_structure (message);
+    gchar *str;
+
+    if (s == NULL)
+      return TRUE;
+    str = gst_structure_to_string (s);
+    g_print ("%s\n", str);
+    g_free (str);
+  }
+  return TRUE;
+}
+
+gint
+main (gint argc, gchar * argv[])
+{
+  GMainLoop *loop;
+  gchar *host;
+  guint16 port;
+  GstClock *client_clock;
+  GstBus *bus;
+
+  gst_init (&argc, &argv);
+
+  if (argc < 3) {
+    g_print ("Usage: netclock-client <host> <port>\n");
+    return 1;
+  }
+
+  host = argv[1];
+  port = atoi (argv[2]);
+
+  client_clock = gst_net_client_clock_new (NULL, host, port, 0);
+  if (client_clock == NULL) {
+    g_printerr ("Failed to create network clock client\n");
+    return 1;
+  }
+
+  bus = gst_bus_new ();
+  gst_bus_add_watch (bus, (GstBusFunc) handle_bus_message, client_clock);
+  g_object_set (G_OBJECT (client_clock), "bus", bus, NULL);
+
+  loop = g_main_loop_new (NULL, FALSE);
+
+  g_main_loop_run (loop);
+
+  /* cleanup */
+  g_main_loop_unref (loop);
+  g_object_unref (client_clock);
+
+  return 0;
+}
diff --git a/tests/examples/netclock/netclock-server.c b/tests/examples/netclock/netclock-server.c
new file mode 100644
index 0000000..46513e2
--- /dev/null
+++ b/tests/examples/netclock/netclock-server.c
@@ -0,0 +1,59 @@
+/* GStreamer
+ * Copyright (C) 2014 Jan Schmidt <jan@centricular.com>
+ *
+ * netclock-server.c: Publish a network clock provider
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+#ifdef HAVE_CONFIG_H
+#  include "config.h"
+#endif
+
+#include <stdlib.h>
+#include <gst/gst.h>
+#include <gst/net/gstnettimeprovider.h>
+
+gint
+main (gint argc, gchar * argv[])
+{
+  GMainLoop *loop;
+  GstClock *clock;
+  GstNetTimeProvider *net_clock;
+  int clock_port = 0;
+
+  gst_init (&argc, &argv);
+
+  if (argc > 1) {
+    clock_port = atoi (argv[1]);
+  }
+
+  loop = g_main_loop_new (NULL, FALSE);
+
+  clock = gst_system_clock_obtain ();
+  net_clock = gst_net_time_provider_new (clock, NULL, clock_port);
+  gst_object_unref (clock);
+
+  g_object_get (net_clock, "port", &clock_port, NULL);
+
+  g_print ("Published network clock on port %u\n", clock_port);
+
+  g_main_loop_run (loop);
+
+  /* cleanup */
+  g_main_loop_unref (loop);
+
+  return 0;
+}
diff --git a/tests/examples/queue/Makefile.in b/tests/examples/queue/Makefile.in
index b736d69..8ba3beb 100644
--- a/tests/examples/queue/Makefile.in
+++ b/tests/examples/queue/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/stepping/Makefile.in b/tests/examples/stepping/Makefile.in
index 139a0e6..504160a 100644
--- a/tests/examples/stepping/Makefile.in
+++ b/tests/examples/stepping/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/streamiddemux/Makefile.am b/tests/examples/streamiddemux/Makefile.am
new file mode 100644
index 0000000..e182d29
--- /dev/null
+++ b/tests/examples/streamiddemux/Makefile.am
@@ -0,0 +1,6 @@
+noinst_PROGRAMS = streamiddemux-stream
+
+streamiddemux_stream_SOURCES = streamiddemux-stream.c
+streamiddemux_stream_LDADD = $(GST_OBJ_LIBS)
+streamiddemux_stream_CFLAGS = $(GST_OBJ_CFLAGS)
+
diff --git a/tests/examples/streamiddemux/Makefile.in b/tests/examples/streamiddemux/Makefile.in
new file mode 100644
index 0000000..031dab6
--- /dev/null
+++ b/tests/examples/streamiddemux/Makefile.in
@@ -0,0 +1,794 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+noinst_PROGRAMS = streamiddemux-stream$(EXEEXT)
+subdir = tests/examples/streamiddemux
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+	$(top_srcdir)/depcomp
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
+	$(top_srcdir)/common/m4/as-auto-alt.m4 \
+	$(top_srcdir)/common/m4/as-compiler-flag.m4 \
+	$(top_srcdir)/common/m4/as-docbook.m4 \
+	$(top_srcdir)/common/m4/as-libtool.m4 \
+	$(top_srcdir)/common/m4/as-version.m4 \
+	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/gst-arch.m4 \
+	$(top_srcdir)/common/m4/gst-args.m4 \
+	$(top_srcdir)/common/m4/gst-check.m4 \
+	$(top_srcdir)/common/m4/gst-doc.m4 \
+	$(top_srcdir)/common/m4/gst-error.m4 \
+	$(top_srcdir)/common/m4/gst-feature.m4 \
+	$(top_srcdir)/common/m4/gst-function.m4 \
+	$(top_srcdir)/common/m4/gst-gettext.m4 \
+	$(top_srcdir)/common/m4/gst-glib2.m4 \
+	$(top_srcdir)/common/m4/gst-package-release-datetime.m4 \
+	$(top_srcdir)/common/m4/gst-parser.m4 \
+	$(top_srcdir)/common/m4/gst-platform.m4 \
+	$(top_srcdir)/common/m4/gst-plugin-docs.m4 \
+	$(top_srcdir)/common/m4/gst-plugindir.m4 \
+	$(top_srcdir)/common/m4/gst.m4 \
+	$(top_srcdir)/common/m4/gtk-doc.m4 \
+	$(top_srcdir)/common/m4/introspection.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
+	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
+	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
+	$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+	$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+	$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stdint_h.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+am_streamiddemux_stream_OBJECTS =  \
+	streamiddemux_stream-streamiddemux-stream.$(OBJEXT)
+streamiddemux_stream_OBJECTS = $(am_streamiddemux_stream_OBJECTS)
+am__DEPENDENCIES_1 =
+streamiddemux_stream_DEPENDENCIES = $(am__DEPENDENCIES_1)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+streamiddemux_stream_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(streamiddemux_stream_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+	$(LDFLAGS) -o $@
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo "  CC      " $@;
+am__v_CC_1 = 
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo "  CCLD    " $@;
+am__v_CCLD_1 = 
+SOURCES = $(streamiddemux_stream_SOURCES)
+DIST_SOURCES = $(streamiddemux_stream_SOURCES)
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
+BISON_PATH = @BISON_PATH@
+CAT_ENTRY_END = @CAT_ENTRY_END@
+CAT_ENTRY_START = @CAT_ENTRY_START@
+CC = @CC@
+CCAS = @CCAS@
+CCASDEPMODE = @CCASDEPMODE@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CHECK_MAJOR_VERSION = @CHECK_MAJOR_VERSION@
+CHECK_MICRO_VERSION = @CHECK_MICRO_VERSION@
+CHECK_MINOR_VERSION = @CHECK_MINOR_VERSION@
+CHECK_VERSION = @CHECK_VERSION@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIR = @DATADIR@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DEPRECATED_CFLAGS = @DEPRECATED_CFLAGS@
+DLLTOOL = @DLLTOOL@
+DOCBOOK_ROOT = @DOCBOOK_ROOT@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SUBUNIT = @ENABLE_SUBUNIT@
+ERROR_CFLAGS = @ERROR_CFLAGS@
+EXEEXT = @EXEEXT@
+FFLAGS = @FFLAGS@
+FGREP = @FGREP@
+FLEX_PATH = @FLEX_PATH@
+GCOV = @GCOV@
+GCOV_CFLAGS = @GCOV_CFLAGS@
+GCOV_LIBS = @GCOV_LIBS@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GIO_CFLAGS = @GIO_CFLAGS@
+GIO_LDFLAGS = @GIO_LDFLAGS@
+GIO_LIBS = @GIO_LIBS@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GLIB_LIBS = @GLIB_LIBS@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GLIB_PREFIX = @GLIB_PREFIX@
+GLIB_REQ = @GLIB_REQ@
+GMP_LIBS = @GMP_LIBS@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GREP = @GREP@
+GSL_LIBS = @GSL_LIBS@
+GST_AGE = @GST_AGE@
+GST_ALL_CFLAGS = @GST_ALL_CFLAGS@
+GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@
+GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
+GST_ALL_LIBS = @GST_ALL_LIBS@
+GST_API_VERSION = @GST_API_VERSION@
+GST_CURRENT = @GST_CURRENT@
+GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@
+GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@
+GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@
+GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@
+GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@
+GST_DISABLE_REGISTRY_DEFINE = @GST_DISABLE_REGISTRY_DEFINE@
+GST_DISABLE_TRACE_DEFINE = @GST_DISABLE_TRACE_DEFINE@
+GST_HAVE_MONOTONIC_CLOCK_DEFINE = @GST_HAVE_MONOTONIC_CLOCK_DEFINE@
+GST_HAVE_POSIX_TIMERS_DEFINE = @GST_HAVE_POSIX_TIMERS_DEFINE@
+GST_HAVE_UNALIGNED_ACCESS_DEFINE = @GST_HAVE_UNALIGNED_ACCESS_DEFINE@
+GST_LEVEL_DEFAULT = @GST_LEVEL_DEFAULT@
+GST_LIBVERSION = @GST_LIBVERSION@
+GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@
+GST_LICENSE = @GST_LICENSE@
+GST_LT_LDFLAGS = @GST_LT_LDFLAGS@
+GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@
+GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@
+GST_OBJ_LIBS = @GST_OBJ_LIBS@
+GST_OPTION_CFLAGS = @GST_OPTION_CFLAGS@
+GST_OPTION_CXXFLAGS = @GST_OPTION_CXXFLAGS@
+GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
+GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
+GST_PLUGIN_LDFLAGS = @GST_PLUGIN_LDFLAGS@
+GST_PLUGIN_LIBTOOLFLAGS = @GST_PLUGIN_LIBTOOLFLAGS@
+GST_PLUGIN_SCANNER_INSTALLED = @GST_PLUGIN_SCANNER_INSTALLED@
+GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@
+GST_REVISION = @GST_REVISION@
+GST_VERSION_MAJOR = @GST_VERSION_MAJOR@
+GST_VERSION_MICRO = @GST_VERSION_MICRO@
+GST_VERSION_MINOR = @GST_VERSION_MINOR@
+GST_VERSION_NANO = @GST_VERSION_NANO@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
+GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
+GTKDOC_MKPDF = @GTKDOC_MKPDF@
+GTKDOC_REBASE = @GTKDOC_REBASE@
+HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
+HAVE_DVIPS = @HAVE_DVIPS@
+HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
+HAVE_GMP = @HAVE_GMP@
+HAVE_GSL = @HAVE_GSL@
+HAVE_JADETEX = @HAVE_JADETEX@
+HAVE_PNGTOPNM = @HAVE_PNGTOPNM@
+HAVE_PNMTOPS = @HAVE_PNMTOPS@
+HAVE_PS2PDF = @HAVE_PS2PDF@
+HAVE_XMLLINT = @HAVE_XMLLINT@
+HAVE_XSLTPROC = @HAVE_XSLTPROC@
+HOST_CPU = @HOST_CPU@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INTLLIBS = @INTLLIBS@
+INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBDIR = @LIBDIR@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBM = @LIBM@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LOCALEDIR = @LOCALEDIR@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
+PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
+PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
+PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
+PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL_PATH = @PERL_PATH@
+PKG_CONFIG = @PKG_CONFIG@
+PLUGINDIR = @PLUGINDIR@
+POSUB = @POSUB@
+PRINTF_CFLAGS = @PRINTF_CFLAGS@
+PROFILE_CFLAGS = @PROFILE_CFLAGS@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VALGRIND_CFLAGS = @VALGRIND_CFLAGS@
+VALGRIND_LIBS = @VALGRIND_LIBS@
+VALGRIND_PATH = @VALGRIND_PATH@
+VERSION = @VERSION@
+WARNING_CFLAGS = @WARNING_CFLAGS@
+WIN32_LIBS = @WIN32_LIBS@
+XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
+XML_CATALOG = @XML_CATALOG@
+XSLTPROC = @XSLTPROC@
+XSLTPROC_FLAGS = @XSLTPROC_FLAGS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+ax_pthread_config = @ax_pthread_config@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+plugindir = @plugindir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+streamiddemux_stream_SOURCES = streamiddemux-stream.c
+streamiddemux_stream_LDADD = $(GST_OBJ_LIBS)
+streamiddemux_stream_CFLAGS = $(GST_OBJ_CFLAGS)
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/examples/streamiddemux/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu tests/examples/streamiddemux/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+	echo " rm -f" $$list; \
+	rm -f $$list || exit $$?; \
+	test -n "$(EXEEXT)" || exit 0; \
+	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+	echo " rm -f" $$list; \
+	rm -f $$list
+
+streamiddemux-stream$(EXEEXT): $(streamiddemux_stream_OBJECTS) $(streamiddemux_stream_DEPENDENCIES) $(EXTRA_streamiddemux_stream_DEPENDENCIES) 
+	@rm -f streamiddemux-stream$(EXEEXT)
+	$(AM_V_CCLD)$(streamiddemux_stream_LINK) $(streamiddemux_stream_OBJECTS) $(streamiddemux_stream_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+
+.c.obj:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+
+streamiddemux_stream-streamiddemux-stream.o: streamiddemux-stream.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(streamiddemux_stream_CFLAGS) $(CFLAGS) -MT streamiddemux_stream-streamiddemux-stream.o -MD -MP -MF $(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Tpo -c -o streamiddemux_stream-streamiddemux-stream.o `test -f 'streamiddemux-stream.c' || echo '$(srcdir)/'`streamiddemux-stream.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Tpo $(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='streamiddemux-stream.c' object='streamiddemux_stream-streamiddemux-stream.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(streamiddemux_stream_CFLAGS) $(CFLAGS) -c -o streamiddemux_stream-streamiddemux-stream.o `test -f 'streamiddemux-stream.c' || echo '$(srcdir)/'`streamiddemux-stream.c
+
+streamiddemux_stream-streamiddemux-stream.obj: streamiddemux-stream.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(streamiddemux_stream_CFLAGS) $(CFLAGS) -MT streamiddemux_stream-streamiddemux-stream.obj -MD -MP -MF $(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Tpo -c -o streamiddemux_stream-streamiddemux-stream.obj `if test -f 'streamiddemux-stream.c'; then $(CYGPATH_W) 'streamiddemux-stream.c'; else $(CYGPATH_W) '$(srcdir)/streamiddemux-stream.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Tpo $(DEPDIR)/streamiddemux_stream-streamiddemux-stream.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='streamiddemux-stream.c' object='streamiddemux_stream-streamiddemux-stream.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(streamiddemux_stream_CFLAGS) $(CFLAGS) -c -o streamiddemux_stream-streamiddemux-stream.obj `if test -f 'streamiddemux-stream.c'; then $(CYGPATH_W) 'streamiddemux-stream.c'; else $(CYGPATH_W) '$(srcdir)/streamiddemux-stream.c'; fi`
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(PROGRAMS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+	mostlyclean-am
+
+distclean: distclean-am
+	-rm -rf ./$(DEPDIR)
+	-rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+	distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -rf ./$(DEPDIR)
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+	clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \
+	ctags-am distclean distclean-compile distclean-generic \
+	distclean-libtool distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-dvi install-dvi-am install-exec \
+	install-exec-am install-html install-html-am install-info \
+	install-info-am install-man install-pdf install-pdf-am \
+	install-ps install-ps-am install-strip installcheck \
+	installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/tests/examples/streamiddemux/streamiddemux-stream.c b/tests/examples/streamiddemux/streamiddemux-stream.c
new file mode 100644
index 0000000..1ef128b
--- /dev/null
+++ b/tests/examples/streamiddemux/streamiddemux-stream.c
@@ -0,0 +1,241 @@
+#include <gst/gst.h>
+
+#define NUM_STREAM 13
+
+typedef struct _App App;
+
+struct _App
+{
+  GstElement *pipeline;
+  GstElement *audiotestsrc[NUM_STREAM];
+  GstElement *audioconvert[NUM_STREAM];
+  GstElement *capsfilter[NUM_STREAM];
+  GstElement *vorbisenc[NUM_STREAM];
+  GstElement *oggmux[NUM_STREAM];
+  GstElement *funnel;
+  GstElement *demux;
+  GstElement *stream_synchronizer;
+  GstElement *queue[NUM_STREAM];
+  GstElement *filesink[NUM_STREAM];
+
+  gboolean pad_blocked[NUM_STREAM];
+  GstPad *queue_srcpad[NUM_STREAM];
+  gulong blocked_id[NUM_STREAM];
+};
+
+App s_app;
+
+gint pad_added_cnt = 0;
+
+static gboolean
+bus_call (GstBus * bus, GstMessage * msg, gpointer data)
+{
+  GMainLoop *loop = (GMainLoop *) data;
+
+  switch (GST_MESSAGE_TYPE (msg)) {
+    case GST_MESSAGE_EOS:{
+      g_main_loop_quit (loop);
+      break;
+    }
+    case GST_MESSAGE_ERROR:{
+      g_main_loop_quit (loop);
+      break;
+    }
+    default:
+      break;
+  }
+  return TRUE;
+}
+
+static void
+set_blocked (App * app, gboolean blocked)
+{
+  gint i = 0;
+
+  for (i = 0; i < NUM_STREAM; i++) {
+    gst_pad_remove_probe (app->queue_srcpad[i], app->blocked_id[i]);
+  }
+}
+
+static void
+sink_do_reconfigure (App * app)
+{
+  gint i = 0;
+  GstPad *filesink_sinkpad[NUM_STREAM];
+  GstPad *sync_sinkpad[NUM_STREAM];
+  GstPad *sync_srcpad[NUM_STREAM];
+  GstIterator *it;
+  GValue item = G_VALUE_INIT;
+
+  for (i = 0; i < NUM_STREAM; i++) {
+    sync_sinkpad[i] =
+        gst_element_get_request_pad (app->stream_synchronizer, "sink_%u");
+    it = gst_pad_iterate_internal_links (sync_sinkpad[i]);
+    g_assert (it);
+    gst_iterator_next (it, &item);
+    sync_srcpad[i] = g_value_dup_object (&item);
+    g_value_unset (&item);
+
+    filesink_sinkpad[i] = gst_element_get_static_pad (app->filesink[i], "sink");
+
+    gst_pad_link_full (app->queue_srcpad[i], sync_sinkpad[i],
+        GST_PAD_LINK_CHECK_NOTHING);
+    gst_pad_link_full (sync_srcpad[i], filesink_sinkpad[i],
+        GST_PAD_LINK_CHECK_NOTHING);
+  }
+  gst_iterator_free (it);
+
+}
+
+static GstPadProbeReturn
+blocked_cb (GstPad * blockedpad, GstPadProbeInfo * info, gpointer user_data)
+{
+  App *app = user_data;
+  gint i = 0;
+  gboolean all_pads_blocked = TRUE;
+
+  for (i = 0; i < NUM_STREAM; i++) {
+    if (blockedpad == app->queue_srcpad[i])
+      app->pad_blocked[i] = TRUE;
+  }
+
+  for (i = 0; i < NUM_STREAM; i++) {
+    if (app->queue_srcpad[i] == FALSE) {
+      all_pads_blocked = FALSE;
+      break;
+    }
+  }
+
+  if (all_pads_blocked == TRUE) {
+    sink_do_reconfigure (app);
+    set_blocked (app, FALSE);
+  }
+
+  return GST_PAD_PROBE_OK;
+}
+
+static void
+src_pad_added_cb (GstElement * demux, GstPad * pad, App * app)
+{
+  GstPad *queue_sinkpad[NUM_STREAM];
+
+  queue_sinkpad[pad_added_cnt] =
+      gst_element_get_static_pad (app->queue[pad_added_cnt], "sink");
+  gst_pad_link_full (pad, queue_sinkpad[pad_added_cnt],
+      GST_PAD_LINK_CHECK_NOTHING);
+
+  app->queue_srcpad[pad_added_cnt] =
+      gst_element_get_static_pad (app->queue[pad_added_cnt], "src");
+  app->blocked_id[pad_added_cnt] =
+      gst_pad_add_probe (app->queue_srcpad[pad_added_cnt],
+      GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM, blocked_cb, app, NULL);
+
+  pad_added_cnt++;
+}
+
+gint
+main (gint argc, gchar * argv[])
+{
+  App *app = &s_app;
+
+  GMainLoop *loop = NULL;
+  GstBus *bus;
+  guint bus_watch_id;
+
+  GstPad *funnel_sinkpad[NUM_STREAM];
+  GstPad *funnel_srcpad;
+  GstPad *demux_sinkpad;
+  GstPad *oggmux_srcpad[NUM_STREAM];
+
+  guint stream_cnt = 0;
+  GstCaps *caps;
+
+  gst_init (&argc, &argv);
+
+  app->pipeline = gst_pipeline_new ("pipeline");
+
+  for (stream_cnt = 0; stream_cnt < NUM_STREAM; stream_cnt++) {
+    app->audiotestsrc[stream_cnt] =
+        gst_element_factory_make ("audiotestsrc", NULL);
+    app->audioconvert[stream_cnt] =
+        gst_element_factory_make ("audioconvert", NULL);
+    app->capsfilter[stream_cnt] = gst_element_factory_make ("capsfilter", NULL);
+    app->vorbisenc[stream_cnt] = gst_element_factory_make ("vorbisenc", NULL);
+    app->oggmux[stream_cnt] = gst_element_factory_make ("oggmux", NULL);
+  }
+
+  app->funnel = gst_element_factory_make ("funnel", NULL);
+  app->demux = gst_element_factory_make ("streamiddemux", NULL);
+  app->stream_synchronizer =
+      gst_element_factory_make ("streamsynchronizer", NULL);
+
+  caps = gst_caps_from_string ("audio/x-raw,channels=1;");
+
+  stream_cnt = 0;
+
+  for (stream_cnt = 0; stream_cnt < NUM_STREAM; stream_cnt++) {
+    app->queue[stream_cnt] = gst_element_factory_make ("queue", NULL);
+    app->filesink[stream_cnt] = gst_element_factory_make ("filesink", NULL);
+
+    g_object_set (app->audiotestsrc[stream_cnt], "wave", stream_cnt,
+        "num-buffers", 2000, NULL);
+    g_object_set (app->capsfilter[stream_cnt], "caps", caps, NULL);
+    g_object_set (app->filesink[stream_cnt], "location",
+        g_strdup_printf ("filesink_%d.ogg", stream_cnt), NULL);
+  }
+
+  stream_cnt = 0;
+
+  g_signal_connect (app->demux, "pad-added", G_CALLBACK (src_pad_added_cb),
+      app);
+
+  loop = g_main_loop_new (NULL, FALSE);
+
+  bus = gst_element_get_bus (app->pipeline);
+  bus_watch_id = gst_bus_add_watch (bus, bus_call, loop);
+  g_object_unref (bus);
+
+  for (stream_cnt = 0; stream_cnt < NUM_STREAM; stream_cnt++) {
+    gst_bin_add_many (GST_BIN (app->pipeline), app->audiotestsrc[stream_cnt],
+        app->audioconvert[stream_cnt], app->capsfilter[stream_cnt],
+        app->vorbisenc[stream_cnt], app->oggmux[stream_cnt],
+        app->queue[stream_cnt], app->filesink[stream_cnt], NULL);
+    if (stream_cnt == 0) {
+      gst_bin_add_many (GST_BIN (app->pipeline), app->funnel, app->demux,
+          app->stream_synchronizer, NULL);
+    }
+  }
+
+  stream_cnt = 0;
+
+  for (stream_cnt = 0; stream_cnt < NUM_STREAM; stream_cnt++) {
+    gst_element_link_many (app->audiotestsrc[stream_cnt],
+        app->audioconvert[stream_cnt], app->capsfilter[stream_cnt],
+        app->vorbisenc[stream_cnt], app->oggmux[stream_cnt], NULL);
+  }
+
+  stream_cnt = 0;
+
+  for (stream_cnt = 0; stream_cnt < NUM_STREAM; stream_cnt++) {
+    funnel_sinkpad[stream_cnt] =
+        gst_element_get_request_pad (app->funnel, "sink_%u");
+    oggmux_srcpad[stream_cnt] =
+        gst_element_get_static_pad (app->oggmux[stream_cnt], "src");
+    gst_pad_link (oggmux_srcpad[stream_cnt], funnel_sinkpad[stream_cnt]);
+  }
+
+  funnel_srcpad = gst_element_get_static_pad (app->funnel, "src");
+
+  demux_sinkpad = gst_element_get_static_pad (app->demux, "sink");
+  gst_pad_link (funnel_srcpad, demux_sinkpad);
+
+  gst_element_set_state (app->pipeline, GST_STATE_PLAYING);
+  g_main_loop_run (loop);
+
+  gst_element_set_state (app->pipeline, GST_STATE_NULL);
+  g_object_unref (app->pipeline);
+  g_source_remove (bus_watch_id);
+  g_main_loop_unref (loop);
+
+  return 0;
+}
diff --git a/tests/examples/streams/Makefile.in b/tests/examples/streams/Makefile.in
index 1ba1acb..0ed1683 100644
--- a/tests/examples/streams/Makefile.in
+++ b/tests/examples/streams/Makefile.in
@@ -92,6 +92,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -109,7 +110,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -217,6 +218,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -322,6 +327,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/examples/typefind/Makefile.in b/tests/examples/typefind/Makefile.in
index f979f9a..8909f27 100644
--- a/tests/examples/typefind/Makefile.in
+++ b/tests/examples/typefind/Makefile.in
@@ -91,6 +91,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -108,7 +109,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -208,6 +209,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -313,6 +318,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tests/misc/Makefile.in b/tests/misc/Makefile.in
index 63318a4..d242e28 100644
--- a/tests/misc/Makefile.in
+++ b/tests/misc/Makefile.in
@@ -88,6 +88,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -105,7 +106,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -153,6 +154,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -258,6 +263,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tools/Makefile.in b/tools/Makefile.in
index b68e4ee..eeb12e9 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -96,6 +96,7 @@
 	$(top_srcdir)/common/m4/as-libtool.m4 \
 	$(top_srcdir)/common/m4/as-version.m4 \
 	$(top_srcdir)/common/m4/ax_create_stdint_h.m4 \
+	$(top_srcdir)/common/m4/ax_pthread.m4 \
 	$(top_srcdir)/common/m4/gst-arch.m4 \
 	$(top_srcdir)/common/m4/gst-args.m4 \
 	$(top_srcdir)/common/m4/gst-check.m4 \
@@ -113,7 +114,7 @@
 	$(top_srcdir)/common/m4/gst.m4 \
 	$(top_srcdir)/common/m4/gtk-doc.m4 \
 	$(top_srcdir)/common/m4/introspection.m4 \
-	$(top_srcdir)/common/m4/pkg.m4 $(top_srcdir)/m4/ax_pthread.m4 \
+	$(top_srcdir)/common/m4/pkg.m4 \
 	$(top_srcdir)/m4/check-checks.m4 $(top_srcdir)/m4/gettext.m4 \
 	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
 	$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -273,6 +274,10 @@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
+BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
+BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
+BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
+BASH_HELPERS_DIR = @BASH_HELPERS_DIR@
 BISON_PATH = @BISON_PATH@
 CAT_ENTRY_END = @CAT_ENTRY_END@
 CAT_ENTRY_START = @CAT_ENTRY_START@
@@ -378,6 +383,7 @@
 HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@
 HAVE_DVIPS = @HAVE_DVIPS@
 HAVE_EPSTOPDF = @HAVE_EPSTOPDF@
+HAVE_FORK = @HAVE_FORK@
 HAVE_GMP = @HAVE_GMP@
 HAVE_GSL = @HAVE_GSL@
 HAVE_JADETEX = @HAVE_JADETEX@
diff --git a/tools/gst-indent b/tools/gst-indent
index 9309ed3..e75338b 100755
--- a/tools/gst-indent
+++ b/tools/gst-indent
@@ -23,6 +23,9 @@
       ;;
 esac
 
+# Run twice. GNU indent isn't idempotent
+# when run once
+for i in 1 2; do
 $INDENT \
   --braces-on-if-line \
   --case-brace-indentation0 \
@@ -37,4 +40,5 @@
   --tab-size8 \
   --indent-level2 \
   --leave-preprocessor-space \
-  $*
+  $* || exit $?
+done
diff --git a/tools/gst-inspect.c b/tools/gst-inspect.c
index 543bd1a..141c7bd 100644
--- a/tools/gst-inspect.c
+++ b/tools/gst-inspect.c
@@ -25,7 +25,7 @@
 #  include "config.h"
 #endif
 
-/* FIXME 0.11: suppress warnings for deprecated API such as GValueArray
+/* FIXME 2.0: suppress warnings for deprecated API such as GValueArray
  * with newer GLib versions (>= 2.31.0) */
 #define GLIB_DISABLE_DEPRECATION_WARNINGS
 
@@ -245,9 +245,9 @@
 #define KNOWN_PARAM_FLAGS \
   (G_PARAM_CONSTRUCT | G_PARAM_CONSTRUCT_ONLY | \
   G_PARAM_LAX_VALIDATION |  G_PARAM_STATIC_STRINGS | \
-  G_PARAM_READABLE | G_PARAM_WRITABLE | GST_PARAM_CONTROLLABLE | \
-  GST_PARAM_MUTABLE_PLAYING | GST_PARAM_MUTABLE_PAUSED | \
-  GST_PARAM_MUTABLE_READY)
+  G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_DEPRECATED | \
+  GST_PARAM_CONTROLLABLE | GST_PARAM_MUTABLE_PLAYING | \
+  GST_PARAM_MUTABLE_PAUSED | GST_PARAM_MUTABLE_READY)
 
 static void
 print_element_properties_info (GstElement * element)
@@ -290,6 +290,10 @@
       g_print ("%s%s", (first_flag) ? "" : ", ", _("writable"));
       first_flag = FALSE;
     }
+    if (param->flags & G_PARAM_DEPRECATED) {
+      g_print ("%s%s", (first_flag) ? "" : ", ", _("deprecated"));
+      first_flag = FALSE;
+    }
     if (param->flags & GST_PARAM_CONTROLLABLE) {
       g_print (", %s", _("controllable"));
       first_flag = FALSE;
@@ -705,34 +709,14 @@
 
     name = gst_pad_get_name (pad);
     if (gst_pad_get_direction (pad) == GST_PAD_SRC)
-      g_print ("  SRC: '%s'", name);
+      n_print ("  SRC: '%s'\n", name);
     else if (gst_pad_get_direction (pad) == GST_PAD_SINK)
-      g_print ("  SINK: '%s'", name);
+      n_print ("  SINK: '%s'\n", name);
     else
-      g_print ("  UNKNOWN!!!: '%s'", name);
+      n_print ("  UNKNOWN!!!: '%s'\n", name);
 
     g_free (name);
 
-    g_print ("\n");
-
-    n_print ("    Implementation:\n");
-    if (pad->chainfunc)
-      n_print ("      Has chainfunc(): %s\n",
-          GST_DEBUG_FUNCPTR_NAME (pad->chainfunc));
-    if (pad->getrangefunc)
-      n_print ("      Has getrangefunc(): %s\n",
-          GST_DEBUG_FUNCPTR_NAME (pad->getrangefunc));
-    if (pad->eventfunc != gst_pad_event_default)
-      n_print ("      Has custom eventfunc(): %s\n",
-          GST_DEBUG_FUNCPTR_NAME (pad->eventfunc));
-    if (pad->queryfunc != gst_pad_query_default)
-      n_print ("      Has custom queryfunc(): %s\n",
-          GST_DEBUG_FUNCPTR_NAME (pad->queryfunc));
-
-    if (pad->iterintlinkfunc != gst_pad_iterate_internal_links_default)
-      n_print ("      Has custom iterintlinkfunc(): %s\n",
-          GST_DEBUG_FUNCPTR_NAME (pad->iterintlinkfunc));
-
     if (pad->padtemplate)
       n_print ("    Pad Template: '%s'\n", pad->padtemplate->name_template);
 
@@ -899,6 +883,25 @@
 }
 
 static void
+print_preset_list (GstElement * element)
+{
+  gchar **presets, **preset;
+
+  if (!GST_IS_PRESET (element))
+    return;
+
+  presets = gst_preset_get_preset_names (GST_PRESET (element));
+  if (presets && *presets) {
+    n_print ("\n");
+    n_print ("Presets:\n");
+    for (preset = presets; *preset; preset++) {
+      n_print ("  \"%s\"\n", *preset);
+    }
+    g_strfreev (presets);
+  }
+}
+
+static void
 print_blacklist (void)
 {
   GList *plugins, *cur;
@@ -1139,7 +1142,7 @@
   gint num_features = 0;
   gint num_elements = 0;
   gint num_typefinders = 0;
-  gint num_devmonitors = 0;
+  gint num_devproviders = 0;
   gint num_other = 0;
 
   origlist = features =
@@ -1180,14 +1183,14 @@
             gst_plugin_feature_get_name (feature));
 
       num_typefinders++;
-    } else if (GST_IS_DEVICE_MONITOR_FACTORY (feature)) {
-      GstDeviceMonitorFactory *factory;
+    } else if (GST_IS_DEVICE_PROVIDER_FACTORY (feature)) {
+      GstDeviceProviderFactory *factory;
 
-      factory = GST_DEVICE_MONITOR_FACTORY (feature);
+      factory = GST_DEVICE_PROVIDER_FACTORY (feature);
       n_print ("  %s: %s\n", GST_OBJECT_NAME (factory),
-          gst_device_monitor_factory_get_metadata (factory,
+          gst_device_provider_factory_get_metadata (factory,
               GST_ELEMENT_METADATA_LONGNAME));
-      num_devmonitors++;
+      num_devproviders++;
     } else if (feature) {
       n_print ("  %s (%s)\n", gst_object_get_name (GST_OBJECT (feature)),
           g_type_name (G_OBJECT_TYPE (feature)));
@@ -1205,8 +1208,8 @@
     n_print ("  +-- %d elements\n", num_elements);
   if (num_typefinders > 0)
     n_print ("  +-- %d typefinders\n", num_typefinders);
-  if (num_devmonitors > 0)
-    n_print ("  +-- %d device monitors\n", num_devmonitors);
+  if (num_devproviders > 0)
+    n_print ("  +-- %d device providers\n", num_devproviders);
   if (num_other > 0)
     n_print ("  +-- %d other objects\n", num_other);
 
@@ -1277,6 +1280,7 @@
   print_element_properties_info (element);
   print_signal_info (element);
   print_children_info (element);
+  print_preset_list (element);
 
   gst_object_unref (element);
   gst_object_unref (factory);
@@ -1484,6 +1488,9 @@
   textdomain (GETTEXT_PACKAGE);
 #endif
 
+  /* avoid glib warnings when inspecting deprecated properties */
+  g_setenv ("G_ENABLE_DIAGNOSTIC", "0", FALSE);
+
   g_set_prgname ("gst-inspect-" GST_API_VERSION);
 
 #ifndef GST_DISABLE_OPTION_PARSING
diff --git a/tools/gst-launch.1.in b/tools/gst-launch.1.in
index fc82eda..c04ddc6 100644
--- a/tools/gst-launch.1.in
+++ b/tools/gst-launch.1.in
@@ -334,7 +334,7 @@
 (here: textoverlay) has multiple sink or source pads.
 
 .B
-        gst\-launch textoverlay name=overlay ! videoconvert ! videoscale !  autovideosink   filesrc location=movie.avi ! decodebin2 ! videoconvert ! overlay.video_sink   filesrc location=movie.srt ! subparse ! overlay.text_sink
+        gst\-launch textoverlay name=overlay ! videoconvert ! videoscale !  autovideosink   filesrc location=movie.avi ! decodebin ! videoconvert ! overlay.video_sink   filesrc location=movie.srt ! subparse ! overlay.text_sink
 
 .br
 Play an AVI movie with an external text subtitle stream using playbin
diff --git a/tools/gst-launch.c b/tools/gst-launch.c
index a644c0e..59f5fff 100644
--- a/tools/gst-launch.c
+++ b/tools/gst-launch.c
@@ -35,6 +35,9 @@
 #ifdef G_OS_UNIX
 #include <glib-unix.h>
 #include <sys/wait.h>
+#elif defined (G_OS_WIN32)
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
 #endif
 #include <locale.h>             /* for LC_ALL */
 #include "tools.h"
@@ -461,11 +464,14 @@
   g_list_foreach (subentries, print_toc_entry, GUINT_TO_POINTER (indent));
 }
 
-#ifdef G_OS_UNIX
+#if defined(G_OS_UNIX) || defined(G_OS_WIN32)
 static guint signal_watch_id;
+#if defined(G_OS_WIN32)
+static GstElement *intr_pipeline;
+#endif
 #endif
 
-#ifdef G_OS_UNIX
+#if defined(G_OS_UNIX) || defined(G_OS_WIN32)
 /* As the interrupt handler is dispatched from GMainContext as a GSourceFunc
  * handler, we can react to this by posting a message. */
 static gboolean
@@ -486,6 +492,15 @@
   return FALSE;
 }
 
+#if defined(G_OS_WIN32)         /* G_OS_UNIX */
+static BOOL WINAPI
+w32_intr_handler (DWORD dwCtrlType)
+{
+  intr_handler ((gpointer) intr_pipeline);
+  intr_pipeline = NULL;
+  return TRUE;
+}
+#endif /* G_OS_WIN32 */
 #endif /* G_OS_UNIX */
 
 /* returns ELR_ERROR if there was an error
@@ -506,6 +521,10 @@
 #ifdef G_OS_UNIX
   signal_watch_id =
       g_unix_signal_add (SIGINT, (GSourceFunc) intr_handler, pipeline);
+#elif defined(G_OS_WIN32)
+  intr_pipeline = NULL;
+  if (SetConsoleCtrlHandler (w32_intr_handler, TRUE))
+    intr_pipeline = pipeline;
 #endif
 
   while (TRUE) {
@@ -713,7 +732,7 @@
             goto exit;
         } else {
           /* buffering busy */
-          if (buffering == FALSE && target_state == GST_STATE_PLAYING) {
+          if (!buffering && target_state == GST_STATE_PLAYING) {
             /* we were not buffering but PLAYING, PAUSE  the pipeline. */
             PRINT (_("Buffering, setting pipeline to PAUSED ...\n"));
             gst_element_set_state (pipeline, GST_STATE_PAUSED);
@@ -831,6 +850,9 @@
 #ifdef G_OS_UNIX
     if (signal_watch_id > 0)
       g_source_remove (signal_watch_id);
+#elif defined(G_OS_WIN32)
+    intr_pipeline = NULL;
+    SetConsoleCtrlHandler (w32_intr_handler, FALSE);
 #endif
     return res;
   }
diff --git a/win32/common/config.h b/win32/common/config.h
index c3e90cd..6833ff5 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -56,13 +56,13 @@
 #define GST_LICENSE "LGPL"
 
 /* package name in plugins */
-#define GST_PACKAGE_NAME "GStreamer source release"
+#define GST_PACKAGE_NAME "GStreamer git"
 
 /* package origin */
 #define GST_PACKAGE_ORIGIN "Unknown package origin"
 
 /* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2014-06-22"
+#define GST_PACKAGE_RELEASE_DATETIME "2015-03-12T12:48Z"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -70,6 +70,9 @@
 /* location of the installed gst-plugin-scanner */
 #define GST_PLUGIN_SCANNER_INSTALLED LIBDIR "\\gst-plugin-scanner"
 
+/* Define to 1 if you have the `alarm' function. */
+#undef HAVE_ALARM
+
 /* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
    CoreFoundation framework. */
 #undef HAVE_CFLOCALECOPYCURRENT
@@ -81,9 +84,15 @@
 /* Define to 1 if you have the `clock_gettime' function. */
 #undef HAVE_CLOCK_GETTIME
 
+/* Define if the target CPU is AARCH64 */
+#undef HAVE_CPU_AARCH64
+
 /* Define if the target CPU is an Alpha */
 #undef HAVE_CPU_ALPHA
 
+/* Define if the target CPU is an ARC */
+#undef HAVE_CPU_ARC
+
 /* Define if the target CPU is an ARM */
 #undef HAVE_CPU_ARM
 
@@ -127,6 +136,22 @@
    */
 #undef HAVE_DCGETTEXT
 
+/* Define to 1 if you have the declaration of `alarm', and to 0 if you don't.
+   */
+#undef HAVE_DECL_ALARM
+
+/* Define to 1 if you have the declaration of `localtime_r', and to 0 if you
+   don't. */
+#undef HAVE_DECL_LOCALTIME_R
+
+/* Define to 1 if you have the declaration of `strdup', and to 0 if you don't.
+   */
+#undef HAVE_DECL_STRDUP
+
+/* Define to 1 if you have the declaration of `strsignal', and to 0 if you
+   don't. */
+#undef HAVE_DECL_STRSIGNAL
+
 /* Defined if we have dladdr () */
 #undef HAVE_DLADDR
 
@@ -136,6 +161,9 @@
 /* Define to 1 if you have the `fgetpos' function. */
 #define HAVE_FGETPOS 1
 
+/* Define to 1 if you have the `fork' function. */
+#undef HAVE_FORK
+
 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
 #undef HAVE_FSEEKO
 
@@ -154,6 +182,9 @@
 /* Define to 1 if you have the `getpagesize' function. */
 #undef HAVE_GETPAGESIZE
 
+/* Define to 1 if you have the `getpid' function. */
+#undef HAVE_GETPID
+
 /* Define if the GNU gettext() function is already present or preinstalled. */
 #undef HAVE_GETTEXT
 
@@ -179,6 +210,9 @@
    declares uintmax_t. */
 #undef HAVE_INTTYPES_H_WITH_UINTMAX
 
+/* Define to 1 if you have the `rt' library (-lrt). */
+#undef HAVE_LIBRT
+
 /* Define to 1 if you have the `localtime_r' function. */
 #undef HAVE_LOCALTIME_R
 
@@ -230,12 +264,18 @@
 /* Have PTHREAD_PRIO_INHERIT. */
 #undef HAVE_PTHREAD_PRIO_INHERIT
 
+/* Have function pthread_setname_np(const char*) */
+#undef HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID
+
 /* Define to 1 if the system has the type `ptrdiff_t'. */
 #undef HAVE_PTRDIFF_T
 
 /* Define if RDTSC is available */
 #undef HAVE_RDTSC
 
+/* Define to 1 if you have the `setitimer' function. */
+#undef HAVE_SETITIMER
+
 /* Define to 1 if you have the `sigaction' function. */
 #undef HAVE_SIGACTION
 
@@ -252,12 +292,30 @@
 /* Define to 1 if you have the <stdlib.h> header file. */
 #define HAVE_STDLIB_H 1
 
+/* Define to 1 if you have the `strcasestr' function. */
+#undef HAVE_STRCASESTR
+
 /* Define to 1 if you have the <strings.h> header file. */
 #undef HAVE_STRINGS_H
 
 /* Define to 1 if you have the <string.h> header file. */
 #define HAVE_STRING_H 1
 
+/* Define to 1 if you have the `strsignal' function. */
+#undef HAVE_STRSIGNAL
+
+/* Define to 1 if `it_interval' is a member of `struct itimerspec'. */
+#undef HAVE_STRUCT_ITIMERSPEC_IT_INTERVAL
+
+/* Define to 1 if `it_value' is a member of `struct itimerspec'. */
+#undef HAVE_STRUCT_ITIMERSPEC_IT_VALUE
+
+/* Define to 1 if `tv_nsec' is a member of `struct timespec'. */
+#undef HAVE_STRUCT_TIMESPEC_TV_NSEC
+
+/* Define to 1 if `tv_sec' is a member of `struct timespec'. */
+#undef HAVE_STRUCT_TIMESPEC_TV_SEC
+
 /* Define to 1 if you have the <sys/param.h> header file. */
 #undef HAVE_SYS_PARAM_H
 
@@ -282,12 +340,18 @@
 /* Define to 1 if you have the <sys/types.h> header file. */
 #define HAVE_SYS_TYPES_H 1
 
+/* Define to 1 if you have the <sys/uio.h> header file. */
+#undef HAVE_SYS_UIO_H
+
 /* Define to 1 if you have the <sys/utsname.h> header file. */
 #undef HAVE_SYS_UTSNAME_H
 
 /* Define to 1 if you have the <sys/wait.h> header file. */
 #undef HAVE_SYS_WAIT_H
 
+/* Define to 1 if you have the <time.h> header file. */
+#undef HAVE_TIME_H
+
 /* Have tm_gmtoff field in struct tm */
 #undef HAVE_TM_GMTOFF
 
@@ -318,6 +382,12 @@
 /* Define to 1 if you have the <winsock2.h> header file. */
 #define HAVE_WINSOCK2_H 1
 
+/* Define to 1 if you have the `_getpid' function. */
+#undef HAVE__GETPID
+
+/* Define to 1 if you have the `_strdup' function. */
+#undef HAVE__STRDUP
+
 /* the host CPU */
 #define HOST_CPU "i686"
 
@@ -354,7 +424,7 @@
 #define PACKAGE_NAME "GStreamer"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer 1.3.3"
+#define PACKAGE_STRING "GStreamer 1.5.0.1"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gstreamer"
@@ -363,7 +433,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.3.3"
+#define PACKAGE_VERSION "1.5.0.1"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -394,6 +464,12 @@
 /* Define to 1 if you have the ANSI C header files. */
 #undef STDC_HEADERS
 
+/* Need to define the itimerspec structure */
+#undef STRUCT_ITIMERSPEC_DEFINITION_MISSING
+
+/* Need to define the timespec structure */
+#undef STRUCT_TIMESPEC_DEFINITION_MISSING
+
 /* the target CPU */
 #undef TARGET_CPU
 
@@ -401,7 +477,7 @@
 #undef USE_POISONING
 
 /* Version number of package */
-#define VERSION "1.3.3"
+#define VERSION "1.5.0.1"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */
@@ -432,9 +508,15 @@
 /* We need at least WinXP SP2 for __stat64 */
 #undef __MSVCRT_VERSION__
 
+/* clockid_t */
+#undef clockid_t
+
 /* Define to the widest signed integer type if <stdint.h> and <inttypes.h> do
    not define. */
 #undef intmax_t
 
 /* Define to `unsigned int' if <sys/types.h> does not define. */
 #undef size_t
+
+/* timer_t */
+#undef timer_t
diff --git a/win32/common/gstconfig.h b/win32/common/gstconfig.h
index 2c3e12f..d893411 100644
--- a/win32/common/gstconfig.h
+++ b/win32/common/gstconfig.h
@@ -125,14 +125,6 @@
    refcounting */
 #define GST_HAVE_GLIB_2_8 1
 
-/***** Deal with XML stuff, we have to handle both loadsave and registry *****/
-
-#if (! (defined(GST_DISABLE_LOADSAVE) && defined(GST_DISABLE_REGISTRY)) )
-# include <libxml/parser.h>
-#else
-# define GST_DISABLE_LOADSAVE_REGISTRY
-#endif
-
 /**
  * GST_EXPORT:
  *
diff --git a/win32/common/gstenumtypes.c b/win32/common/gstenumtypes.c
index 0527074..ebba963 100644
--- a/win32/common/gstenumtypes.c
+++ b/win32/common/gstenumtypes.c
@@ -310,7 +310,11 @@
         "GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS", "non-default-params"},
     {C_FLAGS (GST_DEBUG_GRAPH_SHOW_STATES), "GST_DEBUG_GRAPH_SHOW_STATES",
         "states"},
+    {C_FLAGS (GST_DEBUG_GRAPH_SHOW_FULL_PARAMS),
+        "GST_DEBUG_GRAPH_SHOW_FULL_PARAMS", "full-params"},
     {C_FLAGS (GST_DEBUG_GRAPH_SHOW_ALL), "GST_DEBUG_GRAPH_SHOW_ALL", "all"},
+    {C_FLAGS (GST_DEBUG_GRAPH_SHOW_VERBOSE), "GST_DEBUG_GRAPH_SHOW_VERBOSE",
+        "verbose"},
     {0, NULL, NULL}
   };
 
@@ -1586,6 +1590,7 @@
     {C_FLAGS (GST_SEEK_FLAG_ACCURATE), "GST_SEEK_FLAG_ACCURATE", "accurate"},
     {C_FLAGS (GST_SEEK_FLAG_KEY_UNIT), "GST_SEEK_FLAG_KEY_UNIT", "key-unit"},
     {C_FLAGS (GST_SEEK_FLAG_SEGMENT), "GST_SEEK_FLAG_SEGMENT", "segment"},
+    {C_FLAGS (GST_SEEK_FLAG_TRICKMODE), "GST_SEEK_FLAG_TRICKMODE", "trickmode"},
     {C_FLAGS (GST_SEEK_FLAG_SKIP), "GST_SEEK_FLAG_SKIP", "skip"},
     {C_FLAGS (GST_SEEK_FLAG_SNAP_BEFORE), "GST_SEEK_FLAG_SNAP_BEFORE",
         "snap-before"},
@@ -1593,6 +1598,10 @@
         "snap-after"},
     {C_FLAGS (GST_SEEK_FLAG_SNAP_NEAREST), "GST_SEEK_FLAG_SNAP_NEAREST",
         "snap-nearest"},
+    {C_FLAGS (GST_SEEK_FLAG_TRICKMODE_KEY_UNITS),
+        "GST_SEEK_FLAG_TRICKMODE_KEY_UNITS", "trickmode-key-units"},
+    {C_FLAGS (GST_SEEK_FLAG_TRICKMODE_NO_AUDIO),
+        "GST_SEEK_FLAG_TRICKMODE_NO_AUDIO", "trickmode-no-audio"},
     {0, NULL, NULL}
   };
 
@@ -1611,8 +1620,14 @@
   static const GFlagsValue values[] = {
     {C_FLAGS (GST_SEGMENT_FLAG_NONE), "GST_SEGMENT_FLAG_NONE", "none"},
     {C_FLAGS (GST_SEGMENT_FLAG_RESET), "GST_SEGMENT_FLAG_RESET", "reset"},
+    {C_FLAGS (GST_SEGMENT_FLAG_TRICKMODE), "GST_SEGMENT_FLAG_TRICKMODE",
+        "trickmode"},
     {C_FLAGS (GST_SEGMENT_FLAG_SKIP), "GST_SEGMENT_FLAG_SKIP", "skip"},
     {C_FLAGS (GST_SEGMENT_FLAG_SEGMENT), "GST_SEGMENT_FLAG_SEGMENT", "segment"},
+    {C_FLAGS (GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS),
+        "GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS", "trickmode-key-units"},
+    {C_FLAGS (GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO),
+        "GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO", "trickmode-no-audio"},
     {0, NULL, NULL}
   };
 
diff --git a/win32/common/gstversion.h b/win32/common/gstversion.h
index e04dc96..a595e27 100644
--- a/win32/common/gstversion.h
+++ b/win32/common/gstversion.h
@@ -51,20 +51,20 @@
  *
  * The minor version of GStreamer at compile time:
  */
-#define GST_VERSION_MINOR (3)
+#define GST_VERSION_MINOR (5)
 /**
  * GST_VERSION_MICRO:
  *
  * The micro version of GStreamer at compile time:
  */
-#define GST_VERSION_MICRO (3)
+#define GST_VERSION_MICRO (0)
 /**
  * GST_VERSION_NANO:
  *
  * The nano version of GStreamer at compile time:
  * Actual releases have 0, GIT versions have 1, prerelease versions have 2-...
  */
-#define GST_VERSION_NANO (0)
+#define GST_VERSION_NANO (1)
 
 /**
  * GST_CHECK_VERSION:
diff --git a/win32/common/libgstbase.def b/win32/common/libgstbase.def
index 2713a09..1767f67 100644
--- a/win32/common/libgstbase.def
+++ b/win32/common/libgstbase.def
@@ -18,6 +18,7 @@
 	gst_adapter_take
 	gst_adapter_take_buffer
 	gst_adapter_take_buffer_fast
+	gst_adapter_take_buffer_list
 	gst_adapter_take_list
 	gst_adapter_unmap
 	gst_base_parse_add_index_entry
@@ -142,6 +143,7 @@
 	gst_byte_reader_get_remaining
 	gst_byte_reader_get_size
 	gst_byte_reader_get_string_utf8
+	gst_byte_reader_get_sub_reader
 	gst_byte_reader_get_uint16_be
 	gst_byte_reader_get_uint16_le
 	gst_byte_reader_get_uint24_be
@@ -153,6 +155,7 @@
 	gst_byte_reader_get_uint8
 	gst_byte_reader_init
 	gst_byte_reader_masked_scan_uint32
+	gst_byte_reader_masked_scan_uint32_peek
 	gst_byte_reader_new
 	gst_byte_reader_peek_data
 	gst_byte_reader_peek_float32_be
@@ -169,6 +172,7 @@
 	gst_byte_reader_peek_int64_le
 	gst_byte_reader_peek_int8
 	gst_byte_reader_peek_string_utf8
+	gst_byte_reader_peek_sub_reader
 	gst_byte_reader_peek_uint16_be
 	gst_byte_reader_peek_uint16_le
 	gst_byte_reader_peek_uint24_be
@@ -263,11 +267,14 @@
 	gst_data_queue_push_force
 	gst_data_queue_set_flushing
 	gst_flow_combiner_add_pad
+	gst_flow_combiner_clear
 	gst_flow_combiner_free
 	gst_flow_combiner_get_type
 	gst_flow_combiner_new
 	gst_flow_combiner_remove_pad
+	gst_flow_combiner_reset
 	gst_flow_combiner_update_flow
+	gst_flow_combiner_update_pad_flow
 	gst_push_src_get_type
 	gst_queue_array_drop_element
 	gst_queue_array_find
diff --git a/win32/common/libgstcontroller.def b/win32/common/libgstcontroller.def
index 92d5abb..b7dd634 100644
--- a/win32/common/libgstcontroller.def
+++ b/win32/common/libgstcontroller.def
@@ -1,6 +1,7 @@
 EXPORTS
 	gst_argb_control_binding_get_type
 	gst_argb_control_binding_new
+	gst_control_point_get_type
 	gst_direct_control_binding_get_type
 	gst_direct_control_binding_new
 	gst_interpolation_control_source_get_type
diff --git a/win32/common/libgstnet.def b/win32/common/libgstnet.def
index 4478bcb..8e3f327 100644
--- a/win32/common/libgstnet.def
+++ b/win32/common/libgstnet.def
@@ -1,9 +1,12 @@
 EXPORTS
 	gst_buffer_add_net_address_meta
+	gst_buffer_add_net_control_message_meta
 	gst_net_address_meta_api_get_type
 	gst_net_address_meta_get_info
 	gst_net_client_clock_get_type
 	gst_net_client_clock_new
+	gst_net_control_message_meta_api_get_type
+	gst_net_control_message_meta_get_info
 	gst_net_time_packet_copy
 	gst_net_time_packet_free
 	gst_net_time_packet_get_type
diff --git a/win32/common/libgstreamer.def b/win32/common/libgstreamer.def
index fc74f2f..22acb9d 100644
--- a/win32/common/libgstreamer.def
+++ b/win32/common/libgstreamer.def
@@ -109,11 +109,13 @@
 	gst_bin_recalculate_latency
 	gst_bin_remove
 	gst_bin_remove_many
+	gst_bin_sync_children_states
 	gst_bitmask_get_type
 	gst_buffer_add_meta
 	gst_buffer_append
 	gst_buffer_append_memory
 	gst_buffer_append_region
+	gst_buffer_copy_deep
 	gst_buffer_copy_flags_get_type
 	gst_buffer_copy_into
 	gst_buffer_copy_region
@@ -206,6 +208,7 @@
 	gst_bus_pop_filtered
 	gst_bus_post
 	gst_bus_remove_signal_watch
+	gst_bus_remove_watch
 	gst_bus_set_flushing
 	gst_bus_set_sync_handler
 	gst_bus_sync_reply_get_type
@@ -240,8 +243,10 @@
 	gst_caps_features_remove_id
 	gst_caps_features_set_parent_refcount
 	gst_caps_features_to_string
+	gst_caps_filter_and_map_in_place
 	gst_caps_fixate
 	gst_caps_flags_get_type
+	gst_caps_foreach
 	gst_caps_from_string
 	gst_caps_get_features
 	gst_caps_get_size
@@ -260,6 +265,7 @@
 	gst_caps_is_subset
 	gst_caps_is_subset_structure
 	gst_caps_is_subset_structure_full
+	gst_caps_map_in_place
 	gst_caps_merge
 	gst_caps_merge_structure
 	gst_caps_merge_structure_full
@@ -294,7 +300,9 @@
 	gst_child_proxy_set_property
 	gst_child_proxy_set_valist
 	gst_clock_add_observation
+	gst_clock_add_observation_unapplied
 	gst_clock_adjust_unlocked
+	gst_clock_adjust_with_calibration
 	gst_clock_entry_type_get_type
 	gst_clock_flags_get_type
 	gst_clock_get_calibration
@@ -371,6 +379,7 @@
 	gst_date_time_to_iso8601_string
 	gst_date_time_unref
 	gst_debug_add_log_function
+	gst_debug_bin_to_dot_data
 	gst_debug_bin_to_dot_file
 	gst_debug_bin_to_dot_file_with_ts
 	gst_debug_category_free
@@ -415,31 +424,39 @@
 	gst_device_get_type
 	gst_device_has_classes
 	gst_device_has_classesv
-	gst_device_monitor_can_monitor
-	gst_device_monitor_class_add_metadata
-	gst_device_monitor_class_add_static_metadata
-	gst_device_monitor_class_get_metadata
-	gst_device_monitor_class_set_metadata
-	gst_device_monitor_class_set_static_metadata
-	gst_device_monitor_device_add
-	gst_device_monitor_device_remove
-	gst_device_monitor_factory_find
-	gst_device_monitor_factory_get
-	gst_device_monitor_factory_get_by_name
-	gst_device_monitor_factory_get_device_monitor_type
-	gst_device_monitor_factory_get_metadata
-	gst_device_monitor_factory_get_metadata_keys
-	gst_device_monitor_factory_get_type
-	gst_device_monitor_factory_has_classes
-	gst_device_monitor_factory_has_classesv
-	gst_device_monitor_factory_list_get_device_monitors
+	gst_device_monitor_add_filter
 	gst_device_monitor_get_bus
 	gst_device_monitor_get_devices
-	gst_device_monitor_get_factory
 	gst_device_monitor_get_type
-	gst_device_monitor_register
+	gst_device_monitor_new
+	gst_device_monitor_remove_filter
 	gst_device_monitor_start
 	gst_device_monitor_stop
+	gst_device_provider_can_monitor
+	gst_device_provider_class_add_metadata
+	gst_device_provider_class_add_static_metadata
+	gst_device_provider_class_get_metadata
+	gst_device_provider_class_set_metadata
+	gst_device_provider_class_set_static_metadata
+	gst_device_provider_device_add
+	gst_device_provider_device_remove
+	gst_device_provider_factory_find
+	gst_device_provider_factory_get
+	gst_device_provider_factory_get_by_name
+	gst_device_provider_factory_get_device_provider_type
+	gst_device_provider_factory_get_metadata
+	gst_device_provider_factory_get_metadata_keys
+	gst_device_provider_factory_get_type
+	gst_device_provider_factory_has_classes
+	gst_device_provider_factory_has_classesv
+	gst_device_provider_factory_list_get_device_providers
+	gst_device_provider_get_bus
+	gst_device_provider_get_devices
+	gst_device_provider_get_factory
+	gst_device_provider_get_type
+	gst_device_provider_register
+	gst_device_provider_start
+	gst_device_provider_stop
 	gst_device_reconfigure_element
 	gst_double_range_get_type
 	gst_element_abort_state
@@ -605,16 +622,6 @@
 	gst_ghost_pad_new_no_target
 	gst_ghost_pad_new_no_target_from_template
 	gst_ghost_pad_set_target
-	gst_global_device_monitor_get_bus
-	gst_global_device_monitor_get_caps_filter
-	gst_global_device_monitor_get_classes_filter
-	gst_global_device_monitor_get_devices
-	gst_global_device_monitor_get_type
-	gst_global_device_monitor_new
-	gst_global_device_monitor_set_caps_filter
-	gst_global_device_monitor_set_classes_filter
-	gst_global_device_monitor_start
-	gst_global_device_monitor_stop
 	gst_init
 	gst_init_check
 	gst_init_get_option_group
@@ -771,6 +778,7 @@
 	gst_object_get_value_array
 	gst_object_has_active_control_bindings
 	gst_object_has_ancestor
+	gst_object_has_parent
 	gst_object_ref
 	gst_object_ref_sink
 	gst_object_remove_control_binding
@@ -972,6 +980,7 @@
 	gst_preset_get_preset_names
 	gst_preset_get_property_names
 	gst_preset_get_type
+	gst_preset_is_editable
 	gst_preset_load_preset
 	gst_preset_rename_preset
 	gst_preset_save_preset
@@ -1137,6 +1146,7 @@
 	gst_structure_can_intersect
 	gst_structure_change_type_get_type
 	gst_structure_copy
+	gst_structure_filter_and_map_in_place
 	gst_structure_fixate
 	gst_structure_fixate_field
 	gst_structure_fixate_field_boolean
@@ -1347,20 +1357,60 @@
 	gst_type_find_suggest
 	gst_type_find_suggest_simple
 	gst_update_registry
+	gst_uri_append_path
+	gst_uri_append_path_segment
 	gst_uri_construct
+	gst_uri_equal
 	gst_uri_error_get_type
 	gst_uri_error_quark
+	gst_uri_from_string
+	gst_uri_from_string_with_base
+	gst_uri_get_fragment
+	gst_uri_get_host
 	gst_uri_get_location
+	gst_uri_get_path
+	gst_uri_get_path_segments
+	gst_uri_get_path_string
+	gst_uri_get_port
 	gst_uri_get_protocol
+	gst_uri_get_query_keys
+	gst_uri_get_query_string
+	gst_uri_get_query_table
+	gst_uri_get_query_value
+	gst_uri_get_scheme
+	gst_uri_get_type
+	gst_uri_get_userinfo
 	gst_uri_handler_get_protocols
 	gst_uri_handler_get_type
 	gst_uri_handler_get_uri
 	gst_uri_handler_get_uri_type
 	gst_uri_handler_set_uri
 	gst_uri_has_protocol
+	gst_uri_is_normalized
 	gst_uri_is_valid
+	gst_uri_is_writable
+	gst_uri_join
+	gst_uri_join_strings
+	gst_uri_make_writable
+	gst_uri_new
+	gst_uri_new_with_base
+	gst_uri_normalize
 	gst_uri_protocol_is_supported
 	gst_uri_protocol_is_valid
+	gst_uri_query_has_key
+	gst_uri_remove_query_key
+	gst_uri_set_fragment
+	gst_uri_set_host
+	gst_uri_set_path
+	gst_uri_set_path_segments
+	gst_uri_set_path_string
+	gst_uri_set_port
+	gst_uri_set_query_string
+	gst_uri_set_query_table
+	gst_uri_set_query_value
+	gst_uri_set_scheme
+	gst_uri_set_userinfo
+	gst_uri_to_string
 	gst_uri_type_get_type
 	gst_util_array_binary_search
 	gst_util_double_to_fraction