Merge tag 'upstream/1.7.1' into debian-experimental

Upstream version 1.7.1
diff --git a/ChangeLog b/ChangeLog
index bb61acf..1120811 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,32 +1,1401 @@
-=== release 1.6.2 ===
+=== release 1.7.1 ===
 
-2015-12-14  Sebastian Dröge <slomo@coaxion.net>
+2015-12-24  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.6.2
+	  releasing 1.7.1
 
-2015-12-14 19:16:12 +0100  Sebastian Dröge <sebastian@centricular.com>
+2015-12-24 12:23:00 +0100  Sebastian Dröge <sebastian@centricular.com>
 
+	* po/cs.po:
 	* po/da.po:
+	* po/de.po:
 	* po/hu.po:
 	* po/ky.po:
+	* po/nb.po:
+	* po/nl.po:
+	* po/pl.po:
+	* po/ru.po:
+	* po/sr.po:
 	* po/sv.po:
+	* po/uk.po:
+	* po/vi.po:
+	* po/zh_CN.po:
 	  po: Update translations
 
-2015-12-12 10:07:46 +1100  Matthew Waters <matthew@centricular.com>
+2015-12-23 23:13:21 +0000  Tim-Philipp Müller <tim@centricular.com>
 
+	* tests/check/elements/curlftpsink.c:
+	* tests/check/elements/curlhttpsink.c:
+	* tests/check/elements/curlsmtpsink.c:
+	* tests/check/elements/pcapparse.c:
+	* tests/check/elements/rtponviftimestamp.c:
+	  tests: fix indentation
+
+2015-12-23 23:10:50 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/pcapparse.c:
+	  tests: pcapparse: add check for 0-sized packets
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756573
+
+2015-12-23 20:24:46 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/pcapparse/gstpcapparse.c:
+	  pcapparse: don't crash on 0-sized packets
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756573
+
+2015-12-23 13:06:45 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* common:
+	  Update common
+
+2015-12-23 13:04:23 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	* pkgconfig/Makefile.am:
+	* pkgconfig/gstreamer-player-uninstalled.pc.in:
+	* pkgconfig/gstreamer-player.pc.in:
+	  player: Add pkg-config files
+
+2015-12-23 12:16:54 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* autogen.sh:
+	  autogen.sh: Enable player tests by default
+	  This will be automatically be updated together with the next common update
+	  again.
+
+2015-12-23 09:55:26 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	* tests/check/Makefile.am:
+	* tests/check/libs/player.c:
+	  player: Add unit test that is disabled by default
+	  The unit test is downloading a few small media files from the Internet,
+	  which are then used during the test. "make clean" removes the files again.
+
+2015-12-22 14:44:28 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* docs/libs/Makefile.am:
+	* docs/libs/gst-plugins-bad-libs-docs.sgml:
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* docs/libs/gst-plugins-bad-libs.types:
+	  player: Integrate into the documentation build system
+
+2015-12-22 14:24:00 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	* gst-libs/gst/Makefile.am:
+	* gst-libs/gst/player/Makefile.am:
+	* gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.c:
+	* gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h:
+	* gst-libs/gst/player/gstplayer-media-info-private.h:
+	* gst-libs/gst/player/gstplayer-media-info.c:
+	* gst-libs/gst/player/gstplayer-media-info.h:
+	* gst-libs/gst/player/gstplayer-signal-dispatcher-private.h:
+	* gst-libs/gst/player/gstplayer-signal-dispatcher.c:
+	* gst-libs/gst/player/gstplayer-signal-dispatcher.h:
+	* gst-libs/gst/player/gstplayer-types.h:
+	* gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c:
+	* gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h:
+	* gst-libs/gst/player/gstplayer-video-renderer-private.h:
+	* gst-libs/gst/player/gstplayer-video-renderer.c:
+	* gst-libs/gst/player/gstplayer-video-renderer.h:
+	* gst-libs/gst/player/gstplayer-visualization.c:
+	* gst-libs/gst/player/gstplayer-visualization.h:
+	* gst-libs/gst/player/gstplayer.c:
+	* gst-libs/gst/player/gstplayer.h:
+	* gst-libs/gst/player/player.h:
+	* win32/common/libgstplayer.def:
+	  player: Import GstPlayer playback convenience API
+	  Based on https://github.com/sdroege/gst-player
+	  commit 9ce6ae0dbb8eeeefaf794cfae80e279a03cc598d
+
+2015-12-23 09:50:13 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	  glmemorypbo: Comment out unused functions to fix compilation with clang
+	  It's not clear if these are intentionally unused or the code should be
+	  changed, but this fixes compilation for the time being at least.
+	  See https://bugzilla.gnome.org/show_bug.cgi?id=759679
+
+2015-11-10 16:25:53 +0000  Alex Ashley <bugzilla@ashley-family.net>
+
+	* tests/check/elements/hlsdemux_m3u8.c:
+	  hlsdemux: tests: check URL joining if media URL contains a '/' character
+	  If the query parameter (for example
+	  http://example.net/1054559_1500k.mp4/master.m3u8?acl=/*1054559_1500k.mp4),
+	  check that m3u8.c correctly converts the relative URLs of the media
+	  playlists in to absolute URLs. It must not use the last '/' it finds in
+	  the URL, as according to RFC3986 the '/' character is allowed in
+	  the query part of the URL.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758384
+
+2015-11-10 16:23:59 +0000  Alex Ashley <bugzilla@ashley-family.net>
+
+	* ext/hls/m3u8.c:
+	* tests/check/elements/hlsdemux_m3u8.c:
+	  hlsdemux: unquote all the quoted-string attributes
+	  The URI attribute from the EXT-X-KEY tag and the URI attribute from the
+	  EXT-X-I-FRAMES-ONLY tag are both quoted-string attibutes that have their
+	  quotation marks removed during parsing. The CODECS attribute of the
+	  EXT-X-STREAM-INF is also a quoted-string attribute, but this attribute
+	  was not being un-quoted.
+	  This commit changes the parser to always unquote all quoted-string
+	  attributes and adjusts the unit tests to this new bevahiour for the
+	  CODECS attribute.
+	  An additional test is added to check that parsing of all of the fields
+	  in the EXT-X-STREAM tag is correct, including those that contain comma
+	  characters.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758384
+
+2015-11-10 16:41:02 +0000  Alex Ashley <bugzilla@ashley-family.net>
+
+	* tests/check/Makefile.am:
+	* tests/check/elements/.gitignore:
+	* tests/check/elements/hls_demux.c:
+	  hlsdemux: tests: add unit tests for hlsdemux
+	  Using the new GstAdaptiveDemux test framework, add tests that
+	  exercise hlsdemux. The following tests are added:
+	  simpleTest
+	  A simple playlist that contains some media URLs
+	  testMediaPlaylist
+	  A master playlist with a variant playlist that contains media URLs
+	  testMediaPlaylistNotFound
+	  A master playlist that points to a missing variant playlist
+	  testFragmentNotFound
+	  A master playlist with a variant playlist that contains media URLs
+	  There is a missing media file referenced from the variant playlist.
+	  testFragmentDownloadError
+	  A master playlist with a variant playlist that contains media URLs
+	  During the download of one media file, the test simulates the network
+	  connection being dropped.
+	  testSeek
+	  A simple test of trying to perform a seek on an HLS stream.
+
+2015-11-10 13:13:35 +0000  Alex Ashley <bugzilla@ashley-family.net>
+
+	* tests/check/Makefile.am:
+	* tests/check/elements/adaptive_demux_common.c:
+	* tests/check/elements/adaptive_demux_common.h:
+	* tests/check/elements/adaptive_demux_engine.c:
+	* tests/check/elements/adaptive_demux_engine.h:
+	* tests/check/elements/dash_demux.c:
+	* tests/check/elements/fake_http_src.c:
+	* tests/check/elements/fake_http_src.h:
+	* tests/check/elements/test_http_src.c:
+	* tests/check/elements/test_http_src.h:
+	  dashdemux: tests: Refactor into adaptive_engine components
+	  To allow code from dash_demux.c to be used by other elements
+	  that are based upon GstAdaptiveDemux, the code has been
+	  refactored into four new files:
+	  adaptive_demux_engine.[ch]
+	  adaptive_demux_common.[ch]
+	  The code in adaptive_demux_engine.c provides a generic
+	  test engine for elements based upon GstAdaptiveDemux.
+	  The code in adaptive_demux_common.c provides a set
+	  of utility functions that are common between the tests
+	  for hlsdemux and dashdemux.
+	  As part of the refactoring, variables in structures were
+	  renamed from using camelCase to underscore_case to match other
+	  GStreamer source code.
+	  The fake_http_src was renamed test_http_src and changed to use
+	  callbacks to provide input data and error conditions. Rather than
+	  using an array of input data that tries to encode all the
+	  possible use cases for the GstTestHTTPSrc element, use a struct of
+	  callbacks.
+	  Users of this element are obliged to implement at least the src_start
+	  callback, which provides a way to link from a URI to the settings
+	  for that URI.
+
+2015-12-22 11:10:31 +0200  Matthew Marsh <matt@stonethree.com>
+
+	* sys/nvenc/gstnvbaseenc.c:
+	  nvenc: fix high CPU use on initialization of multiple encoders at the same time
+	  We need a static lock to protect various NVENC methods in _set_format(). Without
+	  this the CPU use increases dramatically on initialisation of the element when
+	  there are multiple elements being initialised at the same time.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759742
+
+2015-12-22 10:15:39 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: make sure every bad update_playlist return sets an error
+	  Otherwise it segfaults when reporting the error in the bus
+
+2015-12-21 13:57:04 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/teletextdec/gstteletextdec.c:
+	  teletextdec: Use NULL instead of g_strdup('\0')
+	  Which is equivalent to g_strdup(NULL).
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759728
+
+2015-12-21 12:33:25 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* common:
+	* configure.ac:
+	  configure: Use -Bsymbolic-functions if available
+	  While this is more useful for libraries, some of our plugins with multiple
+	  files and some internal API can also benefit from this.
+
+2015-12-21 12:19:11 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/libs/gstglcolorconvert.c:
+	  glcolorconvert: Fix name of testsuite
+
+2015-12-21 12:13:15 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/gl/gstglcontext.c:
+	  glcontext: Signal context creation from inside the context loop and use g_thread_join() instead of a custom condition variable
+	  Also protect against spurious condition variable wakeups during context
+	  creation.
+
+2015-12-21 11:27:09 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/gl/gstglwindow.c:
+	* gst-libs/gst/gl/gstglwindow.h:
+	* gst-libs/gst/gl/x11/gstglwindow_x11.c:
+	  glwindow: Hide navigation specific internal API and add API to asynchronously send navigation events
+	  Exposing the navigation thread's main context, GSourceFuncs and structs called
+	  key_event and mouse_event is exposing a bit too much of the internals. Let's
+	  just go with two functions to asynchronously send navigation events on the
+	  window with the same API as the synchronous ones.
+
+2015-12-21 10:46:52 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/gl/gstglwindow.c:
+	* gst-libs/gst/gl/gstglwindow.h:
+	  glwindow: Use g_thread_join() instead of a custom condition variable for waiting for the navigation thread to finish
+	  Also hide some internal functions and fields while we're at it and fix
+	  a race condition with the startup condition variable.
+
+2015-11-30 09:36:09 +0800  Haihua Hu <b55597@freescale.com>
+
+	* gst-libs/gst/gl/gstglwindow.c:
+	  glwindow: Fix memory leak of navigation thread
+	  When stopping the navigation thread, call g_thread_join() to release
+	  the resources hold by it.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758820
+
+2015-12-19 21:25:49 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/assrender/gstassrender.c:
+	* gst/dvbsuboverlay/gstdvbsuboverlay.c:
+	  assrender, dvbsuboverlay: fix example pipelines in docs
+
+2015-12-19 21:10:56 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: reflow update_playlist a bit
+	  Reduce indentation by erroring out directly on failure.
+
+2015-12-19 20:59:12 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: fix potential error leak
+	  Clear error as soon as we determine that the download failed,
+	  otherwise there are code paths where we might return without
+	  clearing it ever, which would leak the GError then. Also, we
+	  can pass a NULL GError pointer to _fetch_uri(), so just do that
+	  instead of passing one that we're going to just free again
+	  right away anyway.
+
+2015-12-19 12:05:59 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstpyramidsegment.cpp:
+	  opencv: remove unneeded sink_event function in pyramidsegment
+
+2015-12-19 12:04:01 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsttextoverlay.cpp:
+	  opencv: remove unneeded sink_event function in textoverlay
+
+2015-12-18 18:51:49 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* ext/opencv/gsttemplatematch.cpp:
+	  templatematch: remove useless function
+
+2015-12-18 11:56:17 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: always set timestamp on reverse playback
+	  Downstream needs to be able to restore the timestamps after a discont
+	  to do reverse playback
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759592
+
+2015-12-18 15:36:40 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glconvert: Fix compilation of GRAY16_LE/BE shader
+
+2015-11-13 17:24:30 +0100  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst-libs/gst/gl/gstglupload.c:
+	  glupload: Add dmabuf upload method.
+	  This upload method detect and optimize uploads of DMABuf memory. This is
+	  done by creating and caching EGLImages wrapper around DMABuf. The
+	  EGLImages are then binded to a texture which get converter using
+	  standard shader.
+	  Example pipeline:
+	  GST_GL_PLATFORM=egl \
+	  gst-launch-1.0 v4l2src device=/dev/video1 io-mode=4 ! \
+	  video/x-raw,format=NV12 ! glimagesink
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-12-18 15:52:46 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst-libs/gst/gl/egl/gsteglimagememory.c:
+	  eglimagememory: Also import BGR16, ABGR, xBGR, AYUV, GRAY16_LE/BE and Y444
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-12-18 11:08:29 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst-libs/gst/gl/egl/gsteglimagememory.c:
+	  eglimagememory: Add RGB/BGR DMABuf importation support
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-11-13 17:40:08 +0100  Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk>
+
+	* gst-libs/gst/gl/egl/gsteglimagememory.c:
+	* gst-libs/gst/gl/egl/gsteglimagememory.h:
+	  eglimagememory: Methods to create GstGLMemory from dmabufs
+	  Maps GstVideoFormats to suitable DRM fourccs which work with
+	  glcolorconvert, using gst_gl_memory_alloc(). We require mostly
+	  only 4 formats to be supported by the driver. We require DRM
+	  equivalent to RGB16, RGBA, R8 and RG88. This way it's compatible with
+	  DesktopGL, since GL_TEXTURE_2D is used and limit driver requirements.
+	  With this we can virtually support all formats the glcolorconvert
+	  supports.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-10-02 13:31:39 +0200  Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk>
+
+	* configure.ac:
+	* gst-libs/gst/gl/Makefile.am:
+	  build: Add dmabuf build condition.
+	  configure.ac: Build dmabuf when EGL and drm_fourcc.h is available.
+	  gl: Link gst-allocators.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-11-13 17:09:13 +0100  Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: Show error when video frame is not mapped.
+	  Adds more meaningful error than
+	  "Failed to convert multiview video buffer", which is always used
+	  when prepare_next_buffer() fails in gst_glimage_sink_prepare().
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-11-13 17:05:11 +0100  Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk>
+
+	* gst-libs/gst/gl/egl/gstglcontext_egl.c:
+	* gst-libs/gst/gl/egl/gstglcontext_egl.h:
+	  gstglcontext_egl: Expose gst_gl_context_egl_get_error_string.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=743345
+
+2015-12-18 16:56:04 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsttextoverlay.cpp:
+	* ext/opencv/gsttextoverlay.h:
+	  opencv: update opencvtextoverlay to GstOpencvVideoFilter
+	  Update opencvtextoverlay to inherit from GstOpencvVideoFilter instead of
+	  from GstElement. This means less code and more uniformity with other OpenCV
+	  elements. The chain/transform function is now a third of the size than
+	  before.
+
+2015-12-18 16:18:52 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsttemplatematch.cpp:
+	* ext/opencv/gsttemplatematch.h:
+	  opencv: update templatematch to GstOpencvVideoFilter
+	  Update pyramidsegment to inherit from GstOpencvVideoFilter instead of from
+	  GstElement. This means less code and more uniformity with other OpenCV
+	  elements.
+
+2015-12-18 15:48:16 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstpyramidsegment.cpp:
+	* ext/opencv/gstpyramidsegment.h:
+	  opencv: update pyramidsegment to GstOpencvVideoFilter
+	  Update pyramidsegment to inherit from GstOpencvVideoFilter instead of from
+	  GstElement. This means less code and more uniformity with other OpenCV
+	  elements.
+
+2015-12-17 17:26:29 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+	* sys/decklink/gstdecklink.cpp:
+	* sys/decklink/gstdecklink.h:
+	* sys/decklink/gstdecklinkaudiosrc.cpp:
+	* sys/decklink/gstdecklinkvideosink.cpp:
+	  decklinkvideosink: Made "auto" mode work according to caps
+	  When the mode of decklinkvideosink is set to "auto", the sink claims to
+	  support the full set of caps that it can support for all modes. Then, every
+	  time new caps are set, the sink will automatically find the correct mode for
+	  these caps and set it.
+	  Caveat: We have no way to know whether a specific mode will actually work for
+	  your hardware. Therefore, if you try sending 4K video to a 1080 screen, it
+	  will silently fail, we have no way to know that in advance. Manually setting
+	  that mode at least gave the user a way to double-check what they are doing.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759600
+
+2015-12-18 12:28:23 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstmotioncells.cpp:
+	* ext/opencv/gstmotioncells.h:
+	  opencv: update motioncells to GstOpencvVideoFilter
+	  Update motioncells to inherit from GstOpencvVideoFilter instead of from
+	  GstElement. This means less code and more uniformity with other OpenCV
+	  elements.
+
+2015-12-18 12:26:16 +0100  Thomas Roos <thomas.roos@industronic.de>
+
+	* sys/directsound/gstdirectsoundsrc.c:
+	* sys/directsound/gstdirectsoundsrc.h:
+	  directsoundsrc: add device property as it is done in directsoundsink
+	  This allows selection of the device by GUID instead of the name. The name is
+	  user-given and multiple devices can have the same name.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759484
+
+2015-12-18 12:36:26 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/directsound/gstdirectsoundsrc.h:
+	  directsoundsrc: Convert header from (some) DOS line endings to UNIX
+	  A mix between different line endings in the same file is not a good idea,
+	  and the .c files are both with UNIX line endings so let's use that.
+
+2015-12-18 10:30:25 +0000  Julien Isorce <j.isorce@samsung.com>
+
+	* sys/applemedia/Makefile.am:
+	  applemedia: set -mmacosx-version-min to 10.8
+	  Otherwise qtkitvideosrc fails to build on OSX 10.10.4
+	  because QTKit has been deprecated since OS X 10.9.
+	  Also set -mmacosx-version-min=10.8 in front to allow
+	  the user or cerbero to override the version.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=745564
+
+2015-12-18 13:17:34 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* ext/gl/gstgloverlay.c:
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	* gst-libs/gst/gl/gstglmemory.c:
+	* gst-libs/gst/gl/gstglmemory.h:
+	* gst-libs/gst/gl/gstgloverlaycompositor.c:
+	* gst-libs/gst/gl/gstglupload.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* sys/applemedia/videotexturecache.m:
+	  glmemory: add gst_gl_memory_allocator_get_default
+	  Add gst_gl_memory_allocator_get_default to get the default allocator based on
+	  the opengl version. Allows us to stop hardcoding the PBO allocator which isn't
+	  supported on gles2.
+	  Fixes GL upload on iOS9 among other things.
+
+2015-12-18 11:49:25 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: don't deadlock on resize
+	  Performing any GL function marshalling off the GL thread with glimagesink's
+	  render lock is prone to deadlocks between the GL thread and the non-GL thread.
+	  What can happen is this:
+	  1. non-GL thread attempts to function marshal to the GL thread.
+	  2. while 1 is happening, the winsys gives an event (say resize)
+	  3. This calls back into glimagesink which taks the render lock.
+	  4. As the GL function marshalling is attempting to run on the GL
+	  and already has glimagesink's render lock locked.  This deadlocks
+	  as the threads are waiting for each other.
+
+2015-12-17 18:16:44 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstedgedetect.cpp:
+	* ext/opencv/gstedgedetect.h:
+	  opencv: update edgedetect to GstOpencvVideoFilter
+	  Update edgedetect to inherit from GstOpencvVideoFilter instead of from
+	  GstElement. This means less code and more uniformity with other OpenCV
+	  elements.
+
+2015-12-17 15:56:57 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/openjpeg/gstopenjpegdec.c:
+	  openjpegdec: Don't crash when decoding returns NULL data for any component
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758943
+
+2015-12-15 14:14:36 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbasememory.c:
+	* gst-libs/gst/gl/gstglbasememory.h:
+	  glbasememory: don't unconditionally add the alignment bytes to the size
+	  e.g when wrapping a data pointer we don't want to map/unmap off the end of
+	  pointer with the alignment bytes.
+	  Instead track that information separately as maxsize is used for mapping by
+	  GstMemory and thus represents a size without any alignment padding bytes.
+
+2015-12-17 10:51:31 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvsmooth.cpp:
+	* ext/opencv/gstcvsmooth.h:
+	  opencv: add blur and bilateral support in cvsmooth
+	  Adding the support for the two other OpenCV linear filters to smooth
+	  images. The new API does support spatial sigma in the bilateral filter,
+	  hence bringing that property back.
+	  Adding reference to new documentation.
+
+2015-12-17 08:51:48 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/pnm/gstpnmenc.c:
+	  pnmenc: Fix wrong logic leading to memory mishandling
+	  While encoding the frame in ASCII mode, per component four bytes are needed
+	  and after every 20 bytes, a \n will be added. So the calculation should be
+	  size = size * (4 + 1 / 20). This should exclude the header being written.
+	  Since header is also being included in the calculations, memory mishandlings
+	  are happening.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759520
+
+2015-12-17 15:50:40 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	  glbuffer: add a name to the allocator
+
+2015-12-17 15:23:13 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbasememory.c:
+	* gst-libs/gst/gl/gstglbasememory.h:
+	* gst-libs/gst/gl/gstglbuffer.c:
+	* gst-libs/gst/gl/gstglmemory.c:
+	* gst-libs/gst/gl/gstglmemory.h:
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	* gst-libs/gst/gl/gstgloverlaycompositor.c:
+	* gst-libs/gst/gl/gstglupload.c:
+	* sys/applemedia/iosurfacememory.c:
+	* sys/applemedia/videotexturecache.m:
+	* tests/check/libs/gstglcolorconvert.c:
+	  gl*memory*: reverse the parameter order of user_data and destroy notify
+	  The convention is to have the destroy notify last after any user data
+
+2015-12-17 15:07:33 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/videotexturecache.m:
+	  applemedia: fix build on iOS
+	  Fix build after 779dc3132c8f6dd560cb07cc2e2c3c72aeaa7845
+
+2015-12-17 14:49:13 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/avfvideosrc.m:
+	  applemedia: avfvideosrc: do fixate
+
+2015-12-16 18:41:06 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstgloverlay.c:
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	* gst-libs/gst/gl/gstglmemorypbo.h:
+	* gst-libs/gst/gl/gstgloverlaycompositor.c:
+	* gst-libs/gst/gl/gstglupload.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* sys/applemedia/videotexturecache.m:
+	* tests/check/libs/gstglcolorconvert.c:
+	* tests/check/libs/gstglmemory.c:
+	* tests/check/libs/gstglupload.c:
+	  glmemorypbo: remove our own alloc()/wrapped()/etc functions
+	  replaced by equivalent functionality within gst_gl_base_memory_alloc()
+
+2015-12-16 18:39:32 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglmemory.c:
+	  glmemory: document gst_gl_memory_init
+
+2015-12-16 18:38:19 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	  glbuffer: remove unneeded gst_gl_buffer_alloc()
+	  Replaced by gst_gl_base_memory_alloc()
+
+2015-12-16 18:37:11 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbasememory.c:
+	  glbasememory: document some functions
+
+2015-12-16 18:36:13 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglmemory.c:
+	  glmemory: add a default copy implementation
+	  Subclasses still need to override this to copy into the correct memory type.
+
+2015-12-16 18:32:40 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	* gst-libs/gst/gl/gstglbufferpool.h:
+	  glbufferpool: use gst_gl_base_memory_alloc as a generic GL allocation framework
+	  Requires the usage of GstGLVideoAllocationParams however any user can set their
+	  own parameters along with an allocator which will be used to allocate the
+	  correct memory type.
+
+2015-12-16 18:30:59 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	* gst-libs/gst/gl/gstglmemorypbo.h:
+	  glmemorypbo: implement GstGLBaseMemory:alloc
+	  Uses the GstGLVideoAllocationParams parameters
+
+2015-12-16 18:23:31 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	* gst-libs/gst/gl/gstglbuffer.h:
+	  glbuffer: implements GstGLBaseMemory::alloc
+	  Create GstGLBufferAllocationParams which is subclass of GstGLAllocationParams
+
+2015-12-16 18:20:17 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglmemory.c:
+	* gst-libs/gst/gl/gstglmemory.h:
+	* sys/androidmedia/gstamcvideodec.c:
+	  glmemory: implement GstGLBaseMemory::alloc
+	  - Create GstGLVideoAllocationParams which is a GstGLAllocationParams subclass.
+	  - Make it possible to allocate glmemory objects directly if no frills are
+	  needed.
+
+2015-12-16 18:13:21 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbasememory.c:
+	* gst-libs/gst/gl/gstglbasememory.h:
+	  glbasememory: add a generic interface for allocating GL memories
+	  This is made possible by a subclassable GstGLAllocationParams that holds
+	  the allocation parameters
+	  Every allocation would now go through gst_gl_base_memory_alloc with the
+	  allocation parameters now being specified in a single struct to allow
+	  extension by different allocators.
+
+2015-12-17 12:30:05 +1100  Matthew Waters <matthew@centricular.com>
+
+	* common:
+	  revert common submodule change
+	  8ae003326157438c12c45589e050c5f446723f61 contained a erroneous common change
+
+2015-12-17 11:06:34 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	  Revert "glbuffer: Don't pass allocation params"
+	  This reverts commit 052f41e5c293ec17c038467ed1e7b92b04d494b0.
+	  This is incorrect and will affect any other glbuffer user that needs/wants to
+	  perform data alignment.
+
+2015-12-16 19:21:24 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvsmooth.cpp:
+	  opencv: add medianBlur support in cvsmooth
+	  With the deprecation of cvSmooth we have to handle the other smoothing
+	  functions manually.
+
+2015-12-16 18:37:37 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvsmooth.cpp:
+	* ext/opencv/gstcvsmooth.h:
+	  opencv: switch deprecated cvSmooth for GaussianBlur
+	  The OpenCV cvSmooth function is deprecated [0] and the documentation
+	  recommends to use GaussianBlur (). This makes the spatial property go
+	  unused. Marking it as deprecated, making it non-functional and will remove
+	  in the next cycle.
+	  [0] http://docs.opencv.org/2.4/modules/imgproc/doc/filtering.html
+
+2015-12-16 11:56:08 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	  glbuffer: Don't pass allocation params
+	  The imported memory has already been allocated, passing allocation
+	  parameters with alignment confuses the memory which endup with a
+	  size different from maxsize and lead to overrun when the memory
+	  is being copied.
+
+2015-12-16 13:59:18 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: improve validation of UTCtiming element
+	  gst_mpdparser_parse_utctiming_node does not validate the parsed values completely. The following scenarios are incorrectly accepted:
+	  - elements with no schemeIdUri property should be rejected
+	  - elements with unrecognized UTCTiming scheme should be rejected
+	  - elements with empty values should be rejected
+	  The last one triggers a division by 0 in gst_dash_demux_poll_clock_drift:
+	  clock_drift->selected_url = clock_drift->selected_url % g_strv_length (urls);
+	  because it urls is a valid pointer to an empty array.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759547
+
+2015-12-16 10:41:47 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstdashdemux.c:
+	  dashdemux: clock_cond is not used and should be removed
+	  There are no threads waiting on clock_cond. It is just initialised and
+	  signalled. It should be removed.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759537
+
+2015-12-16 10:23:23 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstdashdemux.c:
+	  adaptivedemux: fixed clock compensation in get_fragment_waiting_time
+	  Clock compensation is calculated in usec but is added to a GstClockTime value.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759534
+
+2015-12-16 10:21:59 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/applemedia/Makefile.am:
+	  applemedia: Link to IOSurface.framework for the IOSurface API
+
+2015-12-15 17:10:00 +0000  Dave Craig <davecraig@unbalancedaudio.com>
+
+	* gst/videoparsers/gstdiracparse.c:
+	* gst/videoparsers/gsth263parse.c:
+	* gst/videoparsers/gsth264parse.c:
+	* gst/videoparsers/gsth265parse.c:
+	* gst/videoparsers/gstmpeg4videoparse.c:
+	* gst/videoparsers/gstmpegvideoparse.c:
+	* gst/videoparsers/gstpngparse.c:
+	* gst/videoparsers/gstvc1parse.c:
+	  videoparsers: Check for NULL return value of gst_pad_get_current_caps()
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759503
+
+2015-12-16 14:32:20 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/ivtc/gstivtc.c:
+	  ivtc: Fix value memory leak
+	  gvalue variable should be unset instead of reset.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759525
+
+2015-12-16 14:29:20 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/ivtc/gstcombdetect.c:
+	  combdetect: Fix value memory leak
+	  gvalue variable should be unset instead of reset.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759523
+
+2015-12-16 13:08:22 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/pnm/gstpnmdec.c:
+	  pnmdec: Fix scanner memory leak
+	  For corrupted files, scanner memory is being leaked.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759522
+
+2015-12-16 13:06:45 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/pnm/gstpnmdec.c:
+	  pnmdec: Fix buffer memory leak
+	  In case of corrupted file, s->buf allocated is not being freed
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759522
+
+2015-12-16 09:05:42 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/pnm/gstpnmenc.c:
+	  pnmenc: Fix string memory leak
+	  header being allocated is not freed resulting in leak
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759520
+
+2015-12-16 08:52:12 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/gdp/gstgdppay.c:
+	  gdppay: Fix buffer memory leak
+	  outbuffer being allocated is not being pushed to queue for EOS event and hence
+	  should be freed.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759519
+
+2015-12-16 09:39:03 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/applemedia/Makefile.am:
+	  applemedia: Link to IOKit.framework for IOSurface related functions
+
+2015-12-16 09:33:12 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* docs/plugins/gst-plugins-bad-plugins.args:
+	* docs/plugins/gst-plugins-bad-plugins.hierarchy:
+	* docs/plugins/gst-plugins-bad-plugins.signals:
+	* docs/plugins/inspect/plugin-curl.xml:
+	* docs/plugins/inspect/plugin-mpegtsdemux.xml:
+	* docs/plugins/inspect/plugin-mpegtsmux.xml:
+	* docs/plugins/inspect/plugin-opus.xml:
+	* docs/plugins/inspect/plugin-spandsp.xml:
+	  docs: update to git
+
+2015-12-16 08:25:19 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/yadif/vf_yadif.c:
+	  yadif: Fix illegal memory access
+	  When applying the spatial prediction, there is an illegal access of -1 index of array.
+	  Hence adding a condition to avoid this.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759518
+
+2015-12-16 08:22:00 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/yadif/gstyadif.c:
+	  yadif: Fix gvalue memory leak
+	  gvalue variable should be unset instead of reset.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759518
+
+2015-12-16 17:02:27 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: fix texture-target on iOS
+
+2015-12-16 15:20:30 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: remove obsolete FIXME
+
+2015-12-16 14:38:44 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/avfvideosrc.m:
+	  applemedia: avfvideosrc: rework GLMemory negotiation
+	  Only do GLMemory when a GstGLContext is available AND GLMemory is actually
+	  negotiated with downstream.
+
+2015-12-16 13:47:00 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/avfvideosrc.m:
+	  applemedia: avfvideosrc: update after IOSurface changes
+	  Prefer GLMemory over sysmem. Also now when pushing GLMemory we push the
+	  original formats (UYVY in OSX, BGRA in iOS) and leave it to downstream to
+	  convert.
+
+2015-12-14 16:10:01 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/videotexturecache.h:
+	* sys/applemedia/videotexturecache.m:
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: remove the internal GstGLColorConvert
+	  It was added back in the day to make texture sharing work by default with
+	  glimagesink inside playbin. These days glimagesink accepts (and converts) YUV
+	  internally so it's no longer needed.
+
+2015-12-14 14:23:20 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: decouple outputting textures from outputting RGBA
+	  We're going to be able to output NV12 textures soon.
+
+2015-12-11 13:20:05 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* common:
+	* sys/applemedia/Makefile.am:
+	* sys/applemedia/iosurfacememory.c:
+	* sys/applemedia/iosurfacememory.h:
+	* sys/applemedia/videotexturecache.h:
+	* sys/applemedia/videotexturecache.m:
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: switch to IOSurface on Mac
+	  Switch to using IOSurface instead of CVOpenGLTextureCache on OSX. The latter can't be
+	  used anymore to do YUV => RGB with opengl3 on El Capitan as GL_YCBCR_422_APPLE
+	  has been removed from the opengl3 driver. Also switch to NV12 from UYVY, which
+	  was the only YUV format supported by CVOpenGLTextureCache.
+
+2015-12-10 16:22:08 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/Makefile.am:
+	* sys/applemedia/avfvideosrc.m:
+	* sys/applemedia/corevideotexturecache.h:
+	* sys/applemedia/corevideotexturecache.m:
+	* sys/applemedia/videotexturecache.h:
+	* sys/applemedia/videotexturecache.m:
+	* sys/applemedia/vtdec.c:
+	* sys/applemedia/vtdec.h:
+	  applemedia: rename GstCoreVideoTextureCache to GstVideoTextureCache
+	  First of a few commits to stop using CVOpenGLTextureCache on OSX and use
+	  IOSurfaces directly instead. CVOpenGLTextureCache hasn't been updated for OpenGL
+	  3 which is why texture sharing is currently disabled on OSX.
+
+2015-11-17 19:31:53 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  Revert "vtdec: disable the texture cache on OSX"
+	  This reverts commit f02425c4afcd85260a1b387aeddf863774257917.
+
+2015-12-15 14:17:16 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* gst-libs/gst/gl/gstglupload.c:
+	  glupload: fix allocator name after GLMemory API changes
+
+2015-12-15 19:28:05 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* ext/qt/Makefile.am:
+	  qtsink: Add configured GL cflags to the build
+	  We don't directly link to GL in the element, though we use GL headers.
+	  For this reason we need to include the proper GL headers path. This
+	  prevent this element from using a different GL header then libgstgl.
+
+2015-12-15 19:25:16 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* configure.ac:
+	* gst-libs/gst/gl/gstglapi.h:
+	  gl: Allow using non-system mesa with both GL and GLES
+	  GCC automatically disable redundance warnings for system headers. As
+	  soon as we start using a non-system installed mesa, we would start
+	  having issues. The test for both wasn't setting any flags, so it would
+	  work but then fail at runtime.
+	  This is being fixed by disabling in the code (where needed only) that
+	  GCC warning. The test is also fixed to avoid the false positive we had.
+
+2015-12-15 15:59:30 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstpyramidsegment.cpp:
+	  opencv: pyramidsegment: fix example launch line
+	  Use videotestsrc and autovideosink in the example gst-launch-1.0 line and
+	  not a useless fakesrc-fakesink example.
+
+2015-12-15 15:56:19 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvdilate.cpp:
+	* ext/opencv/gstcvequalizehist.cpp:
+	* ext/opencv/gstcverode.cpp:
+	* ext/opencv/gstcvlaplace.cpp:
+	* ext/opencv/gstcvsmooth.cpp:
+	* ext/opencv/gstcvsobel.cpp:
+	  opencv: add headers with example launch lines
+	  Add description headers for all the OpenCV plugins missing them, so we can
+	  have gst-launch-1.0 example launch lines for all of them.
+
+2015-12-14 16:48:45 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* configure.ac:
+	  opengl: Use pkg-config if available
+	  libMesa ships .pc files now for gl/egl/glesv2. This patch makes use
+	  of it while keeping support for system without.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=751068
+
+2015-12-15 11:59:00 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst/geometrictransform/gstbulge.c:
+	* gst/geometrictransform/gstcircle.c:
+	* gst/geometrictransform/gstdiffuse.c:
+	* gst/geometrictransform/gstfisheye.c:
+	* gst/geometrictransform/gstkaleidoscope.c:
+	* gst/geometrictransform/gstmarble.c:
+	* gst/geometrictransform/gstmirror.c:
+	* gst/geometrictransform/gstperspective.c:
+	* gst/geometrictransform/gstpinch.c:
+	* gst/geometrictransform/gstrotate.c:
+	* gst/geometrictransform/gstsphere.c:
+	* gst/geometrictransform/gstsquare.c:
+	* gst/geometrictransform/gststretch.c:
+	* gst/geometrictransform/gsttunnel.c:
+	* gst/geometrictransform/gsttwirl.c:
+	* gst/geometrictransform/gstwaterripple.c:
+	  geometrictransform: add headers with example launch lines
+	  Add description headers for all geometrictransform elements so we can have
+	  gst-launch-1.0 example launch lines for all of them.
+
+2015-12-14 11:09:46 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* README:
+	* ext/assrender/gstassrender.c:
+	* ext/chromaprint/gstchromaprint.c:
+	* ext/curl/gstcurlbasesink.c:
+	* ext/curl/gstcurlfilesink.c:
+	* ext/curl/gstcurlftpsink.c:
+	* ext/curl/gstcurlhttpsink.c:
+	* ext/curl/gstcurlsftpsink.c:
+	* ext/curl/gstcurlsmtpsink.c:
+	* ext/daala/gstdaaladec.c:
+	* ext/daala/gstdaalaenc.c:
+	* ext/directfb/dfbvideosink.c:
+	* ext/dts/gstdtsdec.c:
+	* ext/faac/gstfaac.c:
+	* ext/faad/gstfaad.c:
+	* ext/gl/gstglbumper.c:
+	* ext/gl/gstgldeinterlace.c:
+	* ext/gl/gstgldifferencematte.c:
+	* ext/gl/gstgleffects.c:
+	* ext/gl/gstglfilterreflectedscreen.c:
+	* ext/gl/gstglfiltershader.c:
+	* ext/gl/gstglstereosplit.c:
+	* ext/gl/gstgltestsrc.c:
+	* ext/gl/gstgltransformation.c:
+	* ext/kate/gstkatedec.c:
+	* ext/kate/gstkateenc.c:
+	* ext/kate/gstkateparse.c:
+	* ext/kate/gstkatetag.c:
+	* ext/kate/gstkatetiger.c:
+	* ext/ladspa/gstladspa.c:
+	* ext/libvisual/visual-gl.c:
+	* ext/mpg123/gstmpg123audiodec.c:
+	* ext/mplex/gstmplex.cc:
+	* ext/openal/gstopenalsink.c:
+	* ext/openal/gstopenalsrc.c:
+	* ext/opus/gstopusdec.c:
+	* ext/opus/gstopusenc.c:
+	* ext/opus/gstopusparse.c:
+	* ext/resindvd/resin-play:
+	* ext/resindvd/resin-play2:
+	* ext/rsvg/gstrsvgdec.c:
+	* ext/rsvg/gstrsvgoverlay.c:
+	* ext/rtmp/gstrtmpsink.c:
+	* ext/rtmp/gstrtmpsrc.c:
+	* ext/sndio/sndiosink.c:
+	* ext/sndio/sndiosrc.c:
+	* ext/teletextdec/gstteletextdec.c:
+	* ext/wayland/gstwaylandsink.c:
+	* ext/zbar/gstzbar.c:
+	* gst/aiff/aiffparse.c:
+	* gst/asfmux/gstasfmux.c:
+	* gst/audiofxbad/gstaudiochannelmix.c:
+	* gst/audiomixer/gstaudiomixer.c:
+	* gst/audiovisualizers/gstspacescope.c:
+	* gst/audiovisualizers/gstspectrascope.c:
+	* gst/audiovisualizers/gstsynaescope.c:
+	* gst/audiovisualizers/gstwavescope.c:
+	* gst/autoconvert/gstautovideoconvert.c:
+	* gst/camerabin2/gstcamerabin2.c:
+	* gst/camerabin2/gstviewfinderbin.c:
+	* gst/coloreffects/gstchromahold.c:
+	* gst/coloreffects/gstcoloreffects.c:
+	* gst/dataurisrc/gstdataurisrc.c:
+	* gst/debugutils/fpsdisplaysink.c:
+	* gst/debugutils/gstchopmydata.c:
+	* gst/debugutils/gstdebugspy.c:
+	* gst/debugutils/gstwatchdog.c:
+	* gst/dvbsuboverlay/gstdvbsuboverlay.c:
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/festival/gstfestival.c:
+	* gst/fieldanalysis/gstfieldanalysis.c:
+	* gst/freeverb/gstfreeverb.c:
+	* gst/gaudieffects/gstburn.c:
+	* gst/gaudieffects/gstchromium.c:
+	* gst/gaudieffects/gstdilate.c:
+	* gst/gaudieffects/gstdodge.c:
+	* gst/gaudieffects/gstexclusion.c:
+	* gst/gaudieffects/gstgaussblur.c:
+	* gst/gaudieffects/gstsolarize.c:
+	* gst/gdp/README:
+	* gst/gdp/gstgdpdepay.c:
+	* gst/gdp/gstgdppay.c:
+	* gst/id3tag/gstid3mux.c:
+	* gst/inter/gstinteraudiosink.c:
+	* gst/inter/gstinteraudiosrc.c:
+	* gst/inter/gstintersubsink.c:
+	* gst/inter/gstintersubsrc.c:
+	* gst/inter/gstintervideosink.c:
+	* gst/inter/gstintervideosrc.c:
+	* gst/interlace/gstinterlace.c:
+	* gst/ivtc/gstcombdetect.c:
+	* gst/ivtc/gstivtc.c:
+	* gst/jp2kdecimator/gstjp2kdecimator.c:
+	* gst/jpegformat/gstjifmux.c:
+	* gst/jpegformat/gstjpegparse.c:
+	* gst/mxf/mxfdemux.c:
+	* gst/mxf/mxfmux.c:
+	* gst/nuvdemux/gstnuvdemux.c:
+	* gst/pnm/gstpnmdec.c:
+	* gst/pnm/gstpnmenc.c:
+	* gst/rawparse/README:
+	* gst/removesilence/gstremovesilence.c:
+	* gst/sdp/gstsdpdemux.c:
+	* gst/speed/gstspeed.c:
+	* gst/stereo/gststereo.c:
+	* gst/videofilters/gstscenechange.c:
+	* gst/videofilters/gstvideodiff.c:
+	* gst/videofilters/gstzebrastripe.c:
+	* gst/videoparsers/gstdiracparse.c:
+	* gst/videosignal/gstsimplevideomark.c:
+	* gst/videosignal/gstsimplevideomarkdetect.c:
+	* gst/videosignal/gstvideoanalyse.c:
+	* gst/y4m/gsty4mdec.c:
+	* gst/yadif/gstyadif.c:
+	* sys/applemedia/atdec.c:
+	* sys/applemedia/avfassetsrc.m:
+	* sys/applemedia/iosassetsrc.m:
+	* sys/applemedia/vtdec.c:
+	* sys/directsound/gstdirectsoundsrc.c:
+	* sys/dvb/README:
+	* sys/dvb/gstdvbsrc.c:
+	* sys/opensles/openslessink.c:
+	* sys/opensles/openslessrc.c:
+	* sys/shm/gstshmsink.c:
+	* sys/shm/gstshmsrc.c:
+	* sys/vdpau/gstvdpvideopostprocess.c:
+	* sys/vdpau/mpeg/gstvdpmpegdec.c:
+	* sys/vdpau/mpeg4/gstvdpmpeg4dec.c:
+	* sys/winks/gstksvideosrc.c:
+	* sys/winscreencap/gstdx9screencapsrc.c:
+	* sys/winscreencap/gstgdiscreencapsrc.c:
+	* tools/gst-element-maker:
+	  plugins-bad: Fix example pipelines
+	  rename gst-launch --> gst-launch-1.0
+	  replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
+	  fix caps in examples
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759432
+
+2015-12-14 15:01:09 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* .gitignore:
+	  ignore: videoframe-audiolevel test
+
+2015-12-14 14:44:31 -0500  Xavier Claessens <xavier.claessens@collabora.com>
+
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglframebuffer.h:
+	* gst-libs/gst/insertbin/gstinsertbin.h:
+	  bad: Add g_autoptr() support to all types
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754464
+
+2015-12-14 12:31:52 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	  glviewconvert: check pointer before dereferencing
+	  priv->primary_out could be NULL, check before dereferencing it in
+	  GST_BUFFER_FLAG_SET ()
+	  CID 1308945
+
+2015-12-14 13:43:10 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+	* gst/videoframe_audiolevel/gstvideoframe-audiolevel.c:
+	  videoframe-audiolevel: Fix possible division by zero
+	  In update_rms_from_buffer(), division by "frames" wasn't checking whether
+	  "frames" is zero.
+	  CID 1341519.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759443
+
+2015-12-14 09:38:41 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/examples/gl/clutter/cluttershare.c:
+	  clutter: Fix compilation error in GL examples
+	  Include gst/gl.h instead of specific headers to prevent such problems also in
+	  the future.
+	  In file included from ../../../../gst-libs/gst/gl/gl.h:47:0,
+	  from ../../../../gst-libs/gst/gl/gstglbasememory.h:137,
+	  from ../../../../gst-libs/gst/gl/gstglmemory.h:29,
+	  from cluttershare.c:39:
+	  ../../../../gst-libs/gst/gl/gstglmemorypbo.h:51:20: error: field ‘mem’ has incomplete type
+	  GstGLMemory      mem;
+	  ^
+	  ../../../../gst-libs/gst/gl/gstglmemorypbo.h:124:24: error: field ‘parent’ has incomplete type
+	  GstGLMemoryAllocator parent;
+	  ^
+	  ../../../../gst-libs/gst/gl/gstglmemorypbo.h:134:29: error: field ‘parent_class’ has incomplete type
+	  GstGLMemoryAllocatorClass parent_class;
+	  ^
+
+2015-12-14 19:18:14 +1100  Matthew Waters <matthew@centricular.com>
+
+	* sys/applemedia/corevideotexturecache.m:
+	  applemedia: update for GLMemory API changes
+
+2015-12-14 19:15:14 +1100  Matthew Waters <matthew@centricular.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  amcvideodec: update for GLMemory API changes
+
+2015-12-14 18:41:30 +1100  Matthew Waters <matthew@centricular.com>
+
+	* tests/check/libs/gstglcolorconvert.c:
+	* tests/check/libs/gstglupload.c:
+	  tests: update for glmemory api changes
+
+2015-12-14 18:20:23 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	  glbuffer: bind/unbind on map/unmap for GL mappings
+	  Bind the handle to the GL target on map/unmap to save the caller from
+	  handling this themselves.
+
+2015-12-14 18:19:37 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbuffer.c:
+	* gst-libs/gst/gl/gstglbuffer.h:
+	  glbuffer: remove buffer specific transfer flags
+	  Instead rely on GstGLBaseMemory's transfer handling
+
+2015-12-14 18:18:20 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	  glmemorypbo: map/unmap pbo memory correctly for state tracking
+	  Otherwise some downloads will fail to occur from the PBO.
+
+2015-12-14 18:15:42 +1100  Matthew Waters <matthew@centricular.com>
+
+	* tests/check/libs/gstglmemory.c:
+	  tests/glmemory: include the generic gl header
+	  Including gstglmemory.h directly results in the compiler complaining
+	  about incomplete types.
+
+2015-12-14 17:05:31 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglformat.c:
+	  glformat: add compatibility definitions for OES/rectangle textures
+
+2015-12-14 13:49:18 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglbasebuffer.c:
+	* gst-libs/gst/gl/gstglbasebuffer.h:
+	* gst-libs/gst/gl/gstgldisplay.c:
+	  glbasebuffer: remove unsed memory subclass
+	  The functionality has been split into GstGLBaseMemory and GstGLBuffer.
+
+2015-12-14 13:43:59 +1100  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs.types:
+	* ext/gl/gstgldownloadelement.c:
+	* ext/gl/gstgloverlay.c:
+	* ext/qt/gstqsgtexture.cc:
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	* gst-libs/gst/gl/gstgldisplay.c:
+	* gst-libs/gst/gl/gstglformat.c:
+	* gst-libs/gst/gl/gstglformat.h:
+	* gst-libs/gst/gl/gstglmemory.c:
+	* gst-libs/gst/gl/gstglmemory.h:
+	* gst-libs/gst/gl/gstglmemorypbo.c:
+	* gst-libs/gst/gl/gstglmemorypbo.h:
+	* gst-libs/gst/gl/gstgloverlaycompositor.c:
+	* gst-libs/gst/gl/gstglupload.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* tests/check/libs/gstglmemory.c:
+	  glmemory: base classify and add the pbo memory on top
+	  The base class is useful for having multiple backing memory types other
+	  than the default.  e.g. IOSurface, EGLImage, dmabuf?
+	  The PBO transfer logic is now inside GstGLMemoryPBO which uses GstGLBuffer
+	  to manage the PBO memory.
+	  This also moves the format utility functions into their own file.
+
+2015-12-14 13:08:10 +1100  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs.types:
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglbuffer.c:
+	* gst-libs/gst/gl/gstglbuffer.h:
+	* gst-libs/gst/gl/gstgldisplay.c:
+	  gl: add a GL buffer based GstMemory
+	  Heavily based on GstGLBaseBuffer that is a subclass of GstGLBaseMemory.
+	  Provides GPU and CPU accessible GL buffer objects by GL handle or by
+	  sysmem data pointer.
+
+2015-12-14 12:59:02 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglbasememory.c:
+	* gst-libs/gst/gl/gstglbasememory.h:
+	  gl: add a base memory object
+	  It handles the following
+	  - GstAllocationParams -> gst_memory_init transformation
+	  - Makes sure that map/unmap/create/destroy happen on the GL thread with
+	  a GL context current.
+	  - Holds a possible sysmem accessible data pointer with alignment.
+	  - Holds the need upload/download transfer state
+
+2015-12-14 12:26:01 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglutils.c:
+	* gst-libs/gst/gl/gstglutils.h:
+	  gl: add convenience function for the start of a video frame
+	  Get's the start of the video frame based on a GstVideoInfo and
+	  GstVideoAlignment.
+
+2015-12-11 16:07:36 +1100  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs-docs.sgml:
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* docs/libs/gst-plugins-bad-libs.types:
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	* gst-libs/gst/gl/gstglbufferpool.h:
+	* gst-libs/gst/gl/gstgluploadmeta.c:
+	* gst-libs/gst/gl/gstgluploadmeta.h:
+	* tests/check/libs/gstglupload.c:
+	  gluploadmeta; remove convenience helper API
+	  It was not really useful as if one knows about libgstgl, one can just use
+	  GLMemory objects directly.
+
+2015-12-11 15:39:57 +1100  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs-docs.sgml:
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* docs/libs/gst-plugins-bad-libs.types:
+	* ext/gl/gstglstereomix.h:
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstgldownload.c:
+	* gst-libs/gst/gl/gstgldownload.h:
+	  gldownload: remove helper api from the library
+	  It was never used by anyone and is not needed anymore with the element
+	  and GstGLMemory's transparent support for downloading textures.
+
+2015-12-12 20:07:32 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvdilate.cpp:
+	* ext/opencv/gstcvdilateerode.cpp:
+	* ext/opencv/gstcvdilateerode.h:
+	* ext/opencv/gstcvequalizehist.cpp:
+	* ext/opencv/gstcvequalizehist.h:
+	* ext/opencv/gstcverode.cpp:
+	* ext/opencv/gstcvlaplace.cpp:
+	* ext/opencv/gstcvlaplace.h:
+	* ext/opencv/gstcvsmooth.cpp:
+	* ext/opencv/gstcvsmooth.h:
+	* ext/opencv/gstcvsobel.cpp:
+	* ext/opencv/gstcvsobel.h:
+	* ext/opencv/gstdisparity.cpp:
+	* ext/opencv/gstdisparity.h:
+	* ext/opencv/gstedgedetect.cpp:
+	* ext/opencv/gstedgedetect.h:
+	* ext/opencv/gstfaceblur.cpp:
+	* ext/opencv/gstfaceblur.h:
+	* ext/opencv/gstfacedetect.cpp:
+	* ext/opencv/gstgrabcut.cpp:
+	* ext/opencv/gsthanddetect.cpp:
+	* ext/opencv/gsthanddetect.h:
+	* ext/opencv/gstmotioncells.cpp:
+	* ext/opencv/gstmotioncells.h:
+	* ext/opencv/gstopencvvideofilter.cpp:
+	* ext/opencv/gstpyramidsegment.cpp:
+	* ext/opencv/gstpyramidsegment.h:
+	* ext/opencv/gstretinex.cpp:
+	* ext/opencv/gstretinex.h:
+	* ext/opencv/gstsegmentation.cpp:
+	* ext/opencv/gstskindetect.cpp:
+	* ext/opencv/gstskindetect.h:
+	* ext/opencv/gsttemplatematch.cpp:
+	* ext/opencv/gsttemplatematch.h:
+	* ext/opencv/gsttextoverlay.cpp:
+	* ext/opencv/gsttextoverlay.h:
+	  opencv: clean includes
+	  The opencv element includes were full of duplicates and uneeded headers.
+	  For example a few elements that stopped using gstcvopencvutils still
+	  included that header file.
+
+2015-12-12 19:31:55 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstopencvutils.cpp:
+	* ext/opencv/gstopencvutils.h:
+	  opencv: remove unused functions in gstopencvutils
+	  Since commit 45ca8876b2f5267f7edb842b6d56d7a6c271ccb3 nobody is using
+	  gst_opencv_get_ipl_depth_and_channels() or
+	  gst_opencv_parse_iplimage_params_from_structure(). Remove this dead
+	  code.
+
+2015-12-12 19:13:42 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/MotionCells.cpp:
+	* ext/opencv/MotionCells.h:
+	  motioncells: Remove unused includes
+
+2015-12-12 10:06:55 +1100  Matthew Waters <matthew@centricular.com>
+
+	* common:
+	  revert common submodule change
+
+2015-12-12 09:33:38 +1100  Matthew Waters <matthew@centricular.com>
+
+	* common:
 	* ext/gl/gstgltransformation.c:
 	  gltransformation: clear to transparent
 	  Otherwise composition will result in a black frame outside the transformed
 	  video.
 
-2015-12-08 16:35:45 +1100  Matthew Waters <matthew@centricular.com>
-
-	* gst-libs/gst/gl/glprototypes/sync.h:
-	  glproto: include function definitions for GL_APPLE_sync
-	  Provides a performance improvement on iOS where we were falling back to glFinish
-	  on settting sync points.
-
 2015-12-11 11:39:08 +0100  Thomas Roos <thomas.roos@industronic.de>
 
 	* sys/directsound/gstdirectsoundsrc.c:
@@ -35,17 +1404,502 @@
 	  Also take the element's mutex in unprepare().
 	  https://bugzilla.gnome.org/show_bug.cgi?id=738292
 
+2015-12-10 12:47:17 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	  mxfdemux: Only pre-set position for exactly the same essence track
+	  The edit rate is only supposed to be the same in a source package, but there
+	  might be multiple source packages with the same essence container. As such
+	  just comparing the body/index SID is not sufficient.
+
+2015-12-10 12:25:54 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	  mxfdemux: Only pre-set the track position if it's for the same body/index SID
+
+2015-12-10 14:41:44 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m:
+	  libgstgl: gstglcontext_cocoa: kCGLPFAStereo has been deprecated in 10.11
+	  Also since the version scheme has changed (to include the micro number) since
+	  10.10, use the MAC_OS_X_VERSION_* macro to avoid confusion.
+
+2015-12-10 12:41:00 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	  glbufferpool: relax check for multiple texture targets
+	  Only complain about multiple texture targets when _different_ texture targets
+	  are configured.
+
+2015-12-10 12:33:52 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* gst-libs/gst/gl/gstglmemory.c:
+	  glmemory: take subsampling into account for rectangle textures
+	  Rectangle textures don't use normalized coordinates so subsampling needs to be
+	  factored in explicitly.
+	  Fixes YUV => RGB conversion for rectangle textures.
+
+2015-12-09 16:55:00 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	  mxfdemux: Only access the index table if it has enough elements
+
+2015-12-09 16:28:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	  mxfdemux: Use keyframe information from index table segments if available
+	  We don't implement keyframe detection for all codecs and this will allow us to
+	  implement better seeking.
+
+2015-12-09 16:31:19 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	  mxfdemux: Collect all index table segments after finding the random index pack
+	  That way we always have the index table information available, especially the
+	  keyframe-ness of all buffers.
+
+2015-12-08 18:15:55 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	* gst/mxf/mxfdemux.h:
+	* gst/mxf/mxftypes.h:
+	  mxfdemux: Fix handling of IndexTableSegments
+	  This was completely broken before and could only work on a very constrained
+	  set of files. After these changes it should work except for situations where
+	  PTS != DTS, which is not handled at all in mxfdemux currently.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759118
+
+2015-12-08 14:06:21 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: avoid pushing events with manifest lock
+	  It can be an easy source of deadlocks. Reproducible with very
+	  fast connections (local server).
+
+2015-12-08 20:24:45 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxftypes.c:
+	  mxftypes: Fix parsing of index table segments
+
+2015-12-08 18:23:02 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Handle aggregation with NULL buffers without crashing
+
+2015-12-08 16:45:33 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Add FIXME about enforcing that all tracks in a source package have the same edit rate
+	  The standard requires this and also the index table segments are not going to
+	  work otherwise.
+
+2015-12-07 20:27:23 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	* gst/mxf/mxfmux.h:
+	  mxfmux: Write index table segments
+	  But only for the first essence track, and once for every keyframe every 2
+	  seconds.
+
+2015-12-07 20:26:17 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmetadata.c:
+	  mxfmetadata: Fix static local tag for index sid
+
+2015-12-07 19:34:25 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxftypes.c:
+	* gst/mxf/mxftypes.h:
+	  mxftypes: Add function to serialize an index table segment to a buffer
+
+2015-12-07 18:59:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	* gst/mxf/mxftypes.c:
+	* gst/mxf/mxftypes.h:
+	  mxfmux: Index table segments must not use the primer pack
+	  According to S377-1-2009c 9.2 the local tags must not be resolved from the
+	  primer pack, which as a result means that there can't be any other tags than
+	  statically assigned ones.
+
+2015-12-07 14:10:30 +1000  Duncan Palmer <dpalmer@digisoft.tv>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: add support for seeking to fragment boundaries
+	  Setting the seek flags to GST_SEEK_FLAG_SNAP_* will change the seek
+	  target time to a segment boundary.
+	  Based on original work by Ben Willers <bwillers@digisoft.tv>.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=759108
+
+2015-12-08 09:53:11 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/elements/dash_mpd.c:
+	  dash: Fix unit test after moving of framerates to RepresentationBaseType
+
+2015-12-08 09:33:39 +0900  suhwang.kim <suhwang.kim@lge.com>
+
+	* ext/dash/gstdashdemux.c:
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	  dashdemux: Suggestion for setting the framerate information.
+	  Dashdemux has set the width and height information from MPD manifest.
+	  Some embedded devices which are not insufficient H/W resources need more information such as framerate
+	  to assign H/W resources. So I suggested that dashdemux also needs to set the framerate information from MDP manifest.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758515
+
+2015-12-08 09:23:22 +0900  suhwang.kim <suhwang.kim@lge.com>
+
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	  dashdemux: maxFrameRate & minFrameRate should be in RepresentationBase.
+	  According to the spec, they can be in AdaptationSet, Representation and SubRepresentation.
+	  So They should be in RepresentationBase.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758515
+
+2015-12-08 16:35:45 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/glprototypes/sync.h:
+	  glproto: include function definitions for GL_APPLE_sync
+	  Provides a performance improvement on iOS where we were falling back to glFinish
+	  on settting sync points.
+
 2015-12-07 20:34:10 +0200  Sebastian Dröge <sebastian@centricular.com>
 
 	* ext/openjpeg/gstopenjpegenc.c:
 	  openjpegenc: All frames in JPEG2000 are keyframes, mark them as such
 
+2015-12-07 09:08:15 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
+
+	* autogen.sh:
+	* common:
+	  Automatic update of common submodule
+	  From b319909 to 86e4663
+
+2015-12-07 13:48:12 +0100  Edward Hervey <edward@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Remove more dead code
+	  Coverity CID #1328818
+
+2015-12-07 13:36:29 +0100  Edward Hervey <edward@centricular.com>
+
+	* ext/teletextdec/gstteletextdec.c:
+	  teletextdec: Fix leak and NULL pointer usage
+	  Coverity CID #1341744
+
+2015-12-07 11:56:09 +0100  Edward Hervey <edward@centricular.com>
+
+	* ext/teletextdec/gstteletextdec.c:
+	  teletextdec: Remove dead code
+	  ++i in a for() loop results in the loop never being executed more than once
+	  Coverity CID #1341748
+	  Coverity CID #1341743
+
+2015-03-12 11:29:00 +0000  Frédéric Wang <fred.wang@free.fr>
+
+	* configure.ac:
+	* sys/acmenc/acmenc.c:
+	* sys/acmmp3dec/acmmp3dec.c:
+	  acm: Port ACM MP3 decoder and encoders to GStreamer 1.x
+	  https://bugzilla.gnome.org/show_bug.cgi?id=744047
+
+2015-09-24 17:40:02 +0200  Daniel Kamil Kozar <dkk089@gmail.com>
+
+	* configure.ac:
+	* ext/teletextdec/Makefile.am:
+	* ext/teletextdec/gstteletextdec.c:
+	* ext/teletextdec/gstteletextdec.h:
+	* ext/teletextdec/teletext.c:
+	  port teletextdec to 1.0
+	  https://bugzilla.gnome.org/show_bug.cgi?id=733819
+
+2015-12-02 18:28:15 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
+
+	* gst/videoparsers/gsth264parse.c:
+	* gst/videoparsers/gsth265parse.c:
+	  h26xparse: Resend PPS/SPS after seek
+	  This is to support byte-stream decoder that does not remember the
+	  PPS/SPS after a flush. This is not needed by all decoders, but is
+	  harmless for those that do remember.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758405
+
+2015-12-01 18:09:25 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst-libs/gst/gl/gstglupload.c:
+	  glupload: Only offer custom allocator with caps features
+	  To use GLMemory and EGLImage allocators, one need to know the
+	  libgstgl API. This is only expected if the associated caps features
+	  have been negotiated. Generic element that otherwise receive those
+	  allocators may fail, resulting in broken pieline. We don't want to
+	  force all generic element to check if the allocator is a custom
+	  allocator or a normal allocator (which implement the _alloc method).
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758877
+
+2015-12-04 18:05:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Don't copy input buffers, just append them to the header
+
+2015-12-03 11:46:10 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/hls/m3u8.c:
+	  hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist
+	  As HLS does not provide any way of knowing the server's clock, and we do
+	  buffering of "live" streams, at some point we will fall behind the server in
+	  many cases and would have to advance to a fragment that is not in the playlist
+	  anymore.
+	  Previously we would've just resynced to the next oldest fragment that is still
+	  there, but this causes problems as from this point onwards we would always
+	  fall off the playlist again all the time.
+	  Instead we now resync and move to the 3rd newest fragment like we would do
+	  when starting playback of a live stream.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758987
+
+2015-12-03 18:21:50 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	  hls: m3u8: remove superfluous gst_m3u8_copy() implementation
+	  No need to implement _copy() when we just copy a list that
+	  we're freeing three lines later anyway. Instead just steal
+	  the new main list.
+
+2015-12-03 10:08:05 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: Log PTS of buffers that are pushed downstream
+
+2015-10-20 09:49:16 +0200  Edward Hervey <edward@centricular.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: Expose DVB Subpicture as subpictures
+	  For some reason we were considering them as private data.
+
+2015-10-20 17:22:23 +0200  Edward Hervey <edward@centricular.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: Push GAP events *after* deactivating old programs
+	  The order in which program switch must happen is:
+	  1) drain all data on old pads (but don't push EOS)
+	  2) add new pads (but don't push any data on them)
+	  3) Push EOS and remove old pads
+	  4) Start pushing data on new pads
+	  There was one caveat in this implementation, which is that when
+	  we activate a sparse pad (step 2) we would push a GAP event. The problem
+	  is that, while being an event, it is actually *data*.
+	  We therefore need to make sure pushing those GAP event is done at the step
+	  we start pushing data.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=750402
+
+2015-09-15 18:20:38 +0200  Edward Hervey <edward@centricular.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: Make sure old streams are drained before switching
+	  Before we add any streams, make sure we drain all streams. This ensures
+	  there's consistency that only "new" data will be pushed on buffers once
+	  the new pads are added
+	  https://bugzilla.gnome.org/show_bug.cgi?id=750402
+
+2015-09-10 14:55:05 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* gst/mpegtsdemux/mpegtsbase.c:
+	* gst/mpegtsdemux/mpegtsbase.h:
+	* gst/mpegtsdemux/tsdemux.c:
+	* gst/mpegtsdemux/tsdemux.h:
+	  mpegtsdemux: Allow deactivation of programs to be delayed
+	  When changing programs, the order of events needs to be the following:
+	  * add pads from new program
+	  * send EOS on old pads
+	  * remove old pads
+	  * emit 'no-more-pads'
+	  Previously tsdemux was not doing that, and was first deactivating and
+	  removing old pads before adding new ones.
+	  We fix this by allowing subclasses of mpegtsbase to be able to handle
+	  themselves the deactivation of programs. In this case tsdemux will
+	  properly deactivate it once it has activated the new program.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=750402
+
+2015-12-02 11:01:53 +0100  Maroš Ondrášek <mx3ldev@gmail.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: update current variant if connection speed is set
+	  If connection speed is set, playlist according
+	  to connection speed is selected as current playlist.
+	  Problem is that the current variant of main playlist still
+	  points to previously set variant.
+	  If previously set variant doesn't correspond to current
+	  playlist, then it causes unnecessary change of playlist
+	  to the same playlist after first fragment is downloaded,
+	  because of not updated current variant.
+	  To fix this, we need to make sure that current variant
+	  of main playlist corresponds to the current playlist
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758946
+
+2015-12-02 14:35:22 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/videoframe_audiolevel/gstvideoframe-audiolevel.c:
+	  videoframe-audiolevel: Fix compilation of static plugin and some compiler warnings
+	  Use G_GSIZE_FORMAT for gsize instead of %ld and make sure that the plugin name
+	  is a valid C identifier, i.e. contains no spaces or dashes.
+
+2015-12-02 22:42:39 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: improve the YUY2/UYVY->RGBA conversion shader
+	  Don't offset the y-axis.  We only need to offset on the x-axis.
+	  Removes a sawtooth pattern on horizontal and vertical edges.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755486
+
+2015-12-02 22:40:06 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: improve RGBA->YUY2/UYVY conversion shader
+	  We should only average the chroma samples not the luma sample.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758904
+
+2015-11-11 03:55:27 +1100  Jan Schmidt <jan@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: Tell the base class the fragment duration
+	  adaptivedemux uses the fragment duration as a delay
+	  in some cases, so make sure to set it.
+
+2015-11-11 03:54:51 +1100  Jan Schmidt <jan@centricular.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.h:
+	  adaptivedemux: Send the bitrate of the stream as a tag
+	  If we know or can measure the nominal bitrate of a stream,
+	  send that info as a tag downstream
+
+2015-11-08 01:34:30 +1100  Jan Schmidt <jan@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: When switching bitrate variants, don't jump back
+	  Don't jump backward to 3 files from the end of the playlist
+	  when switching variants - it just means we downloaded
+	  fragments fast and caught up to the end of the playlist.
+	  Disable that by treating a variant switch as a playlist
+	  update, not a restart due to a seek or so.
+
+2015-04-21 21:09:19 +0300  Vivia Nikolaidou <vivia@toolsonair.com>
+
+	* configure.ac:
+	* gst/videoframe_audiolevel/Makefile.am:
+	* gst/videoframe_audiolevel/gstvideoframe-audiolevel.c:
+	* gst/videoframe_audiolevel/gstvideoframe-audiolevel.h:
+	* tests/check/Makefile.am:
+	* tests/check/elements/videoframe-audiolevel.c:
+	  alevel: New audio/video level element
+	  The videoframe-audiolevel element acts like a synchronized audio/video "level"
+	  element. For each video frame, it posts a level-style message containing the
+	  RMS value of the corresponding audio frames. This element needs both video and
+	  audio to pass through it. Furthermore, it needs a queue after its video
+	  source.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=748259
+
+2015-12-01 23:20:45 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/insertbin/Makefile.am:
+	  Drop usage of deprecated g-ir-scanner --strip-prefix flag
+
+2015-11-10 16:19:34 +0000  Alex Ashley <bugzilla@ashley-family.net>
+
+	* ext/hls/m3u8.c:
+	* tests/check/elements/hlsdemux_m3u8.c:
+	  hlsdemux: correct the calculation of seek range of non-live streams
+	  The seek range calculation for on-demand streams was incorrectly
+	  excluding the last three segments of the stream. This three segment
+	  rule should only be applied to live streams [1].
+	  [1] https://tools.ietf.org/html/draft-pantos-http-live-streaming-17#section-6.3.3
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758386
+
 2015-12-01 17:52:03 +0000  Paolo Pettinato <ppettina@cisco.com>
 
 	* gst/pcapparse/gstpcapparse.c:
 	  pcapparse: Forward FLUSH_STOP events downstream too
 	  https://bugzilla.gnome.org/show_bug.cgi?id=758913
 
+2015-11-29 01:02:15 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  hlsdemux: fix crash when decryption key can't be downloaded
+	  Happened with
+	  http://sslhls.m6tv.cdn.sfr.net/hls-live/livepkgr/_definst_/m6_hls_aes/m6_hls_aes_856.m3u8
+	  if glib-networking was not installed (since key has https uri).
+
+2015-11-30 11:05:38 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	* ext/hls/m3u8.c:
+	* ext/hls/m3u8.h:
+	  hls: m3u8: remove pointless client_has_main() function
+	  We always have a main list.
+
+2015-11-28 00:12:04 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	* ext/hls/m3u8.h:
+	  hls: m3u8: remove unused _get_current_fragment_duration() function
+
+2015-11-27 19:21:22 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	* ext/hls/m3u8.h:
+	  hls: m3u8: remove unused m3u8 client update_failed_count field
+
+2015-11-15 17:31:05 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	* ext/hls/m3u8.h:
+	  hls: m3u8: remove helper var that's only used during parsing from structure
+	  Just keep that local to the parsing function.
+
+2015-11-01 13:21:45 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* Makefile.am:
+	* docs/plugins/inspect/plugin-fragmented.xml:
+	* docs/plugins/inspect/plugin-hls.xml:
+	* ext/hls/Makefile.am:
+	* ext/hls/gstfragmented.h:
+	* ext/hls/gstfragmentedplugin.c:
+	* ext/hls/gsthls.h:
+	* ext/hls/gsthlsdemux.h:
+	* ext/hls/gsthlsplugin.c:
+	* ext/hls/gstm3u8playlist.c:
+	* ext/hls/m3u8.c:
+	* gst-plugins-bad.spec.in:
+	* tests/check/elements/hlsdemux_m3u8.c:
+	  hls: rename plugin from fragmented to hls
+
+2015-12-01 19:44:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: Always give timestamps if we're discont and don't mark stream discont if a playlist change was not successful
+	  If the stream is discont, we must provide a timestamp in any case. Elements
+	  like tsdemux are not going to output anything if we give a NONE timestamp
+	  after a discont.
+	  Also marking a stream as discont if a playlist change was not successful would
+	  lead to the above situation, but in that case we are not required at all to
+	  mark the stream discont as we're still at the old playlist.
+
+2015-12-01 17:06:33 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/mpegtsmux/tsmux/tsmuxstream.c:
+	  tsmux: fix wrong log message level
+	  ERROR level is debugging left-over.
+
+2015-11-09 16:08:30 +0900  Hyunjun Ko <zzoon.ko@samsung.com>
+
+	* tests/check/libs/aggregator.c:
+	  tests:aggregator: fix tc failure and correct check value
+	  Failure by this commit 2dfa548f3645844082c3db65d96d87255701b3ad, which is
+	  to append hooks instead of prepend.
+	  Because of this change, aggretated_cb is not called and leads to failure.
+	  And correct to check flush stop value instead of flush start value
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757801
+
 2015-11-30 19:53:28 +0200  Sebastian Dröge <sebastian@centricular.com>
 
 	* sys/d3dvideosink/d3dhelpers.c:
@@ -54,6 +1908,147 @@
 	  visible again before checking if the swapchain really has to be recreated.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=741608
 
+2015-11-27 18:46:56 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opus/gstopusparse.c:
+	  opusparse: remove unneeded statement
+	  commit da5c41930c4083979b1745f4d8848d97fe03d8eb removed the two uses of the
+	  new value of data:
+	  channels = opus_packet_get_nb_channels (data);
+	  bandwidth = opus_packet_get_bandwidth (data);
+	  Since then, data isn't being used between incrementing it by packet_offset
+	  and going out of scope. Removing this uneeded statement.
+
+2015-11-27 12:44:57 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/id3mux.c:
+	  tests: id3mux: add unit test for GST_TAG_PRIVATE_DATA writing
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758728
+
+2015-11-27 11:33:07 +0530  Ravi Kiran K N <ravi.kiran@samsung.com>
+
+	* gst/id3tag/id3tag.c:
+	  id3mux: write private data tag
+	  Handle "PRIV" tag in id3mux. Write owner
+	  identifier and private data and add to the
+	  id3v2 frame.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758728
+
+2015-11-26 10:15:36 +0100  Mathias Hasselmann <mathias.hasselmann@kdab.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  androidmedia: Don't add metadata to locked buffer
+	  The video decoders tried calling gst_buffer_add_*meta() on non-writable
+	  buffer resulting in warnings of this kind:
+	  gstamcvideodec.c:921 (_gl_sync_render_unlocked): WARNING: amcvideodec
+	  Failed to create the transformation meta for the gl_sync 0xabc03848
+	  buffer 0xabb01b40 (0)
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758694
+
+2015-11-09 18:07:30 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: tests: disabled testFragmentDownloadError test
+	  Until we will have support to control the generating thread from
+	  fakeHTTPsrc element, the test testFragmentDownloadError is disabled.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757776
+
+2015-11-09 14:14:34 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: tests: corrected access to fakeHTTPsrc element
+	  The src element for adaptivedemux is now a bin. Updated the tests to
+	  correctly reach into the bin and get the fakeHTTPsrc element
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757776
+
+2015-11-09 14:13:04 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/fake_http_src.c:
+	  adaptivedemux: tests: made fakeHTTPsrc element MT safe
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757776
+
+2015-11-23 11:32:13 +0900  Vineeth T M <vineeth.tm@samsung.com>
+
+	* gst/dvdspu/gstspu-pgs.c:
+	  spu-pgs: Fix array memory leak
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758517
+
+2015-11-24 00:20:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/audiomixer/gstaudioaggregator.c:
+	  audiomixer: register function name for debugging just once
+	  Not every time aggregate is called...
+
+2015-11-24 12:42:45 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: remove gst_mpd_client_check_time_position
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758593
+
+2015-11-24 11:50:51 +0100  Maroš Ondrášek <mx3ldev@gmail.com>
+
+	* ext/smoothstreaming/gstmssmanifest.c:
+	  mssdemux: add depth field to audio caps if available
+	  depth field can be retrieved from "BitsPerSample" or
+	  from "WaveFormatEx" structure, if provided in Manifest
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758586
+
+2015-11-20 16:35:43 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: tests: added test for fraction of seconds in availabilityStartTime
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758410
+
+2015-11-20 16:36:00 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	  mpdparser: added support for parsing fraction of seconds in dateTime fields
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758410
+
+2015-11-22 13:11:48 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* tests/examples/waylandsink/Makefile.am:
+	  tests: put the waylandsink example window.ui file in EXTRA_DIST
+
+2015-11-22 13:08:35 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* tests/examples/waylandsink/Makefile.am:
+	  tests: fix linking waylandsink example with the gstwayland library
+	  First, use top_builddir, otherwise it fails in out-of-source builds.
+	  Second, link to the libtool archive directly to let make understand
+	  the dependency.
+
+2015-11-20 20:59:16 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* ext/dash/gstmpdparser.c:
+	  dashdemux: always set presentationTimeOffset
+	  Set it for all types of segment lists (templates / lists / base)
+	  and not only for templates.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=751529
+
+2015-11-20 17:50:30 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Error out if we get a timeout during live mixing
+	  We can't handle that but need complete streams without gaps.
+
+2015-11-20 17:46:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmpeg.c:
+	  mxfmpeg: Use the correct sound essence compression UL for MP3
+	  There's one for MPEG 1 Layer 1 and one for Layer 2 and 3. We previously
+	  had the second for Layer 1 and 2 and nothing for Layer 3, which was wrong.
+
+2015-11-20 17:34:22 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmpeg.c:
+	  mxfmpeg: Set the essence container UL byte 13 to 0x10 for h264
+	  0x04 signifies a MPEG elementary stream but according to RP2008, 0x10 should
+	  be used for a h264 byte-stream. This also fixes compatibility of our files
+	  with ffmpeg.
+
 2015-11-20 11:18:43 +1100  Roman Nowicki <rnowicki@sims.pl>
 
 	* ext/qt/qtitem.cc:
@@ -77,12 +2072,459 @@
 	  notification.  Initialize ourself in this case.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=758337
 
+2015-07-29 22:31:30 +0900  Jimmy Ohn <yongjin.ohn@lge.com>
+
+	* ext/dash/gstdashdemux.c:
+	  dashdemux: Add binary search for stream_sidx_seek
+	  Add binary search to optimize in stream_sidx_seek.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=749653
+
+2015-11-19 15:59:56 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: remove unused functions gst_mpdparser_get_chunk_by_index and gst_mpdparser_find_segment_by_index
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758233
+
+2015-11-19 17:24:53 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/mpeg2enc/gstmpeg2enc.cc:
+	* ext/opencv/gstedgedetect.cpp:
+	* ext/opencv/gstmotioncells.cpp:
+	* ext/opencv/gsttemplatematch.cpp:
+	* gst/dataurisrc/gstdataurisrc.c:
+	* gst/mve/gstmvemux.c:
+	* gst/pcapparse/gstirtspparse.c:
+	* gst/pcapparse/gstpcapparse.c:
+	* tests/check/elements/dataurisrc.c:
+	  docs: update gst-launch-0.10 lines
+	  Update references to gst-launch-0.10 to gst-launch-1.0
+
+2015-11-19 10:32:03 +1100  Matthew Waters <matthew@centricular.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	* sys/androidmedia/gstamcvideodec.h:
+	  amcvideodec: move release_output_buffer into the sync meta
+	  Some devices only ever keep one buffer available in the GL queue resulting in
+	  multiple calls to release_output_buffer only causing one frame to be rendered.
+	  If there is a queue after amcvideodec (even playsink's small one), then
+	  multiple buffers are pushed but only a small fraction of them are actually
+	  rendered on time.  The rest will either render some number of frames ahead of
+	  where they are meant to be or timeout waiting for a frame that's already been
+	  rendered.
+	  Solved by moving the release_output_buffer into the sync_meta the is pushed
+	  downstream.  When downstream renders, the custom sync implementation attempts
+	  to release the current buffer (if not already released) and render. Once the
+	  frame has been rendered to the screen, the next frame is released and is
+	  hopefully available by the time the next frame is to be rendered.
+	  This fixes a perceived frame jitter in the output.
+
+2015-11-17 15:23:17 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+	* ext/audiofile/gstafsink.c:
+	* ext/audiofile/gstafsrc.c:
+	* ext/dash/gstmpdparser.c:
+	* ext/gl/gstglbumper.c:
+	* ext/gl/gstgldifferencematte.c:
+	* ext/gl/gstglfiltershader.c:
+	* ext/gl/gstgloverlay.c:
+	* ext/hls/gsthlsdemux.c:
+	* ext/kate/gstkateenc.c:
+	* ext/kate/gstkatespu.c:
+	* ext/kate/gstkateutil.c:
+	* ext/libmms/gstmms.c:
+	* ext/neon/gstneonhttpsrc.c:
+	* ext/opus/gstopusenc.c:
+	* ext/sndfile/gstsfsink.c:
+	* ext/sndfile/gstsfsrc.c:
+	* ext/spc/tag.c:
+	* ext/timidity/gsttimidity.c:
+	* ext/wayland/gstwaylandsink.c:
+	* gst-libs/gst/gl/gstglfeature.c:
+	* gst-libs/gst/gl/gstglslstage.c:
+	* gst-libs/gst/gl/gstglutils.c:
+	* gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+	* gst/audiovisualizers/gstwavescope.c:
+	* gst/dvbsuboverlay/dvb-sub.c:
+	* gst/librfb/rfbdecoder.c:
+	* gst/mpegtsdemux/mpegtspacketizer.c:
+	* gst/mpegtsdemux/tsdemux.c:
+	* gst/mpegtsmux/tsmux/tsmux.c:
+	* sys/acmenc/acmenc.c:
+	* sys/acmmp3dec/acmmp3dec.c:
+	* sys/applemedia/avfassetsrc.m:
+	* sys/bluez/gsta2dpsink.c:
+	* sys/bluez/gstavdtpsink.c:
+	* sys/bluez/gstavdtputil.c:
+	* sys/dshowdecwrapper/gstdshowaudiodec.cpp:
+	* sys/dshowdecwrapper/gstdshowvideodec.cpp:
+	* sys/dshowsrcwrapper/gstdshow.cpp:
+	* sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+	* sys/dshowvideosink/dshowvideosink.cpp:
+	* sys/dvb/camswclient.c:
+	* sys/dvb/dvbbasebin.c:
+	* sys/dvb/parsechannels.c:
+	* sys/pvr2d/gstpvrvideosink.c:
+	* sys/uvch264/gstuvch264_mjpgdemux.c:
+	* sys/vdpau/gstvdpvideomemory.c:
+	* tests/examples/gtk/glliveshader.c:
+	* tests/icles/metadata_editor.c:
+	  Remove unnecessary NULL checks before g_free()
+	  g_free() is NULL-safe
+
+2015-11-11 16:11:14 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: Also allow '/' in RepresentationID
+	  Used by http://www.bok.net/dash/tears_of_steel/cleartext/stream.mpd
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757903
+
+2015-10-26 16:24:40 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* .gitignore:
+	* configure.ac:
+	* tests/examples/Makefile.am:
+	* tests/examples/waylandsink/Makefile.am:
+	* tests/examples/waylandsink/main.c:
+	* tests/examples/waylandsink/window.ui:
+	  tests/examples: add a waylandsink example
+	  https://bugzilla.gnome.org/show_bug.cgi?id=748322
+
+2015-11-18 12:56:06 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* ext/wayland/wlwindow.c:
+	  waylandsink: call gst_video_sink_center_rect with a destination rectangle that starts from (0,0)
+	  The intention of this code is to find the center rectangle relative
+	  to (0,0), since subsurface coordinates are relative to the parent
+	  surface.
+	  The old code used to work but was wrong and broken by
+	  http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/gst-libs/gst/video/gstvideosink.c?id=ff57f6913456ec1991e55517cf1f239e80eeddef
+
+2015-11-16 17:25:34 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	  dashdemux: fixed illegal memory access in gst_mpd_client_get_last_fragment_timestamp_end
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758188
+
+2015-11-16 17:25:21 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: tests: added test for gst_mpd_client_get_last_fragment_timestamp_end
+	  The timestamp for last fragment is incorrectly retrieved if segment templates
+	  are used.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758188
+
+2015-11-17 16:21:44 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  amcvideodec: Don't require a non-zero buffer size when doing decoding to a surface
+	  At least on some devices/Android versions the buffer size will always be zero
+	  in these cases.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758228
+
+2015-11-17 17:17:50 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: Remove unused variable
+	  gstglimagesink.c: In function 'gst_glimage_sink_on_draw':
+	  gstglimagesink.c:1959:18: error: unused variable 'sync_meta' [-Werror=unused-variable]
+	  GstGLSyncMeta *sync_meta = NULL;
+	  ^
+
+2015-11-17 17:09:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	  glviewconvert: String literals are const
+	  gstglviewconvert.c: In function '_mangle_extensions':
+	  gstglviewconvert.c:1511:13: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
+	  ext_str = "#extension GL_OES_EGL_image_external : require\n";
+	  ^
+
+2015-11-17 17:08:14 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/gl/gstglsyncmeta.c:
+	  glsyncmeta: Actually return the newly created meta from gst_buffer_add_gl_sync_meta()
+	  gstglsyncmeta.c  -fPIC -DPIC -o .libs/libgstgl_1.0_la-gstglsyncmeta.o
+	  gstglsyncmeta.c: In function 'gst_buffer_add_gl_sync_meta':
+	  gstglsyncmeta.c:131:1: error: control reaches end of non-void function [-Werror=return-type]
+	  }
+	  ^
+
+2015-11-17 16:21:10 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  amcvideodec: Fix indentation
+
+2015-11-17 16:08:17 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: fix negotiation more
+	  Year 12: I still don't understand how negotiation works.
+	  Apparently gst_pad_query_caps doesn't do what I thought it did. To get the
+	  actual caps that can flow through vtdec:src we must call gst_pad_peer_query_caps
+	  with the template caps as filter.
+	  Fixes negotiation with stuff that doesn't understand GLMemory (hello videoscale).
+
+2015-11-17 16:14:11 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: minor texture cache fixes
+	  Small fix on how the texture cache is cleaned up / setup in case of renegotiation
+
+2015-11-17 16:13:00 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/corevideotexturecache.m:
+	  applemedia: corevideotexturecache: stop configuring cache->convert over and over
+
+2015-11-16 15:46:41 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	* ext/gl/gstglimagesink.h:
+	* sys/androidmedia/gstamcvideodec.c:
+	  glimagesink: wait on the correct sync meta when rendering
+
+2015-11-03 13:19:41 +1100  Matthew Waters <matthew@centricular.com>
+
+	* sys/androidmedia/Makefile.am:
+	* sys/androidmedia/gstamc2dtexturerenderer.c:
+	* sys/androidmedia/gstamc2dtexturerenderer.h:
+	* sys/androidmedia/gstamcvideodec.c:
+	* sys/androidmedia/gstamcvideodec.h:
+	  amcviddec: output external-oes textures
+	  This provides a performance and power usage improvement by removing
+	  the texture copy from an OES texture to 2D texture.
+	  The flow is as follows
+	  1. Generate the output buffer with the required sync meta with the incrementing
+	  push counter and OES GL memory
+	  1.1 release_output_buffer (buf, render=true) and push downstream
+	  2. Downstream waits for on the sync meta (timed wait) or drops the frame (no wait)
+	  2.1 Timed wait for the frame number to reach the number of frame callbacks fired
+	  2.2 Unconditionally update the image when the wait completes (success or fail).
+	  Sets the affine transformation matrix meta on the buffer.
+	  3. Downstream renders as usual.
+	  At *some* point through this the on_frame_callback may or may not fire.  If it
+	  does fire, we can finish waiting early and render. Otherwise we have to
+	  wait for a timeout to occur which may cause more buffers to be pused into the
+	  internal GL queue which siginificantly decreases the chances of the
+	  on_frame_callback to fire again.  This is because the frame callback only occurs
+	  when the internal GL queue changes state from empty to non-empty.
+	  Because there is no way to reliably correlate between the number of buffers
+	  pushed and the number of frame callbacks received, there are a number of
+	  workarounds in place.
+	  1. We self-increment the ready counter when it falls behind the push counter
+	  2. Time based waits as the frame callback may not be fired for a certain frame.
+	  3. It is assumed that the device can render at speed or performs some QoS of
+	  the interal GL queue (which may not match the GStreamer QoS).
+	  It holds that we call SurfaceTexture::updateTexImage for each buffer pushed
+	  downstream however there's no guarentee that updateTexImage will result in
+	  the exact next frame (it could skip or duplicate) so synchronization is not
+	  guaranteed to be accurate although it seems to be close enough to be unable
+	  to discern visually.  This has not changed from before this patch.  The current
+	  requirement for synchronization is that updateTexImage is called at the point in
+	  time when the buffers is to be rendered.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757285
+
+2015-11-02 17:57:29 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglsyncmeta.c:
+	* gst-libs/gst/gl/gstglsyncmeta.h:
+	  glsyncmeta: add vfuncs for all operations
+	  there could be other ways/requirements for synchronising two GPU command
+	  streams (whether GL or platform specific).
+	  e.g. glfencesync/eglwaitnative/cond/etc
+
+2015-11-10 15:37:05 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	* ext/gl/gstglimagesink.h:
+	  glimagesink: add support for rendering external-oes textures
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757285
+
+2015-11-10 14:54:02 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* gst-libs/gst/gl/gstglviewconvert.h:
+	  glviewconvert: add support rectangle/external-oes textures
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757285
+
+2015-11-17 15:18:28 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: fix setting internal SKIP / DROP flags
+
 2015-11-17 09:08:52 +0900  Vineeth TM <vineeth.tm@samsung.com>
 
 	* ext/gl/gstglimagesink.c:
 	  glimagesink: Fix structure memory leak
 	  https://bugzilla.gnome.org/show_bug.cgi?id=758205
 
+2015-11-16 21:52:07 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst/autoconvert/gstautoconvert.c:
+	  autoconvert: Add support for bufferlists
+
+2015-11-17 11:21:27 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	* sys/applemedia/vtdec.h:
+	  applemedia: vtdec: improve negotiation
+	  Rework negotiation implementing GstVideoDecoder::negotiate. Make it possible to
+	  switch texture sharing on and off at runtime. Useful to (eventually) turn
+	  texture sharing on in pipelines where glimagesink is linked only after
+	  decoding has already started (for example OWR).
+
+2015-11-17 11:19:57 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: improve handing of decode errors/frame drops
+	  Improve decode error handling by avoiding calling into GstVideoDecoder from the
+	  VT decode callback. This removes contention on the GST_VIDEO_DECODER_STREAM_LOCK
+	  which used to make the decode callback slow enough for VT to start dropping lots
+	  of frames once the first frame was dropped.
+
+2015-11-17 11:22:15 +1100  Alessandro Decina <alessandro.d@gmail.com>
+
+	* sys/applemedia/vtdec.c:
+	  applemedia: vtdec: fix uninitialized variable warning
+
+2015-11-14 20:21:17 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.h:
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: remove now-defunct "num-lookback-fragments" property
+	  This no longer does anything, and it was marked as CONSTRUCT_ONLY
+	  which means someone would really have to go out of their way to
+	  be able to set this, which would only be done in very custom
+	  scenarios, if ever, and those will likely target a specific
+	  version of GStreamer then, so probably not much point keeping
+	  it deprecated for a while before removing it.
+
+2015-11-13 17:14:14 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst/autoconvert/gstautoconvert.c:
+	  autoconvert: Always give a valid reply to internal caps queries
+	  Caps queries can always have a valid reply, either the filter or ANY.
+	  If the caps are ANY, then accept-caps always returns TRUE.
+
+2015-11-12 16:35:12 +0100  Nicolas Huet <nicolas.huet@parrot.com>
+
+	* gst/mpegtsdemux/mpegtspacketizer.c:
+	  mpegtsdemux: fix section_data leak
+	  If packet->payload_unit_start_indicator is true and pointer 0, there is no
+	  discontinuity check. Therefore there could be a previous section not complete
+	  that need to be cleared.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758010
+
+2015-11-13 10:41:58 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/gl/gstglsl.c:
+	  glsl: fix possible string overrun in gst_glsl_version_profile_from_string
+	  given a NULL-terminated string, s.
+	  s[i] = '\0';
+	  i++;
+	  does not guarentee that s[i] is NULL terminated and thus string operations
+	  could read off the end of the array.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758039
+
+2015-11-13 16:50:22 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglshader.c:
+	  glshader: don't read invalid list pointers (use after free)
+	  gst_gl_shader_detach_unlocked already removes the list entry so attempting to
+	  use the element to iterate to the next stage could read invalid data.
+	  Based on patch by Vineeth TM <vineeth.tm@samsung.com>
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758039
+
+2015-11-13 10:44:26 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* tests/check/libs/gstglsl.c:
+	  tests:glsl: version_profile_s string leak
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758039
+
+2015-11-13 10:56:10 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/gl/gstglsl.c:
+	  glsl: free str while returning error
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758039
+
+2015-11-13 11:04:34 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* tests/check/libs/gstglupload.c:
+	  tests:glupload: fix caps memory leak
+	  https://bugzilla.gnome.org/show_bug.cgi?id=758039
+
+2015-11-12 12:21:54 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opus/gstopusenc.c:
+	  opusenc: avoid potential overflow expression
+	  The result of the two expressions will be promoted to guint64 anyway,
+	  perform all the arithmetic in 64 bits to avoid potential overflows.
+	  CID 1338690, CID 1338691
+
+2015-11-12 12:00:07 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: remove memory leak
+	  The values of channel_mapping are copied by gst_codec_utils_opus_create_caps ()
+	  but it doesn't free or take ownership of the g_new0 allocated memory. This
+	  needs to be freed before going out of scope.
+	  CID 1338692
+
+2015-11-12 11:42:36 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst/mpegtsmux/mpegtsmux.c:
+	  mpegtsmux: remove unnecessary buffer check
+	  buf surely isn't NULL inside the block conditional to a buffer size bigger
+	  than (G_MAXUINT16 - 3). Plus gst_buffer_unref() checks if the buffer is
+	  NULL and does nothing if it is.
+	  CID 1338693
+
+2015-11-12 11:23:31 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opus/gstopusparse.c:
+	  opusparse: initialize sample rate to a default
+	  sample_rate might be used uninitialized if !sink_caps is TRUE. Initialize
+	  it to the default used in gst_codec_utils_opus_parse_caps () when there is
+	  no rate defined in the caps.
+	  CID 1338695
+
+2015-11-12 16:36:03 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/gl/gstglslstage.c:
+	  glslstage: Fix vertex_sources memory leak
+	  vertex_sources is being allocated but not freed resulting in leak
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757974
+
+2015-11-12 16:26:00 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: remove unnecessary free
+	  version_str is already being freed. So no need to call again
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757974
+
+2015-11-12 16:18:35 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: Fix string leak
+	  String got using gst_glsl_version_profile_to_string, is allocated
+	  memory and should be freed
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757974
+
+2015-11-12 16:02:45 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: Fix frag_prog and frag_body memory leak
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757974
+
+2015-11-11 16:51:23 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: fixed handling errors emitted by uri handler
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757947
+
 2015-11-10 16:32:37 +0100  Nicolas Huet <nicolas.huet@parrot.com>
 
 	* gst/mpegtsdemux/tsdemux.c:
@@ -98,6 +2540,16 @@
 	  pad will not be unreffed and will be leaked.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=757873
 
+2015-11-09 17:45:29 +0200  Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+	* gst/ivfparse/gstivfparse.c:
+	  ivfparse: Fix the wrong width & height parsing of vp9 bitstream
+	  The current implementation for detecting the resolution changes
+	  on key frames is based on vp8 bitstream alignment. Avoid this
+	  width and height parsing for vp9 bitstream, which requires proper
+	  frame header parsing inorder to detect the resolution change (Fixme).
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757825
+
 2015-11-11 11:40:52 +0100  Heinrich Fink <hfink@toolsonair.com>
 
 	* sys/applemedia/vtenc.c:
@@ -107,6 +2559,14 @@
 	  vtenc instance is stopped and then restarted.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=757935
 
+2015-11-11 23:39:35 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: mangle gl_FragColor for GL3
+	  Some drivers don't provide the compatibility definition and we need to provide
+	  our own 'out vec4' variable to put the results of the fragment shader into.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757938
+
 2015-11-11 16:06:25 +0900  Vineeth TM <vineeth.tm@samsung.com>
 
 	* tests/check/libs/gstglcolorconvert.c:
@@ -114,6 +2574,136 @@
 	  Output caps being got from video info is not getting freed
 	  https://bugzilla.gnome.org/show_bug.cgi?id=757929
 
+2015-11-10 17:58:58 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: provide our own definition of log2()
+	  The log2 function/macro doesn't exist when targetting android API < 18 (or MSVC
+	  < 2013) whereas our current baseline is API 9.
+
+2015-11-10 13:52:30 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	* ext/gl/gstglimagesink.h:
+	* ext/gl/gstglstereomix.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* gst-libs/gst/gl/gstglviewconvert.h:
+	  glviewconvert: remove set_format
+	  We need the caps to be able to
+	  1. check the caps features
+	  2. get the requested texture-target on input/output
+
+2015-11-11 10:31:07 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: fix a memory leak if the view conversion fails
+
+2015-11-11 13:37:59 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: balance the creation/destruction of the overlay compositor
+	  Fixes some leaks/possible segfault on when failing to create the compositor.
+
+2015-11-11 12:23:30 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglshader.c:
+	* gst-libs/gst/gl/gstglutils.c:
+	  glshader: properly unref the stages on failure
+	  When failing in the varargs functions, all the stage objects not handled need to
+	  be unreffed to prevent a leak.
+
+2015-11-11 11:29:35 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglslstage.c:
+	  glslstage: properly return an error when we could not create the shader stage
+	  While it was erroring out correctly later, there were GLib warnings about
+	  setting a GError over the top of another GError.
+
+2015-11-11 01:05:20 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglshaderstrings.c:
+	  glshaderstrings: fixup the external-oes fragment shader
+	  The wrong sampler type was used
+	  s/sampler2DExternalOES/samplerExternalOES/
+
+2015-11-10 23:41:24 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: try to keep the same texture-target if possible
+	  Fixes issues attempting to passthrough external-oes textures
+
+2015-11-10 22:41:57 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: fix rendering rectangular textures with GL3
+	  Rectangular textures are unavailable in unextended
+	  GLES2 #version 100 shaders.
+	  Fixes
+	  texture-target=rectangle ! glcolorconvert ! texture-target=2D
+	  There's a couple of differences between GL3 and GLES2/GL
+	  - varying -> in or out depending on the stage (vertex/fragment)
+	  - attribute -> in
+	  - filtered texture access is a single function, texture()
+
+2015-11-10 20:20:29 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: properly use the other texture-target on fixation
+
+2015-11-10 20:15:56 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglslstage.c:
+	  glslstage: add debug as to why _set_strings() failed
+
+2015-11-10 20:13:53 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglsl.c:
+	  glsl: fix check for glsl version against GL context inversion
+	  Any GLSL version that was less than the provided GL version would fail
+
+2015-11-10 10:02:38 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: Fix pad memory leak.
+	  The static pads got from queue and uri_handler are not being freed
+	  resulting in memory leaks.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757859
+
+2015-11-10 13:13:50 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_enums.h:
+	* gst-libs/gst/gl/gstglmemory.h:
+	  gl: forward declare some enums
+	  Specifically the GstGLTextureTarget enum
+
+2015-11-10 13:11:37 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstglshaderstrings.c:
+	* gst-libs/gst/gl/gstglshaderstrings.h:
+	* gst-libs/gst/gl/gstglslstage.c:
+	  glslstage: expose the default shader strings as public
+	  Add some other simple strings for external-oes textures or transforming
+	  the texture coordinates with a transformation matrix
+
+2015-11-06 03:05:31 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: wait on the sync meta for input buffers
+
+2015-11-05 00:13:01 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: wait on the provided sync meta provided to glimagesink
+
+2015-11-08 22:14:01 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.h:
+	  glcolorconvert: use the correct oes target string in the template caps
+
 2015-11-10 12:32:39 +1100  Matthew Waters <matthew@centricular.com>
 
 	* ext/gtk/gstgtkglsink.c:
@@ -123,13 +2713,26 @@
 	  will return EMPTY and therefore fail negotiation.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=757854
 
-2015-11-06 16:16:32 +0100  Edward Hervey <edward@centricular.com>
+2015-11-10 14:21:33 +1100  Alessandro Decina <alessandro.d@gmail.com>
 
-	* gst/dvbsuboverlay/gstdvbsuboverlay.c:
-	  dvbsuboverlay: Don't send flush events
-	  It is up to the element handling the seek to send flush events
-	  downstream, otherwise we end up with a situation where upstream
-	  would get unexpected GST_FLOW_FLUSHING
+	* sys/applemedia/corevideotexturecache.m:
+	  applemedia: fix vtdec texture sharing on ios 9.1
+	  Use gst_gl_sized_gl_format_from_gl_format_type to get the format passed to
+	  CVOpenGLESTextureCacheCreateTextureFromImage. Before this change extracting the
+	  second texture from the pixel buffer was failing on ios 9.1.
+
+2015-11-06 17:24:52 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* tests/check/elements/templatematch.c:
+	  templatematch: add a framerate to test caps
+	  The pad template requires a framerate, so use it to prevent
+	  caps negotiation failures.
+	  Fixes the unit test
+
+2015-11-06 20:38:56 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/.gitignore:
+	  tests: update .gitignore for new test binaries
 
 2015-11-06 19:26:21 +0000  Tim-Philipp Müller <tim@centricular.com>
 
@@ -143,6 +2746,455 @@
 	  of GST_FLOW_FLUSHING when trying to forward sticky
 	  events at just the wrong moment.
 
+2015-11-06 16:16:32 +0100  Edward Hervey <edward@centricular.com>
+
+	* gst/dvbsuboverlay/gstdvbsuboverlay.c:
+	  dvbsuboverlay: Don't send flush events
+	  It is up to the element handling the seek to send flush events
+	  downstream, otherwise we end up with a situation where upstream
+	  would get unexpected GST_FLOW_FLUSHING
+
+2015-11-06 19:23:09 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/assrender/gstassrender.c:
+	* ext/curl/gstcurlftpsink.c:
+	* ext/dtls/gstdtlsdec.c:
+	* ext/smoothstreaming/gstmssmanifest.c:
+	* gst/geometrictransform/gstmirror.c:
+	* gst/onvif/gstrtponviftimestamp.c:
+	  Fix code indentation
+
+2015-10-22 13:40:36 +0200  Branko Subasic <branko@axis.com>
+
+	* gst/onvif/gstrtponviftimestamp.c:
+	* tests/check/elements/rtponviftimestamp.c:
+	  rtponviftimestamp: use stream time for timestamp
+	  The Onvif Streaming Specification specifies that the NTP timestamps
+	  in the Onvif extension header indicaes the absolute UTC time associated
+	  with the access unit. But by using running time we can not achieve that,
+	  since a frame's running time depends on the played interval, whether a
+	  non-flushing is done, etc. Instead we have to use the stream time.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757688
+
+2015-11-06 09:44:57 +0100  Linus Svensson <linussn@axis.com>
+
+	* gst/onvif/gstrtponviftimestamp.c:
+	* gst/onvif/gstrtponviftimestamp.h:
+	* tests/check/elements/rtponviftimestamp.c:
+	  rtponviftimestamp: Update ntp-offset and d/e-bits with a GstEvent
+	  It is now possible to update the currently used ntp-offset with a
+	  custom serialized downstream event. The element will read the ntp-offset
+	  property when doing the state transition from READY to PAUSED and
+	  use that offset until it receives a "GstNtpOffset" event, which also
+	  has a "ntp-offset" attribute in that it's structure. In case the
+	  property is not set and no event has been received, the element will
+	  guess the npt-offset with help of the clock. If no clock can be
+	  retrieved, the element will error out and stop the data flow.
+	  The same event is also used for updating the D/E-bits in the RTP
+	  extension header. The discont flag in a buffer can be set whenver a
+	  live/network source looses a frame, but that is not the type of
+	  discontinuity that the onvif extension header should reflect. The
+	  header is mainly used for playback of a track concept, in which
+	  gaps can be present, and it's those kind of gaps that should be
+	  highlighted with the D- and E-bits.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757688
+
+2015-11-06 09:44:16 +0100  Linus Svensson <linussn@axis.com>
+
+	* gst/onvif/gstrtponviftimestamp.c:
+	* gst/onvif/gstrtponviftimestamp.h:
+	* tests/check/elements/rtponviftimestamp.c:
+	  rtponviftimestamp: Do not rearange order of data
+	  If a buffer or a buffer list is cached, no events serialized with the
+	  data stream should get through. The cached buffers and events should
+	  be purged when we stop flushing.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757688
+
+2015-10-13 14:21:47 +0200  Branko Subasic <branko@axis.com>
+
+	* tests/check/Makefile.am:
+	* tests/check/elements/rtponvif.c:
+	* tests/check/elements/rtponvifparse.c:
+	* tests/check/elements/rtponviftimestamp.c:
+	  rtponvif: split unit tests in several files
+	  Split the unit tests for rtponviftimestamp and rtponvifparse
+	  elements in separate files.
+	  Setup and cleanup the element and pads in fixures. Make the tests work
+	  with CK_FORK=no as well, by cleaning up the 'buffers' list when needed.
+	  Make unit tests work when run in valgrind by unreffing all buffers,
+	  and by not allocating any payload in RTP buffers. Since we're not
+	  doing anything with the payload part, but we're memcmp-aring the
+	  complete buffer memory, valgrind complained about non-initialized
+	  memory being used.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757688
+
+2015-09-04 09:59:06 +0200  Philippe Normand <philn@igalia.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.h:
+	  adaptivedemux: improved bitrate estimations
+	  Bitrate estimation is now handled through a queue2 element added after
+	  the source element used to download fragments.
+	  Original hlsdemux patch by Duncan Palmer <dpalmer@digisoft.tv>
+	  https://bugzilla.gnome.org/show_bug.cgi?id=733959
+
+2015-11-06 12:59:51 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* sys/dshowsrcwrapper/gstdshow.cpp:
+	  dshow: fix GList leak
+	  _remove_link() would not free the actual list nodes.
+
+2015-11-06 12:31:09 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst-libs/gst/gl/gstglshader.c:
+	* gst/mpegtsdemux/mpegtsparse.c:
+	  glshader, tsdemux: simplify code
+	  Jus use _delete_link() instead of _remove_link() + _free1()
+
+2015-11-06 12:30:12 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/gl/gstglmixerbin.c:
+	  glmixerbin: fix minor leak
+	  Don't leak removed list node.
+
+2015-11-06 10:22:42 +0100  Thibault Saunier <tsaunier@gnome.org>
+
+	* ext/faac/gstfaac.c:
+	  faac: Initialize debug category soon enough
+	  Avoiding assertions
+
+2015-11-05 10:12:41 +0000  Julian Bouzas <julian.bouzas@vcatechnology.com>
+
+	* configure.ac:
+	  configure.ac: Added --with-hls-crypto=auto|nettle|libgcrypt|openssl option to build the source using the desired cryptographic library for HLS
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755319
+
+2015-11-06 00:48:42 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	  hls: m3u8: don't leak GList nodes when matching up variant lists after master list update
+
+2015-11-05 12:36:48 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: use GST_STIME_FORMAT for GstClockTimeDiff
+	  No need to manually handle negative value of deadline, GST_STIME_FORMAT does
+	  exactly this.
+
+2015-11-05 12:17:00 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/resindvd/resindvdsrc.c:
+	  resindvd: use GST_STIME_FORMAT for GstClockTimeDiff
+	  No need to use G_GINT64_FORMAT for potentially negative values of
+	  GstClockTimeDiff. Since 1.6 these can be handled with GST_STIME_FORMAT.
+	  Plus it creates more readable values in the logs.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757480
+
+2015-11-05 12:11:19 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusdec.c:
+	  opusdec: Update sink pad templates
+	  We always require the channel-mapping-field. If it's 0 we require nothing
+	  else, otherwise we need channels, stream-count and coupled count to be
+	  available.
+
+2015-11-03 19:09:33 -0800  Stefan Sauer <ensonic@users.sf.net>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: don't compare templ instance pointers
+	  One can pass the PadTemplate from the element_class or the one from the factory.
+	  While they have the same content, the addresses are different.
+
+2015-11-04 00:12:52 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/elements/opus.c:
+	  opus: Remove invalid unit test
+	  Opus headers should never be in-band, so don't test for correct
+	  handling of that.
+
+2015-11-04 00:12:22 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusenc.c:
+	  opusenc: Create an empty taglist if there is none
+	  There always have to be 2 buffers in the streamheaders, even if
+	  the comment buffer is basically empty.
+
+2015-11-03 14:41:57 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: Set to running in a single place
+	  Only set to running when the thread is actually started.
+
+2015-11-03 14:37:26 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: Document more locking
+
+2015-11-03 19:53:00 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: Don't create an incomplete OpusHead but set all the other caps fields instead
+	  OpusHead is optional, the other fields are not.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757152
+
+2015-11-03 19:51:03 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsdemux/tsdemux.c:
+	* gst/mpegtsmux/Makefile.am:
+	* gst/mpegtsmux/mpegtsmux.c:
+	  tsmux: Simplify Opus caps parsing by using codecutils helpers
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757152
+
+2015-11-03 14:50:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/Makefile.am:
+	* ext/opus/gstopusdec.c:
+	* ext/opus/gstopusdec.h:
+	* ext/opus/gstopusenc.c:
+	* ext/opus/gstopusheader.c:
+	* ext/opus/gstopusheader.h:
+	* ext/opus/gstopusparse.c:
+	* ext/opus/gstopusparse.h:
+	* ext/opus/gstrtpopusdepay.c:
+	* ext/opus/gstrtpopuspay.c:
+	  opus: Add proper support for multichannel audio
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757152
+
+2015-11-03 11:41:07 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusparse.c:
+	* ext/opus/gstopusparse.h:
+	  opusparse: Fix up pre-skip in OpusHead if upstream using GstAudioClippingMeta
+	  Makes transmuxing from e.g. MPEG-TS to Ogg sample accurate.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-11-02 18:02:55 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsdemux/Makefile.am:
+	* gst/mpegtsdemux/tsdemux.c:
+	* gst/mpegtsmux/Makefile.am:
+	* gst/mpegtsmux/mpegtsmux_opus.c:
+	  tsdemux/mux: Add support for GstAudioClippingMeta for Opus
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-11-02 17:33:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusdec.c:
+	  opusdec: Handle GstAudioClippingMeta instead of the pre-skip field in the OpusHead
+	  oggdemux is outputting the meta now, and only outputs if it should really
+	  apply to the current buffer. Previously we would skip N samples also if we
+	  started the decoder in the middle of the stream.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-11-02 16:52:28 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusenc.c:
+	  opusenc: Add GstAudioClippingMeta to buffers that need to be clipped
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-11-02 10:30:52 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusenc.c:
+	  opusenc: Disable granule position calculations by the base class
+	  It is doing the wrong thing because of the Opus pre-skip: while the timestamps
+	  are shifted by the pre-skip, the granule positions are not shifted.
+	  oggmux is doing the right thing here already.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-10-31 15:02:50 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusenc.c:
+	  opusenc: Add some FIXME comments about calculating padding with LPC
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-10-30 20:57:37 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusenc.c:
+	* ext/opus/gstopusenc.h:
+	  opusenc: Encode exactly the amount of samples we got as input and put correct timestamps on it
+	  The first frame has lookahead less samples, the last frame might have some
+	  padding or we might have to encode another frame of silence to get all our
+	  input into the encoded data.
+	  This is because of a) the lookahead at the beginning of the encoding, which
+	  shifts all data by that amount of samples and b) the padding needed to fill
+	  the very last frame completely.
+	  Ideally we would use LPC to calculate something better than silence for the
+	  padding to make the encoding as smooth as possible.
+	  With this we get exactly the same amount of samples again in an
+	  opusenc ! opusdec pipeline.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-10-30 20:47:20 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusenc.c:
+	* ext/opus/gstopusheader.c:
+	* ext/opus/gstopusheader.h:
+	* ext/opus/gstopusparse.c:
+	  opusenc: Put lookahead/pre-skip into the OpusHead header
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757153
+
+2015-10-25 17:27:39 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsmux/Makefile.am:
+	* gst/mpegtsmux/mpegtsmux.c:
+	* gst/mpegtsmux/mpegtsmux_opus.c:
+	* gst/mpegtsmux/mpegtsmux_opus.h:
+	* gst/mpegtsmux/tsmux/tsmuxstream.c:
+	* gst/mpegtsmux/tsmux/tsmuxstream.h:
+	  tsmux: Add support for Opus
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757049
+
+2015-10-24 14:27:43 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsdemux/Makefile.am:
+	* gst/mpegtsdemux/gstmpegdesc.h:
+	* gst/mpegtsdemux/tsdemux.c:
+	  tsdemux: Add support for Opus
+	  Code partially based on
+	  https://git.videolan.org/?p=ffmpeg.git;a=commit;h=74141f693ded2fbf75af56fff309d2db35183635
+	  and based on the spec draft at
+	  https://wiki.xiph.org/OpusTS
+	  Makes it possible to demux
+	  http://www.obe.tv/Downloads/opus.ts
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757049
+
+2015-10-25 19:31:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsmux/mpegtsmux.c:
+	  tsmux: Don't leak buffer in error cases
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757049
+
+2015-10-25 19:29:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mpegtsmux/mpegtsmux.c:
+	  tsmux: Call prepare function for each collected buffer
+	  Not when clipping buffers, as that doesn't happen for every buffer.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757049
+
+2015-10-25 18:09:24 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
+	* gst-libs/gst/mpegts/gstmpegtsdescriptor.h:
+	  mpegtsdescriptor: Add API for creating extended descriptors and fix writing them
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757049
+
+2015-11-02 21:16:15 -0800  Stefan Sauer <ensonic@users.sf.net>
+
+	* ext/opencv/gsthanddetect.cpp:
+	  opencv: cast paramspec flags to fix the build for c++
+	  All the other elements in this plugin do this already.
+
+2015-11-03 15:05:20 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* sys/dvb/gstdvbsrc.c:
+	  dvbsrc: use GST_STIME_ARGS for GstClockTimeDiff
+	  No need to use G_GINT64_FORMAT for potentially negative values of
+	  GstClockTimeDiff. Since 1.6 these can be handled with GST_STIME_ARGS.
+	  Plus it creates more readable values in the logs.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757480
+
+2015-11-03 15:00:01 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  amcvideodec: use GST_STIME_ARGS for GstClockTimeDiff
+	  No need to manually handle negative value of deadline, GST_STIME_ARGS does
+	  exactly this.
+
+2015-11-03 10:42:40 +0000  Hyunil Park <hyunil46.park@samsung.com>
+
+	* ext/wayland/gstwaylandsink.c:
+	  waylandsink: Add exception code for setting wl_surface
+	  Waylandsink needs exception code in gst_wayland_sink_set_window_handle().
+	  After making sink->window, User can call
+	  gst_wayland_sink_set_window_handle(). It is the user's fault, but
+	  Waylandsink needs to handle the exception, if not then sink->window is
+	  changed and rendering fails.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=747482
+
+2015-04-09 13:17:01 +0900  Hyunil Park <hyunil46.park@samsung.com>
+
+	* ext/wayland/gstwaylandsink.c:
+	  waylandsink: Add exception code for setting wl_display
+	  Waylandsink needs exception code in gst_wayland_sink_set_context(). After
+	  calling gst_wayland_sink_set_context(), below code is set.
+	  GST_ELEMENT_CLASS (parent_class)->set_context (element, context); but, If
+	  user can call onemore. It is user's fault. but waylandsink need to
+	  exception.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=747482
+
+2015-11-02 20:10:35 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: Hold object lock while manipulating the segment
+	  Make sure the object lock is held when aggregator->segment is
+	  modified.
+
+2015-11-02 19:40:28 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst/audiomixer/gstaudioaggregator.c:
+	  audioaggregator: Improve log messages
+	  Make the level of log messages saner and improve some.
+
+2015-11-02 19:05:01 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: Remove dead code
+	  This code will never be called as max>=min in all cases. If the upstream
+	  latency query returned min>max, the function already returned and all
+	  values that are added to those have max>= min.
+
+2015-11-02 17:02:47 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst/mpegtsmux/mpegtsmux.c:
+	  mpegtsmux: use GST_STIME_ARGS for GstClockTimeDiff
+	  No need to manually handle negative values of best->dts in
+	  GST_DEBUG_OBJECT. Use GST_STIME_ARGS for this.
+
+2015-11-02 16:58:57 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* gst-libs/gst/video/gstvideoaggregator.c:
+	  videoaggregator: use GST_STIME_ARGS for GstClockTimeDiff
+	  No need to manually handle negative values of diff, GST_STIME_ARGS does
+	  exactly this.
+
+2015-11-02 11:17:29 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	  dashdemux: remove unreachable code
+	  The stream->cur_seg_template is set to the lowest available segment
+	  template (representation or adaptation or period, in this order).
+	  Because the template elements are inherited, the lowest template will
+	  have all the elements the parents had, so there is no need to check the
+	  parent for an element that is not found in the child (eg initialisation
+	  or index).
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752714
+
+2015-11-02 10:48:11 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* tests/check/elements/dash_mpd.c:
+	  tests: add a test for MPD file duration parsing
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752336
+
+2015-11-02 10:25:38 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* ext/dash/gstmpdparser.c:
+	  mpdparser: add some checks to duration parsing
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752336
+
+2015-09-29 09:32:02 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	  dashdemux: added duration format validation
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752336
+
+2015-11-02 11:21:14 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/dash/gstmpdparser.c:
+	  dashdemux: fix memory leak
+	  Free new_mpd, allocated with g_slice_new(), before going out of scope in
+	  goto error.
+	  CID 1338050
+
 2015-11-02 20:14:11 +1100  Alessandro Decina <alessandro.d@gmail.com>
 
 	* sys/applemedia/vtenc.c:
@@ -151,151 +3203,350 @@
 	  GstVideoEncoder assumes that the input buffer is available until _finish_frame.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756951
 
+2015-11-01 23:34:32 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/opus/gstopusdec.c:
+	  opusdec: Assume 48kHz if no sample rate is given in the header
+
 2015-10-30 20:59:41 +0200  Sebastian Dröge <sebastian@centricular.com>
 
 	* ext/opus/gstopusenc.c:
 	  opusenc: Place 48kHz first in the caps
 	  For all the other sample rates the encoder will have to resample internally.
 
-2015-11-01 23:34:32 +0200  Sebastian Dröge <sebastian@centricular.com>
+2015-11-02 12:10:44 +1100  Alessandro Decina <alessandro.d@gmail.com>
 
-	* ext/opus/gstopusdec.c:
-	  opusdec: Assume 48kHz if no sample rate is given in the header
+	* gst-libs/gst/gl/gstglutils.c:
+	  gstglutils: fix shader compilation on Mountain Lion
+	  Make gst_gl_context_gen_shader/_compile_shader assume GST_GLSL_PROFILE_ES |
+	  GST_GLSL_PROFILE_COMPATIBILITY as the profile. Without this, the shader compiler
+	  doesn't inject the #version tag resulting in a compilation error on Mountain
+	  Lion.
+	  This is a workaround for old code using gst_gl_context_gen_shader. New code
+	  should use the gst_glsl_stage_* API directly which allows the caller to
+	  explicitly specify version/profile.
 
-=== release 1.6.1 ===
+2015-10-31 18:47:39 +0100  Philippe Renon <philippe_renon@yahoo.fr>
 
-2015-10-30 16:44:45 +0200  Sebastian Dröge <sebastian@centricular.com>
+	* sys/winks/gstksvideosrc.c:
+	  ksvideosrc: don't try to align current timestamp on previous timestamp
+	  this causes frames to be dropped.
+	  Based on a patch by Sebastian Dröge
+	  https://bugzilla.gnome.org/show_bug.cgi?id=748337
 
-	* ChangeLog:
-	* NEWS:
-	* RELEASE:
-	* configure.ac:
-	* docs/plugins/gst-plugins-bad-plugins.hierarchy:
-	* docs/plugins/inspect/plugin-accurip.xml:
-	* docs/plugins/inspect/plugin-adpcmdec.xml:
-	* docs/plugins/inspect/plugin-adpcmenc.xml:
-	* docs/plugins/inspect/plugin-aiff.xml:
-	* docs/plugins/inspect/plugin-asfmux.xml:
-	* docs/plugins/inspect/plugin-assrender.xml:
-	* docs/plugins/inspect/plugin-audiomixer.xml:
-	* docs/plugins/inspect/plugin-audiovisualizers.xml:
-	* docs/plugins/inspect/plugin-autoconvert.xml:
-	* docs/plugins/inspect/plugin-bayer.xml:
-	* docs/plugins/inspect/plugin-bz2.xml:
-	* docs/plugins/inspect/plugin-camerabin.xml:
-	* docs/plugins/inspect/plugin-chromaprint.xml:
-	* docs/plugins/inspect/plugin-coloreffects.xml:
-	* docs/plugins/inspect/plugin-curl.xml:
-	* docs/plugins/inspect/plugin-dataurisrc.xml:
-	* docs/plugins/inspect/plugin-debugutilsbad.xml:
-	* docs/plugins/inspect/plugin-dtsdec.xml:
-	* docs/plugins/inspect/plugin-dvb.xml:
-	* docs/plugins/inspect/plugin-dvbsuboverlay.xml:
-	* docs/plugins/inspect/plugin-dvdspu.xml:
-	* docs/plugins/inspect/plugin-faad.xml:
-	* docs/plugins/inspect/plugin-festival.xml:
-	* docs/plugins/inspect/plugin-fieldanalysis.xml:
-	* docs/plugins/inspect/plugin-flite.xml:
-	* docs/plugins/inspect/plugin-fragmented.xml:
-	* docs/plugins/inspect/plugin-frei0r.xml:
-	* docs/plugins/inspect/plugin-gaudieffects.xml:
-	* docs/plugins/inspect/plugin-gdp.xml:
-	* docs/plugins/inspect/plugin-geometrictransform.xml:
-	* docs/plugins/inspect/plugin-gmedec.xml:
-	* docs/plugins/inspect/plugin-gsm.xml:
-	* docs/plugins/inspect/plugin-gstsiren.xml:
-	* docs/plugins/inspect/plugin-id3tag.xml:
-	* docs/plugins/inspect/plugin-inter.xml:
-	* docs/plugins/inspect/plugin-interlace.xml:
-	* docs/plugins/inspect/plugin-jpegformat.xml:
-	* docs/plugins/inspect/plugin-liveadder.xml:
-	* docs/plugins/inspect/plugin-mimic.xml:
-	* docs/plugins/inspect/plugin-mms.xml:
-	* docs/plugins/inspect/plugin-modplug.xml:
-	* docs/plugins/inspect/plugin-mpeg2enc.xml:
-	* docs/plugins/inspect/plugin-mpegpsdemux.xml:
-	* docs/plugins/inspect/plugin-mpegpsmux.xml:
-	* docs/plugins/inspect/plugin-mpegtsdemux.xml:
-	* docs/plugins/inspect/plugin-mpegtsmux.xml:
-	* docs/plugins/inspect/plugin-mpg123.xml:
-	* docs/plugins/inspect/plugin-mplex.xml:
-	* docs/plugins/inspect/plugin-ofa.xml:
-	* docs/plugins/inspect/plugin-openal.xml:
-	* docs/plugins/inspect/plugin-opencv.xml:
-	* docs/plugins/inspect/plugin-opus.xml:
-	* docs/plugins/inspect/plugin-pcapparse.xml:
-	* docs/plugins/inspect/plugin-pnm.xml:
-	* docs/plugins/inspect/plugin-rawparse.xml:
-	* docs/plugins/inspect/plugin-removesilence.xml:
-	* docs/plugins/inspect/plugin-resindvd.xml:
-	* docs/plugins/inspect/plugin-rfbsrc.xml:
-	* docs/plugins/inspect/plugin-rtmp.xml:
-	* docs/plugins/inspect/plugin-schro.xml:
-	* docs/plugins/inspect/plugin-sdp.xml:
-	* docs/plugins/inspect/plugin-segmentclip.xml:
-	* docs/plugins/inspect/plugin-shm.xml:
-	* docs/plugins/inspect/plugin-smooth.xml:
-	* docs/plugins/inspect/plugin-soundtouch.xml:
-	* docs/plugins/inspect/plugin-spandsp.xml:
-	* docs/plugins/inspect/plugin-speed.xml:
-	* docs/plugins/inspect/plugin-subenc.xml:
-	* docs/plugins/inspect/plugin-videoparsersbad.xml:
-	* docs/plugins/inspect/plugin-voaacenc.xml:
-	* docs/plugins/inspect/plugin-voamrwbenc.xml:
-	* docs/plugins/inspect/plugin-waylandsink.xml:
-	* docs/plugins/inspect/plugin-y4mdec.xml:
-	* docs/plugins/inspect/plugin-zbar.xml:
-	* gst-plugins-bad.doap:
-	* win32/common/config.h:
-	  Release 1.6.1
+2015-10-31 23:28:20 +1100  Matthew Waters <matthew@centricular.com>
 
-2015-10-30 16:29:57 +0200  Sebastian Dröge <sebastian@centricular.com>
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	  glbufferpool: explicitly initialize a possibly uninitialized variable
+	  The ret variable may be uninitialized and so its contents were undefined and
+	  the results were erratic (failing with glvideomixer, succeeding in other cases)
+	  P.S. No idea why gcc/clang et al never picked up on this like they normally do
+	  (probably due to some optimisation pass figuring out it's only set once...)
 
-	* po/af.po:
-	* po/az.po:
-	* po/bg.po:
-	* po/ca.po:
-	* po/da.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/ky.po:
-	* po/lt.po:
-	* po/lv.po:
-	* po/mt.po:
-	* po/nb.po:
-	* po/or.po:
-	* po/pt_BR.po:
-	* po/ro.po:
-	* po/sk.po:
-	* po/sl.po:
-	* po/sq.po:
-	* po/sr.po:
-	* po/sv.po:
-	* po/tr.po:
-	  Update .po files
+2015-10-29 11:38:35 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
 
-2015-10-30 14:30:17 +0200  Sebastian Dröge <sebastian@centricular.com>
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: make durations unsigned where appropriate
+	  The standard does not seem to make any particular explicit not
+	  implicit reference to the signedness of durations, and the code
+	  does not rely on such, nor on the negativity of the -1 value
+	  that's used as a placeholder when a duration property is not
+	  present in the XML.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=750847
 
-	* po/cs.po:
-	* po/de.po:
-	* po/nl.po:
-	* po/pl.po:
-	* po/ru.po:
-	* po/uk.po:
-	* po/vi.po:
-	* po/zh_CN.po:
-	  po: Update translations
+2015-10-30 15:55:19 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: inherit bitstreamSwitching from Period to AdaptationSet
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752340
+
+2015-08-20 18:14:36 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstdashdemux.c:
+	  dashdemux: marked PROP_BANDWIDTH_USAGE property as deprecated
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753890
+
+2015-10-30 15:02:35 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: unit testing reproducing inherited segment duration overflow
+	  unit test reproducing https://bugzilla.gnome.org/show_bug.cgi?id=751832
+
+2015-10-30 14:31:21 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: inherited segment URLs are ignored if they are defined again in a lower SegmentList
+	  According to the standard:
+	  "SegmentBase, SegmentTemplate and SegmentList shall inherit
+	  attributes and elements from the same element on a higher level.
+	  If the same attribute or element is present on both levels,
+	  the one on the lower level shall take precedence over the one
+	  on the higher level."
+	  gst_mpdparser_parse_segment_list_node will now discard any inherited
+	  segment URLs if the parsed element defines some too.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=751832
+
+2015-10-20 17:21:00 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_demux.c:
+	* tests/check/elements/fake_http_src.c:
+	* tests/check/elements/fake_http_src.h:
+	  adaptivedemux: tests: added test for fragment download error
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757361
+
+2015-10-20 15:46:36 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: tests: made adaptive demux test thread safe
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757361
+
+2015-10-16 16:20:34 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: tests: added query test
+	  Testing if adaptive demux responds to queries.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757361
+
+2015-10-28 11:21:14 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: tests: added test for multiple BaseURL entries
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757245
+
+2015-09-16 10:40:33 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: tests: added unit test for 6d1eda9391d3143b5fc633edfd94b89dbba209ab
+	  Commit 6d1eda9391d3143b5fc633edfd94b89dbba209ab fixed the period start
+	  time scaling. This patch updates the unit tests to cover that scenario.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755105
+
+2015-10-16 17:10:11 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: tests: added download error test
+	  Tests adaptive demux behaviour when the uri is wrong and download does
+	  not happen.
+
+2015-10-30 12:49:20 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: stop task on multiple download errors
+	  On multiple download errors, we stop the download task and change the src
+	  element state to NULL.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756240
+
+2015-10-30 12:24:22 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: fix a missing lock in write to stream->last_ret
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757359
+
+2015-10-07 23:20:51 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: return error if src element cannot start
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756209
+
+2015-10-08 11:45:25 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: fixed waiting for fragment updates
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756237
+
+2015-10-08 12:35:44 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: fix header redownload in case of errors
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756239
+
+2015-10-30 00:04:12 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: release manifest lock before sending flush stop event
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757337
+
+2015-10-29 23:41:46 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: reset download_finished before starting the src element
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757336
+
+2015-10-29 23:23:05 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: release manifest lock before changing element state
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757335
+
+2015-10-30 16:38:17 +1100  Matthew Waters <matthew@centricular.com>
+
+	* sys/applemedia/corevideotexturecache.m:
+	  vtdec: fix compilation error
+	  Undefined symbols for architecture x86_64:
+	  "__gl_target_to_gst", referenced from:
+	  __do_get_gl_buffer in libgstapplemedia_la-corevideotexturecache.o
+
+2015-10-30 15:00:23 +1100  Matthew Waters <matthew@centricular.com>
+
+	* tests/check/libs/gstglcolorconvert.c:
+	* tests/check/libs/gstglmemory.c:
+	* tests/check/libs/gstglupload.c:
+	  gl/tests: update for glmemory api changes
+
+2015-10-30 14:43:23 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglcolorconvertelement.c:
+	  glcolorconvert: remove unused ret variable
+
+2015-10-30 14:40:35 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglslstage.h:
+	  glslstage: remove typedefs from the header
+	  They are already defined in the forward decleration header and defining them
+	  more than once will give an error with OSX's clang about typedef redefinition
+	  being a C11 feature.
+
+2015-10-30 14:38:05 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: follow the correct texture target names
+
+2015-10-30 01:42:42 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglupload.c:
+	  glupload: explicitly configure the texture target on the gl buffer pool
+	  If we don't, then the pool could end up allocating 2D textures when the
+	  caps explictly state they should be rectangle textures.
+
+2015-10-30 01:27:36 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	* gst-libs/gst/gl/gstglmemory.c:
+	* gst-libs/gst/gl/gstglmemory.h:
+	  glbufferpool: add bufferpool options for the various texture targets
+	  This was chosen over relying solely on the caps as glupload needs to propose an
+	  allocation and set the texture target based on the output caps.  Setting the
+	  caps in the config is currently pointless as they are overwritten in a lot of
+	  element's decide_allocation functions.
+	  This provides a mechanism for the buffer pool to be configured for a certain
+	  texture target when none has been configured.
+
+2015-10-29 13:04:31 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglcolorconvertelement.c:
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	* gst-libs/gst/gl/gstglcolorconvert.h:
+	* sys/applemedia/corevideotexturecache.h:
+	* sys/applemedia/corevideotexturecache.m:
+	* sys/applemedia/vtdec.c:
+	  glcolorconvert: add support for converting texture targets
+	  Solved with a simple shader templating mechanism and string replacements
+	  of the necessary sampler types/texture accesses and texture coordinate
+	  mangling for rectangular and external-oes textures.
+
+2015-10-29 00:44:26 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/caopengllayersink.m:
+	* ext/gl/gstglcolorconvertelement.c:
+	* ext/gl/gstglimagesink.c:
+	* ext/gl/gstgloverlay.c:
+	* ext/gl/gstglstereomix.c:
+	* ext/gl/gstgltestsrc.c:
+	* gst-libs/gst/gl/gstglbufferpool.c:
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	* gst-libs/gst/gl/gstglcolorconvert.h:
+	* gst-libs/gst/gl/gstglfilter.c:
+	* gst-libs/gst/gl/gstglmemory.c:
+	* gst-libs/gst/gl/gstglmemory.h:
+	* gst-libs/gst/gl/gstgloverlaycompositor.c:
+	* gst-libs/gst/gl/gstglupload.c:
+	* gst-libs/gst/gl/gstgluploadmeta.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* sys/applemedia/corevideotexturecache.m:
+	* tests/check/libs/gstglmemory.c:
+	  glmemory: add support for rectangle textures
+	  Add the various tokens/strings for the differnet texture types (2D, rect, oes)
+	  Changes the GLmemory api to include the GstGLTextureTarget in all relevant
+	  functions.
+	  Update the relevant caps/templates for 2D only textures.
+
+2015-10-30 01:45:13 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.h:
+	  glcolorconvert: order the caps template so that RGBA is first
+	  glcolorconvert ! glcolorconvert would sometimes negotiated RGB
+	  (the first list entry) otherwise.
+
+2015-10-30 01:16:02 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglbufferpool.h:
+	  glbufferpool: move typedef's into the forward decleration file
+	  Otherwise, for example, clang will warn about typedef redefinitions
+	  being a C11 feature.
+
+2015-10-16 18:36:20 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/fake_http_src.c:
+	  tests: fixed fake soup http src plugin
+	  The soup http src changed the way it interprets the seek segment stop value.
+	  Previously it was inclusive, now it is not (see commit
+	  21c6da6764c0cd015e9f3c5eecba36e297187deb,
+	  bug https://bugzilla.gnome.org/show_bug.cgi?id=748316)
+	  Updated fake soup http src to also consider segment stop not inclusive.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756322
+
+2015-10-09 14:10:52 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/Makefile.am:
+	* tests/check/elements/dash_demux.c:
+	  adaptivedemux: tests: added unit test for adaptivedemux
+	  Created a unit test for dashdemux. It relies on a fake SOUP HTTP src plugin
+	  that will feed data to dashdemux. The test controls the data to be
+	  generated and checks the correct data was received for each expected
+	  stream.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756322
+
+2015-10-09 21:23:20 +0100  Alex Ashley <bugzilla@ashley-family.net>
+
+	* tests/check/elements/fake_http_src.c:
+	* tests/check/elements/fake_http_src.h:
+	  tests: added fake http src plugin
+	  Added a fake http src plugin capable of generating data buffers for a
+	  request of a http url. Can be used in tests to simulate http accesses.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756322
+
+2015-07-07 15:38:08 +0100  Alex Ashley <bugzilla@ashley-family.net>
+
+	* ext/dash/gstdashdemux.c:
+	* ext/dash/gstdashdemux.h:
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: provide a default suggestedPresentationDelay
+	  If MPD@suggestedPresentationDelay is not present in the manifest,
+	  dashdemux selects the fragment closest to the most recently generated
+	  fragment. This causes a playback issue because this choice does not allow
+	  the DASH client to build up any buffer of downloaded fragments without
+	  pausing playback. This is because by definition new fragments appear on
+	  the server in real-time (e.g. if segment duration is 4 seconds, a new
+	  fragment will appear on the server every 4 seconds). If the starting
+	  playback position was n*segmentDuration seconds behind "now", the DASH
+	  client could download up to 'n' fragments faster than realtime before it
+	  reached the point where it needed to wait for fragments to appear on the
+	  server.
+	  The MPD@suggestedPresentationDelay attribute allows a content publisher
+	  to provide a suggested starting position that is behind the current
+	  "live" position.
+	  If the MPD@suggestedPresentationDelay attribute is not present, provide
+	  a suitable default value as a property of the dashdemux element. To
+	  allow the default presentation delay to be specified either using
+	  fragments or seconds, the property is a string that contains a number
+	  and a unit (e.g. "10 seconds", "4 fragments", "2500ms").
 
 2015-10-29 15:02:38 +0200  Sreerenj Balachandran <sreerenj.balachandran@intel.com>
 
@@ -305,6 +3556,196 @@
 	  Differentiate the vp8/vp9 bitstream based on fourcc.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=757251
 
+2015-09-09 14:09:43 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstdashdemux.c:
+	  dashdemux: improve detection of stream language
+	  Improved the detection of stream's language if the AdaptationSet
+	  contains more than 1 ContentComponent
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752367
+
+2015-10-29 12:04:31 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dash_mpd: restrict segment template format strings to %0[0-9]*d as per spec
+	  https://bugzilla.gnome.org/show_bug.cgi?id=751735
+
+2015-09-09 12:36:10 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: segment template parsing: added support for %d
+	  Added support for %d in template identifier.
+	  Added testcases for %d, %3d, %0-4d identifier formats.
+
+2015-10-29 11:54:34 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: corrected parsing of segment templates
+	  Corrected the parsing of a segment template string.
+	  Added unit tests to test the segment template parsing.
+	  All reported problems are now correctly handled.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=751735
+
+2015-10-29 11:17:48 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  dahsdemux: task is signaled to stop without stop condition being set
+	  The gst_adaptive_demux_stream_free function is trying to stop the stream's
+	  download task. For this, it signals the task. But it fails to also set the
+	  stream->download_finished = TRUE, so the task will go back to sleep and
+	  only exit when the download is finished.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755121
+
+2015-10-28 17:02:51 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: fixed crash when segment timeline list is greater than segment url list
+	  When building the media segment list using a SegmentList node, the
+	  gst_mpd_client_setup_representation function will iterate through the
+	  list of S nodes and will expect to find a matching SegmentUrl node. If
+	  one does not exist, the code made an illegal memory access.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752496
+
+2015-09-11 10:59:15 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: unit test for missing profiles
+
+2015-09-11 10:57:26 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* ext/dash/gstmpdparser.c:
+	  mpdparser: do not dereference profiles is absent
+	  These are used to apply restrictions on what the MPD file may
+	  use, so no profile means no restrictions.
+	  Besides, nothing actually uses the profiles (yet) anyway.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=750869
+
+2015-09-16 16:46:29 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/hls/gsthlsdemux.c:
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.h:
+	  adaptivedemux: fixed multithread support
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755169
+
+2015-10-28 16:31:39 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: parser rejects negative values for mediaPresentationDuration
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752326
+
+2015-10-28 16:24:01 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: corrected parsing of negative values into unsigned data
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752429
+
+2015-09-17 20:18:52 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+	* gst-libs/gst/codecparsers/gsth264parser.c:
+	  codecparser: h264: initialize parsing structures
+	  Initialize to 0 these parse structures before filling them: GstH264SEIMessage,
+	  GstH264NalUnit, GstH264PPS, GstH264SPS and GstH264SliceHdr.
+	  When calling the functions which fill those structures, they may fail, leaving
+	  unitialized those structures. This situation may lead to future problems, such
+	  as a segmentation fault when freeing, for example.
+	  This patch initializes to zero these structures, before filling them.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755161
+
+2015-09-18 10:09:26 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+	* gst-libs/gst/codecparsers/gsth265parser.c:
+	  codecparser: h265: initialize parsing structures
+	  Initialize to 0 these parse structures before filling them: GstH265SEIMessage,
+	  GstH265NalUnit, GstH265VPS, GstH265PPS, GstH265SPS and GstH265SliceHdr.
+	  When calling the functions which fill those structures, they may fail, leaving
+	  unitialized those structures. This situation may lead to future problems, such
+	  as a segmentation fault when freeing, for example.
+	  This patch initializes to zero these structures, before filling them.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755161
+
+2015-10-26 19:58:04 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+	* gst/audiomixer/gstaudiomixer.c:
+	  liveadder: Make latency property be a uint in millisecs
+	  This restores roughly the same behaviour as the old liveadder element.
+	  Except that the latency now also includes the output-buffer-duration.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757050
+
+2015-09-08 14:00:54 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* ext/dash/gstmpdparser.c:
+	  mpdparser: forbid negative values for duration
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752492
+
+2015-10-28 15:39:07 +0000  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: parser rejects XMLs with negative period duration
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752329
+
+2015-10-28 15:34:29 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: check segment lists have either duration or timeline
+	  And add error checking along the way.
+	  Add duration where appropriate so unit tests still pass.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=751650
+
+2015-09-29 16:17:03 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+	* ext/dash/gstmpdparser.c:
+	* tests/check/elements/dash_mpd.c:
+	  mpdparser: validate representation set identifier
+	  It must have no whitespace, and must comply with RFC 1738 when
+	  used to build a URL.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=750852
+
+2015-10-28 14:41:54 +0000  Julien Isorce <j.isorce@samsung.com>
+
+	* gst-libs/gst/gl/gstglslstage.c:
+	  glslstage: initialize output params to 0 before calling gl functions
+	  The client side API of the Chromium's GPU Process has asserts
+	  in debug mode that check that output params are initialized to 0.
+
+2015-10-27 16:32:48 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Remove some dead code that could never be called
+	  Coverity CIDs #1328818, #1328819, #1328820.
+
+2015-10-27 00:36:41 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/Makefile.am:
+	* ext/gl/gstopengl.c:
+	  opengl: build/provide glstereomix/split on gles only systems
+
+2015-10-26 16:51:06 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* gst/geometrictransform/geometricmath.c:
+	* gst/geometrictransform/geometricmath.h:
+	* gst/geometrictransform/gstbulge.c:
+	* gst/geometrictransform/gstcircle.c:
+	* gst/geometrictransform/gstgeometrictransform.c:
+	* gst/geometrictransform/gstkaleidoscope.c:
+	* gst/geometrictransform/gstmarble.c:
+	* gst/geometrictransform/gstmarble.h:
+	* gst/geometrictransform/gstsquare.c:
+	* gst/geometrictransform/gststretch.c:
+	  geometrictransform: rename gemetric math functions to have their symbols namespaced
+	  Otherwise those symbols can conflict with external libraries when
+	  linking everything statically for mobile targets.
+	  Use the gst_gm_ prefix, short for gst geometric math.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756882
+
 2015-10-26 15:30:08 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
 
 	* ext/wayland/gstwaylandsink.c:
@@ -321,6 +3762,28 @@
 	  It's probably better to avoid chasing hidden refcounts.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756567
 
+2015-10-26 18:26:18 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: allow outputting multiple textures for gles3 contexts
+	  the USING_GLES2 includes all GLES3 contexts as well which does support
+	  drawing to multiple buffers.  Instead make or decision solely based on
+	  whether glDrawBuffers is available or not.
+
+2015-10-26 17:36:21 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstopengl.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	  glviewconvert: expose the element on gles2 platforms
+	  We can do everything with gles3 however gles2 restricts us not allowing
+	  separated or frame-by-frame multiview modes due to multiple draw buffers.
+
+2015-10-25 01:19:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/hlsdemux_m3u8.c:
+	  tests: hlsdemux_m3u: add test for master playlist with missing variant list uri
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756861
+
 2015-10-20 09:13:04 +0100  André Draszik <git@andred.net>
 
 	* ext/hls/m3u8.c:
@@ -337,46 +3800,331 @@
 	  as needed.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756861
 
+2015-09-04 11:29:08 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: change dispose function to finalize
+
+2015-08-30 21:35:02 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: remove helper function only used once
+
+2015-08-30 17:41:23 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gsthlsdemux.c:
+	  hlsdemux: remove deprecated 'fragments-cache' property
+	  It's been non-functional for two cycles now, let's
+	  get rid of it.
+
+2015-09-02 16:40:17 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	  hlsdemux: m3u8: move file lookup by sequence directly into code
+	  Nicer to read, two lines of code less, and also the callback
+	  function should've been a GCompareFunc that returns a gint
+	  and not a boolean (it did work correctly, was just confusing).
+
+2015-09-01 12:48:38 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.c:
+	* ext/hls/m3u8.h:
+	  hlsdemux: m3u8: clean-up: remove unused argument in function call
+
+2015-08-30 17:22:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/m3u8.h:
+	  hlsdemux: m3u8: clean-up: reindent header for better readability
+	  And remove duplicate define.
+
+2015-10-23 18:58:41 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Remove empty set/get_property()
+	  We can add them again if we ever add properties.
+
+2015-10-23 18:38:33 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/Makefile.am:
+	* gst/mxf/mxfmux.c:
+	* gst/mxf/mxfmux.h:
+	  mxfmux: Port to GstAggregator
+
+2015-10-22 19:20:24 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Set GC essence element UL version to 0x01
+	  ffmpeg otherwise rejects it and the spec is not 100% clear about that.
+
 2015-10-20 17:09:22 +0200  Santiago Carot-Nemesio <sancane@gmail.com>
 
 	* ext/srtp/gstsrtp.c:
 	  srtp: Fix critical warning trying to retrieve SSRC from a non fb message
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756876
 
-2015-10-16 00:23:56 +0200  Miguel París Díaz <mparisdiaz@gmail.com>
+2015-10-22 19:24:34 +0300  Sebastian Dröge <sebastian@centricular.com>
 
-	* ext/srtp/gstsrtpdec.c:
-	  srtpdec: skip padding when mapping RTP packets
-	  https://bugzilla.gnome.org/show_bug.cgi?id=756653
+	* gst/mxf/Makefile.am:
+	  mxf: Reorder CFLAGS and LIBS
 
-2015-10-14 10:31:23 +0300  Sebastian Dröge <sebastian@centricular.com>
+2015-10-23 15:42:24 +0300  Sebastian Dröge <sebastian@centricular.com>
 
-	* ext/dash/gstmpdparser.c:
-	  mpdparser: Set default last_byte_pos to -1
-	  The value is optional in the range, and if it is absent it means we should
-	  download until the end of stream. Not until position 0.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=748316
+	* gst-libs/gst/base/gstaggregator.c:
+	* gst-libs/gst/base/gstaggregator.h:
+	  aggregator: Add create_new_pad() vfunc to allow subclasses to override the default behaviour
+	  Not all aggregator subclasses will have a single pad template called sink_%u
+	  and might do something special depending on what the application requests.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=757018
 
-2015-10-14 19:32:07 +0300  Sebastian Dröge <sebastian@centricular.com>
+2015-10-21 19:00:41 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Set KAG size to 1
+	  We're not aligning our output in any way, and 0 is invalid.
+
+2015-10-21 18:58:06 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Don't let the header partition's prev_partition point forward to the footer
+
+2015-10-21 18:32:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxftypes.c:
+	  mxftypes: Fix generation of operational pattern UL
+
+2015-10-21 18:31:43 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/examples/mxf/mxfdemux-structure.c:
+	  mxfdemux-structure: Sync fakesink state with the bin to make the application work at all
+
+2015-10-21 18:20:16 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmpeg.c:
+	  mxfmpeg: h264 is always byte-stream inside MXF
+
+2015-10-21 18:06:11 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/elements/mxfmux.c:
+	* tests/check/pipelines/mxf.c:
+	  mxf: Add unit tests for H264/PCM
+
+2015-10-21 17:47:00 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Don't leak SEEK events when dropping them
+
+2015-10-21 17:21:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfvc3.c:
+	  mxfvc3: The wrapping is the 15th byte of the essence container UL, not the 16th
+	  In other mappings it is the 16th though.
+
+2015-10-21 17:11:03 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfdemux.c:
+	  mxfdemux: If seeking to the remaining parts of the file fails on EOS, consider the stream done
+	  Without this we would run this while loop forever, always seeking again for
+	  the same stream.
+
+2015-10-21 15:07:23 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/elements/mxfmux.c:
+	* tests/check/pipelines/mxf.c:
+	  mxf: Properly enable unit tests again
+
+2015-10-21 01:22:11 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxf.c:
+	  mxf: Re-enable mxfmux element
+
+2015-10-21 01:21:37 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfjpeg2000.c:
+	  mxfjpeg2000: Fix caps
+	  There is no fields field anymore.
+
+2015-10-21 01:17:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Don't fail SEGMENT events
+
+2015-10-21 01:02:46 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfmux.c:
+	  mxfmux: Push stream-start and caps event before segment event
+	  And don't push the caps event during instance initialization already.
+
+2015-10-21 00:45:19 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/mxf/mxfaes-bwf.c:
+	  mxfaes-bwf: Format is unsigned if it's 1 byte per channel
+	  ... not 1 byte per block.
+
+2015-10-21 16:51:10 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsthanddetect.cpp:
+	  opencv: handdetect: no need to get a writable buffer
+	  No need to get a writable buffer inside cv_trans_func of opencv video
+	  filter. GstBaseTransform takes care of this.
+
+2015-10-21 14:35:11 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* common:
+	  Automatic update of common submodule
+	  From b99800a to b319909
+
+2015-10-20 17:29:42 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	  Use new GST_ENABLE_EXTRA_CHECKS #define
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756870
+
+2015-10-21 14:26:01 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* README:
+	* common:
+	  Automatic update of common submodule
+	  From 9aed1d7 to b99800a
+
+2015-10-21 05:34:18 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglfiltershader.c:
+	  glshaderelement: free the vertex and fragment strings on finalize
+	  Fixes a memory leak when using the vertex/fragment properties.
+
+2015-10-21 05:33:13 +1100  Matthew Waters <matthew@centricular.com>
 
 	* sys/androidmedia/gstamcvideodec.c:
-	  amcvideodec: Properly forward the return value of gst_video_decoder_negotiate()
-	  https://bugzilla.gnome.org/show_bug.cgi?id=756578
+	  androidmedia: fix build errors
+	  printf %lld instead of G_GINT64_FORMAT.
+	  Double ret variable declaration.
 
-2015-10-14 19:24:22 +0300  Sebastian Dröge <sebastian@centricular.com>
+2015-10-21 05:00:11 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglfiltershader.c:
+	  glshaderelement: remove unneeded reference to <gst/gl/gstglshadervariables.h>
+
+2015-10-21 04:44:50 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/egl/gsteglimagememory.c:
+	* gst-libs/gst/gl/egl/gstglcontext_egl.c:
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	* gst-libs/gst/gl/gstglcontext.c:
+	  gl: fix usage of string.h and stdio.h functions without including the headers
+	  e.g:
+	  gstglcontext_egl.c:613:7: error: implicit declaration of function 'strcmp'
+	  [-Werror=implicit-function-declaration]
+	  if (strcmp (G_MODULE_SUFFIX, "so") == 0)
+
+2015-10-16 07:03:06 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	  glimagesink: create a context in NULL_READY
+	  So that it's possible for decoders et al. to request the OpenGL context
+	  in their READY_PAUSED transition with decodebin/playbin.
+
+2015-10-16 00:34:22 +1100  Matthew Waters <matthew@centricular.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	* sys/androidmedia/gstamcvideodec.h:
+	  amcviddec: use gstcontext to retreive the OpenGL context
+
+2015-04-20 13:46:58 +0200  Matthieu Bouron <matthieu.bouron@collabora.com>
 
 	* sys/androidmedia/gstamc.c:
+	* sys/androidmedia/gstamc.h:
 	* sys/androidmedia/gstamcvideodec.c:
-	  amcvideodec: Implement support for COLOR_QCOM_FormatYVU420SemiPlanar32mMultiView for decoding
-	  https://bugzilla.gnome.org/show_bug.cgi?id=756578
+	  androidmedia: Only allow GL output if the decoder has unknown color formats
+	  If GST_AMC_IGNORE_UNKNOWN_COLOR_FORMATS is set to yes, non-GL output
+	  is still allowed.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731204
 
-2015-10-14 18:35:00 +0200  plamot <pierre.lamot@openwide.fr>
+2014-06-05 10:33:56 +0200  Matthieu Bouron <matthieu.bouron@collabora.com>
 
-	* sys/dshowvideosink/dshowvideosink.cpp:
-	  dshowvideosink: Fix 64bit compatibility issue
-	  SetWindowLong works only for 32 bit systems, thus windows events (move/resize)
-	  where not interpreted on 64 bit systems
-	  https://bugzilla.gnome.org/show_bug.cgi?id=756617
+	* sys/androidmedia/Makefile.am:
+	* sys/androidmedia/gstamc.c:
+	* sys/androidmedia/gstamc.h:
+	* sys/androidmedia/gstamc2dtexturerenderer.c:
+	* sys/androidmedia/gstamc2dtexturerenderer.h:
+	* sys/androidmedia/gstamcaudiodec.c:
+	* sys/androidmedia/gstamcsurface.c:
+	* sys/androidmedia/gstamcsurface.h:
+	* sys/androidmedia/gstamcsurfacetexture.c:
+	* sys/androidmedia/gstamcsurfacetexture.h:
+	* sys/androidmedia/gstamcvideodec.c:
+	* sys/androidmedia/gstamcvideodec.h:
+	* sys/androidmedia/gstamcvideoenc.c:
+	* sys/androidmedia/gstjniutils.c:
+	* sys/androidmedia/gstjniutils.h:
+	* sys/androidmedia/org/freedesktop/gstreamer/androidmedia/GstAmcOnFrameAvailableListener.java:
+	  androidmedia: Add support for GL output in amcvideodec
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731204
+
+2015-04-30 12:33:58 +0200  Matthieu Bouron <matthieu.bouron@collabora.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  androidmedia: Do not flush codec if it is not started
+
+2015-04-13 13:10:10 +0200  Matthieu Bouron <matthieu.bouron@gmail.com>
+
+	* sys/androidmedia/gstjniutils.c:
+	  androidmedia: Allow object to be NULL in gst_amc_jni_*unref functions
+
+2015-03-13 16:13:08 +0100  Edward Hervey <bilboed@bilboed.com>
+
+	* sys/androidmedia/gstamc.c:
+	* sys/androidmedia/gstamcvideoenc.c:
+	  androidmedia: Fix debug statement (%d for a gsize argument)
+
+2015-04-02 16:28:14 +0200  Matthieu Bouron <matthieu.bouron@gmail.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  androidmedia: Improve color format debug messages
+
+2015-03-31 16:24:40 +0200  Matthieu Bouron <matthieu.bouron@gmail.com>
+
+	* sys/androidmedia/gstamc.c:
+	  androidmedia: Improve debug messages
+
+2015-03-31 17:48:59 +0200  Matthieu Bouron <matthieu.bouron@gmail.com>
+
+	* sys/androidmedia/gstamc.c:
+	  androidmedia: Do not warn we do not support COLOR_FormatSurface
+
+2015-10-21 03:59:33 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstglshadervariables.c:
+	* gst-libs/gst/gl/gstglshadervariables.h:
+	  gl: remove unneeded shader variable parsing code
+
+2015-10-21 03:23:30 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglfiltershader.c:
+	* ext/gl/gstglfiltershader.h:
+	  glshaderelement: implement setting arbitrary uniforms
+	  Currently float and int are supported by default. vec2, vec3, vec4
+	  and mat4 are supported if graphene is used.  Of course if one wants
+	  to set custom uniforms they can also be set using the create-shader
+	  signal.
+
+2015-10-20 12:24:11 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsthanddetect.cpp:
+	  opencv: handdetect: free best_r with delete
+	  best_r is a cv::Rect, so it should be freed with delete and not with
+	  g_free()
+
+2015-10-20 12:08:59 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstmotioncells.cpp:
+	  opencv: motioncells: remove unnecessary check
+	  We know that the gchar arrays contain at least one string. Furthermore,
+	  g_strfreev() checks if the array is NULL and simply returns if it is.
+	  Hence, there is no need to check if the array is empty before using
+	  g_strfreev().
+	  CID 1327412-1327415
 
 2015-07-08 17:17:12 +0200  Edward Hervey <edward@centricular.com>
 
@@ -389,6 +4137,54 @@
 	  was previously outputted.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=752132
 
+2015-10-14 18:35:00 +0200  plamot <pierre.lamot@openwide.fr>
+
+	* sys/dshowvideosink/dshowvideosink.cpp:
+	  dshowvideosink: Fix 64bit compatibility issue
+	  SetWindowLong works only for 32 bit systems, thus windows events (move/resize)
+	  where not interpreted on 64 bit systems
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756617
+
+2015-10-19 15:15:30 +1100  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* ext/gl/gstglimagesink.c:
+	* ext/gtk/gtkgstglwidget.c:
+	* ext/qt/qtitem.cc:
+	* gst-libs/gst/gl/android/gstglwindow_android_egl.h:
+	* gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h:
+	* gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h:
+	* gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h:
+	* gst-libs/gst/gl/eagl/gstglcontext_eagl.h:
+	* gst-libs/gst/gl/eagl/gstglwindow_eagl.h:
+	* gst-libs/gst/gl/egl/gstglcontext_egl.c:
+	* gst-libs/gst/gl/egl/gstglcontext_egl.h:
+	* gst-libs/gst/gl/gstglcontext.c:
+	* gst-libs/gst/gl/gstglcontext.h:
+	* gst-libs/gst/gl/gstgldisplay.c:
+	* gst-libs/gst/gl/gstglshader.c:
+	* gst-libs/gst/gl/gstglshader.h:
+	* gst-libs/gst/gl/gstglsl.c:
+	* gst-libs/gst/gl/gstglslstage.c:
+	* gst-libs/gst/gl/gstglsyncmeta.c:
+	* gst-libs/gst/gl/gstglviewconvert.c:
+	* gst-libs/gst/gl/gstglwindow.c:
+	* gst-libs/gst/gl/gstglwindow.h:
+	* gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h:
+	* gst-libs/gst/gl/win32/gstglcontext_wgl.h:
+	* gst-libs/gst/gl/win32/gstglwindow_win32.h:
+	* gst-libs/gst/gl/win32/gstglwindow_win32_egl.h:
+	* gst-libs/gst/gl/x11/gstglcontext_glx.h:
+	* gst-libs/gst/gl/x11/gstglwindow_x11.h:
+	  gl: be consistent in gobject boilerpate
+	  GST_GL_IS_* vs GST_IS_GL_*
+	  git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g'
+
+2015-10-19 15:02:10 +1100  Matthew Waters <matthew@centricular.com>
+
+	* .gitignore:
+	  add glliveshader program to .gitignore
+
 2015-10-17 12:48:11 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
 
 	* gst/pnm/gstpnmdec.c:
@@ -416,6 +4212,23 @@
 	  for the next frame, avoiding failures like:
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756563
 
+2015-10-17 15:26:46 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglfiltershader.c:
+	* ext/gl/gstglfiltershader.h:
+	* tests/examples/gtk/glliveshader.c:
+	  glshaderelement: implement on-demand create-shader signalling
+	  One may not have an GstGLContext available or current in the thread where one
+	  would need to update the shader.  Support this by signalling create-shader
+	  whenever the one-shot 'update-shader' is set to TRUE.
+
+2015-10-17 02:42:47 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/caopengllayersink.m:
+	  gl/calayer: don't leak a gl shader object
+	  We will always overwrite the ca_sink->redisplay_shader without freeing the
+	  object.
+
 2015-10-17 02:40:50 +1100  Matthew Waters <matthew@centricular.com>
 
 	* ext/gtk/gstgtkbasesink.c:
@@ -424,12 +4237,164 @@
 	  callback.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=755969
 
+2015-10-17 01:08:29 +1100  Matthew Waters <matthew@centricular.com>
+
+	* tests/examples/gtk/Makefile.am:
+	* tests/examples/gtk/glliveshader.c:
+	  gl/examples: add a live shader demo using the new GstGLSLStage
+	  Implemented with videotestsrc ! glshader ! glupload ! gtkglsink
+	  Errors on an invalid shader compilation are ignored however any error
+	  provided by the glsl compiler is printed to stdout.
+
+2015-10-16 00:23:56 +0200  Miguel París Díaz <mparisdiaz@gmail.com>
+
+	* ext/srtp/gstsrtpdec.c:
+	  srtpdec: skip padding when mapping RTP packets
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756653
+
+2015-10-14 19:32:07 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/androidmedia/gstamcvideodec.c:
+	  amcvideodec: Properly forward the return value of gst_video_decoder_negotiate()
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756578
+
+2015-10-14 19:24:22 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/androidmedia/gstamc.c:
+	* sys/androidmedia/gstamcvideodec.c:
+	  amcvideodec: Implement support for COLOR_QCOM_FormatYVU420SemiPlanar32mMultiView for decoding
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756578
+
+2015-10-16 02:57:19 +1100  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglslstage.c:
+	  glslstage: add brackets around pointer dereference referencing an array
+	  While technically, i is always 0 and *vertex_sources[i++] is equivalant
+	  to (*vertex_sources)[i++].  Be future-proof in the case of code
+	  moves/changes/etc.
+	  CID 1327406
+
+2015-10-15 23:47:11 +1100  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/caopengllayersink.m:
+	  gl/caopengllayersink: port to new GstGLShader API
+	  fixes build error:
+	  "undefined symbols for architecture:
+	  gst_gl_shader_compile_with_default_vf_and_check"
+
+2015-10-15 22:42:26 +1100  Matthew Waters <matthew@centricular.com>
+
+	* tests/check/libs/gstglcontext.c:
+	  gl/tests: port glcontext test to opengl
+	  Now uses vao's and vbo's when possible like the rest of the gstgl library.
+
+2015-09-04 16:16:51 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglfiltershader.c:
+	* ext/gl/gstglfiltershader.h:
+	  glshader: port element to GstGLSLStage
+	  - Provide a shader property to set the full shader pipeline
+	  - Provide vertex and fragment properties for just providing simple
+	  shader sources.
+
+2015-09-04 16:02:32 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/effects/gstgleffectidentity.c:
+	* ext/gl/gstglcolorscale.c:
+	* ext/gl/gstgldifferencematte.c:
+	* ext/gl/gstgleffects.c:
+	* ext/gl/gstglimagesink.c:
+	* ext/gtk/gtkgstglwidget.c:
+	* gst-libs/gst/gl/gstgloverlaycompositor.c:
+	* gst-libs/gst/gl/gstglshader.c:
+	* gst-libs/gst/gl/gstglshader.h:
+	* gst-libs/gst/gl/gstglutils.c:
+	* tests/check/libs/gstglcontext.c:
+	* tests/check/libs/gstglupload.c:
+	  glshader: port to using GstGLSLStage objects for string management
+	  A GstGLShader is now simply a collection of stages that are
+	  compiled and linked together into a program.  The uniform/attribute
+	  interface has remained the same.
+
+2015-09-04 14:36:47 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstgl_fwd.h:
+	* gst-libs/gst/gl/gstglslstage.c:
+	* gst-libs/gst/gl/gstglslstage.h:
+	  glsl: add a shader stage object GstGLSLStage
+	  Represents a stage (vertex, geometry, fragment, etc) in the shader
+	  pipeline.
+
+2015-09-04 00:09:09 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglshadervariables.h:
+	  gl/shader/variables: include generic gl.h header
+	  Otherwise we may miss some forward declarations
+	  Fixes build error: undefined reference to GstGLSLStage
+
+2015-08-20 15:11:06 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gstglsl.c:
+	* gst-libs/gst/gl/gstglsl.h:
+	* gst-libs/gst/gl/gstglsl_private.h:
+	* tests/check/Makefile.am:
+	* tests/check/libs/.gitignore:
+	* tests/check/libs/gstglsl.c:
+	  gl: add some GLSL utility functions
+	  Specifically parsing/setting GLSL versions and the shader related
+	  function table.
+
 2015-10-14 22:51:29 +0200  Paul Arzelier <paul.arzelier@free.fr>
 
 	* ext/dtls/gstdtlscertificate.c:
 	  dtls: Fix name conflict with openssl on win32
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756592
 
+2015-09-04 18:40:18 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* ext/hls/m3u8.c:
+	  hls: if media sequence is not specified, use 0
+	  Allows playlists that are missing the mediasequence information to
+	  be correctly parsed. If the playlist was updated without reseting
+	  the mediasequence it would constantly increase over subsequent updates,
+	  leading to issues during playback.
+
+2015-08-30 14:56:57 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* ext/wayland/gstwaylandsink.c:
+	  waylandsink: fix fallback buffer allocation
+	  Copy-paste mistake; the wl_buffer was attached on the wrong buffer...
+
+2015-08-30 14:55:11 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* ext/wayland/gstwaylandsink.c:
+	* ext/wayland/wldisplay.c:
+	* ext/wayland/wldisplay.h:
+	  waylandsink: rename GstWlDisplay::formats array to shm_formats
+	  These formats are specific to the wl_shm interface. We are going
+	  to add dmabuf formats later as well.
+
+2015-08-29 22:29:17 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+	* ext/wayland/Makefile.am:
+	* ext/wayland/wlshmallocator.c:
+	* ext/wayland/wlshmallocator.h:
+	  waylandsink: replace the custom GstWlShmMemory with GstFdMemory
+
+2015-10-14 19:53:34 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/POTFILES.in:
+	  po: Update POTFILES.in for OpenCV C++ file rename
+
+2015-10-14 17:41:05 +0200  Edward Hervey <edward@centricular.com>
+
+	* ext/hls/m3u8.c:
+	  hls: Allow debugging of the playlist
+	  Helps debugging issues
+
 2015-10-14 17:38:39 +0200  Edward Hervey <edward@centricular.com>
 
 	* ext/hls/gsthlsdemux.c:
@@ -445,6 +4410,189 @@
 	  * either the first sequence number of the playlist (fallback)
 	  * or 3 fragments from the last one (standard behaviour)
 
+2015-10-14 15:30:05 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstopencvutils.c:
+	* ext/opencv/gstopencvutils.cpp:
+	* ext/opencv/gstopencvvideofilter.c:
+	* ext/opencv/gstopencvvideofilter.cpp:
+	* ext/opencv/gsttemplatematch.c:
+	* ext/opencv/gsttemplatematch.cpp:
+	  opencv: switch remaining to C++
+	  Switch remaining C files to C++ for consistency with other OpeCV elements,
+	  and support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-14 10:31:23 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/dash/gstmpdparser.c:
+	  mpdparser: Set default last_byte_pos to -1
+	  The value is optional in the range, and if it is absent it means we should
+	  download until the end of stream. Not until position 0.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=748316
+
+2015-10-14 10:34:58 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: HTTP ranges are inclusive, GStreamer segment.stop is exclusive
+	  Translate the values accordingly.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=748316
+
+2015-10-14 14:34:32 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstmotioncells.c:
+	* ext/opencv/gstmotioncells.cpp:
+	* ext/opencv/gstmotioncells.h:
+	* ext/opencv/motioncells_wrapper.cpp:
+	* ext/opencv/motioncells_wrapper.h:
+	  opencv: motioncells: Switch to C++
+	  Switch gstmotioncells to C++ for consistency with other OpenCV elements,
+	  and support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-14 22:35:26 +1100  Matthew Waters <matthew@centricular.com>
+
+	* Makefile.am:
+	  build: add liveadder directory to the cruft list
+	  So that we can remove it and avoid duplicate GstLiveAdder GType registrations.
+
+2015-10-13 12:40:04 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+	* gst-libs/gst/gl/gstgldebug.c:
+	  gl: fix leak in gst_gl_insert_debug_marker()
+	  The string allocated by g_vasprintf() was leaked.
+	  Reproduced using the
+	  validate.file.compositor.simple.play_15s.synchronized validate scenario.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756492
+
+2015-10-12 11:07:32 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* docs/plugins/gst-plugins-bad-plugins.args:
+	* docs/plugins/gst-plugins-bad-plugins.hierarchy:
+	* docs/plugins/gst-plugins-bad-plugins.interfaces:
+	* docs/plugins/inspect/plugin-accurip.xml:
+	* docs/plugins/inspect/plugin-adpcmdec.xml:
+	* docs/plugins/inspect/plugin-adpcmenc.xml:
+	* docs/plugins/inspect/plugin-aiff.xml:
+	* docs/plugins/inspect/plugin-asfmux.xml:
+	* docs/plugins/inspect/plugin-assrender.xml:
+	* docs/plugins/inspect/plugin-audiomixer.xml:
+	* docs/plugins/inspect/plugin-audiovisualizers.xml:
+	* docs/plugins/inspect/plugin-autoconvert.xml:
+	* docs/plugins/inspect/plugin-bayer.xml:
+	* docs/plugins/inspect/plugin-bz2.xml:
+	* docs/plugins/inspect/plugin-camerabin.xml:
+	* docs/plugins/inspect/plugin-chromaprint.xml:
+	* docs/plugins/inspect/plugin-coloreffects.xml:
+	* docs/plugins/inspect/plugin-curl.xml:
+	* docs/plugins/inspect/plugin-dataurisrc.xml:
+	* docs/plugins/inspect/plugin-debugutilsbad.xml:
+	* docs/plugins/inspect/plugin-dtsdec.xml:
+	* docs/plugins/inspect/plugin-dvb.xml:
+	* docs/plugins/inspect/plugin-dvbsuboverlay.xml:
+	* docs/plugins/inspect/plugin-dvdspu.xml:
+	* docs/plugins/inspect/plugin-faac.xml:
+	* docs/plugins/inspect/plugin-faad.xml:
+	* docs/plugins/inspect/plugin-festival.xml:
+	* docs/plugins/inspect/plugin-fieldanalysis.xml:
+	* docs/plugins/inspect/plugin-flite.xml:
+	* docs/plugins/inspect/plugin-fragmented.xml:
+	* docs/plugins/inspect/plugin-frei0r.xml:
+	* docs/plugins/inspect/plugin-gaudieffects.xml:
+	* docs/plugins/inspect/plugin-gdp.xml:
+	* docs/plugins/inspect/plugin-geometrictransform.xml:
+	* docs/plugins/inspect/plugin-gmedec.xml:
+	* docs/plugins/inspect/plugin-gsm.xml:
+	* docs/plugins/inspect/plugin-gstsiren.xml:
+	* docs/plugins/inspect/plugin-id3tag.xml:
+	* docs/plugins/inspect/plugin-inter.xml:
+	* docs/plugins/inspect/plugin-interlace.xml:
+	* docs/plugins/inspect/plugin-jpegformat.xml:
+	* docs/plugins/inspect/plugin-mimic.xml:
+	* docs/plugins/inspect/plugin-mms.xml:
+	* docs/plugins/inspect/plugin-modplug.xml:
+	* docs/plugins/inspect/plugin-mpeg2enc.xml:
+	* docs/plugins/inspect/plugin-mpegpsdemux.xml:
+	* docs/plugins/inspect/plugin-mpegpsmux.xml:
+	* docs/plugins/inspect/plugin-mpegtsdemux.xml:
+	* docs/plugins/inspect/plugin-mpegtsmux.xml:
+	* docs/plugins/inspect/plugin-mpg123.xml:
+	* docs/plugins/inspect/plugin-mplex.xml:
+	* docs/plugins/inspect/plugin-neon.xml:
+	* docs/plugins/inspect/plugin-ofa.xml:
+	* docs/plugins/inspect/plugin-openal.xml:
+	* docs/plugins/inspect/plugin-opencv.xml:
+	* docs/plugins/inspect/plugin-opus.xml:
+	* docs/plugins/inspect/plugin-pcapparse.xml:
+	* docs/plugins/inspect/plugin-pnm.xml:
+	* docs/plugins/inspect/plugin-rawparse.xml:
+	* docs/plugins/inspect/plugin-removesilence.xml:
+	* docs/plugins/inspect/plugin-resindvd.xml:
+	* docs/plugins/inspect/plugin-rfbsrc.xml:
+	* docs/plugins/inspect/plugin-rtmp.xml:
+	* docs/plugins/inspect/plugin-schro.xml:
+	* docs/plugins/inspect/plugin-sdp.xml:
+	* docs/plugins/inspect/plugin-segmentclip.xml:
+	* docs/plugins/inspect/plugin-shm.xml:
+	* docs/plugins/inspect/plugin-smooth.xml:
+	* docs/plugins/inspect/plugin-soundtouch.xml:
+	* docs/plugins/inspect/plugin-speed.xml:
+	* docs/plugins/inspect/plugin-subenc.xml:
+	* docs/plugins/inspect/plugin-videoparsersbad.xml:
+	* docs/plugins/inspect/plugin-voaacenc.xml:
+	* docs/plugins/inspect/plugin-voamrwbenc.xml:
+	* docs/plugins/inspect/plugin-waylandsink.xml:
+	* docs/plugins/inspect/plugin-y4mdec.xml:
+	* docs/plugins/inspect/plugin-zbar.xml:
+	  docs: update to git
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756424
+
+2015-10-12 09:36:29 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/audiomixer/gstaudiomixer.c:
+	  liveadder: latency property is an uint64 in audiomixer
+
+2015-10-11 23:44:25 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gsttextoverlay.c:
+	* ext/opencv/gsttextoverlay.cpp:
+	  textoverlay: Switch to C++
+	  Switch gsttextoverlay to C++ for consistency with other OpenCV elements,
+	  and support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-11 21:54:30 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstpyramidsegment.c:
+	* ext/opencv/gstpyramidsegment.cpp:
+	  opencv: pyramidsegment: Switch to C++
+	  Switch gstpyramidsegment to C++ for consistency with other OpenCV elements,
+	  and support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-05 00:55:36 +0100  Olivier Crête <olivier.crete@collabora.com>
+
+	* configure.ac:
+	* docs/plugins/Makefile.am:
+	* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+	* docs/plugins/gst-plugins-bad-plugins-sections.txt:
+	* docs/plugins/inspect/plugin-liveadder.xml:
+	* gst/audiomixer/gstaudiomixer.c:
+	* gst/liveadder/Makefile.am:
+	* gst/liveadder/liveadder.c:
+	* gst/liveadder/liveadder.h:
+	  liveadder: Remove plugin, replace by compat subclass of audiomixer
+	  New subclass with a similar behaviour as the old liveadder, but
+	  a slightly different API as the latency is in nanoseconds, not
+	  milliseconds. Also, the new liveadder has a effective latency that
+	  is latency + output-buffer-duration. In practice, just setting a non-zero
+	  latency with the new audiomixer gives you the right behavior in 99% of the
+	  cases.
+
 2015-10-11 10:00:43 +0100  Julien Isorce <j.isorce@samsung.com>
 
 	* configure.ac:
@@ -453,18 +4601,61 @@
 	  Found with gst-inspect-1.0 -b in gst-uninstalled env.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756383
 
-2015-10-05 11:21:07 +0900  Vineeth TM <vineeth.tm@samsung.com>
+2015-10-10 17:52:23 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
 
-	* gst/id3tag/id3tag.c:
-	  id3tag: fix sample memory leak
-	  When getting sample from taglist, the memory is not being freed resulting in memory leak.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=756070
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstcvsobel.c:
+	* ext/opencv/gstcvsobel.cpp:
+	  cvsobel: Switch to C++
+	  Switch gstcvlsobel to C++ for consistency with other OpenCV elements, and
+	  support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
 
-2015-10-06 21:23:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+2015-10-10 17:00:55 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
 
-	* ext/gl/gstglvideomixer.c:
-	  glvideomixer: Proxy the ignore-eos videoaggregator property as well
-	  Identical to how the z-order property is proxied
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstcvlaplace.c:
+	* ext/opencv/gstcvlaplace.cpp:
+	  cvlaplace: Switch to C++
+	  Switch gstcvlaplace to C++ for consistency with other OpenCV elements, and
+	  support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-10 16:57:36 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstcvequalizehist.c:
+	* ext/opencv/gstcvequalizehist.cpp:
+	  cvequalizehist: Switch to C++
+	  Switch gstcvequalizehist to C++ for consistency with other OpenCV elements,
+	  and support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-10 14:10:32 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstcvdilateerode.c:
+	* ext/opencv/gstcvdilateerode.cpp:
+	* ext/opencv/gstcverode.c:
+	* ext/opencv/gstcverode.cpp:
+	  cverode: Switch to C++
+	  Switch gstcverode to C++ for consistency with other OpenCV elements, and
+	  support of the new 2.4.11 API.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-08 14:46:10 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+	* sys/dvb/parsechannels.c:
+	  dvb: simplify ZAP file format parser
+	  Simplify state handing, drop unneeded local vars, etc.
+
+2015-10-07 14:22:46 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* ext/dash/gstmpdparser.c:
+	  dashdemux: fixed has_next_period
+	  gst_mpd_client_has_next_period now calls gst_mpd_client_setup_media_presentation
+	  to refresh the period information.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756186
 
 2015-10-07 08:48:15 +0900  Vineeth TM <vineeth.tm@samsung.com>
 
@@ -475,13 +4666,18 @@
 	  formatter is being used in logs. Changing all those to int64
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756065
 
-2015-10-07 14:22:46 +0100  Florin Apostol <florin.apostol@oregan.net>
+2015-10-06 21:23:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
 
-	* ext/dash/gstmpdparser.c:
-	  dashdemux: fixed has_next_period
-	  gst_mpd_client_has_next_period now calls gst_mpd_client_setup_media_presentation
-	  to refresh the period information.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=756186
+	* ext/gl/gstglvideomixer.c:
+	  glvideomixer: Proxy the ignore-eos videoaggregator property as well
+	  Identical to how the z-order property is proxied
+
+2015-10-05 11:21:07 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/id3tag/id3tag.c:
+	  id3tag: fix sample memory leak
+	  When getting sample from taglist, the memory is not being freed resulting in memory leak.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=756070
 
 2015-10-01 11:18:52 +0200  Havard Graff <havard.graff@gmail.com>
 
@@ -489,11 +4685,191 @@
 	  rtmpsrc: plug memory-leaks
 	  https://bugzilla.gnome.org/show_bug.cgi?id=756001
 
+2015-10-02 22:57:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/resindvd/resindvdbin.c:
+	* ext/resindvd/resindvdbin.h:
+	* ext/resindvd/resindvdsrc.c:
+	* ext/resindvd/resindvdsrc.h:
+	  resindvd: Port to new GLib mutex/cond API
+
+2015-10-02 22:24:19 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	* ext/hls/m3u8.c:
+	* ext/libde265/libde265-dec.c:
+	* gst-libs/gst/glib-compat-private.h:
+	* gst/videomeasure/gstvideomeasure_ssim.c:
+	  Update GLib dependency to 2.40.0
+
+2015-10-02 19:02:26 +0100  Vanessa Chipirrás Navalón <vchipirras6@gmail.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstcvdilate.c:
+	* ext/opencv/gstcvdilate.cpp:
+	  cvdilate: Change gstcvdilate to C++
+	  Change the gstcvdilate.c file extension to cpp and add it into Makefile for
+	  consistency with other elements of opencv and because Opencv not support C
+	  language in new API 2.4.11.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-02 18:50:45 +0100  Vanessa Chipirrás Navalón <vchipirras6@gmail.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstskindetect.c:
+	* ext/opencv/gstskindetect.cpp:
+	  skindetect: Change gstskindetect to C++
+	  Change the file extension to cpp and add it into Makefile for consistency
+	  with other elements of opencv and because Opencv not support C language in
+	  new API 2.4.11.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-08-31 17:43:26 +0200  Vanessa Chipirrás Navalón <vchipirras6@gmail.com>
+
+	* ext/opencv/gstopencvutils.h:
+	  opencvutils: add extern C, for the opencv elements work.
+	  Adding G_BEGIN_DECLS and G_END_DECLS to gstopencvutils.h
+	  to allow C-style linking.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-02 18:40:43 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstretinex.cpp:
+	  retinex: use OpenCV namespace
+	  As part of the switch to C++, use the new OpenCV functions.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-02 18:10:32 +0100  Vanessa Chipirrás Navalón <vchipirras6@gmail.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstcvsmooth.c:
+	* ext/opencv/gstcvsmooth.cpp:
+	  cvsmooth: port to C++
+	  Change the file extension to cpp and add it into Makefile for consistency
+	  with other elements of opencv and because Opencv not support C language in
+	  new API 2.4.11.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-02 17:48:47 +0100  Vanessa Chipirrás Navalón <vchipirras6@gmail.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gstretinex.c:
+	* ext/opencv/gstretinex.cpp:
+	  retinex: Change retinex to C++
+	  Change the gstretinex.c file to cpp and add it into Makefile.
+	  It is necessary to migrate the retinex element to C++,
+	  because new Opencv API leaves obsolete functions like cvSmooth.
+	  This element uses this function.
+	  You can see in this link:
+	  http://docs.opencv.org/modules/imgproc/doc/filtering.html?
+	  highlight=cvsmooth#void cvSmooth(const CvArr* src, CvArr* dst,
+	  int smoothtype, int size1, int size2, double sigma1, double sigma2)
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754148
+
+2015-10-02 17:18:33 +0100  Vanessa Chipirrás Navalón <vchipirras6@gmail.com>
+
+	* ext/opencv/gsthanddetect.cpp:
+	* ext/opencv/gsthanddetect.h:
+	  handdetect: remove another unused variable
+	  Memory is reserved for this variable and then released without making any
+	  use of it.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752528
+
+2015-10-02 17:02:42 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsthanddetect.cpp:
+	* ext/opencv/gsthanddetect.h:
+	  handdetect: CvPoint values changed from uint to int
+	  The x and y values of CvPoint changed from unsigned to signed integers
+	  in OpenCV 2.4.11.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752528
+
+2015-10-02 16:22:36 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsthanddetect.cpp:
+	* ext/opencv/gsthanddetect.h:
+	  handdetect: need to migrate to C++
+	  The cascade classifier changes its structure on new version of OpenCV 2.4.11.
+	  It is need to migrate to C++ to utilize the new load method of OpenCV which
+	  allows to load the old and new classifiers.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752528
+
+2015-10-02 16:01:29 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/Makefile.am:
+	* ext/opencv/gsthanddetect.c:
+	* ext/opencv/gsthanddetect.cpp:
+	  handdetect: Change gsthanddetect to C++
+	  Change the gsthanddetect.c file to cpp and add it into Makefile.
+	  It is necessary to migrate the handdetect plugin to C++,
+	  in order to load new and old classifiers, to make handdetect work
+	  with newer versions of Opencv.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752528
+
 2015-10-02 17:05:11 +0200  Polochon_street <polochonstreet@gmx.fr>
 
 	* ext/dtls/gstdtlsdec.c:
 	  dtls: fix printf format on win32
 
+2015-08-20 16:03:29 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* gst/inter/gstintertest.c:
+	* tests/examples/camerabin2/gst-camerabin2-test.c:
+	* tests/examples/codecparsers/parse-jpeg.c:
+	* tests/examples/gl/gtk/fxtest/fxtest.c:
+	* tests/examples/gl/gtk/fxtest/pixbufdrop.c:
+	* tests/examples/opencv/gstfacedetect_test.c:
+	* tests/examples/playout.c:
+	* tools/gst-app-maker:
+	  gstreamer: bad: Fix memory leaks when context parse fails
+	  When g_option_context_parse fails, context and error variables are not getting free'd
+	  which results in memory leaks. Free'ing the same.
+	  And replacing g_error_free with g_clear_error, which checks if the error being passed
+	  is not NULL and sets the variable to NULL on free'ing.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753854
+
+2015-06-25 19:17:36 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* ext/assrender/gstassrender.c:
+	  assrender: optimize blending
+	  Skip empty source pixels when blending an image. There can be hundreds
+	  of images to blend at each frame, so this brings a nice performance
+	  boost.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753821
+
+2015-08-19 17:18:31 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* ext/assrender/gstassrender.c:
+	* ext/assrender/gstassrender.h:
+	  assrender: Use the window size from downstream
+	  This allows rendering the overlay at a resolution matching the video
+	  resolution.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753824
+
+2014-09-04 18:16:00 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* ext/assrender/gstassrender.c:
+	* ext/assrender/gstassrender.h:
+	  assrender: Improve negotiation
+	  This is mostly a copy/paste of the negotiation function in
+	  basetextoverlay, which was improved recently to handle many more cases.
+	  This will allow us to negotiate a window size with downstream.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753824
+
+2015-08-19 13:44:35 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* configure.ac:
+	* ext/assrender/gstassrender.c:
+	  assrender: render the subtitles with the proper aspect
+	  This bumps the libass version requirement to 0.10.2.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753824
+
+2015-09-07 16:20:42 +0100  Florin Apostol <florin.apostol@oregan.net>
+
+	* tests/check/elements/dash_mpd.c:
+	  dashdemux: test: added unit test for presentation time offset
+	  https://bugzilla.gnome.org/show_bug.cgi?id=752409
+
 2015-09-30 10:27:06 -0700  Aleix Conchillo Flaqué <aleix@oblong.com>
 
 	* configure.ac:
@@ -512,13 +4888,38 @@
 	  dashdemux: Correctly assign earliest pts instead of overriding it with first offset
 	  https://bugzilla.gnome.org/show_bug.cgi?id=755824
 
-2015-09-30 19:01:21 +0200  Sebastian Dröge <sebastian@centricular.com>
+2015-09-15 03:14:37 +1000  Matthew Waters <matthew@centricular.com>
 
-	* gst/audiomixer/gstaudioaggregator.c:
-	  audioaggregator: Select the initial offset based on the start segment position
-	  instead of always using 0. Otherwise we might output a lot of silence in the
-	  beginning instead of outputting from the relevant position.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755623
+	* configure.ac:
+	* ext/qt/gstplugin.cc:
+	* ext/qt/gstqsgtexture.h:
+	* ext/qt/gstqtsink.cc:
+	* ext/qt/qtitem.cc:
+	* ext/qt/qtitem.h:
+	  qt: add support for building on osx/ios
+	  Including:
+	  - Necessary configure checks
+	  - Necessary compile time platform checks
+	  - Necessary runtime qt iOS/OSX platform detection
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755100
+
+2015-09-28 11:29:29 +0100  John Slade <john@jtes.net>
+
+	* ext/rtmp/gstrtmpsrc.c:
+	  rtmpsrc: Fix indentation with gst-indent
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755732
+
+2015-10-02 11:31:50 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/audiovisualizers/Makefile.am:
+	  audiovisualizers: Fix nodist_HEADERS
+
+2015-10-02 14:56:41 +1000  Jan Schmidt <jan@centricular.com>
+
+	* tests/check/Makefile.am:
+	* tests/check/elements/baseaudiovisualizer.c:
+	  Remove baseaudiovisualizer test.
+	  The base class has moved into gst-plugins-base
 
 2015-09-30 19:05:35 +0200  Sebastian Dröge <sebastian@centricular.com>
 
@@ -533,6 +4934,632 @@
 	  before anyway because of a mistake.
 	  https://bugzilla.gnome.org/show_bug.cgi?id=755623
 
+2015-09-30 19:01:21 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/audiomixer/gstaudioaggregator.c:
+	  audioaggregator: Select the initial offset based on the start segment position
+	  instead of always using 0. Otherwise we might output a lot of silence in the
+	  beginning instead of outputting from the relevant position.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755623
+
+2015-10-01 15:35:37 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* docs/plugins/Makefile.am:
+	* gst/audiovisualizers/Makefile.am:
+	* gst/audiovisualizers/gstaudiovisualizer.c:
+	* gst/audiovisualizers/gstaudiovisualizer.h:
+	* gst/audiovisualizers/gstspacescope.h:
+	* gst/audiovisualizers/gstspectrascope.h:
+	* gst/audiovisualizers/gstsynaescope.h:
+	* gst/audiovisualizers/gstwavescope.h:
+	  audiovisualizers: merge audiovisualizer base classes
+	  These plugins now use the audiovisualizer base class in pbutils
+	  https://bugzilla.gnome.org/show_bug.cgi?id=742875
+
+2015-10-02 01:01:42 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/Makefile.am:
+	* gst-libs/gst/gl/gl.h:
+	* gst-libs/gst/gl/gstglcontext.c:
+	* gst-libs/gst/gl/gstgldebug.c:
+	* gst-libs/gst/gl/gstgldebug.h:
+	* gst-libs/gst/gl/gstglutils.c:
+	* gst-libs/gst/gl/gstglutils.h:
+	  gl: move debugging related functions to their own file
+
+2015-10-01 23:20:19 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglcolorscale.c:
+	  glcolorscale: use glbasefilter vfuncs
+	  Uses less code \o/
+	  Fixes legacy opengl rendering \o/
+
+2015-09-16 12:50:46 +0200  Philippe Normand <philn@igalia.com>
+
+	* ext/smoothstreaming/gstmssdemux.c:
+	  mssdemux: activate streams before configuring bitrate
+	  Doing the contrary has no effect and the consequence is that playback
+	  will start with the lowest bitrate even if we can already handle
+	  higher bitrate.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755108
+
+2015-06-08 15:33:22 +0200  Philippe Normand <philn@igalia.com>
+
+	* ext/smoothstreaming/gstmssdemux.c:
+	* ext/smoothstreaming/gstmssdemux.h:
+	* ext/smoothstreaming/gstmssmanifest.c:
+	* ext/smoothstreaming/gstmssmanifest.h:
+	  mssdemux: PlayReady WRM parsing support
+	  If the manifest has a ProtectionHeader node then parse it and emit
+	  protection events according to the specified protection SystemID.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753613
+
+2015-09-03 15:11:00 +0200  Philippe Normand <philn@igalia.com>
+
+	* ext/smoothstreaming/gstmssmanifest.c:
+	  mssdemux: always use timescale for gst timestamp calculation
+	  Not doing this can lead the demuxer to attempt downloading fragments
+	  for an invalid start time. The server would then send a HTTP
+	  Precondition failed error, the demuxer would try some more times to
+	  download the invalid fragment and eventually error out.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754523
+
+2015-09-30 08:36:15 +0200  Antoine Jacoutot <ajacoutot@gnome.org>
+
+	* gst-libs/gst/gl/Makefile.am:
+	  gl: Pass GL_CFLAGS to g-ir-scanner
+	  This unbreaks building when some headers are under a non-standard path.
+	  e.g. /usr/X11R6/include as on OpenBSD.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755850
+
+2015-09-30 00:44:16 -0700  Aleix Conchillo Flaqué <aleix@oblong.com>
+
+	* sys/applemedia/Makefile.am:
+	  applemedia: dist missing header files
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755852
+
+2015-09-30 13:13:19 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+	* tests/check/elements/audiointerleave.c:
+	  audiointerleave: typecast bit-mask to guint64 to fix segmentation fault
+	  While creating caps in audiointerleave tests, bitmask is being set as 0x9
+	  This is resulting in segmentation fault. Fix the same by typecasting to guint64
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755840
+
+2015-09-30 15:17:38 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglcontext.c:
+	  glcontext: fixup strstr lengths so we don't overrun
+
+2015-09-30 13:31:50 +1000  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* ext/gl/gstgluploadelement.c:
+	* gst-libs/gst/gl/gstglupload.c:
+	* gst-libs/gst/gl/gstglupload.h:
+	* tests/check/libs/gstglupload.c:
+	  glupload: remove useless release_buffer
+	  It's a leftover from when we weren't outputting GstBuffer's and
+	  returning raw texture id's.
+
+2015-09-30 01:53:53 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglutils.c:
+	  glutils: use gst_element_set_context for setting display/other_context
+	  1. So we get tracking inside GstElement properly when e.g. adding to a bin
+	  2. Removes redundant code.  Now only one place where
+	  GstContext->GstGLDisplay/GstGLContext transformation occurs
+	  3. Fixes a memory leak in the process
+	  4. Make the retrieval of debug categories thread safe
+
+2015-09-29 22:57:52 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gtk/gtkgstglwidget.c:
+	  gtk: add some GL debug statements to show up in GL traces
+
+2015-08-30 17:11:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gstm3u8playlist.c:
+	* ext/hls/gstm3u8playlist.h:
+	  hls: m3u8playlist: more clean-ups
+	  Remove unused functions; move GstM3U8 struct into .c file,
+	  and indent the header so it's nice to read.
+
+2015-08-30 17:01:13 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gstm3u8playlist.c:
+	  hls: m3u8playlist: fix silly queue iteration code
+
+2015-08-30 16:40:02 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gstm3u8playlist.c:
+	  hls: m3u8playlist: more minor playlist_render() clean-ups
+	  Move the TAG defines directly into the code, not sure what
+	  their purposes is, these are printf format strings so having
+	  them directly as literals in the code where they're used
+	  makes the code easier to follow.
+
+2015-08-30 16:34:26 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gstm3u8playlist.c:
+	  hls: m3u8playlist: move entry rendering into render_playlist()
+	  Makes the code easier to follow and avoids unnecessary temporary
+	  strings, since we can just append to the playlist GString directly.
+
+2015-08-30 16:24:41 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/gstm3u8playlist.c:
+	* ext/hls/gstm3u8playlist.h:
+	  hls: m3u8playlist: simplify gst_m3u8_playlist_render()
+	  Remove playlist_str GString variable from GstM3U8Playlist struct,
+	  since it's only used temporarily in playlist_render(). Might just
+	  as well keep it local then.
+
+2015-08-30 15:55:51 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* ext/hls/Makefile.am:
+	* ext/hls/gstfragmented.h:
+	* ext/hls/gsthlssink.c:
+	* ext/hls/gstm3u8playlist.h:
+	  hls: remove unused macro and direct gio usage
+
+2015-09-30 00:36:14 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/mpegtsmux/mpegtsmux.c:
+	  mpegtsmux: fix downstream key unit events handling with hlssink
+	  The buffer timestamps in the collect function will already be
+	  running time, don't try to convert them again to running time,
+	  this would yield CLOCK_TIME_NONE now that the segment is shifted
+	  to account for negative dts.
+	  This fixes x264enc ! mpegtsmux ! hlssink, which was broken
+	  because mpegtsmux would send a downstream key unit event with
+	  running time NONE and then hlssink would immediately send
+	  another one upstream and it would just be a flood of force
+	  keyframe events in both directions after the first one. This
+	  would then break hlssink because it uses multifilesink in
+	  next-file=key-unit-event mode, and starting a new file after
+	  every few kB does not work well for HLS.
+
+2015-08-20 17:35:04 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcverode.c:
+	  opencv: erode: remove non-ip transform func
+	  Transform is set to be done in place in gstcvdilateerode.c, so the in-place
+	  transform function is always used and the other is redundant. Removing it.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753885
+
+2015-08-20 17:23:40 +0100  Luis de Bethencourt <luis@debethencourt.com>
+
+	* ext/opencv/gstcvdilate.c:
+	  opencv: dilate: remove non-ip transform func
+	  Transform is set to be done in place in gstcvdilateerode.c, so the in-place
+	  transform function is always used and the other is redundant. Removing it.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753885
+
+2015-09-29 20:00:02 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvdilateerode.c:
+	* ext/opencv/gstcvequalizehist.c:
+	* ext/opencv/gstcvlaplace.c:
+	* ext/opencv/gstcvsmooth.c:
+	* ext/opencv/gstcvsobel.c:
+	* ext/opencv/gstretinex.c:
+	* ext/opencv/gstretinex.h:
+	* ext/opencv/gstskindetect.c:
+	  opencv: use gst_opencv_video_filter_set_in_place()
+	  Using the gst_base_transform function directly won't work. Need to use
+	  gst_opencv_video_filter_set_in_place().
+
+2015-09-29 17:00:22 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gsthanddetect.c:
+	  handdetect: check for haar cascade files path
+	  When running GStreamer from uninstalled sources, the location of the haar
+	  cascade files will be local. Check if running in uninstalled and set the
+	  file paths accordingly.
+
+2015-09-26 17:02:09 +0800  John Chang <r97922153@gmail.com>
+
+	* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+	  adaptivedemux: remove unused variable
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755656
+
+2015-09-29 13:31:18 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst-libs/gst/video/gstvideoaggregator.c:
+	  videoaggregator: fix compilation with older glib version
+	  Remove weird use of private gtype defines and fix compilation
+	  with older glib versions such as 2.36.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755754
+
+2015-09-29 13:52:47 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+	* ext/opencv/gstcvlaplace.c:
+	* ext/opencv/gstcvlaplace.h:
+	  opencv: cvlaplace: add scale and shift properties
+	  Add scale and shift properties so these can be used to tweak the values
+	  used in cvConvertScale() instead of using only defaults.
+
+2015-08-28 16:24:24 +0100  Luis de Bethencourt <luis@debethencourt.com>
+
+	* ext/qt/gstqtsink.cc:
+	  qtsink: explicitely fallthrough switch statement
+	  In case ret is False, fallthrough to default case.
+	  CID #1320705
+
+2015-08-28 16:13:16 +0100  Luis de Bethencourt <luis@debethencourt.com>
+
+	* gst/videoparsers/gstvc1parse.c:
+	  vc1parse: add break to switch case
+	  Even though all cases inside VC1_STREAM_FORMAT_ASF are goto or
+	  g_assert_not_reached(), add a break at the end to appease Coverity.
+	  CID #1320706
+
+2015-09-28 20:56:56 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* ext/assrender/gstassrender.c:
+	  assrender: fix leak of tag samples in the tag list
+	  Move handling of a GstSample in a separate function, and unref the
+	  sample after calling it. libass copies the font data so we don't need to
+	  keep it around.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755759
+
+2015-09-28 20:30:17 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* ext/assrender/gstassrender.c:
+	  assrender: fix gap event leak and invalid return value
+	  We don't want the gap event to be forwarded
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755759
+
+2015-09-29 16:17:22 +1000  Matthew Waters <matthew@centricular.com>
+
+	* sys/nvenc/gstnvbaseenc.c:
+	  nvenc: call the parent class on GstElement::set_context
+
+2015-09-17 16:59:16 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/eagl/gstglcontext_eagl.m:
+	  gl/eagl: use the default GL context debug category
+
+2015-07-30 16:42:38 +1000  Matthew Waters <matthew@centricular.com>
+
+	* configure.ac:
+	* sys/Makefile.am:
+	* sys/nvenc/Makefile.am:
+	* sys/nvenc/README:
+	* sys/nvenc/TODO:
+	* sys/nvenc/gstnvbaseenc.c:
+	* sys/nvenc/gstnvbaseenc.h:
+	* sys/nvenc/gstnvenc.c:
+	* sys/nvenc/gstnvenc.h:
+	* sys/nvenc/gstnvh264enc.c:
+	* sys/nvenc/gstnvh264enc.h:
+	  Add Nvidia based hardware encoder element
+	  Currently only h264 is supported
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753405
+
+2015-09-29 00:25:00 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gtk/gstgtkbasesink.c:
+	  gtk: fix assertion when the element has no peer
+	  When proxying keyboard/navigation/mouse events, only unref a successfully
+	  retreived peer pad.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755738
+
+2015-09-28 15:30:30 +0200  Stefan Sauer <ensonic@users.sf.net>
+
+	* configure.ac:
+	* gst/midi/Makefile.am:
+	* gst/midi/alsamidisrc.c:
+	* gst/midi/alsamidisrc.h:
+	* gst/midi/midi.c:
+	  Revert "midi: add an ALSA MIDI sequencer source"
+	  This reverts commit cd7f4e524718a2f75467852235e4e13d64d2ac82.
+
+2015-09-28 22:31:09 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglutils.c:
+	  gl: set the context on the element on a context query
+	  Otherwise it's possible to lose the context information if the
+	  context is only propagated through queries.
+
+2015-09-28 22:20:29 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/caopengllayersink.m:
+	* ext/gl/gstglbasemixer.c:
+	* ext/gl/gstglimagesink.c:
+	* ext/gl/gstglstereosplit.c:
+	* ext/gl/gstgltestsrc.c:
+	* gst-libs/gst/gl/gstglbasefilter.c:
+	  gl: chain up to the parent class for GstElement::set_context
+	  https://bugzilla.gnome.org/show_bug.cgi?id=705579
+
+2015-08-07 15:28:54 +0200  Antonio Ospite <ao2@ao2.it>
+
+	* configure.ac:
+	* gst/midi/Makefile.am:
+	* gst/midi/alsamidisrc.c:
+	* gst/midi/alsamidisrc.h:
+	* gst/midi/midi.c:
+	  midi: add an ALSA MIDI sequencer source
+	  The alsamidisrc element allows to get input event from ALSA MIDI
+	  sequencer devices, and possibly convert them to sound using some
+	  downstream element like fluiddec.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=738687
+
+2015-08-28 16:35:39 +0100  Luis de Bethencourt <luis@debethencourt.com>
+
+	* ext/qt/qtitem.cc:
+	  qml: remove overwritten value
+	  Value in tex is overwritten before being used. Removing it.
+	  CID 1320715
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754253
+
+2015-09-02 23:45:07 +1000  Matthew Waters <matthew@centricular.com>
+
+	* configure.ac:
+	* ext/qt/Makefile.am:
+	* ext/qt/gstqsgtexture.h:
+	* ext/qt/gstqtgl.h:
+	* ext/qt/qtitem.cc:
+	* ext/qt/qtitem.h:
+	  qt: add support for building/running on android
+	  Including:
+	  - Necessary configure checks
+	  - Necessary compile time platform checks
+	  - Necessary runtime qt android platform detection
+	  - Escaping GLsync definition with Qt's GLES2 implementation
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754466
+
+2015-09-02 23:40:31 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/qt/Makefile.am:
+	  qt: don't use CPPFLAGS for tools that cannot use them
+	  For example moc will bail out when given arguments it does not
+	  know about.  The moc specific MOC_CPPFLAGS can still be used
+	  to pass flags to moc.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754466
+
+2015-09-02 23:39:54 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/qt/Makefile.am:
+	  qt: rename library to include gst prefix
+	  libqtsink -> libgstqtsink
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754466
+
+2015-08-31 19:21:54 +1000  Matthew Waters <matthew@centricular.com>
+
+	* ext/gl/gstglimagesink.c:
+	* gst-libs/gst/gl/gstglbasefilter.c:
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	* gst-libs/gst/gl/gstglfilter.c:
+	  gl: sprinkle some debug markers to ease debugging
+
+2015-08-31 19:18:23 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/gstglutils.c:
+	* gst-libs/gst/gl/gstglutils.h:
+	  gl/utils: add a function to insert a debug marker
+	  These markers are visible in tools that record the GL function calls
+	  such as apitrace, et al.
+	  Makes it easier to match up GL draw commands with specific elements.
+
+2015-08-31 19:17:21 +1000  Matthew Waters <matthew@centricular.com>
+
+	* gst-libs/gst/gl/glprototypes/debug.h:
+	  gl: add some debugging prototypes
+
+2015-09-26 19:19:50 +1000  Matthew Waters <matthew@centricular.com>
+
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* gst-libs/gst/gl/android/gstglwindow_android_egl.c:
+	* gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
+	* gst-libs/gst/gl/eagl/gstglwindow_eagl.m:
+	* gst-libs/gst/gl/gstglwindow.c:
+	* gst-libs/gst/gl/gstglwindow.h:
+	* gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+	* gst-libs/gst/gl/win32/gstglwindow_win32.c:
+	* gst-libs/gst/gl/x11/gstglwindow_x11.c:
+	  glwindow: remove unused draw_unlocked function
+	  The functionality is provided by draw anyway and is leftover from
+	  X11's specific threading requirements that no longer apply.
+
+2015-09-27 13:07:19 +1000  Jan Schmidt <jan@centricular.com>
+
+	* ext/resindvd/gstmpegdemux.c:
+	  resindvd: Send gap updates to the segment stop during stills
+	  Ignore the normal gap threshold for laggy streams and
+	  immediately catch all streams up to the end of the segment
+	  when processing gap updates for a segment during a
+	  still frame sequence.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755680
+
+2015-09-27 00:24:24 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/dvdspu/Makefile.am:
+	* gst/dvdspu/gstdvdspu-render.c:
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstdvdspu.h:
+	* gst/dvdspu/gstspu-common.h:
+	* gst/dvdspu/gstspu-pgs.c:
+	* gst/dvdspu/gstspu-pgs.h:
+	* gst/dvdspu/gstspu-vobsub-render.c:
+	* gst/dvdspu/gstspu-vobsub.c:
+	* gst/dvdspu/gstspu-vobsub.h:
+	  Revert "dvdspu: render to AYUV overlay"
+	  This reverts commit 5016a73190595505dc38b54f8f9a08c4f180f3a6.
+
+2015-09-27 00:24:23 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstspu-common.h:
+	* gst/dvdspu/gstspu-pgs.c:
+	* gst/dvdspu/gstspu-vobsub-render.c:
+	  Revert "dvdspu: render to ARGB overlay instead of AYUV"
+	  This reverts commit dd3e9deb2aa695a391b58f24d86a3c00bbc1258a.
+
+2015-09-27 00:24:17 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/dvdspu/gstspu-vobsub.c:
+	* gst/dvdspu/gstspu-vobsub.h:
+	  Revert "dvdspu: handle frame size event from upstream"
+	  This reverts commit 46aaaa6c309b8a8f6e218142fd5944f5d24f095c.
+
+2015-09-27 00:24:17 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstdvdspu.h:
+	  Revert "dvdspu: cache overlay composition"
+	  This reverts commit aabb8a1a68372f750c63b9b6586e18e829745774.
+
+2015-09-27 00:24:15 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstdvdspu.h:
+	  Revert "dvdspu: improve negotiation of overlay composition"
+	  This reverts commit 1899e2a099932a7a734e7784c20b624517237e18.
+
+2015-09-18 19:07:47 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstspu-pgs.c:
+	  dvdspu: fix pgs palette colors
+	  U and V were inverted
+	  https://bugzilla.gnome.org/show_bug.cgi?id=755239
+
+2014-08-27 16:47:22 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstdvdspu.h:
+	  dvdspu: improve negotiation of overlay composition
+	  Support negotiating GstVideoOverlayComposition downstream
+	  while not providing it upstream.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2013-09-02 17:48:50 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstdvdspu.h:
+	  dvdspu: cache overlay composition
+	  This avoids rendering the overlay buffer for each video frame.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2013-08-30 22:08:01 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstspu-vobsub.c:
+	* gst/dvdspu/gstspu-vobsub.h:
+	  dvdspu: handle frame size event from upstream
+	  An IDX file or codec_data normally contains the original frame size of
+	  the video. Allow upstream to provide this information by sending a
+	  custom event, which will allow scaling the overlay correctly.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2013-12-05 21:59:18 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstdvdspu.c:
+	  dvdspu: allow suffix in dvd event name to allow multiple sticky dvd events
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2015-04-07 14:38:08 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstspu-common.h:
+	* gst/dvdspu/gstspu-pgs.c:
+	* gst/dvdspu/gstspu-vobsub-render.c:
+	  dvdspu: render to ARGB overlay instead of AYUV
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2013-01-23 17:59:01 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/Makefile.am:
+	* gst/dvdspu/gstdvdspu-render.c:
+	* gst/dvdspu/gstdvdspu.c:
+	* gst/dvdspu/gstdvdspu.h:
+	* gst/dvdspu/gstspu-common.h:
+	* gst/dvdspu/gstspu-pgs.c:
+	* gst/dvdspu/gstspu-pgs.h:
+	* gst/dvdspu/gstspu-vobsub-render.c:
+	* gst/dvdspu/gstspu-vobsub.c:
+	* gst/dvdspu/gstspu-vobsub.h:
+	  dvdspu: render to AYUV overlay
+	  Instead of only supporting writing SPU data directly to YUV frames,
+	  render the SPU data to an intermediate AYUV overlay buffer. The overlay
+	  data is then attached to the video frame if downstream supports overlay
+	  composition, otherwise the AYUV overlay is blended to the video frame.
+	  For the PGS format, the overlay buffer size is set to the size of the
+	  Composition Window, and its position in the overlay composition is set
+	  to the window position. The objects to render are now cropped when the
+	  cropping flag is set.
+	  For the Vobsub format, the overlay buffer size is set to the size of the
+	  Display Area.
+	  Once rendered, the overlay composition rectangle is now moved and scaled
+	  to fit the video output size, to avoid clipping.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2013-09-02 17:07:49 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstdvdspu.c:
+	  dvdspu: pass dvdspu argument to set_caps functions
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2015-09-18 19:15:45 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/dvdspu/gstspu-pgs.c:
+	  dvdspu: skip unneeded reading of RLE data
+	  The RLE data was being read for dumping the SPU image even when the
+	  DUMP_FULL_IMAGE macro was not set.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=663750
+
+2015-08-29 19:16:38 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* tests/check/elements/compositor.c:
+	  check: Add test for videoaggregator sinkpads being sorted by zorder
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754285
+
+2015-09-26 10:21:41 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/audiomixer/gstaudioaggregator.c:
+	  audiomixer: fix deadlock when G_DISABLE_ASSERT is not defined
+	  This makes the audiomixer unit test time out in master.
+	  Broke with 587e7c4
+
+2015-09-26 10:49:31 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/elements/dash_mpd.c:
+	  dash: Fix unit test after internal API change
+
+2015-08-25 17:39:30 +0900  Jimmy Ohn <yongjin.ohn@lge.com>
+
+	* ext/sndfile/gstsfdec.c:
+	  sfdec: Fix typo in goto variable name
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754057
+
+2015-08-18 14:16:11 +0100  Chris Bass <floobleflam@gmail.com>
+
+	* ext/dash/gstdashdemux.c:
+	* ext/dash/gstdashdemux.h:
+	* ext/dash/gstmpdparser.c:
+	* ext/dash/gstmpdparser.h:
+	  dashdemux: create src pads for subtitle streams.
+	  Create src pads for Representations that contain timed-text subtitles,
+	  both when the subtitles are encapsulated in ISO BMFF (i.e., the
+	  Representation has mimeType "application/mp4") and when they are
+	  unencapsulated (i.e., the Representation has mimeType
+	  "application/ttml+xml").
+	  https://bugzilla.gnome.org/show_bug.cgi?id=747774
+
+2015-09-26 00:17:55 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/audiomixer/gstaudioaggregator.c:
+	  audioaggregator: Stop using deprecated gst_segment_to_position()
+
+2015-08-31 16:12:40 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: Don't forward QOS events to sinkpads that had no buffer yet
+	  Otherwise they will receive a QOS event that has earliest_time=0 (because we
+	  can't have negative timestamps), and consider their buffer as too late
+	  https://bugzilla.gnome.org/show_bug.cgi?id=754356
+
 2015-09-22 16:17:38 +0200  Sebastian Dröge <sebastian@centricular.com>
 
 	* ext/dash/gstdashdemux.c:
@@ -603,124 +5630,10 @@
 	  mpdparser: If no Initialization is present in the SegmentBase, assume it is before the indexRange
 	  https://bugzilla.gnome.org/show_bug.cgi?id=755132
 
-2015-09-16 12:50:46 +0200  Philippe Normand <philn@igalia.com>
+2015-09-25 23:51:20 +0200  Sebastian Dröge <sebastian@centricular.com>
 
-	* ext/smoothstreaming/gstmssdemux.c:
-	  mssdemux: activate streams before configuring bitrate
-	  Doing the contrary has no effect and the consequence is that playback
-	  will start with the lowest bitrate even if we can already handle
-	  higher bitrate.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755108
-
-2015-09-03 15:11:00 +0200  Philippe Normand <philn@igalia.com>
-
-	* ext/smoothstreaming/gstmssmanifest.c:
-	  mssdemux: always use timescale for gst timestamp calculation
-	  Not doing this can lead the demuxer to attempt downloading fragments
-	  for an invalid start time. The server would then send a HTTP
-	  Precondition failed error, the demuxer would try some more times to
-	  download the invalid fragment and eventually error out.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=754523
-
-2015-09-30 08:36:15 +0200  Antoine Jacoutot <ajacoutot@gnome.org>
-
-	* gst-libs/gst/gl/Makefile.am:
-	  gl: Pass GL_CFLAGS to g-ir-scanner
-	  This unbreaks building when some headers are under a non-standard path.
-	  e.g. /usr/X11R6/include as on OpenBSD.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755850
-
-2015-09-30 00:44:16 -0700  Aleix Conchillo Flaqué <aleix@oblong.com>
-
-	* sys/applemedia/Makefile.am:
-	  applemedia: dist missing header files
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755852
-
-2015-09-30 13:13:19 +0900  Vineeth TM <vineeth.tm@samsung.com>
-
-	* tests/check/elements/audiointerleave.c:
-	  audiointerleave: typecast bit-mask to guint64 to fix segmentation fault
-	  While creating caps in audiointerleave tests, bitmask is being set as 0x9
-	  This is resulting in segmentation fault. Fix the same by typecasting to guint64
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755840
-
-2015-09-30 00:36:14 +0100  Tim-Philipp Müller <tim@centricular.com>
-
-	* gst/mpegtsmux/mpegtsmux.c:
-	  mpegtsmux: fix downstream key unit events handling with hlssink
-	  The buffer timestamps in the collect function will already be
-	  running time, don't try to convert them again to running time,
-	  this would yield CLOCK_TIME_NONE now that the segment is shifted
-	  to account for negative dts.
-	  This fixes x264enc ! mpegtsmux ! hlssink, which was broken
-	  because mpegtsmux would send a downstream key unit event with
-	  running time NONE and then hlssink would immediately send
-	  another one upstream and it would just be a flood of force
-	  keyframe events in both directions after the first one. This
-	  would then break hlssink because it uses multifilesink in
-	  next-file=key-unit-event mode, and starting a new file after
-	  every few kB does not work well for HLS.
-
-2015-09-29 13:31:18 +0100  Tim-Philipp Müller <tim@centricular.com>
-
-	* gst-libs/gst/video/gstvideoaggregator.c:
-	  videoaggregator: fix compilation with older glib version
-	  Remove weird use of private gtype defines and fix compilation
-	  with older glib versions such as 2.36.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755754
-
-2015-09-28 20:56:56 +0200  Arnaud Vrac <avrac@freebox.fr>
-
-	* ext/assrender/gstassrender.c:
-	  assrender: fix leak of tag samples in the tag list
-	  Move handling of a GstSample in a separate function, and unref the
-	  sample after calling it. libass copies the font data so we don't need to
-	  keep it around.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755759
-
-2015-09-28 20:30:17 +0200  Arnaud Vrac <avrac@freebox.fr>
-
-	* ext/assrender/gstassrender.c:
-	  assrender: fix gap event leak and invalid return value
-	  We don't want the gap event to be forwarded
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755759
-
-2015-09-17 16:59:16 +1000  Matthew Waters <matthew@centricular.com>
-
-	* gst-libs/gst/gl/eagl/gstglcontext_eagl.m:
-	  gl/eagl: use the default GL context debug category
-
-2015-09-29 00:25:00 +1000  Matthew Waters <matthew@centricular.com>
-
-	* ext/gtk/gstgtkbasesink.c:
-	  gtk: fix assertion when the element has no peer
-	  When proxying keyboard/navigation/mouse events, only unref a successfully
-	  retreived peer pad.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755738
-
-2015-09-27 13:07:19 +1000  Jan Schmidt <jan@centricular.com>
-
-	* ext/resindvd/gstmpegdemux.c:
-	  resindvd: Send gap updates to the segment stop during stills
-	  Ignore the normal gap threshold for laggy streams and
-	  immediately catch all streams up to the end of the segment
-	  when processing gap updates for a segment during a
-	  still frame sequence.
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755680
-
-2015-09-18 19:07:47 +0200  Arnaud Vrac <avrac@freebox.fr>
-
-	* gst/dvdspu/gstspu-pgs.c:
-	  dvdspu: fix pgs palette colors
-	  U and V were inverted
-	  https://bugzilla.gnome.org/show_bug.cgi?id=755239
-
-2015-09-26 10:21:41 +0100  Tim-Philipp Müller <tim@centricular.com>
-
-	* gst/audiomixer/gstaudioaggregator.c:
-	  audiomixer: fix deadlock when G_DISABLE_ASSERT is not defined
-	  This makes the audiomixer unit test time out in master.
-	  Broke with 587e7c4
+	* configure.ac:
+	  Back to development
 
 === release 1.6.0 ===
 
diff --git a/Makefile.am b/Makefile.am
index e93ec1f..6f7bcbf 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -53,6 +53,7 @@
 	$(top_builddir)/common/shave \
 	$(top_builddir)/common/shave-libtool \
 	$(top_builddir)/ext/alsaspdif/.libs/*.{so,dll,DLL,dylib} \
+	$(top_builddir)/ext/hls/.libs/libgstfragmented* \
 	$(top_builddir)/ext/ivorbis/.libs/*.{so,dll,DLL,dylib} \
 	$(top_builddir)/ext/jack/.libs/*.{so,dll,DLL,dylib} \
 	$(top_builddir)/gst/aacparse/.libs/*.{so,dll,DLL,dylib} \
@@ -96,6 +97,7 @@
 	$(top_srcdir)/gst/hls \
 	$(top_srcdir)/gst/imagefreeze \
 	$(top_srcdir)/gst/invtelecine \
+	$(top_srcdir)/gst/liveadder \
 	$(top_srcdir)/gst/mpeg4videoparse \
 	$(top_srcdir)/gst/qtmux \
 	$(top_srcdir)/gst/rtpmux \
diff --git a/Makefile.in b/Makefile.in
index 19b0b5a..f7d62bb 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -286,6 +286,8 @@
 CLUTTER_X11_LIBS = @CLUTTER_X11_LIBS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CUDA_CFLAGS = @CUDA_CFLAGS@
+CUDA_LIBS = @CUDA_LIBS@
 CURL_CFLAGS = @CURL_CFLAGS@
 CURL_LIBS = @CURL_LIBS@
 CXX = @CXX@
@@ -323,6 +325,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGL_CFLAGS = @EGL_CFLAGS@
+EGL_LIBS = @EGL_LIBS@
 EGREP = @EGREP@
 ERROR_CFLAGS = @ERROR_CFLAGS@
 ERROR_CXXFLAGS = @ERROR_CXXFLAGS@
@@ -350,6 +354,8 @@
 GIO_LIBS = @GIO_LIBS@
 GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@
 GIO_UNIX_LIBS = @GIO_UNIX_LIBS@
+GLES2_CFLAGS = @GLES2_CFLAGS@
+GLES2_LIBS = @GLES2_LIBS@
 GLIB_CFLAGS = @GLIB_CFLAGS@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
@@ -368,6 +374,8 @@
 GMODULE_NO_EXPORT_LIBS = @GMODULE_NO_EXPORT_LIBS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
+GNUSTL_CFLAGS = @GNUSTL_CFLAGS@
+GNUSTL_LIBS = @GNUSTL_LIBS@
 GRAPHENE_CFLAGS = @GRAPHENE_CFLAGS@
 GRAPHENE_LIBS = @GRAPHENE_LIBS@
 GREP = @GREP@
@@ -378,6 +386,8 @@
 GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@
 GSTPB_PREFIX = @GSTPB_PREFIX@
 GST_AGE = @GST_AGE@
+GST_ALLOCATORS_CFLAGS = @GST_ALLOCATORS_CFLAGS@
+GST_ALLOCATORS_LIBS = @GST_ALLOCATORS_LIBS@
 GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
 GST_API_VERSION = @GST_API_VERSION@
 GST_BASE_CFLAGS = @GST_BASE_CFLAGS@
@@ -403,6 +413,8 @@
 GST_OPTION_OBJCFLAGS = @GST_OPTION_OBJCFLAGS@
 GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
 GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PBUTILS_CFLAGS = @GST_PBUTILS_CFLAGS@
+GST_PBUTILS_LIBS = @GST_PBUTILS_LIBS@
 GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
 GST_PLUGINS_ALL = @GST_PLUGINS_ALL@
 GST_PLUGINS_BAD_CFLAGS = @GST_PLUGINS_BAD_CFLAGS@
@@ -428,6 +440,8 @@
 GST_PREFIX = @GST_PREFIX@
 GST_REVISION = @GST_REVISION@
 GST_TOOLS_DIR = @GST_TOOLS_DIR@
+GST_VIDEO_CFLAGS = @GST_VIDEO_CFLAGS@
+GST_VIDEO_LIBS = @GST_VIDEO_LIBS@
 GTK3_CFLAGS = @GTK3_CFLAGS@
 GTK3_GL_CFLAGS = @GTK3_GL_CFLAGS@
 GTK3_GL_LIBS = @GTK3_GL_LIBS@
@@ -559,6 +573,8 @@
 NETTLE_LIBS = @NETTLE_LIBS@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NVENCODE_CFLAGS = @NVENCODE_CFLAGS@
+NVENCODE_LIBS = @NVENCODE_LIBS@
 OBJC = @OBJC@
 OBJCDEPMODE = @OBJCDEPMODE@
 OBJCFLAGS = @OBJCFLAGS@
@@ -616,8 +632,12 @@
 PYTHON_PLATFORM = @PYTHON_PLATFORM@
 PYTHON_PREFIX = @PYTHON_PREFIX@
 PYTHON_VERSION = @PYTHON_VERSION@
+QT_ANDROID_CFLAGS = @QT_ANDROID_CFLAGS@
+QT_ANDROID_LIBS = @QT_ANDROID_LIBS@
 QT_CFLAGS = @QT_CFLAGS@
 QT_LIBS = @QT_LIBS@
+QT_MAC_CFLAGS = @QT_MAC_CFLAGS@
+QT_MAC_LIBS = @QT_MAC_LIBS@
 QT_WAYLAND_CFLAGS = @QT_WAYLAND_CFLAGS@
 QT_WAYLAND_LIBS = @QT_WAYLAND_LIBS@
 QT_X11_CFLAGS = @QT_X11_CFLAGS@
@@ -687,6 +707,7 @@
 WAYLAND_LIBS = @WAYLAND_LIBS@
 WEBP_CFLAGS = @WEBP_CFLAGS@
 WEBP_LIBS = @WEBP_LIBS@
+WGET = @WGET@
 WILDMIDI_CFLAGS = @WILDMIDI_CFLAGS@
 WILDMIDI_LIBS = @WILDMIDI_LIBS@
 WINKS_LIBS = @WINKS_LIBS@
@@ -808,6 +829,7 @@
 	$(top_builddir)/common/shave \
 	$(top_builddir)/common/shave-libtool \
 	$(top_builddir)/ext/alsaspdif/.libs/*.{so,dll,DLL,dylib} \
+	$(top_builddir)/ext/hls/.libs/libgstfragmented* \
 	$(top_builddir)/ext/ivorbis/.libs/*.{so,dll,DLL,dylib} \
 	$(top_builddir)/ext/jack/.libs/*.{so,dll,DLL,dylib} \
 	$(top_builddir)/gst/aacparse/.libs/*.{so,dll,DLL,dylib} \
@@ -851,6 +873,7 @@
 	$(top_srcdir)/gst/hls \
 	$(top_srcdir)/gst/imagefreeze \
 	$(top_srcdir)/gst/invtelecine \
+	$(top_srcdir)/gst/liveadder \
 	$(top_srcdir)/gst/mpeg4videoparse \
 	$(top_srcdir)/gst/qtmux \
 	$(top_srcdir)/gst/rtpmux \
@@ -1446,6 +1469,9 @@
 	@if [ -d ../www/data/src ]; then \
 	  mv -v $(PACKAGE)-$(VERSION).tar.xz ../www/data/src/$(PACKAGE)/ ; \
 	  mv -v $(PACKAGE)-$(VERSION).tar.xz.sha256sum ../www/data/src/$(PACKAGE)/ ; \
+	elif [ -d ../../www/data/src ]; then \
+	  mv -v $(PACKAGE)-$(VERSION).tar.xz ../../www/data/src/$(PACKAGE)/ ; \
+	  mv -v $(PACKAGE)-$(VERSION).tar.xz.sha256sum ../../www/data/src/$(PACKAGE)/ ; \
 	fi
 	@echo "================================================================================================="
 
diff --git a/NEWS b/NEWS
index bfae3d8..a4bffc6 100644
--- a/NEWS
+++ b/NEWS
@@ -1,36 +1,2 @@
-This is GStreamer 1.6.2
-
-The GStreamer team is proud to announce the second bugfix release in the stable
-1.6 release series of your favourite cross-platform multimedia framework!
-
-This release only contains bugfixes and it is safe to update from 1.6.0 and
-1.6.1. For a full list of bugfixes see Bugzilla:
-  https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&limit=0&list_id=83309&order=bug_id&product=GStreamer&resolution=FIXED&target_milestone=1.6.2
-
-See http://gstreamer.freedesktop.org/releases/1.6/ for the latest version of this document.
-
-Major bugfixes
-
-- Crashes in gst-libav with sinks that did not provide a buffer pool
-  but supported video metadata were fixed. This affected d3dvideosink
-  and some 3rd party sinks. Also related fixes for crashes when a downstream
-  buffer pool failed allocation.
-- Big GL performance improvement on iOS by a factor of 2 by using Apple's sync
-  extension.
-- Deadlocks in the DirectSound elements on Windows, and the behaviour of its
-  mute property were fixed.
-- The Direct3D video sink does not crash anymore when minimizing the window
-- The library soname generation on Android >= 6.0 was fixed, which previously
-  caused GStreamer to fail to load there.
-- File related elements have large-file (>2GB) support on Android now.
-- gst-libav was updated to ffmpeg 2.8.3.
-- Deserialization of custom events in the GDP depayloader was fixed.
-- Missing OpenGL context initialization in the Qt/QML video sink was fixed in
-  certain situations.
-- Interoperability with some broken RTSP servers using HTTP tunnel was
-  improved.
-- Various compilation fixes for Windows.
-- Various smaller memory leak and other fixes in different places.
-- and many, many more:
-  https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&limit=0&list_id=83309&order=bug_id&product=GStreamer&resolution=FIXED&target_milestone=1.6.2
+This is GStreamer 1.7.1
 
diff --git a/README b/README
index f175b1b..de0e341 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-GStreamer 1.5.x development series
+GStreamer 1.7.x development series
 
 WHAT IT IS
 ----------
@@ -179,8 +179,8 @@
   make install
 
 - try out a simple test:
-  gst-launch -v fakesrc num_buffers=5 ! fakesink
-  (If you didn't install GStreamer, prefix gst-launch with tools/)
+  gst-launch-1.0 -v fakesrc num_buffers=5 ! fakesink
+  (If you didn't install GStreamer, prefix gst-launch-1.0 with tools/)
 
   If it outputs a bunch of messages from fakesrc and fakesink, everything is
   ok.
diff --git a/RELEASE b/RELEASE
index 0db3dbc..790f691 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,19 +1,17 @@
 
-Release notes for GStreamer Bad Plugins 1.6.2
+Release notes for GStreamer Bad Plugins 1.7.1
 
 
-The GStreamer team is proud to announce the second bugfix release in the stable
-1.6 release series of your favourite cross-platform multimedia framework!
+The GStreamer team is pleased to announce the first release of the unstable
+1.7 release series. The 1.7 release series is adding new features on top of
+the 1.0, 1.2, 1.4 and 1.6 series and is part of the API and ABI-stable 1.x release
+series of the GStreamer multimedia framework. The unstable 1.7 release series
+will lead to the stable 1.8 release series in the next weeks. Any newly added
+API can still change until that point.
 
 
-
-This release only contains bugfixes and it is safe to update from 1.6.0 and 1.6.1. For a
-full list of bugfixes see Bugzilla.
-
-
-
-See http://gstreamer.freedesktop.org/releases/1.6/
-for the full release notes.
+Binaries for Android, iOS, Mac OS X and Windows will be provided separately
+during the unstable 1.7 release series.
 
 
 
@@ -65,20 +63,138 @@
 
 Bugs fixed in this release
      
-      * 757610 : compositor: negotation failure when mixing alpha and non alpha branches
-      * 738292 : directsoundsrc: hRes unckecked, which may cause a endless loop
-      * 741608 : d3dvideosink: Pipeline crash after assigned Window minimized
-      * 753823 : assrender: do not handle seek events
-      * 756951 : vtenc: Outputting frames without having input frames at EOS
-      * 757854 : gl: Recent texture target changes break negotiation in glcolorconvert and gtkglsink
-      * 757873 : tsdemux: fix unadded pad leak
-      * 757895 : tsdemux: pending buffers leak when flushing
-      * 757929 : tests:glcolorconvert: Fix caps memory leak
-      * 757935 : vtenc double-releases CFString 'profile_level' on restart
-      * 758205 : glimagesink: Fix structure memory leak
-      * 758286 : qtitem: GstQSGTexture leaks in updatePaintNode
-      * 758337 : qtglwidget qtitem: missing opengl context initialization
-      * 758913 : pcapparse: Does not forward FLUSH_STOP events
+      * 759679 : gl: unused function '_get_plane_width'
+      * 759729 : audiofxbad: Name collision with new GstAudioChannelMix API from libgstaudio
+      * 731204 : androidmedia: Implement zerocopy rendering
+      * 733467 : Cannot play JPEG2000 encoded QuickTime video
+      * 733819 : Port teletextdec to 1.0
+      * 733959 : hlsdemux: download bitrate algorithms don't reflect real download rate
+      * 743345 : glupload: Add support for dmabuf
+      * 744047 : Port acmmp3dec plugin to 1.x
+      * 745564 : qtkitvideosrc: fails to build on OSX > = 10.9 and not using cerbero (ex: MacPorts)
+      * 747482 : waylandsink: need exception code in gst_wayland_sink_set_window_handle() and gst_wayland_sink_set_context()
+      * 747774 : dashdemux: text streams support
+      * 748259 : New audio/video level element
+      * 748316 : hlsdemux: The end offset (range_end) of a segment is not calculated properly in the m3u8 parser
+      * 748337 : ksvideosrc: dropping frames
+      * 749653 : dashdemux: Implement binary search for stream_sidx_seek
+      * 750402 : tsdemux: pads are removed before new ones are added
+      * 750847 : dashdemux: variables containing time information should be guint64 not gint64
+      * 750852 : dashdemux: idRepresentationType should be StringNoWhitespaceType but accepts spaces
+      * 750869 : dashdemux: assertion raised if profiles information is not provided
+      * 751068 : gl: Use pkg-config if found to configure GL/EGL/GLES (as provided by mesa and libmali)
+      * 751529 : dashdemux: stream- > presentationTimeOffset is not always set
+      * 751650 : dashdemux: extra validations needed when parsing the representation element
+      * 751735 : dashdemux: incorrect parsing and handling of segment templates
+      * 751832 : dashdemux: segment list inherits segment URLs element from parent node
+      * 752326 : dashdemux: parser should reject MPD files with negative mediaPresentationDuration
+      * 752329 : dashdemux: parser should reject MPD files with negative Period duration
+      * 752336 : dashdemux: duration field could overflow
+      * 752340 : dashdemux: period bitstreamSwitching is not used
+      * 752367 : dashdemux: adaptation set language could be better detected
+      * 752409 : dashdemux: gst_mpd_parser_get_stream_presentation_offset returns a wrong value
+      * 752415 : dashdemux: provide a default suggestedPresentationDelay
+      * 752429 : dashdemux: negative numbers are successfully read into unsigned variables
+      * 752492 : dashdemux: suggestedPresentationDelay should be positive
+      * 752496 : dashdemux: illegal memory access when the list of S nodes is greater than the list of SegmentURL nodes
+      * 753405 : nvenc element
+      * 753613 : mssdemux: PlayReady WRM parsing support
+      * 753821 : assrender: improve overlay blending performance
+      * 753824 : assrender: render overlay using the video output window size
+      * 753854 : gstreamer: bad: Fix memory leaks when context parse fails.
+      * 753885 : opencv: use gst_opencv_video_filter_set_in_place()
+      * 753889 : opencv: cvlaplace: add scale and shift properties
+      * 753890 : dashdemux: PROP_BANDWIDTH_USAGE should be deprecated
+      * 753940 : opencv: handdetect: haar cascade files path is wrong in gst-uninstalled
+      * 754057 : sfdec: Fix a typo in goto variable name
+      * 754247 : vc1parse: add break to switch case
+      * 754251 : qtsink: explicitely fallthrough switch statement
+      * 754253 : qml: remove overwritten value
+      * 754285 : compositor: add unit test for ensuring that sinkpads are sorted by zorder
+      * 754466 : qml: add android support
+      * 754786 : vtdec: fails on OSX with GL3 context
+      * 755100 : qt: add build support for iOS/OSX
+      * 755105 : dashdemux: tests: add test for fix of the period start time scaling
+      * 755120 : dashdemux: stop_updates_task needs to be accessed with the lock taken
+      * 755121 : dahsdemux: task is signaled to stop without stop condition being set
+      * 755161 : h264parse, h265parse: initialize picture parameter set structure
+      * 755169 : dashdemux: can we have multiple seek events at the same time?
+      * 755226 : dashdemux: download_finish variable is not reset safely
+      * 755232 : dashdemux: demux- > cancelled is not properly protected
+      * 755319 : configure: add --with-hls-crypto=auto|nettle|libgcrypt|openssl option
+      * 755486 : glimagesink: doesn't support YUY2 properly
+      * 755656 : adaptivedemux: remove unused but set variable
+      * 756209 : adaptivedemux: adaptive demux hangs if src element cannot be started
+      * 756237 : adaptivedemux: waiting for playlist updates in case of fragment errors does not wait
+      * 756239 : adaptivedemux: header is not re-downloaded in case of errors
+      * 756240 : adaptivedemux: download thread should stop in case of multiple download errors
+      * 756322 : dashdemux: add unit test for dashdemux
+      * 756424 : docs: documentation not committed
+      * 756492 : gl: fix leak in gst_gl_insert_debug_marker
+      * 756556 : adaptivedemux: hang if application quits just after start
+      * 757018 : aggregator: Add create_new_pad() vfunc to allow subclasses to override the default behaviour
+      * 757049 : tsdemux: Add support for Opus
+      * 757050 : liveadder: type change of " latency " property might cause crashes
+      * 757152 : opus: Add proper multichannel support
+      * 757153 : opus: Handle start/end trimming
+      * 757245 : dashdemux: tests: add more tests for BaseURL
+      * 757285 : androidmedia: Zerocopy decoding potentially slower than before due to missing queueing
+      * 757335 : adaptivedemux: release manifest lock before changing internal pipeline state
+      * 757336 : adaptivedemux: reset download_finished before starting the src element
+      * 757337 : adaptivedemux: release manifest lock before sending flush stop event
+      * 757354 : adaptivedemux: tests: add download error test
+      * 757359 : adaptivedemux: fix a missing lock in write to stream- > last_ret
+      * 757361 : adaptivedemux: tests: add query and fragment download error test
+      * 757619 : hlsdemux: incorrect segment start value on bitrate switch
+      * 757688 : rtponviftimestamp: element does not work properly
+      * 757776 : dashdemux: Unit test fails reliably
+      * 757801 : tests:aggregator: tc failure
+      * 757825 : ivfparse: Fix the wrong width & height parsing of vp9 bitstream
+      * 757859 : adaptivedemux: memory leak in adaptive demux src bin
+      * 757903 : mpd verification broke http://www.bok.net/dash/tears_of_steel/cleartext/stream.mpd
+      * 757938 : glcolorconvert fails on OSX
+      * 757947 : adaptivedemux: http src errors are no longer detected
+      * 757974 : glcolorconvert: Fix memory leak while running glcolorconvert test
+      * 758010 : mpegtsdemux: stream- > section_data leak if there is a stream discontinuity
+      * 758188 : dashdemux: illegal memory access in gst_mpd_client_get_last_fragment_timestamp_end
+      * 758228 : amcvideodec: Don't require a non-zero buffer size when doing decoding to a surface
+      * 758233 : mpdparser: remove unused functions gst_mpdparser_get_chunk_by_index and gst_mpdparser_find_segment_by_index
+      * 758384 : dashdemux: tests: refactor into adaptive_engine components
+      * 758386 : hlsdemux: incorrect calculation of seek range of non-live streams
+      * 758405 : h264/h265parse: Should resend pps/sps after seeks in byte-stream mode
+      * 758410 : mpdparser: parsing of dateTime fields does not read the microseconds part
+      * 758515 : dashdemux:  Set framerate based on the Manifest on the caps
+      * 758517 : spu-pgs: Fix array memory leak
+      * 758586 : mssdemux: missing depth in audio caps
+      * 758593 : mpdparser: remove gst_mpd_client_check_time_position
+      * 758694 : android media fails to update affine transformation meta
+      * 758728 : id3mux: write private data tag
+      * 758820 : glwindow: Fix memory leak of navigation thread
+      * 758877 : glupload: Should not offer its allocator unless memory:GLMemory is negotiated
+      * 758904 : gl: YUY2 conversion broken
+      * 758946 : hlsdemux: change of playlist to the same playlist after first fragment, when connection speed is set
+      * 758987 : hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist
+      * 759108 : hlsdemux: add support for snapping seek flags
+      * 759118 : mxfdemux: IndexTableSegment handling is wrong
+      * 759432 : bad plugins: Fix example pipelines
+      * 759443 : videoframe-audiolevel: Fix possible division by zero
+      * 759484 : directsoundsrc: add device property as it is done in directsoundsink
+      * 759518 : yadif: Fix memory leak and mishandling.
+      * 759519 : gdppay: Fix buffer memory leak
+      * 759520 : pnmenc: Fix memory leaks/mishandling
+      * 759522 : pnmdec: Fix memory leaks
+      * 759523 : combdetect: Fix value memory leak
+      * 759525 : ivtc: Fix value memory leak
+      * 759534 : dashdemux: clock compensation is not correctly used in get_fragment_waiting_time
+      * 759537 : dashdemux: clock compensation: clock_cond is not used and should be removed
+      * 759547 : dashdemux: insufficient validation of UTCtiming element
+      * 759592 : Seek with negative rates appears to be broken with hlsdemux
+      * 759600 : decklinkvideosink: Made " auto " mode work according to caps
+      * 759728 : teletextdec: build error with clang
+      * 759742 : nvenc: very high CPU load when multiple nvenc instances are initialised at the same time
+      * 752528 : OpenCV hand gesture detection does not work with OpenCV newer than 2.4.10
+      * 753994 : opencv/faceblur: does not work with OpenCV newer than 2.4.10
+      * 754148 : OpenCV port remaining elements to C++ and new API
 
 ==== Download ====
 
@@ -115,16 +231,71 @@
         
 Contributors to this release
     
+      * Aleix Conchillo Flaqué
       * Alessandro Decina
+      * Alex Ashley
+      * André Draszik
+      * Antoine Jacoutot
+      * Antonio Ospite
+      * Arnaud Vrac
+      * Branko Subasic
+      * Chris Bass
+      * Daniel Kamil Kozar
+      * Dave Craig
+      * Duncan Palmer
       * Edward Hervey
       * Etienne Peron
+      * Florin Apostol
+      * Frédéric Wang
+      * George Kiagiadakis
+      * Guillaume Desmottes
+      * Haihua Hu
+      * Havard Graff
       * Heinrich Fink
+      * Hyunil Park
+      * Hyunjun Ko
+      * Jan Schmidt
+      * Jimmy Ohn
+      * John Chang
+      * John Slade
+      * Julian Bouzas
+      * Julien Isorce
+      * Linus Svensson
+      * Lubosz Sarnecki
+      * Luis de Bethencourt
+      * Maroš Ondrášek
+      * Mathias Hasselmann
+      * Matthew Marsh
       * Matthew Waters
+      * Matthieu Bouron
+      * Miguel París Díaz
+      * Nicolas Dufresne
       * Nicolas Huet
+      * Nirbheek Chauhan
+      * Olivier Crête
       * Paolo Pettinato
+      * Paul Arzelier
+      * Philippe Normand
+      * Philippe Renon
+      * Polochon_street
+      * Ravi Kiran K N
+      * Reynaldo H. Verdejo Pinochet
       * Roman Nowicki
+      * Santiago Carot-Nemesio
       * Sebastian Dröge
+      * Sreerenj Balachandran
+      * Stefan Sauer
+      * Thiago Santos
+      * Thibault Saunier
       * Thomas Roos
       * Tim-Philipp Müller
+      * Vanessa Chipirrás Navalón
+      * Vincent Penquerc'h
+      * Vineeth T M
       * Vineeth TM
+      * Vivia Nikolaidou
+      * Víctor Manuel Jáquez Leal
+      * Xavier Claessens
+      * plamot
+      * suhwang.kim
  
\ No newline at end of file
diff --git a/autogen.sh b/autogen.sh
index 7912654..ee2ce92 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -37,7 +37,11 @@
 if test ! \( -x .git/hooks/pre-commit -a -L .git/hooks/pre-commit \);
 then
     rm -f .git/hooks/pre-commit
-    ln -s ../../common/hooks/pre-commit.hook .git/hooks/pre-commit
+    if ! ln -s ../../common/hooks/pre-commit.hook .git/hooks/pre-commit 2> /dev/null
+    then
+        echo "Failed to create commit hook symlink, copying instead ..."
+        cp common/hooks/pre-commit.hook .git/hooks/pre-commit
+    fi
 fi
 
 # GNU gettext automake support doesn't get along with git.
@@ -50,6 +54,8 @@
 
 if test "x$package" = "xgstreamer"; then
   CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --enable-docbook --enable-failing-tests --enable-poisoning"
+elif test "x$package" = "xgst-plugins-bad"; then
+  CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-player-tests"
 fi
 
 autogen_options $@
diff --git a/common/Makefile.in b/common/Makefile.in
index d71b3ba..a4277f5 100644
--- a/common/Makefile.in
+++ b/common/Makefile.in
@@ -248,6 +248,8 @@
 CLUTTER_X11_LIBS = @CLUTTER_X11_LIBS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CUDA_CFLAGS = @CUDA_CFLAGS@
+CUDA_LIBS = @CUDA_LIBS@
 CURL_CFLAGS = @CURL_CFLAGS@
 CURL_LIBS = @CURL_LIBS@
 CXX = @CXX@
@@ -285,6 +287,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGL_CFLAGS = @EGL_CFLAGS@
+EGL_LIBS = @EGL_LIBS@
 EGREP = @EGREP@
 ERROR_CFLAGS = @ERROR_CFLAGS@
 ERROR_CXXFLAGS = @ERROR_CXXFLAGS@
@@ -312,6 +316,8 @@
 GIO_LIBS = @GIO_LIBS@
 GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@
 GIO_UNIX_LIBS = @GIO_UNIX_LIBS@
+GLES2_CFLAGS = @GLES2_CFLAGS@
+GLES2_LIBS = @GLES2_LIBS@
 GLIB_CFLAGS = @GLIB_CFLAGS@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
@@ -330,6 +336,8 @@
 GMODULE_NO_EXPORT_LIBS = @GMODULE_NO_EXPORT_LIBS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
+GNUSTL_CFLAGS = @GNUSTL_CFLAGS@
+GNUSTL_LIBS = @GNUSTL_LIBS@
 GRAPHENE_CFLAGS = @GRAPHENE_CFLAGS@
 GRAPHENE_LIBS = @GRAPHENE_LIBS@
 GREP = @GREP@
@@ -340,6 +348,8 @@
 GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@
 GSTPB_PREFIX = @GSTPB_PREFIX@
 GST_AGE = @GST_AGE@
+GST_ALLOCATORS_CFLAGS = @GST_ALLOCATORS_CFLAGS@
+GST_ALLOCATORS_LIBS = @GST_ALLOCATORS_LIBS@
 GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
 GST_API_VERSION = @GST_API_VERSION@
 GST_BASE_CFLAGS = @GST_BASE_CFLAGS@
@@ -365,6 +375,8 @@
 GST_OPTION_OBJCFLAGS = @GST_OPTION_OBJCFLAGS@
 GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
 GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PBUTILS_CFLAGS = @GST_PBUTILS_CFLAGS@
+GST_PBUTILS_LIBS = @GST_PBUTILS_LIBS@
 GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
 GST_PLUGINS_ALL = @GST_PLUGINS_ALL@
 GST_PLUGINS_BAD_CFLAGS = @GST_PLUGINS_BAD_CFLAGS@
@@ -390,6 +402,8 @@
 GST_PREFIX = @GST_PREFIX@
 GST_REVISION = @GST_REVISION@
 GST_TOOLS_DIR = @GST_TOOLS_DIR@
+GST_VIDEO_CFLAGS = @GST_VIDEO_CFLAGS@
+GST_VIDEO_LIBS = @GST_VIDEO_LIBS@
 GTK3_CFLAGS = @GTK3_CFLAGS@
 GTK3_GL_CFLAGS = @GTK3_GL_CFLAGS@
 GTK3_GL_LIBS = @GTK3_GL_LIBS@
@@ -521,6 +535,8 @@
 NETTLE_LIBS = @NETTLE_LIBS@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NVENCODE_CFLAGS = @NVENCODE_CFLAGS@
+NVENCODE_LIBS = @NVENCODE_LIBS@
 OBJC = @OBJC@
 OBJCDEPMODE = @OBJCDEPMODE@
 OBJCFLAGS = @OBJCFLAGS@
@@ -578,8 +594,12 @@
 PYTHON_PLATFORM = @PYTHON_PLATFORM@
 PYTHON_PREFIX = @PYTHON_PREFIX@
 PYTHON_VERSION = @PYTHON_VERSION@
+QT_ANDROID_CFLAGS = @QT_ANDROID_CFLAGS@
+QT_ANDROID_LIBS = @QT_ANDROID_LIBS@
 QT_CFLAGS = @QT_CFLAGS@
 QT_LIBS = @QT_LIBS@
+QT_MAC_CFLAGS = @QT_MAC_CFLAGS@
+QT_MAC_LIBS = @QT_MAC_LIBS@
 QT_WAYLAND_CFLAGS = @QT_WAYLAND_CFLAGS@
 QT_WAYLAND_LIBS = @QT_WAYLAND_LIBS@
 QT_X11_CFLAGS = @QT_X11_CFLAGS@
@@ -649,6 +669,7 @@
 WAYLAND_LIBS = @WAYLAND_LIBS@
 WEBP_CFLAGS = @WEBP_CFLAGS@
 WEBP_LIBS = @WEBP_LIBS@
+WGET = @WGET@
 WILDMIDI_CFLAGS = @WILDMIDI_CFLAGS@
 WILDMIDI_LIBS = @WILDMIDI_LIBS@
 WINKS_LIBS = @WINKS_LIBS@
diff --git a/common/check.mak b/common/check.mak
index 8a90b5d..25a16e6 100644
--- a/common/check.mak
+++ b/common/check.mak
@@ -57,7 +57,7 @@
 	--show-possibly-lost=no                                 \
 	--leak-resolution=high --num-callers=20			\
 	./$* 2>&1 | tee $$valgrind_log ;			\
-	if grep "==" $$valgrind_log > /dev/null 2>&1; then	\
+	if grep "^==" $$valgrind_log > /dev/null 2>&1; then	\
 	    rm $$valgrind_log;					\
 	    exit 1;						\
 	fi ;							\
diff --git a/common/gst.supp b/common/gst.supp
index 81f98a9..2740e9a 100644
--- a/common/gst.supp
+++ b/common/gst.supp
@@ -3976,7 +3976,6 @@
 {
    closures aren't valgrind friendly (bgo#739850)
    Memcheck:Leak
-   match-leak-kinds: possible
    fun:calloc
    ...
    fun:g_cclosure_new
@@ -3985,7 +3984,6 @@
 {
    closures aren't valgrind friendly (bgo#739850)
    Memcheck:Leak
-   match-leak-kinds: possible
    fun:malloc
    ...
    fun:g_closure_add_invalidate_notifier
@@ -3994,7 +3992,6 @@
 {
    closures aren't valgrind friendly (bgo#739850)
    Memcheck:Leak
-   match-leak-kinds: possible
    fun:calloc
    ...
    fun:g_closure_new_simple
@@ -4020,3 +4017,12 @@
    Memcheck:Addr8
    fun:do_lookup_x
 }
+
+{
+   <quark tables are leaked on purpose when they are expanded, observed with glib 2.46 and gst-rtsp-server tests>
+   Memcheck:Leak
+   fun:malloc
+   ...
+   fun:g_quark_init
+   fun:glib_init_ctor
+}
diff --git a/common/m4/Makefile.in b/common/m4/Makefile.in
index 441d6fc..1f3f788 100644
--- a/common/m4/Makefile.in
+++ b/common/m4/Makefile.in
@@ -188,6 +188,8 @@
 CLUTTER_X11_LIBS = @CLUTTER_X11_LIBS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CUDA_CFLAGS = @CUDA_CFLAGS@
+CUDA_LIBS = @CUDA_LIBS@
 CURL_CFLAGS = @CURL_CFLAGS@
 CURL_LIBS = @CURL_LIBS@
 CXX = @CXX@
@@ -225,6 +227,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGL_CFLAGS = @EGL_CFLAGS@
+EGL_LIBS = @EGL_LIBS@
 EGREP = @EGREP@
 ERROR_CFLAGS = @ERROR_CFLAGS@
 ERROR_CXXFLAGS = @ERROR_CXXFLAGS@
@@ -252,6 +256,8 @@
 GIO_LIBS = @GIO_LIBS@
 GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@
 GIO_UNIX_LIBS = @GIO_UNIX_LIBS@
+GLES2_CFLAGS = @GLES2_CFLAGS@
+GLES2_LIBS = @GLES2_LIBS@
 GLIB_CFLAGS = @GLIB_CFLAGS@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
@@ -270,6 +276,8 @@
 GMODULE_NO_EXPORT_LIBS = @GMODULE_NO_EXPORT_LIBS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
+GNUSTL_CFLAGS = @GNUSTL_CFLAGS@
+GNUSTL_LIBS = @GNUSTL_LIBS@
 GRAPHENE_CFLAGS = @GRAPHENE_CFLAGS@
 GRAPHENE_LIBS = @GRAPHENE_LIBS@
 GREP = @GREP@
@@ -280,6 +288,8 @@
 GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@
 GSTPB_PREFIX = @GSTPB_PREFIX@
 GST_AGE = @GST_AGE@
+GST_ALLOCATORS_CFLAGS = @GST_ALLOCATORS_CFLAGS@
+GST_ALLOCATORS_LIBS = @GST_ALLOCATORS_LIBS@
 GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
 GST_API_VERSION = @GST_API_VERSION@
 GST_BASE_CFLAGS = @GST_BASE_CFLAGS@
@@ -305,6 +315,8 @@
 GST_OPTION_OBJCFLAGS = @GST_OPTION_OBJCFLAGS@
 GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
 GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PBUTILS_CFLAGS = @GST_PBUTILS_CFLAGS@
+GST_PBUTILS_LIBS = @GST_PBUTILS_LIBS@
 GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
 GST_PLUGINS_ALL = @GST_PLUGINS_ALL@
 GST_PLUGINS_BAD_CFLAGS = @GST_PLUGINS_BAD_CFLAGS@
@@ -330,6 +342,8 @@
 GST_PREFIX = @GST_PREFIX@
 GST_REVISION = @GST_REVISION@
 GST_TOOLS_DIR = @GST_TOOLS_DIR@
+GST_VIDEO_CFLAGS = @GST_VIDEO_CFLAGS@
+GST_VIDEO_LIBS = @GST_VIDEO_LIBS@
 GTK3_CFLAGS = @GTK3_CFLAGS@
 GTK3_GL_CFLAGS = @GTK3_GL_CFLAGS@
 GTK3_GL_LIBS = @GTK3_GL_LIBS@
@@ -461,6 +475,8 @@
 NETTLE_LIBS = @NETTLE_LIBS@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NVENCODE_CFLAGS = @NVENCODE_CFLAGS@
+NVENCODE_LIBS = @NVENCODE_LIBS@
 OBJC = @OBJC@
 OBJCDEPMODE = @OBJCDEPMODE@
 OBJCFLAGS = @OBJCFLAGS@
@@ -518,8 +534,12 @@
 PYTHON_PLATFORM = @PYTHON_PLATFORM@
 PYTHON_PREFIX = @PYTHON_PREFIX@
 PYTHON_VERSION = @PYTHON_VERSION@
+QT_ANDROID_CFLAGS = @QT_ANDROID_CFLAGS@
+QT_ANDROID_LIBS = @QT_ANDROID_LIBS@
 QT_CFLAGS = @QT_CFLAGS@
 QT_LIBS = @QT_LIBS@
+QT_MAC_CFLAGS = @QT_MAC_CFLAGS@
+QT_MAC_LIBS = @QT_MAC_LIBS@
 QT_WAYLAND_CFLAGS = @QT_WAYLAND_CFLAGS@
 QT_WAYLAND_LIBS = @QT_WAYLAND_LIBS@
 QT_X11_CFLAGS = @QT_X11_CFLAGS@
@@ -589,6 +609,7 @@
 WAYLAND_LIBS = @WAYLAND_LIBS@
 WEBP_CFLAGS = @WEBP_CFLAGS@
 WEBP_LIBS = @WEBP_LIBS@
+WGET = @WGET@
 WILDMIDI_CFLAGS = @WILDMIDI_CFLAGS@
 WILDMIDI_LIBS = @WILDMIDI_LIBS@
 WINKS_LIBS = @WINKS_LIBS@
diff --git a/common/m4/gst-args.m4 b/common/m4/gst-args.m4
index b478c82..0628123 100644
--- a/common/m4/gst-args.m4
+++ b/common/m4/gst-args.m4
@@ -358,3 +358,29 @@
       fi
     ])
 ])
+
+dnl Enable extra checks by default only for development versions
+AC_DEFUN([AG_GST_ARG_ENABLE_EXTRA_CHECKS],
+[
+  AC_ARG_ENABLE(extra-check,
+    AC_HELP_STRING([--enable-extra-checks],
+                   [Enable extra runtime checks]),
+    [
+      case "${enableval}" in
+        yes) EXTRA_CHECKS=yes ;;
+        no)  EXTRA_CHECKS=no ;;
+        *)   AC_MSG_ERROR(bad value ${enableval} for --enable-extra-checks) ;;
+      esac
+    ],
+    [
+      if test "x`expr $PACKAGE_VERSION_MINOR % 2`" = "x1" -a "x`expr $PACKAGE_VERSION_MICRO '<' 90`" = "x1"; then
+        EXTRA_CHECKS=yes
+      else
+        EXTRA_CHECKS=no
+      fi
+    ])
+
+    if test "x$EXTRA_CHECKS" = "xyes"; then
+        AC_DEFINE(GST_ENABLE_EXTRA_CHECKS, 1, [Define if extra runtime checks should be enabled])
+    fi
+])
diff --git a/common/m4/gst-error.m4 b/common/m4/gst-error.m4
index d6487cc..0067588 100644
--- a/common/m4/gst-error.m4
+++ b/common/m4/gst-error.m4
@@ -52,31 +52,6 @@
   if test "x$1" != "xno"
   then
     AS_COMPILER_FLAG(-Werror, ERROR_CFLAGS="$ERROR_CFLAGS -Werror")
-
-    dnl if -Werror isn't suported, try -errwarn=%all (Sun Forte case)
-    if test "x$ERROR_CFLAGS" = "x"
-    then
-      AS_COMPILER_FLAG([-errwarn=%all], [
-          ERROR_CFLAGS="-errwarn=%all"
-          dnl try -errwarn=%all,no%E_EMPTY_DECLARATION,
-          dnl no%E_STATEMENT_NOT_REACHED,no%E_ARGUEMENT_MISMATCH,
-          dnl no%E_MACRO_REDEFINED (Sun Forte case)
-          dnl For Forte we need disable "empty declaration" warning produced by un-needed semicolon
-          dnl "statement not reached" disabled because there is g_assert_not_reached () in some places
-          dnl "macro redefined" because of gst/gettext.h
-          dnl FIXME: is it really supposed to be 'ARGUEMENT' and not 'ARGUMENT'?
-          for f in 'no%E_EMPTY_DECLARATION' \
-                   'no%E_STATEMENT_NOT_REACHED' \
-                   'no%E_ARGUEMENT_MISMATCH' \
-                   'no%E_MACRO_REDEFINED' \
-                   'no%E_LOOP_NOT_ENTERED_AT_TOP'
-          do
-            AS_COMPILER_FLAG([-errwarn=%all,$f], [
-              ERROR_CFLAGS="$ERROR_CFLAGS,$f"
-            ])
-          done
-      ])
-    fi
   fi
 
   if test "x$2" != "x"
@@ -142,28 +117,6 @@
 	  AS_CXX_COMPILER_FLAG([-fno-strict-aliasing],
 	    ERROR_CXXFLAGS="$ERROR_CXXFLAGS -fno-strict-aliasing")
 	  ])
-    else
-      dnl if -Werror isn't suported, try -errwarn=%all
-      AS_CXX_COMPILER_FLAG([-errwarn=%all], ERROR_CXXFLAGS="$ERROR_CXXFLAGS -errwarn=%all")
-      if test "x$ERROR_CXXFLAGS" != "x"; then
-        dnl try -errwarn=%all,no%E_EMPTY_DECLARATION,
-        dnl no%E_STATEMENT_NOT_REACHED,no%E_ARGUEMENT_MISMATCH,
-        dnl no%E_MACRO_REDEFINED (Sun Forte case)
-        dnl For Forte we need disable "empty declaration" warning produced by un-needed semicolon
-        dnl "statement not reached" disabled because there is g_assert_not_reached () in some places
-        dnl "macro redefined" because of gst/gettext.h
-        dnl FIXME: is it really supposed to be 'ARGUEMENT' and not 'ARGUMENT'?
-        dnl FIXME: do any of these work with the c++ compiler? if not, why
-        dnl do we check at all?
-        for f in 'no%E_EMPTY_DECLARATION' \
-                 'no%E_STATEMENT_NOT_REACHED' \
-                 'no%E_ARGUEMENT_MISMATCH' \
-                 'no%E_MACRO_REDEFINED' \
-                 'no%E_LOOP_NOT_ENTERED_AT_TOP'
-        do
-          AS_CXX_COMPILER_FLAG([-errwarn=%all,$f], [ERROR_CXXFLAGS="$ERROR_CXXFLAGS,$f"])
-        done
-      fi
     fi
   fi
 
@@ -227,28 +180,6 @@
 	  AS_OBJC_COMPILER_FLAG([-fno-strict-aliasing],
 	    ERROR_OBJCFLAGS="$ERROR_OBJCFLAGS -fno-strict-aliasing")
 	  ])
-    else
-      dnl if -Werror isn't suported, try -errwarn=%all
-      AS_OBJC_COMPILER_FLAG([-errwarn=%all], ERROR_OBJCFLAGS="$ERROR_OBJCFLAGS -errwarn=%all")
-      if test "x$ERROR_OBJCFLAGS" != "x"; then
-        dnl try -errwarn=%all,no%E_EMPTY_DECLARATION,
-        dnl no%E_STATEMENT_NOT_REACHED,no%E_ARGUEMENT_MISMATCH,
-        dnl no%E_MACRO_REDEFINED (Sun Forte case)
-        dnl For Forte we need disable "empty declaration" warning produced by un-needed semicolon
-        dnl "statement not reached" disabled because there is g_assert_not_reached () in some places
-        dnl "macro redefined" because of gst/gettext.h
-        dnl FIXME: is it really supposed to be 'ARGUEMENT' and not 'ARGUMENT'?
-        dnl FIXME: do any of these work with the c++ compiler? if not, why
-        dnl do we check at all?
-        for f in 'no%E_EMPTY_DECLARATION' \
-                 'no%E_STATEMENT_NOT_REACHED' \
-                 'no%E_ARGUEMENT_MISMATCH' \
-                 'no%E_MACRO_REDEFINED' \
-                 'no%E_LOOP_NOT_ENTERED_AT_TOP'
-        do
-          AS_OBJC_COMPILER_FLAG([-errwarn=%all,$f], [ERROR_OBJCFLAGS="$ERROR_OBJCFLAGS,$f"])
-        done
-      fi
     fi
   fi
 
diff --git a/common/m4/gst-glib2.m4 b/common/m4/gst-glib2.m4
index 5b9cd8b..5b72507 100644
--- a/common/m4/gst-glib2.m4
+++ b/common/m4/gst-glib2.m4
@@ -51,18 +51,9 @@
   fi
 
   AC_ARG_ENABLE(glib-asserts,
-    AS_HELP_STRING([--enable-glib-asserts[=@<:@no/auto/yes@:>@]],
+    AS_HELP_STRING([--enable-glib-asserts[=@<:@no/yes@:>@]],
       [Enable GLib assertion]),[enable_glib_assertions=$enableval],
-    [enable_glib_assertions=auto])
-
-  if test "x$enable_glib_assertions" = "xauto"; then
-    dnl Enable assertions only for development versions
-    if test "x`expr $PACKAGE_VERSION_MINOR % 2`" = "x1" -a "x`expr $PACKAGE_VERSION_MICRO '<' 90`" = "x1"; then
-      enable_glib_assertions=yes
-    else
-      enable_glib_assertions=no
-    fi
-  fi
+    [enable_glib_assertions=yes])
 
   if test "x$enable_glib_assertions" = "xno"; then
     GLIB_EXTRA_CFLAGS="$GLIB_EXTRA_CFLAGS -DG_DISABLE_ASSERT"
diff --git a/common/m4/gst-package-release-datetime.m4 b/common/m4/gst-package-release-datetime.m4
index bc885e3..4cf44e6 100644
--- a/common/m4/gst-package-release-datetime.m4
+++ b/common/m4/gst-package-release-datetime.m4
@@ -27,14 +27,16 @@
 AC_DEFUN([AG_GST_SET_PACKAGE_RELEASE_DATETIME],
 [
   dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME()
-  dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes]...)
+  dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([no]...)
   if test "x$1" = "xno" -o "x$1" = "x"; then
     GST_PACKAGE_RELEASE_DATETIME=`date -u "+%Y-%m-%dT%H:%MZ"`
   elif test "x$1" = "xyes"; then
-    dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([no], ["YYYY-MM-DD"])
-    dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([no], [DOAP-FILE], [RELEASE-VERSION])
-    if ( echo $1 | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
-      GST_PACKAGE_RELEASE_DATETIME=$1
+    dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [YYYY-MM-DD])
+    dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [DOAP-FILE], [RELEASE-VERSION])
+changequote(<<, >>)dnl
+    if ( echo $2 | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
+changequote([, ])dnl
+      GST_PACKAGE_RELEASE_DATETIME=$2
     else
       dnl we assume the .doap file contains the date as YYYY-MM-DD
       YYYY_MM_DD=`sh "${srcdir}/common/extract-release-date-from-doap-file" $3 $2`;
@@ -47,7 +49,9 @@
       fi
     fi
   dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([YYYY-MM-DD])
+changequote(<<, >>)dnl
   elif ( echo $1 | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
+changequote([, ])dnl
     GST_PACKAGE_RELEASE_DATETIME=$1
   else
     AC_MSG_WARN([SET_PACKAGE_RELEASE_DATETIME: invalid first argument])
diff --git a/common/release.mak b/common/release.mak
index 715657b..c84c2f1 100644
--- a/common/release.mak
+++ b/common/release.mak
@@ -14,6 +14,9 @@
 	@if [ -d ../www/data/src ]; then \
 	  mv -v $(PACKAGE)-$(VERSION).tar.xz ../www/data/src/$(PACKAGE)/ ; \
 	  mv -v $(PACKAGE)-$(VERSION).tar.xz.sha256sum ../www/data/src/$(PACKAGE)/ ; \
+	elif [ -d ../../www/data/src ]; then \
+	  mv -v $(PACKAGE)-$(VERSION).tar.xz ../../www/data/src/$(PACKAGE)/ ; \
+	  mv -v $(PACKAGE)-$(VERSION).tar.xz.sha256sum ../../www/data/src/$(PACKAGE)/ ; \
 	fi
 	@echo "================================================================================================="
 
diff --git a/config.h.in b/config.h.in
index e6f84cb..3ea2af3 100644
--- a/config.h.in
+++ b/config.h.in
@@ -52,12 +52,18 @@
 /* GStreamer API Version */
 #undef GST_API_VERSION
 
+/* Define if extra runtime checks should be enabled */
+#undef GST_ENABLE_EXTRA_CHECKS
+
 /* Extra platform specific plugin suffix */
 #undef GST_EXTRA_MODULE_SUFFIX
 
 /* Defined if gcov is enabled to force a rebuild due to config.h changing */
 #undef GST_GCOV_ENABLED
 
+/* DMABUF available for gl plugins */
+#undef GST_GL_HAVE_DMABUF
+
 /* EGL module name */
 #undef GST_GL_LIBEGL_MODULE_NAME
 
@@ -406,6 +412,12 @@
 /* Define if nettle is available */
 #undef HAVE_NETTLE
 
+/* Define to enable NVIDIA Encode API (used by nvenc). */
+#undef HAVE_NVENC
+
+/* NVENC GStreamer OpenGL support available */
+#undef HAVE_NVENC_GST_GL
+
 /* Define to enable ofa plugins (used by ofa). */
 #undef HAVE_OFA
 
@@ -498,6 +510,15 @@
 /* Define to enable Qt elements (used by qt). */
 #undef HAVE_QT
 
+/* Define if Qt Android integration is installed */
+#undef HAVE_QT_ANDROID
+
+/* Define if Qt iOS integration is installed */
+#undef HAVE_QT_IOS
+
+/* Define if Qt Mac integration is installed */
+#undef HAVE_QT_MAC
+
 /* Define if Qt Wayland integration is installed */
 #undef HAVE_QT_WAYLAND
 
diff --git a/configure b/configure
index de8aab2..985e6ff 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 Bad Plug-ins 1.6.2.
+# Generated by GNU Autoconf 2.69 for GStreamer Bad Plug-ins 1.7.1.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
 #
@@ -591,8 +591,8 @@
 # Identity of this package.
 PACKAGE_NAME='GStreamer Bad Plug-ins'
 PACKAGE_TARNAME='gst-plugins-bad'
-PACKAGE_VERSION='1.6.2'
-PACKAGE_STRING='GStreamer Bad Plug-ins 1.6.2'
+PACKAGE_VERSION='1.7.1'
+PACKAGE_STRING='GStreamer Bad Plug-ins 1.7.1'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -658,10 +658,10 @@
 X265_CFLAGS
 USE_HLS_FALSE
 USE_HLS_TRUE
-LIBGCRYPT_LIBS
-LIBGCRYPT_CFLAGS
 OPENSSL_LIBS
 OPENSSL_CFLAGS
+LIBGCRYPT_LIBS
+LIBGCRYPT_CFLAGS
 LIBGCRYPT_CONFIG
 NETTLE_LIBS
 NETTLE_CFLAGS
@@ -749,6 +749,12 @@
 LIBVISUAL_CFLAGS
 USE_QT_FALSE
 USE_QT_TRUE
+QT_MAC_LIBS
+QT_MAC_CFLAGS
+GNUSTL_LIBS
+GNUSTL_CFLAGS
+QT_ANDROID_LIBS
+QT_ANDROID_CFLAGS
 QT_WAYLAND_LIBS
 QT_WAYLAND_CFLAGS
 QT_X11_LIBS
@@ -982,6 +988,18 @@
 USE_ASSRENDER_TRUE
 ASSRENDER_LIBS
 ASSRENDER_CFLAGS
+USE_NVENC_GST_GL_FALSE
+USE_NVENC_GST_GL_TRUE
+USE_NVENC_FALSE
+USE_NVENC_TRUE
+NVENCODE_LIBS
+NVENCODE_CFLAGS
+CUDA_LIBS
+CUDA_CFLAGS
+GST_PBUTILS_LIBS
+GST_PBUTILS_CFLAGS
+GST_VIDEO_LIBS
+GST_VIDEO_CFLAGS
 LIBUDEV_LIBS
 LIBUDEV_CFLAGS
 USE_UVCH264_FALSE
@@ -1078,12 +1096,18 @@
 USE_GLES2
 USE_OPENGL
 GL_OBJCFLAGS
-GL_CFLAGS
-GL_LIBS
+GST_ALLOCATORS_LIBS
+GST_ALLOCATORS_CFLAGS
 WAYLAND_EGL_LIBS
 WAYLAND_EGL_CFLAGS
 HAVE_EGL
+EGL_LIBS
+EGL_CFLAGS
 HAVE_GLES2
+GLES2_LIBS
+GLES2_CFLAGS
+GL_LIBS
+GL_CFLAGS
 HAVE_GL
 X_LIBS
 X_CFLAGS
@@ -1157,8 +1181,6 @@
 USE_PLUGIN_MPEGDEMUX_TRUE
 USE_PLUGIN_MIDI_FALSE
 USE_PLUGIN_MIDI_TRUE
-USE_PLUGIN_LIVEADDER_FALSE
-USE_PLUGIN_LIVEADDER_TRUE
 USE_PLUGIN_LIBRFB_FALSE
 USE_PLUGIN_LIBRFB_TRUE
 USE_PLUGIN_JPEGFORMAT_FALSE
@@ -1223,6 +1245,8 @@
 USE_PLUGIN_AUDIOFXBAD_TRUE
 USE_PLUGIN_ASFMUX_FALSE
 USE_PLUGIN_ASFMUX_TRUE
+USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_FALSE
+USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_TRUE
 USE_PLUGIN_AIFF_FALSE
 USE_PLUGIN_AIFF_TRUE
 USE_PLUGIN_ADPCMENC_FALSE
@@ -1243,6 +1267,9 @@
 WARNING_CXXFLAGS
 ERROR_CFLAGS
 WARNING_CFLAGS
+WITH_GST_PLAYER_TESTS_FALSE
+WITH_GST_PLAYER_TESTS_TRUE
+WGET
 GST_PLUGIN_BUILD_STATIC_FALSE
 GST_PLUGIN_BUILD_STATIC_TRUE
 GST_PLUGIN_LIBTOOLFLAGS
@@ -1642,6 +1669,7 @@
 with_libiconv_prefix
 with_libintl_prefix
 enable_fatal_warnings
+enable_extra_check
 enable_debug
 enable_profiling
 enable_valgrind
@@ -1661,8 +1689,10 @@
 enable_gobject_cast_checks
 enable_glib_asserts
 with_gtk
+enable_Bsymbolic
 enable_orc
 enable_static_plugins
+with_player_tests
 with_default_audiosink
 with_default_audiosrc
 with_default_videosink
@@ -1672,6 +1702,7 @@
 enable_adpcmdec
 enable_adpcmenc
 enable_aiff
+enable_videoframe_audiolevel
 enable_asfmux
 enable_audiofxbad
 enable_audiomixer
@@ -1704,7 +1735,6 @@
 enable_jp2kdecimator
 enable_jpegformat
 enable_librfb
-enable_liveadder
 enable_midi
 enable_mpegdemux
 enable_mpegtsdemux
@@ -1762,6 +1792,8 @@
 enable_vcd
 enable_opensles
 enable_uvch264
+enable_nvenc
+with_cuda_prefix
 enable_assrender
 enable_voamrwbenc
 enable_voaacenc
@@ -1840,6 +1872,7 @@
 enable_gsettings
 enable_schemas_compile
 enable_sndio
+with_hls_crypto
 enable_hls
 with_libgcrypt_prefix
 enable_x265
@@ -1915,8 +1948,16 @@
 ORC_LIBS
 X_CFLAGS
 X_LIBS
+GL_CFLAGS
+GL_LIBS
+GLES2_CFLAGS
+GLES2_LIBS
+EGL_CFLAGS
+EGL_LIBS
 WAYLAND_EGL_CFLAGS
 WAYLAND_EGL_LIBS
+GST_ALLOCATORS_CFLAGS
+GST_ALLOCATORS_LIBS
 LIBPNG_CFLAGS
 LIBPNG_LIBS
 BLUEZ5_CFLAGS
@@ -1927,6 +1968,14 @@
 G_UDEV_LIBS
 LIBUSB_CFLAGS
 LIBUSB_LIBS
+GST_VIDEO_CFLAGS
+GST_VIDEO_LIBS
+GST_PBUTILS_CFLAGS
+GST_PBUTILS_LIBS
+CUDA_CFLAGS
+CUDA_LIBS
+NVENCODE_CFLAGS
+NVENCODE_LIBS
 ASSRENDER_CFLAGS
 ASSRENDER_LIBS
 VOAMRWBENC_CFLAGS
@@ -2023,6 +2072,12 @@
 QT_X11_LIBS
 QT_WAYLAND_CFLAGS
 QT_WAYLAND_LIBS
+QT_ANDROID_CFLAGS
+QT_ANDROID_LIBS
+GNUSTL_CFLAGS
+GNUSTL_LIBS
+QT_MAC_CFLAGS
+QT_MAC_LIBS
 LIBVISUAL_CFLAGS
 LIBVISUAL_LIBS
 TIMIDITY_CFLAGS
@@ -2603,7 +2658,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 Bad Plug-ins 1.6.2 to adapt to many kinds of systems.
+\`configure' configures GStreamer Bad Plug-ins 1.7.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2675,7 +2730,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer Bad Plug-ins 1.6.2:";;
+     short | recursive ) echo "Configuration of GStreamer Bad Plug-ins 1.7.1:";;
    esac
   cat <<\_ACEOF
 
@@ -2701,6 +2756,7 @@
   --disable-rpath         do not hardcode runtime library paths
   --disable-fatal-warnings
                           Don't turn compiler warnings into fatal errors
+  --enable-extra-checks   Enable extra runtime checks
   --disable-debug         disable addition of -g debugging info
   --enable-profiling      adds -pg to compiler commandline, for profiling
   --disable-valgrind      disable run-time valgrind detection
@@ -2716,14 +2772,17 @@
   --enable-gtk-doc-pdf    build documentation in pdf format [[default=no]]
   --enable-gobject-cast-checks=[no/auto/yes]
                           Enable GObject cast checks
-  --enable-glib-asserts=[no/auto/yes]
+  --enable-glib-asserts=[no/yes]
                           Enable GLib assertion
+  --disable-Bsymbolic     avoid linking with -Bsymbolic
   --enable-orc            use Orc if installed
   --enable-static-plugins build static plugins [default=no]
   --disable-accurip       disable dependency-less accurip plugin
   --disable-adpcmdec      disable dependency-less adpcmdec plugin
   --disable-adpcmenc      disable dependency-less adpcmenc plugin
   --disable-aiff          disable dependency-less aiff plugin
+  --disable-videoframe_audiolevel
+                          disable dependency-less videoframe_audiolevel plugin
   --disable-asfmux        disable dependency-less asfmux plugin
   --disable-audiofxbad    disable dependency-less audiofxbad plugin
   --disable-audiomixer    disable dependency-less audiomixer plugin
@@ -2758,7 +2817,6 @@
   --disable-jp2kdecimator disable dependency-less jp2kdecimator plugin
   --disable-jpegformat    disable dependency-less jpegformat plugin
   --disable-librfb        disable dependency-less librfb plugin
-  --disable-liveadder     disable dependency-less liveadder plugin
   --disable-midi          disable dependency-less midi plugin
   --disable-mpegdemux     disable dependency-less mpegdemux plugin
   --disable-mpegtsdemux   disable dependency-less mpegtsdemux plugin
@@ -2812,6 +2870,7 @@
   --disable-vcd                disable Video CD: vcdsrc
   --disable-opensles           disable OpenSL ES: opensl
   --disable-uvch264            disable UVC H264: uvch264
+  --disable-nvenc              disable NVIDIA Encode API: nvenc
   --disable-assrender          disable ASS/SSA renderer: assrender
   --disable-voamrwbenc         disable vo-amrwbenc library: vo-amrwbenc
   --disable-voaacenc           disable vo-aacenc library: vo-aacenc
@@ -2920,6 +2979,8 @@
                           compile
   --with-html-dir=PATH    path to installed docs
   --with-gtk=3.0|2.0      which gtk+ version to compile against (default: 2.0)
+  --with-player-tests     Enable GstPlayer tests that need network access
+                          (default: no)
   --with-default-audiosink
                           specify default audio sink
   --with-default-audiosrc specify default audio source
@@ -2934,11 +2995,16 @@
                           library module name for GLES2 (default: libGLESv2)
   --with-egl-module-name  library module name for EGL (default: libEGL)
   --with-jpeg-mmx, path to MMX'ified JPEG library
+  --with-cuda-prefix      Use the provided prefix for detecting the cuda
+                          installation
   --with-pvr-external-headers
                           Use system installed PVR2D headers
   --with-sdl-prefix=PFX   prefix where SDL is installed (optional)
   --with-sdl-exec-prefix=PFX
                           exec prefix where SDL is installed (optional)
+  --with-hls-crypto=auto|nettle|libgcrypt|openssl
+                          which cryptographic library version to compile
+                          against for hls (default: auto)
   --with-libgcrypt-prefix=PFX
                           prefix where LIBGCRYPT is installed (optional)
 
@@ -3046,10 +3112,21 @@
   ORC_LIBS    linker flags for ORC, overriding pkg-config
   X_CFLAGS    C compiler flags for X, overriding pkg-config
   X_LIBS      linker flags for X, overriding pkg-config
+  GL_CFLAGS   C compiler flags for GL, overriding pkg-config
+  GL_LIBS     linker flags for GL, overriding pkg-config
+  GLES2_CFLAGS
+              C compiler flags for GLES2, overriding pkg-config
+  GLES2_LIBS  linker flags for GLES2, overriding pkg-config
+  EGL_CFLAGS  C compiler flags for EGL, overriding pkg-config
+  EGL_LIBS    linker flags for EGL, overriding pkg-config
   WAYLAND_EGL_CFLAGS
               C compiler flags for WAYLAND_EGL, overriding pkg-config
   WAYLAND_EGL_LIBS
               linker flags for WAYLAND_EGL, overriding pkg-config
+  GST_ALLOCATORS_CFLAGS
+              C compiler flags for GST_ALLOCATORS, overriding pkg-config
+  GST_ALLOCATORS_LIBS
+              linker flags for GST_ALLOCATORS, overriding pkg-config
   LIBPNG_CFLAGS
               C compiler flags for LIBPNG, overriding pkg-config
   LIBPNG_LIBS linker flags for LIBPNG, overriding pkg-config
@@ -3066,6 +3143,20 @@
   LIBUSB_CFLAGS
               C compiler flags for LIBUSB, overriding pkg-config
   LIBUSB_LIBS linker flags for LIBUSB, overriding pkg-config
+  GST_VIDEO_CFLAGS
+              C compiler flags for GST_VIDEO, overriding pkg-config
+  GST_VIDEO_LIBS
+              linker flags for GST_VIDEO, overriding pkg-config
+  GST_PBUTILS_CFLAGS
+              C compiler flags for GST_PBUTILS, overriding pkg-config
+  GST_PBUTILS_LIBS
+              linker flags for GST_PBUTILS, overriding pkg-config
+  CUDA_CFLAGS C compiler flags for CUDA, overriding pkg-config
+  CUDA_LIBS   linker flags for CUDA, overriding pkg-config
+  NVENCODE_CFLAGS
+              C compiler flags for NvEncodeAPI.h
+  NVENCODE_LIBS
+              linker flags for nvidia-encode
   ASSRENDER_CFLAGS
               C compiler flags for ASSRENDER, overriding pkg-config
   ASSRENDER_LIBS
@@ -3217,6 +3308,16 @@
               C compiler flags for QT_WAYLAND, overriding pkg-config
   QT_WAYLAND_LIBS
               linker flags for QT_WAYLAND, overriding pkg-config
+  QT_ANDROID_CFLAGS
+              C compiler flags for QT_ANDROID, overriding pkg-config
+  QT_ANDROID_LIBS
+              linker flags for QT_ANDROID, overriding pkg-config
+  GNUSTL_CFLAGS
+              C compiler flags for GNUSTL, overriding pkg-config
+  GNUSTL_LIBS linker flags for GNUSTL, overriding pkg-config
+  QT_MAC_CFLAGS
+              C compiler flags for QT_MAC, overriding pkg-config
+  QT_MAC_LIBS linker flags for QT_MAC, overriding pkg-config
   LIBVISUAL_CFLAGS
               C compiler flags for LIBVISUAL, overriding pkg-config
   LIBVISUAL_LIBS
@@ -3333,7 +3434,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer Bad Plug-ins configure 1.6.2
+GStreamer Bad Plug-ins configure 1.7.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -4306,7 +4407,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 Bad Plug-ins $as_me 1.6.2, which was
+It was created by GStreamer Bad Plug-ins $as_me 1.7.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -5288,7 +5389,7 @@
 
 # Define the identity of the package.
  PACKAGE='gst-plugins-bad'
- VERSION='1.6.2'
+ VERSION='1.7.1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -5499,9 +5600,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.6.2 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.6.2 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.6.2 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.7.1 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.7.1 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.7.1 | cut -d'.' -f3)
 
 
 
@@ -5512,7 +5613,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.6.2 | cut -d'.' -f4)
+  NANO=$(echo 1.7.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
@@ -10171,10 +10272,10 @@
 done
 
 
-  GST_CURRENT=602
+  GST_CURRENT=701
   GST_REVISION=0
-  GST_AGE=602
-  GST_LIBVERSION=602:0:602
+  GST_AGE=701
+  GST_LIBVERSION=701:0:701
 
 
 
@@ -14499,8 +14600,8 @@
 
 
 
-GST_REQ=1.6.2
-GSTPB_REQ=1.6.2
+GST_REQ=1.7.1
+GSTPB_REQ=1.7.1
 
 
 
@@ -16552,6 +16653,33 @@
 
 
 
+  # Check whether --enable-extra-check was given.
+if test "${enable_extra_check+set}" = set; then :
+  enableval=$enable_extra_check;
+      case "${enableval}" in
+        yes) EXTRA_CHECKS=yes ;;
+        no)  EXTRA_CHECKS=no ;;
+        *)   as_fn_error $? "bad value ${enableval} for --enable-extra-checks" "$LINENO" 5 ;;
+      esac
+
+else
+
+      if test "x`expr $PACKAGE_VERSION_MINOR % 2`" = "x1" -a "x`expr $PACKAGE_VERSION_MICRO '<' 90`" = "x1"; then
+        EXTRA_CHECKS=yes
+      else
+        EXTRA_CHECKS=no
+      fi
+
+fi
+
+
+    if test "x$EXTRA_CHECKS" = "xyes"; then
+
+$as_echo "#define GST_ENABLE_EXTRA_CHECKS 1" >>confdefs.h
+
+    fi
+
+
 
     # Check whether --enable-debug was given.
 if test "${enable_debug+set}" = set; then :
@@ -25420,7 +25548,7 @@
 fi
 
 
-GLIB_REQ=2.32.0
+GLIB_REQ=2.40.0
 
 
 
@@ -25561,18 +25689,10 @@
 if test "${enable_glib_asserts+set}" = set; then :
   enableval=$enable_glib_asserts; enable_glib_assertions=$enableval
 else
-  enable_glib_assertions=auto
+  enable_glib_assertions=yes
 fi
 
 
-  if test "x$enable_glib_assertions" = "xauto"; then
-        if test "x`expr $PACKAGE_VERSION_MINOR % 2`" = "x1" -a "x`expr $PACKAGE_VERSION_MICRO '<' 90`" = "x1"; then
-      enable_glib_assertions=yes
-    else
-      enable_glib_assertions=no
-    fi
-  fi
-
   if test "x$enable_glib_assertions" = "xno"; then
     GLIB_EXTRA_CFLAGS="$GLIB_EXTRA_CFLAGS -DG_DISABLE_ASSERT"
   fi
@@ -26917,6 +27037,41 @@
 fi
 
 
+# Check whether --enable-Bsymbolic was given.
+if test "${enable_Bsymbolic+set}" = set; then :
+  enableval=$enable_Bsymbolic;
+else
+  SAVED_LDFLAGS="${LDFLAGS}" SAVED_LIBS="${LIBS}"
+               { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Bsymbolic-functions linker flag" >&5
+$as_echo_n "checking for -Bsymbolic-functions linker flag... " >&6; }
+               LDFLAGS=-Wl,-Bsymbolic-functions
+               LIBS=
+               cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+return 0
+  ;
+  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; }
+                           enable_Bsymbolic=yes
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                           enable_Bsymbolic=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+               LDFLAGS="${SAVED_LDFLAGS}" LIBS="${SAVED_LIBS}"
+fi
+
+
 
 HAVE_GTK3=NO
 if test "x$BUILD_EXAMPLES" = "xyes"; then
@@ -28106,8 +28261,8 @@
       if test "xyes" = "xno" -o "xyes" = "x"; then
     GST_PACKAGE_RELEASE_DATETIME=`date -u "+%Y-%m-%dT%H:%MZ"`
   elif test "xyes" = "xyes"; then
-            if ( echo yes | grep '^201-90-9-0-10-9-0-30-9' >/dev/null ) ; then
-      GST_PACKAGE_RELEASE_DATETIME=yes
+            if ( echo  "${srcdir}/gst-plugins-bad.doap"  | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
+      GST_PACKAGE_RELEASE_DATETIME= "${srcdir}/gst-plugins-bad.doap"
     else
             YYYY_MM_DD=`sh "${srcdir}/common/extract-release-date-from-doap-file"  $PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_MICRO   "${srcdir}/gst-plugins-bad.doap" `;
       if test "x$YYYY_MM_DD" != "x"; then
@@ -28118,7 +28273,7 @@
         GST_PACKAGE_RELEASE_DATETIME=""
       fi
     fi
-    elif ( echo yes | grep '^201-90-9-0-10-9-0-30-9' >/dev/null ) ; then
+    elif ( echo yes | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
     GST_PACKAGE_RELEASE_DATETIME=yes
   else
     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: SET_PACKAGE_RELEASE_DATETIME: invalid first argument" >&5
@@ -28145,8 +28300,8 @@
       if test "xno" = "xno" -o "xno" = "x"; then
     GST_PACKAGE_RELEASE_DATETIME=`date -u "+%Y-%m-%dT%H:%MZ"`
   elif test "xno" = "xyes"; then
-            if ( echo no | grep '^201-90-9-0-10-9-0-30-9' >/dev/null ) ; then
-      GST_PACKAGE_RELEASE_DATETIME=no
+            if ( echo  | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
+      GST_PACKAGE_RELEASE_DATETIME=
     else
             YYYY_MM_DD=`sh "${srcdir}/common/extract-release-date-from-doap-file"  `;
       if test "x$YYYY_MM_DD" != "x"; then
@@ -28157,7 +28312,7 @@
         GST_PACKAGE_RELEASE_DATETIME=""
       fi
     fi
-    elif ( echo no | grep '^201-90-9-0-10-9-0-30-9' >/dev/null ) ; then
+    elif ( echo no | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
     GST_PACKAGE_RELEASE_DATETIME=no
   else
     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: SET_PACKAGE_RELEASE_DATETIME: invalid first argument" >&5
@@ -28218,6 +28373,69 @@
 fi
 
 
+
+# Check whether --with-player-tests was given.
+if test "${with_player_tests+set}" = set; then :
+  withval=$with_player_tests;
+fi
+
+if test x$with_player_tests = xyes; then
+  # Extract the first word of "wget", so it can be a program name with args.
+set dummy wget; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_WGET+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $WGET in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_WGET="$WGET" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_WGET="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  test -z "$ac_cv_path_WGET" && ac_cv_path_WGET="no"
+  ;;
+esac
+fi
+WGET=$ac_cv_path_WGET
+if test -n "$WGET"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WGET" >&5
+$as_echo "$WGET" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+  if test x$WGET = xno; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: wget required for GstPlayer tests but not found - disabling" >&5
+$as_echo "$as_me: WARNING: wget required for GstPlayer tests but not found - disabling" >&2;}
+    with_player_tests=no
+  fi
+fi
+ if test "x$with_player_tests" = "xyes"; then
+  WITH_GST_PLAYER_TESTS_TRUE=
+  WITH_GST_PLAYER_TESTS_FALSE='#'
+else
+  WITH_GST_PLAYER_TESTS_TRUE='#'
+  WITH_GST_PLAYER_TESTS_FALSE=
+fi
+
+
 # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above
 NO_WARNINGS=""
 
@@ -28461,93 +28679,6 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
 $as_echo "$flag_ok" >&6; }
 
-
-        if test "x$ERROR_CFLAGS" = "x"
-    then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if compiler understands -errwarn=%all" >&5
-$as_echo_n "checking to see if compiler understands -errwarn=%all... " >&6; }
-
-  save_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -errwarn=%all"
-
-  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="-errwarn=%all"
-                                                                                for f in 'no%E_EMPTY_DECLARATION' \
-                   'no%E_STATEMENT_NOT_REACHED' \
-                   'no%E_ARGUEMENT_MISMATCH' \
-                   'no%E_MACRO_REDEFINED' \
-                   'no%E_LOOP_NOT_ENTERED_AT_TOP'
-          do
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if compiler understands -errwarn=%all,$f" >&5
-$as_echo_n "checking to see if compiler understands -errwarn=%all,$f... " >&6; }
-
-  save_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -errwarn=%all,$f"
-
-  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,$f"
-
-    true
-  else
-
-    true
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-          done
-
-    true
-  else
-
-    true
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-    fi
   fi
 
   if test "x
@@ -28903,122 +29034,6 @@
 
 
 fi
-    else
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if c++ compiler understands -errwarn=%all" >&5
-$as_echo_n "checking to see if c++ compiler understands -errwarn=%all... " >&6; }
-
-  save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS -errwarn=%all"
-
-  ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-  flag_ok=yes
-else
-  flag_ok=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CPPFLAGS="$save_CPPFLAGS"
-
-  if test "X$flag_ok" = Xyes ; then
-    ERROR_CXXFLAGS="$ERROR_CXXFLAGS -errwarn=%all"
-    true
-  else
-
-    true
-  fi
-
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-      if test "x$ERROR_CXXFLAGS" != "x"; then
-                                                                                for f in 'no%E_EMPTY_DECLARATION' \
-                 'no%E_STATEMENT_NOT_REACHED' \
-                 'no%E_ARGUEMENT_MISMATCH' \
-                 'no%E_MACRO_REDEFINED' \
-                 'no%E_LOOP_NOT_ENTERED_AT_TOP'
-        do
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if c++ compiler understands -errwarn=%all,$f" >&5
-$as_echo_n "checking to see if c++ compiler understands -errwarn=%all,$f... " >&6; }
-
-  save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS -errwarn=%all,$f"
-
-  ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-  flag_ok=yes
-else
-  flag_ok=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CPPFLAGS="$save_CPPFLAGS"
-
-  if test "X$flag_ok" = Xyes ; then
-    ERROR_CXXFLAGS="$ERROR_CXXFLAGS,$f"
-    true
-  else
-
-    true
-  fi
-
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-        done
-      fi
     fi
   fi
 
@@ -29337,122 +29352,6 @@
 
 
 fi
-    else
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if Objective C compiler understands -errwarn=%all" >&5
-$as_echo_n "checking to see if Objective C compiler understands -errwarn=%all... " >&6; }
-
-  save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS -errwarn=%all"
-
-  ac_ext=m
-ac_cpp='$OBJCPP $CPPFLAGS'
-ac_compile='$OBJC -c $OBJCFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$OBJC -o conftest$ac_exeext $OBJCFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_objc_compiler_gnu
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_objc_try_compile "$LINENO"; then :
-  flag_ok=yes
-else
-  flag_ok=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CPPFLAGS="$save_CPPFLAGS"
-
-  if test "X$flag_ok" = Xyes ; then
-    ERROR_OBJCFLAGS="$ERROR_OBJCFLAGS -errwarn=%all"
-    true
-  else
-
-    true
-  fi
-
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-      if test "x$ERROR_OBJCFLAGS" != "x"; then
-                                                                                for f in 'no%E_EMPTY_DECLARATION' \
-                 'no%E_STATEMENT_NOT_REACHED' \
-                 'no%E_ARGUEMENT_MISMATCH' \
-                 'no%E_MACRO_REDEFINED' \
-                 'no%E_LOOP_NOT_ENTERED_AT_TOP'
-        do
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if Objective C compiler understands -errwarn=%all,$f" >&5
-$as_echo_n "checking to see if Objective C compiler understands -errwarn=%all,$f... " >&6; }
-
-  save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS -errwarn=%all,$f"
-
-  ac_ext=m
-ac_cpp='$OBJCPP $CPPFLAGS'
-ac_compile='$OBJC -c $OBJCFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$OBJC -o conftest$ac_exeext $OBJCFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_objc_compiler_gnu
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_objc_try_compile "$LINENO"; then :
-  flag_ok=yes
-else
-  flag_ok=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CPPFLAGS="$save_CPPFLAGS"
-
-  if test "X$flag_ok" = Xyes ; then
-    ERROR_OBJCFLAGS="$ERROR_OBJCFLAGS,$f"
-    true
-  else
-
-    true
-  fi
-
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag_ok" >&5
-$as_echo "$flag_ok" >&6; }
-
-        done
-      fi
     fi
   fi
 
@@ -29702,8 +29601,8 @@
  apexsink dc1394 \
  gsettings \
  musepack nas sdl timidity \
- acm wininet \
- xvid lv2 teletextdec sndio libvisual"
+ wininet \
+ xvid lv2 sndio libvisual"
 
 
 
@@ -29879,6 +29778,49 @@
 
 
 
+  GST_PLUGINS_ALL="$GST_PLUGINS_ALL videoframe_audiolevel"
+
+
+
+  # Check whether --enable-videoframe_audiolevel was given.
+if test "${enable_videoframe_audiolevel+set}" = set; then :
+  enableval=$enable_videoframe_audiolevel;
+      case "${enableval}" in
+        yes) gst_use_videoframe_audiolevel=yes ;;
+        no) gst_use_videoframe_audiolevel=no ;;
+        *) as_fn_error $? "bad value ${enableval} for --enable-videoframe_audiolevel" "$LINENO" 5 ;;
+       esac
+
+else
+  gst_use_videoframe_audiolevel=yes
+fi
+
+  if test x$gst_use_videoframe_audiolevel = xno; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: disabling dependency-less plugin videoframe_audiolevel" >&5
+$as_echo "$as_me: disabling dependency-less plugin videoframe_audiolevel" >&6;}
+    WITHOUT_PLUGINS="$WITHOUT_PLUGINS videoframe_audiolevel"
+  fi
+
+
+    if [ -z "$WITH_PLUGINS" ] || echo " $WITH_PLUGINS " | tr , ' ' | grep -i " videoframe_audiolevel " > /dev/null; then
+    GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED videoframe_audiolevel"
+  fi
+    if echo " $WITHOUT_PLUGINS " | tr , ' ' | grep -i " videoframe_audiolevel " > /dev/null; then
+    GST_PLUGINS_SELECTED=`echo " $GST_PLUGINS_SELECTED " | $SED -e 's/ videoframe_audiolevel / /'`
+  fi
+    if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " videoframe_audiolevel " > /dev/null; then
+    GST_PLUGINS_SELECTED=`echo " $GST_PLUGINS_SELECTED " | $SED -e 's/ videoframe_audiolevel / /'`
+  fi
+   if echo " $GST_PLUGINS_SELECTED " | grep -i " videoframe_audiolevel " > /dev/null; then
+  USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_TRUE=
+  USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_FALSE='#'
+else
+  USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_TRUE='#'
+  USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_FALSE=
+fi
+
+
+
   GST_PLUGINS_ALL="$GST_PLUGINS_ALL asfmux"
 
 
@@ -31255,49 +31197,6 @@
 
 
 
-  GST_PLUGINS_ALL="$GST_PLUGINS_ALL liveadder"
-
-
-
-  # Check whether --enable-liveadder was given.
-if test "${enable_liveadder+set}" = set; then :
-  enableval=$enable_liveadder;
-      case "${enableval}" in
-        yes) gst_use_liveadder=yes ;;
-        no) gst_use_liveadder=no ;;
-        *) as_fn_error $? "bad value ${enableval} for --enable-liveadder" "$LINENO" 5 ;;
-       esac
-
-else
-  gst_use_liveadder=yes
-fi
-
-  if test x$gst_use_liveadder = xno; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: disabling dependency-less plugin liveadder" >&5
-$as_echo "$as_me: disabling dependency-less plugin liveadder" >&6;}
-    WITHOUT_PLUGINS="$WITHOUT_PLUGINS liveadder"
-  fi
-
-
-    if [ -z "$WITH_PLUGINS" ] || echo " $WITH_PLUGINS " | tr , ' ' | grep -i " liveadder " > /dev/null; then
-    GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED liveadder"
-  fi
-    if echo " $WITHOUT_PLUGINS " | tr , ' ' | grep -i " liveadder " > /dev/null; then
-    GST_PLUGINS_SELECTED=`echo " $GST_PLUGINS_SELECTED " | $SED -e 's/ liveadder / /'`
-  fi
-    if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " liveadder " > /dev/null; then
-    GST_PLUGINS_SELECTED=`echo " $GST_PLUGINS_SELECTED " | $SED -e 's/ liveadder / /'`
-  fi
-   if echo " $GST_PLUGINS_SELECTED " | grep -i " liveadder " > /dev/null; then
-  USE_PLUGIN_LIVEADDER_TRUE=
-  USE_PLUGIN_LIVEADDER_FALSE='#'
-else
-  USE_PLUGIN_LIVEADDER_TRUE='#'
-  USE_PLUGIN_LIVEADDER_FALSE=
-fi
-
-
-
   GST_PLUGINS_ALL="$GST_PLUGINS_ALL midi"
 
 
@@ -33107,6 +33006,102 @@
   *)
     if test "x$NEED_GL" != "xno"; then
 
+  which="gl"
+    required="no"
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL" >&5
+$as_echo_n "checking for GL... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GL_CFLAGS"; then
+        pkg_cv_GL_CFLAGS="$GL_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GL_CFLAGS=`$PKG_CONFIG --cflags "$which" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GL_LIBS"; then
+        pkg_cv_GL_LIBS="$GL_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GL_LIBS=`$PKG_CONFIG --libs "$which" 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
+	        GL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$which"`
+        else
+	        GL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$which"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$GL_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+      HAVE_GL="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GL_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GL_PKG_ERRORS" >&5
+$as_echo "$as_me: $GL_PKG_ERRORS" >&6;}
+      fi
+
+elif test $pkg_failed = untried; then
+
+      HAVE_GL="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GL_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GL_PKG_ERRORS" >&5
+$as_echo "$as_me: $GL_PKG_ERRORS" >&6;}
+      fi
+
+else
+	GL_CFLAGS=$pkg_cv_GL_CFLAGS
+	GL_LIBS=$pkg_cv_GL_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+      HAVE_GL="yes"
+
+fi
+
+
+      if test "x$HAVE_GL" != "xyes"; then
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for glTexImage2D in -lGL" >&5
 $as_echo_n "checking for glTexImage2D in -lGL... " >&6; }
 if ${ac_cv_lib_GL_glTexImage2D+:} false; then :
@@ -33169,9 +33164,106 @@
 
 
 
+      fi
     fi
     if test "x$NEED_GLES2" != "xno"; then
 
+  which="glesv2"
+    required="no"
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLES2" >&5
+$as_echo_n "checking for GLES2... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GLES2_CFLAGS"; then
+        pkg_cv_GLES2_CFLAGS="$GLES2_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GLES2_CFLAGS=`$PKG_CONFIG --cflags "$which" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GLES2_LIBS"; then
+        pkg_cv_GLES2_LIBS="$GLES2_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GLES2_LIBS=`$PKG_CONFIG --libs "$which" 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
+	        GLES2_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$which"`
+        else
+	        GLES2_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$which"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$GLES2_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+      HAVE_GLES2="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GLES2_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GLES2_PKG_ERRORS" >&5
+$as_echo "$as_me: $GLES2_PKG_ERRORS" >&6;}
+      fi
+
+elif test $pkg_failed = untried; then
+
+      HAVE_GLES2="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GLES2_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GLES2_PKG_ERRORS" >&5
+$as_echo "$as_me: $GLES2_PKG_ERRORS" >&6;}
+      fi
+
+else
+	GLES2_CFLAGS=$pkg_cv_GLES2_CFLAGS
+	GLES2_LIBS=$pkg_cv_GLES2_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+      HAVE_GLES2="yes"
+
+fi
+
+
+      if test "x$HAVE_GLES2" != "xyes"; then
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for glTexImage2D in -lGLESv2" >&5
 $as_echo_n "checking for glTexImage2D in -lGLESv2... " >&6; }
 if ${ac_cv_lib_GLESv2_glTexImage2D+:} false; then :
@@ -33234,9 +33326,106 @@
 
 
 
+      fi
     fi
     if test "x$NEED_EGL" != "xno"; then
 
+  which="egl"
+    required="no"
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for EGL" >&5
+$as_echo_n "checking for EGL... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$EGL_CFLAGS"; then
+        pkg_cv_EGL_CFLAGS="$EGL_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_EGL_CFLAGS=`$PKG_CONFIG --cflags "$which" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$EGL_LIBS"; then
+        pkg_cv_EGL_LIBS="$EGL_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_EGL_LIBS=`$PKG_CONFIG --libs "$which" 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
+	        EGL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$which"`
+        else
+	        EGL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$which"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$EGL_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+      HAVE_EGL="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$EGL_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $EGL_PKG_ERRORS" >&5
+$as_echo "$as_me: $EGL_PKG_ERRORS" >&6;}
+      fi
+
+elif test $pkg_failed = untried; then
+
+      HAVE_EGL="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$EGL_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $EGL_PKG_ERRORS" >&5
+$as_echo "$as_me: $EGL_PKG_ERRORS" >&6;}
+      fi
+
+else
+	EGL_CFLAGS=$pkg_cv_EGL_CFLAGS
+	EGL_LIBS=$pkg_cv_EGL_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+      HAVE_EGL="yes"
+
+fi
+
+
+      if test "x$HAVE_EGL" != "xyes"; then
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for eglGetError in -lEGL" >&5
 $as_echo_n "checking for eglGetError in -lEGL... " >&6; }
 if ${ac_cv_lib_EGL_eglGetError+:} false; then :
@@ -33299,6 +33488,7 @@
 
 
 
+      fi
     fi
 
     old_LIBS=$LIBS
@@ -33745,8 +33935,120 @@
   fi
 fi
 
+HAVE_DRM_FOURCC_HEADER=no
+ac_fn_c_check_header_mongrel "$LINENO" "libdrm/drm_fourcc.h" "ac_cv_header_libdrm_drm_fourcc_h" "$ac_includes_default"
+if test "x$ac_cv_header_libdrm_drm_fourcc_h" = xyes; then :
+  HAVE_DRM_FOURCC_HEADER=yes
+fi
+
+
+
+HAVE_GST_ALLOCATORS=no
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GST_ALLOCATORS" >&5
+$as_echo_n "checking for GST_ALLOCATORS... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GST_ALLOCATORS_CFLAGS"; then
+        pkg_cv_GST_ALLOCATORS_CFLAGS="$GST_ALLOCATORS_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-allocators-1.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gstreamer-allocators-1.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GST_ALLOCATORS_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-allocators-1.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GST_ALLOCATORS_LIBS"; then
+        pkg_cv_GST_ALLOCATORS_LIBS="$GST_ALLOCATORS_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-allocators-1.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gstreamer-allocators-1.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GST_ALLOCATORS_LIBS=`$PKG_CONFIG --libs "gstreamer-allocators-1.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
+	        GST_ALLOCATORS_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gstreamer-allocators-1.0"`
+        else
+	        GST_ALLOCATORS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gstreamer-allocators-1.0"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$GST_ALLOCATORS_PKG_ERRORS" >&5
+
+	as_fn_error $? "Package requirements (gstreamer-allocators-1.0) were not met:
+
+$GST_ALLOCATORS_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+Alternatively, you may set the environment variables GST_ALLOCATORS_CFLAGS
+and GST_ALLOCATORS_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+" "$LINENO" 5
+elif test $pkg_failed = untried; then
+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+Alternatively, you may set the environment variables GST_ALLOCATORS_CFLAGS
+and GST_ALLOCATORS_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+See \`config.log' for more details" "$LINENO" 5; }
+else
+	GST_ALLOCATORS_CFLAGS=$pkg_cv_GST_ALLOCATORS_CFLAGS
+	GST_ALLOCATORS_LIBS=$pkg_cv_GST_ALLOCATORS_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	HAVE_GST_ALLOCATORS=yes
+fi
+
+if test "x$HAVE_DRM_FOURCC_HEADER" = "xyes" -a \
+        "x$HAVE_GST_ALLOCATORS" = "xyes" -a \
+        "x$HAVE_EGL" = "xyes"; then
+
+$as_echo "#define GST_GL_HAVE_DMABUF 1 " >>confdefs.h
+
+fi
+
 if test "x$HAVE_GL" = "xyes" -a "x$HAVE_GLES2" = "xyes"; then
   GL_INCLUDES="
+#ifdef __GNUC__
+#  pragma GCC diagnostic push
+#  pragma GCC diagnostic ignored \"-Wredundant-decls\"
+#endif
 #ifndef GL_GLEXT_PROTOTYPES
 #define GL_GLEXT_PROTOTYPES 1
 #endif
@@ -33770,25 +34072,15 @@
 #   include <GL/glext.h>
 #  endif
 # endif
+int main (int argc, char **argv) { return 0; }
 "
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is possible to include both GL and GLES2 headers" >&5
 $as_echo_n "checking whether it is possible to include both GL and GLES2 headers... " >&6; }
-  save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS $ERROR_CFLAGS"
+  save_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS $GL_CFLAGS $GLES2_CFLAGS $WARNING_CFLAGS $ERROR_CFLAGS"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $GL_INCLUDES
-int
-main ()
-{
-
-    #if !defined(GL_FALSE)
-    #error Failed to include GL headers
-    #endif
-
-  ;
-  return 0;
-}
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
@@ -33813,7 +34105,7 @@
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CPPFLAGS="$save_CPPFLAGS"
+  CFLAGS="$save_CFLAGS"
 fi
 
 #dnl Check for OpenGL
@@ -36601,6 +36893,1056 @@
 
 
 
+echo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: NVIDIA Encode API ***" >&5
+$as_echo "$as_me: *** checking feature: NVIDIA Encode API ***" >&6;}
+if test "xnvenc" != "x"
+then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: *** for plug-ins: nvenc ***" >&5
+$as_echo "$as_me: *** for plug-ins: nvenc ***" >&6;}
+fi
+NOUSE=
+if test "x$USE_NVENC" = "xno"; then
+  NOUSE="yes"
+fi
+# Check whether --enable-nvenc was given.
+if test "${enable_nvenc+set}" = set; then :
+  enableval=$enable_nvenc;  case "${enableval}" in
+      yes) USE_NVENC=yes;;
+      no) USE_NVENC=no;;
+      *) as_fn_error $? "bad value ${enableval} for --enable-nvenc" "$LINENO" 5 ;;
+    esac
+else
+   USE_NVENC=yes
+fi
+
+if test "x$NOUSE" = "xyes"; then
+  USE_NVENC="no"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** nvenc pre-configured not to be built" >&5
+$as_echo "$as_me: WARNING: *** nvenc pre-configured not to be built" >&2;}
+fi
+NOUSE=
+
+if echo " $GST_PLUGINS_NONPORTED " | tr , ' ' | grep -i " NVENC " > /dev/null; then
+  USE_NVENC="no"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** nvenc not ported" >&5
+$as_echo "$as_me: WARNING: *** nvenc not ported" >&2;}
+fi
+
+
+if test x$USE_NVENC = xyes; then
+
+  gst_check_save_LIBS=$LIBS
+  gst_check_save_LDFLAGS=$LDFLAGS
+  gst_check_save_CFLAGS=$CFLAGS
+  gst_check_save_CPPFLAGS=$CPPFLAGS
+  gst_check_save_CXXFLAGS=$CXXFLAGS
+
+  HAVE_NVENC=no
+
+
+  which="gstreamer-video-1.0"
+    required="no"
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GST_VIDEO" >&5
+$as_echo_n "checking for GST_VIDEO... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GST_VIDEO_CFLAGS"; then
+        pkg_cv_GST_VIDEO_CFLAGS="$GST_VIDEO_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GST_VIDEO_CFLAGS=`$PKG_CONFIG --cflags "$which" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GST_VIDEO_LIBS"; then
+        pkg_cv_GST_VIDEO_LIBS="$GST_VIDEO_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GST_VIDEO_LIBS=`$PKG_CONFIG --libs "$which" 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
+	        GST_VIDEO_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$which"`
+        else
+	        GST_VIDEO_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$which"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$GST_VIDEO_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+      HAVE_GST_VIDEO="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GST_VIDEO_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GST_VIDEO_PKG_ERRORS" >&5
+$as_echo "$as_me: $GST_VIDEO_PKG_ERRORS" >&6;}
+      fi
+
+elif test $pkg_failed = untried; then
+
+      HAVE_GST_VIDEO="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GST_VIDEO_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GST_VIDEO_PKG_ERRORS" >&5
+$as_echo "$as_me: $GST_VIDEO_PKG_ERRORS" >&6;}
+      fi
+
+else
+	GST_VIDEO_CFLAGS=$pkg_cv_GST_VIDEO_CFLAGS
+	GST_VIDEO_LIBS=$pkg_cv_GST_VIDEO_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+      HAVE_GST_VIDEO="yes"
+
+fi
+
+
+
+  which="gstreamer-pbutils-1.0"
+    required="no"
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GST_PBUTILS" >&5
+$as_echo_n "checking for GST_PBUTILS... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GST_PBUTILS_CFLAGS"; then
+        pkg_cv_GST_PBUTILS_CFLAGS="$GST_PBUTILS_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GST_PBUTILS_CFLAGS=`$PKG_CONFIG --cflags "$which" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GST_PBUTILS_LIBS"; then
+        pkg_cv_GST_PBUTILS_LIBS="$GST_PBUTILS_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$which\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "$which") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GST_PBUTILS_LIBS=`$PKG_CONFIG --libs "$which" 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
+	        GST_PBUTILS_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$which"`
+        else
+	        GST_PBUTILS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$which"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$GST_PBUTILS_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+      HAVE_GST_PBUTILS="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GST_PBUTILS_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GST_PBUTILS_PKG_ERRORS" >&5
+$as_echo "$as_me: $GST_PBUTILS_PKG_ERRORS" >&6;}
+      fi
+
+elif test $pkg_failed = untried; then
+
+      HAVE_GST_PBUTILS="no"
+      if test "x$required" = "xyes"; then
+        as_fn_error $? "$GST_PBUTILS_PKG_ERRORS" "$LINENO" 5
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: $GST_PBUTILS_PKG_ERRORS" >&5
+$as_echo "$as_me: $GST_PBUTILS_PKG_ERRORS" >&6;}
+      fi
+
+else
+	GST_PBUTILS_CFLAGS=$pkg_cv_GST_PBUTILS_CFLAGS
+	GST_PBUTILS_LIBS=$pkg_cv_GST_PBUTILS_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+      HAVE_GST_PBUTILS="yes"
+
+fi
+
+
+
+# Check whether --with-cuda-prefix was given.
+if test "${with_cuda_prefix+set}" = set; then :
+  withval=$with_cuda_prefix; if test "x$with_cuda_prefix" != "x"; then :
+  CUDA_PREFIX="$with_cuda_prefix"
+fi
+else
+  CUDA_PREFIX=""
+fi
+
+
+  HAVE_CUDA="yes"
+  if test "x$CUDA_PREFIX" != "x"; then
+        if test "x$CUDA_CFLAGS" = "x" -a "x$CUDA_LIBS" = "x"; then
+            CUDA_CFLAGS="-I$CUDA_PREFIX/include"
+      CUDA_LIBS="-L$CUDA_PREFIX/lib -L$CUDA_PREFIX/lib64 -L$CUDA_PREFIX/lib/stubs -L$CUDA_PREFIX/lib64/stubs -lcuda -lcudart"
+    fi
+  else
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-7.5 cudart-7.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-7.5 cudart-7.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-7.5 cudart-7.5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-7.5 cudart-7.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-7.5 cudart-7.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-7.5 cudart-7.5" 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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-7.5 cudart-7.5"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-7.5 cudart-7.5"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-7.0 cudart-7.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-7.0 cudart-7.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-7.0 cudart-7.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-7.0 cudart-7.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-7.0 cudart-7.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-7.0 cudart-7.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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-7.0 cudart-7.0"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-7.0 cudart-7.0"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-6.5 cudart-6.5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-6.5 cudart-6.5" 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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+elif test $pkg_failed = untried; then
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+elif test $pkg_failed = untried; then
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-6.5 cudart-6.5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-6.5 cudart-6.5" 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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+elif test $pkg_failed = untried; then
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+elif test $pkg_failed = untried; then
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-7.0 cudart-7.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-7.0 cudart-7.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-7.0 cudart-7.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-7.0 cudart-7.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-7.0 cudart-7.0") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-7.0 cudart-7.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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-7.0 cudart-7.0"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-7.0 cudart-7.0"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-6.5 cudart-6.5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-6.5 cudart-6.5" 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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+elif test $pkg_failed = untried; then
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+elif test $pkg_failed = untried; then
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CUDA" >&5
+$as_echo_n "checking for CUDA... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_CFLAGS"; then
+        pkg_cv_CUDA_CFLAGS="$CUDA_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_CFLAGS=`$PKG_CONFIG --cflags "cuda-6.5 cudart-6.5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$CUDA_LIBS"; then
+        pkg_cv_CUDA_LIBS="$CUDA_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cuda-6.5 cudart-6.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "cuda-6.5 cudart-6.5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_CUDA_LIBS=`$PKG_CONFIG --libs "cuda-6.5 cudart-6.5" 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
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        else
+	        CUDA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cuda-6.5 cudart-6.5"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$CUDA_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+elif test $pkg_failed = untried; then
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda headers/libraries" >&5
+$as_echo "$as_me: WARNING: Could not find cuda headers/libraries" >&2;}
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+else
+	CUDA_CFLAGS=$pkg_cv_CUDA_CFLAGS
+	CUDA_LIBS=$pkg_cv_CUDA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	:
+fi
+  fi
+
+  HAVE_CUDA_H=no
+  HAVE_CUDART_H=no
+  save_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$CUDA_CFLAGS $save_CPPFLAGS "
+  ac_fn_c_check_header_mongrel "$LINENO" "cuda.h" "ac_cv_header_cuda_h" "$ac_includes_default"
+if test "x$ac_cv_header_cuda_h" = xyes; then :
+  HAVE_CUDA_H=yes
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda.h" >&5
+$as_echo "$as_me: WARNING: Could not find cuda.h" >&2;}
+fi
+
+
+  ac_fn_c_check_header_mongrel "$LINENO" "cuda_runtime_api.h" "ac_cv_header_cuda_runtime_api_h" "$ac_includes_default"
+if test "x$ac_cv_header_cuda_runtime_api_h" = xyes; then :
+  HAVE_CUDART_H=yes
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda_runtime_api.h" >&5
+$as_echo "$as_me: WARNING: Could not find cuda_runtime_api.h" >&2;}
+fi
+
+
+  CPPFLAGS=$save_CPPFLAGS
+
+    save_LIBS="$LIBS"
+  LIBS="$CUDA_LIBS $save_LIBS"
+  HAVE_CUDART_LIB="no"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cudaGetErrorString in -lcudart" >&5
+$as_echo_n "checking for cudaGetErrorString in -lcudart... " >&6; }
+if ${ac_cv_lib_cudart_cudaGetErrorString+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcudart  $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 cudaGetErrorString ();
+int
+main ()
+{
+return cudaGetErrorString ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_cudart_cudaGetErrorString=yes
+else
+  ac_cv_lib_cudart_cudaGetErrorString=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_cudart_cudaGetErrorString" >&5
+$as_echo "$ac_cv_lib_cudart_cudaGetErrorString" >&6; }
+if test "x$ac_cv_lib_cudart_cudaGetErrorString" = xyes; then :
+  HAVE_CUDART_LIB="yes"
+else
+
+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cudart library" >&5
+$as_echo "$as_me: WARNING: Could not find cudart library" >&2;}
+fi
+
+  HAVE_CUDA_LIB="no"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cuInit in -lcuda" >&5
+$as_echo_n "checking for cuInit in -lcuda... " >&6; }
+if ${ac_cv_lib_cuda_cuInit+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcuda  $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 cuInit ();
+int
+main ()
+{
+return cuInit ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_cuda_cuInit=yes
+else
+  ac_cv_lib_cuda_cuInit=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_cuda_cuInit" >&5
+$as_echo "$ac_cv_lib_cuda_cuInit" >&6; }
+if test "x$ac_cv_lib_cuda_cuInit" = xyes; then :
+  HAVE_CUDA_LIB="yes"
+else
+
+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find cuda library" >&5
+$as_echo "$as_me: WARNING: Could not find cuda library" >&2;}
+fi
+
+  LIBS="$save_LIBS"
+
+    HAVE_NVENCODEAPI_H=no
+
+  save_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$NVENCODE_CFLAGS $save_CPPFLAGS"
+  ac_fn_c_check_header_mongrel "$LINENO" "nvEncodeAPI.h" "ac_cv_header_nvEncodeAPI_h" "$ac_includes_default"
+if test "x$ac_cv_header_nvEncodeAPI_h" = xyes; then :
+
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <nvEncodeAPI.h>
+          #if NVENCAPI_MAJOR_VERSION < 5
+          #error "Need nvEncodeAPI.h >= 5.0"
+          #endif
+
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+          HAVE_NVENCODEAPI_H=yes
+
+else
+
+          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: nvEncodeAPI.h must be >= 5.0" >&5
+$as_echo "$as_me: WARNING: nvEncodeAPI.h must be >= 5.0" >&2;}
+
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find nvEncodeAPI.h" >&5
+$as_echo "$as_me: WARNING: Could not find nvEncodeAPI.h" >&2;}
+fi
+
+
+
+  CPPFLAGS="$save_CPPFLAGS"
+
+    HAVE_NVENCODE_LIB=no
+
+  saved_LIBS="$LIBS"
+  LIBS="$NVENCODE_LIBS $saved_LIBS"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for NvEncodeAPICreateInstance in -lnvidia-encode" >&5
+$as_echo_n "checking for NvEncodeAPICreateInstance in -lnvidia-encode... " >&6; }
+if ${ac_cv_lib_nvidia_encode_NvEncodeAPICreateInstance+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnvidia-encode  $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 NvEncodeAPICreateInstance ();
+int
+main ()
+{
+return NvEncodeAPICreateInstance ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_nvidia_encode_NvEncodeAPICreateInstance=yes
+else
+  ac_cv_lib_nvidia_encode_NvEncodeAPICreateInstance=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_nvidia_encode_NvEncodeAPICreateInstance" >&5
+$as_echo "$ac_cv_lib_nvidia_encode_NvEncodeAPICreateInstance" >&6; }
+if test "x$ac_cv_lib_nvidia_encode_NvEncodeAPICreateInstance" = xyes; then :
+  HAVE_NVENCODE_LIB="yes"
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find library nvidia-encode" >&5
+$as_echo "$as_me: WARNING: Could not find library nvidia-encode" >&2;}
+fi
+
+  NVENCODE_LIBS="$NVENCODE_LIBS -lnvidia-encode"
+
+  LIBS="$saved_LIBS"
+
+  USE_NVENC_GST_GL=no
+  if test "x$HAVE_CUDA_H" = "xyes" \
+      -a "x$HAVE_CUDART_H" = "xyes" \
+      -a "x$HAVE_CUDA_LIB" = "xyes" \
+      -a "x$HAVE_CUDART_LIB" = "xyes" \
+      -a "x$HAVE_NVENCODEAPI_H" = "xyes" \
+      -a "x$HAVE_NVENCODE_LIB" = "xyes"; then
+    HAVE_NVENC="yes"
+    if test x"$USE_OPENGL" = x"yes"; then
+            save_CPPFLAGS="$CPPFLAGS"
+      CPPFLAGS="$save_CPPFLAGS $CUDA_CFLAGS"
+      ac_fn_c_check_header_mongrel "$LINENO" "cuda_gl_interop.h" "ac_cv_header_cuda_gl_interop_h" "$ac_includes_default"
+if test "x$ac_cv_header_cuda_gl_interop_h" = xyes; then :
+
+        USE_NVENC_GST_GL="yes"
+
+$as_echo "#define HAVE_NVENC_GST_GL 1 " >>confdefs.h
+
+
+fi
+
+
+      CPPFLAGS="$save_CPPFLAGS"
+    fi
+  else
+    HAVE_NVENC="no"
+  fi
+
+
+  LIBS=$gst_check_save_LIBS
+  LDFLAGS=$gst_check_save_LDFLAGS
+  CFLAGS=$gst_check_save_CFLAGS
+  CPPFLAGS=$gst_check_save_CPPFLAGS
+  CXXFLAGS=$gst_check_save_CXXFLAGS
+
+    if test x$HAVE_NVENC = xno; then
+    USE_NVENC=no
+  else
+    { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will be built: nvenc" >&5
+$as_echo "$as_me: *** These plugins will be built: nvenc" >&6;}
+  fi
+fi
+if test x$USE_NVENC = xyes; then
+  :
+  if test "xnvenc" != "x"; then
+    GST_PLUGINS_YES="\tnvenc\n$GST_PLUGINS_YES"
+  fi
+
+$as_echo "#define HAVE_NVENC /**/" >>confdefs.h
+
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: *** These plugins will not be built: nvenc" >&5
+$as_echo "$as_me: *** These plugins will not be built: nvenc" >&6;}
+  if test "xnvenc" != "x"; then
+    GST_PLUGINS_NO="\tnvenc\n$GST_PLUGINS_NO"
+  fi
+  :
+fi
+ if test x$USE_NVENC = xyes; then
+  USE_NVENC_TRUE=
+  USE_NVENC_FALSE='#'
+else
+  USE_NVENC_TRUE='#'
+  USE_NVENC_FALSE=
+fi
+
+
+ if test "x$USE_NVENC_GST_GL" = "xyes"; then
+  USE_NVENC_GST_GL_TRUE=
+  USE_NVENC_GST_GL_FALSE='#'
+else
+  USE_NVENC_GST_GL_TRUE='#'
+  USE_NVENC_GST_GL_FALSE=
+fi
+
 
 
 if test "x$BUILD_EXTERNAL" = "xyes"; then
@@ -36662,12 +38004,12 @@
         pkg_cv_ASSRENDER_CFLAGS="$ASSRENDER_CFLAGS"
     else
         if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libass >= 0.9.4\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "libass >= 0.9.4") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libass >= 0.10.2\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "libass >= 0.10.2") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_ASSRENDER_CFLAGS=`$PKG_CONFIG --cflags "libass >= 0.9.4" 2>/dev/null`
+  pkg_cv_ASSRENDER_CFLAGS=`$PKG_CONFIG --cflags "libass >= 0.10.2" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -36680,12 +38022,12 @@
         pkg_cv_ASSRENDER_LIBS="$ASSRENDER_LIBS"
     else
         if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libass >= 0.9.4\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "libass >= 0.9.4") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libass >= 0.10.2\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "libass >= 0.10.2") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_ASSRENDER_LIBS=`$PKG_CONFIG --libs "libass >= 0.9.4" 2>/dev/null`
+  pkg_cv_ASSRENDER_LIBS=`$PKG_CONFIG --libs "libass >= 0.10.2" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -36704,9 +38046,9 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        ASSRENDER_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libass >= 0.9.4"`
+	        ASSRENDER_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libass >= 0.10.2"`
         else
-	        ASSRENDER_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libass >= 0.9.4"`
+	        ASSRENDER_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libass >= 0.10.2"`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$ASSRENDER_PKG_ERRORS" >&5
@@ -46923,12 +48265,12 @@
         pkg_cv_QT_CFLAGS="$QT_CFLAGS"
     else
         if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5Core Qt5Gui Qt5Quick >= 5.4.0\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "Qt5Core Qt5Gui Qt5Quick >= 5.4.0") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_QT_CFLAGS=`$PKG_CONFIG --cflags "Qt5Core Qt5Gui Qt5Quick >= 5.4.0" 2>/dev/null`
+  pkg_cv_QT_CFLAGS=`$PKG_CONFIG --cflags "Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -46941,12 +48283,12 @@
         pkg_cv_QT_LIBS="$QT_LIBS"
     else
         if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5Core Qt5Gui Qt5Quick >= 5.4.0\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "Qt5Core Qt5Gui Qt5Quick >= 5.4.0") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_QT_LIBS=`$PKG_CONFIG --libs "Qt5Core Qt5Gui Qt5Quick >= 5.4.0" 2>/dev/null`
+  pkg_cv_QT_LIBS=`$PKG_CONFIG --libs "Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -46965,9 +48307,9 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        QT_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "Qt5Core Qt5Gui Qt5Quick >= 5.4.0"`
+	        QT_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0"`
         else
-	        QT_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "Qt5Core Qt5Gui Qt5Quick >= 5.4.0"`
+	        QT_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0"`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$QT_PKG_ERRORS" >&5
@@ -47298,6 +48640,264 @@
 
 fi
         fi
+        if test "x$GST_GL_HAVE_WINDOW_ANDROID" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for QT_ANDROID" >&5
+$as_echo_n "checking for QT_ANDROID... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$QT_ANDROID_CFLAGS"; then
+        pkg_cv_QT_ANDROID_CFLAGS="$QT_ANDROID_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5AndroidExtras\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "Qt5AndroidExtras") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_QT_ANDROID_CFLAGS=`$PKG_CONFIG --cflags "Qt5AndroidExtras" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$QT_ANDROID_LIBS"; then
+        pkg_cv_QT_ANDROID_LIBS="$QT_ANDROID_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5AndroidExtras\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "Qt5AndroidExtras") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_QT_ANDROID_LIBS=`$PKG_CONFIG --libs "Qt5AndroidExtras" 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
+	        QT_ANDROID_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "Qt5AndroidExtras"`
+        else
+	        QT_ANDROID_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "Qt5AndroidExtras"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$QT_ANDROID_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Qt Android integration" >&5
+$as_echo "$as_me: Could not find Qt Android integration" >&6;}
+elif test $pkg_failed = untried; then
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Qt Android integration" >&5
+$as_echo "$as_me: Could not find Qt Android integration" >&6;}
+else
+	QT_ANDROID_CFLAGS=$pkg_cv_QT_ANDROID_CFLAGS
+	QT_ANDROID_LIBS=$pkg_cv_QT_ANDROID_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+            # c++ on android requires a standard library and there are multiple
+            # choices.  cerbero provides a pkg-config file the describes a choice
+            # so try to use that.  Outside cerbero one has to pass these flags
+            # manually for the library one is using
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNUSTL" >&5
+$as_echo_n "checking for GNUSTL... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GNUSTL_CFLAGS"; then
+        pkg_cv_GNUSTL_CFLAGS="$GNUSTL_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnustl\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gnustl") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GNUSTL_CFLAGS=`$PKG_CONFIG --cflags "gnustl" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$GNUSTL_LIBS"; then
+        pkg_cv_GNUSTL_LIBS="$GNUSTL_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnustl\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gnustl") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GNUSTL_LIBS=`$PKG_CONFIG --libs "gnustl" 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
+	        GNUSTL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gnustl"`
+        else
+	        GNUSTL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gnustl"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$GNUSTL_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+              { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Standard C++ library" >&5
+$as_echo "$as_me: Could not find Standard C++ library" >&6;}
+elif test $pkg_failed = untried; then
+
+              { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Standard C++ library" >&5
+$as_echo "$as_me: Could not find Standard C++ library" >&6;}
+else
+	GNUSTL_CFLAGS=$pkg_cv_GNUSTL_CFLAGS
+	GNUSTL_LIBS=$pkg_cv_GNUSTL_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+              QT_CFLAGS="$QT_CFLAGS $GNUSTL_CFLAGS"
+              QT_LIBS="$QT_CFLAGS $GNUSTL_LIBS"
+
+fi
+
+
+$as_echo "#define HAVE_QT_ANDROID /**/" >>confdefs.h
+
+            QT_CFLAGS="$QT_CFLAGS $QT_ANDROID_CFLAGS"
+            QT_LIBS="$QT_LIBS $QT_ANDROID_LIBS"
+            HAVE_QT_WINDOWING="yes"
+
+fi
+        fi
+        if test "x$GST_GL_HAVE_WINDOW_COCOA" = "x1" -a "x$GST_GL_HAVE_PLATFORM_CGL" = "x1"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for QT_MAC" >&5
+$as_echo_n "checking for QT_MAC... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$QT_MAC_CFLAGS"; then
+        pkg_cv_QT_MAC_CFLAGS="$QT_MAC_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5MacExtras\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "Qt5MacExtras") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_QT_MAC_CFLAGS=`$PKG_CONFIG --cflags "Qt5MacExtras" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$QT_MAC_LIBS"; then
+        pkg_cv_QT_MAC_LIBS="$QT_MAC_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"Qt5MacExtras\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "Qt5MacExtras") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_QT_MAC_LIBS=`$PKG_CONFIG --libs "Qt5MacExtras" 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
+	        QT_MAC_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "Qt5MacExtras"`
+        else
+	        QT_MAC_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "Qt5MacExtras"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$QT_MAC_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Qt Mac integration" >&5
+$as_echo "$as_me: Could not find Qt Mac integration" >&6;}
+elif test $pkg_failed = untried; then
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Qt Mac integration" >&5
+$as_echo "$as_me: Could not find Qt Mac integration" >&6;}
+else
+	QT_MAC_CFLAGS=$pkg_cv_QT_MAC_CFLAGS
+	QT_MAC_LIBS=$pkg_cv_QT_MAC_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+
+$as_echo "#define HAVE_QT_MAC /**/" >>confdefs.h
+
+            QT_LIBDIR=`$PKG_CONFIG --variable=libdir Qt5Core`
+            QT_CFLAGS="$QT_CFLAGS $QT_MAC_CFLAGS -F$QT_LIBDIR -framework QtCore -framework QtGui -framework QtQuick -framework QtQml -framework QtMacExtras"
+            QT_LIBS="$QT_LIBS $QT_MAC_LIBS"
+            HAVE_QT_WINDOWING="yes"
+
+fi
+        fi
+        if test "x$GST_GL_HAVE_WINDOW_EAGL" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EAGL" = "x1"; then
+          if test "x$HAVE_IOS" = "xyes"; then
+            # iOS doesn't have its own extras package so if we have the core
+            # modules we are good to go
+
+$as_echo "#define HAVE_QT_IOS /**/" >>confdefs.h
+
+            HAVE_QT_WINDOWING="yes"
+          fi
+        fi
         if test "x$HAVE_QT_WINDOWING" = "xno"; then
           { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not find any Qt Windowing integration" >&5
 $as_echo "$as_me: WARNING: Could not find any Qt Windowing integration" >&2;}
@@ -53826,6 +55426,26 @@
 
 
 
+
+# Check whether --with-hls-crypto was given.
+if test "${with_hls_crypto+set}" = set; then :
+  withval=$with_hls_crypto;
+    case $with_hls_crypto in #(
+  nettle) :
+     ;; #(
+  libgcrypt) :
+     ;; #(
+  openssl) :
+     ;; #(
+  *) :
+    with_hls_crypto=auto
+     ;;
+esac
+
+
+fi
+
+
 echo
 { $as_echo "$as_me:${as_lineno-$LINENO}: *** checking feature: http live streaming plugin ***" >&5
 $as_echo "$as_me: *** checking feature: http live streaming plugin ***" >&6;}
@@ -53873,6 +55493,389 @@
 
   HAVE_HLS=no
 
+  case $with_hls_crypto in #(
+  nettle) :
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for NETTLE" >&5
+$as_echo_n "checking for NETTLE... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$NETTLE_CFLAGS"; then
+        pkg_cv_NETTLE_CFLAGS="$NETTLE_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"nettle\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "nettle") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_NETTLE_CFLAGS=`$PKG_CONFIG --cflags "nettle" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$NETTLE_LIBS"; then
+        pkg_cv_NETTLE_LIBS="$NETTLE_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"nettle\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "nettle") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_NETTLE_LIBS=`$PKG_CONFIG --libs "nettle" 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
+	        NETTLE_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "nettle"`
+        else
+	        NETTLE_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "nettle"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$NETTLE_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                as_fn_error $? "Could not find nettle library" "$LINENO" 5
+elif test $pkg_failed = untried; then
+	as_fn_error $? "Could not find nettle library" "$LINENO" 5
+else
+	NETTLE_CFLAGS=$pkg_cv_NETTLE_CFLAGS
+	NETTLE_LIBS=$pkg_cv_NETTLE_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+
+$as_echo "#define HAVE_NETTLE 1" >>confdefs.h
+
+        HAVE_HLS="yes"
+
+fi
+     ;; #(
+  libgcrypt) :
+
+
+
+# Check whether --with-libgcrypt-prefix was given.
+if test "${with_libgcrypt_prefix+set}" = set; then :
+  withval=$with_libgcrypt_prefix; libgcrypt_config_prefix="$withval"
+else
+  libgcrypt_config_prefix=""
+fi
+
+  if test x$libgcrypt_config_prefix != x ; then
+     if test x${LIBGCRYPT_CONFIG+set} != xset ; then
+        LIBGCRYPT_CONFIG=$libgcrypt_config_prefix/bin/libgcrypt-config
+     fi
+  fi
+
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}libgcrypt-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}libgcrypt-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_LIBGCRYPT_CONFIG+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $LIBGCRYPT_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_LIBGCRYPT_CONFIG="$LIBGCRYPT_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_LIBGCRYPT_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+LIBGCRYPT_CONFIG=$ac_cv_path_LIBGCRYPT_CONFIG
+if test -n "$LIBGCRYPT_CONFIG"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBGCRYPT_CONFIG" >&5
+$as_echo "$LIBGCRYPT_CONFIG" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_path_LIBGCRYPT_CONFIG"; then
+  ac_pt_LIBGCRYPT_CONFIG=$LIBGCRYPT_CONFIG
+  # Extract the first word of "libgcrypt-config", so it can be a program name with args.
+set dummy libgcrypt-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_ac_pt_LIBGCRYPT_CONFIG+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $ac_pt_LIBGCRYPT_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_LIBGCRYPT_CONFIG="$ac_pt_LIBGCRYPT_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_LIBGCRYPT_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+ac_pt_LIBGCRYPT_CONFIG=$ac_cv_path_ac_pt_LIBGCRYPT_CONFIG
+if test -n "$ac_pt_LIBGCRYPT_CONFIG"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_LIBGCRYPT_CONFIG" >&5
+$as_echo "$ac_pt_LIBGCRYPT_CONFIG" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+  if test "x$ac_pt_LIBGCRYPT_CONFIG" = x; then
+    LIBGCRYPT_CONFIG="no"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    LIBGCRYPT_CONFIG=$ac_pt_LIBGCRYPT_CONFIG
+  fi
+else
+  LIBGCRYPT_CONFIG="$ac_cv_path_LIBGCRYPT_CONFIG"
+fi
+
+  tmp=1.2.0
+  if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
+     req_libgcrypt_api=`echo "$tmp"     | sed 's/\(.*\):\(.*\)/\1/'`
+     min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'`
+  else
+     req_libgcrypt_api=0
+     min_libgcrypt_version="$tmp"
+  fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBGCRYPT - version >= $min_libgcrypt_version" >&5
+$as_echo_n "checking for LIBGCRYPT - version >= $min_libgcrypt_version... " >&6; }
+  ok=no
+  if test "$LIBGCRYPT_CONFIG" != "no" ; then
+    req_major=`echo $min_libgcrypt_version | \
+               sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\1/'`
+    req_minor=`echo $min_libgcrypt_version | \
+               sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\2/'`
+    req_micro=`echo $min_libgcrypt_version | \
+               sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3/'`
+    libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version`
+    major=`echo $libgcrypt_config_version | \
+               sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1/'`
+    minor=`echo $libgcrypt_config_version | \
+               sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\2/'`
+    micro=`echo $libgcrypt_config_version | \
+               sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\3/'`
+    if test "$major" -gt "$req_major"; then
+        ok=yes
+    else
+        if test "$major" -eq "$req_major"; then
+            if test "$minor" -gt "$req_minor"; then
+               ok=yes
+            else
+               if test "$minor" -eq "$req_minor"; then
+                   if test "$micro" -ge "$req_micro"; then
+                     ok=yes
+                   fi
+               fi
+            fi
+        fi
+    fi
+  fi
+  if test $ok = yes; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes ($libgcrypt_config_version)" >&5
+$as_echo "yes ($libgcrypt_config_version)" >&6; }
+  else
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+  fi
+  if test $ok = yes; then
+     # If we have a recent libgcrypt, we should also check that the
+     # API is compatible
+     if test "$req_libgcrypt_api" -gt 0 ; then
+        tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0`
+        if test "$tmp" -gt 0 ; then
+           { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBGCRYPT API version" >&5
+$as_echo_n "checking LIBGCRYPT API version... " >&6; }
+           if test "$req_libgcrypt_api" -eq "$tmp" ; then
+             { $as_echo "$as_me:${as_lineno-$LINENO}: result: okay" >&5
+$as_echo "okay" >&6; }
+           else
+             ok=no
+             { $as_echo "$as_me:${as_lineno-$LINENO}: result: does not match. want=$req_libgcrypt_api got=$tmp" >&5
+$as_echo "does not match. want=$req_libgcrypt_api got=$tmp" >&6; }
+           fi
+        fi
+     fi
+  fi
+  if test $ok = yes; then
+    LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
+    LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
+
+
+$as_echo "#define HAVE_LIBGCRYPT 1" >>confdefs.h
+
+        HAVE_HLS="yes"
+
+    libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
+    if test x"$libgcrypt_config_host" != xnone ; then
+      if test x"$libgcrypt_config_host" != x"$host" ; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
+***
+*** The config script $LIBGCRYPT_CONFIG was
+*** built for $libgcrypt_config_host and thus may not match the
+*** used host $host.
+*** You may want to use the configure option --with-libgcrypt-prefix
+*** to specify a matching config script.
+***" >&5
+$as_echo "$as_me: WARNING:
+***
+*** The config script $LIBGCRYPT_CONFIG was
+*** built for $libgcrypt_config_host and thus may not match the
+*** used host $host.
+*** You may want to use the configure option --with-libgcrypt-prefix
+*** to specify a matching config script.
+***" >&2;}
+      fi
+    fi
+  else
+    LIBGCRYPT_CFLAGS=""
+    LIBGCRYPT_LIBS=""
+    as_fn_error $? "Could not find libgcrypt library" "$LINENO" 5
+  fi
+
+
+
+     ;; #(
+  openssl) :
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for OPENSSL" >&5
+$as_echo_n "checking for OPENSSL... " >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$OPENSSL_CFLAGS"; then
+        pkg_cv_OPENSSL_CFLAGS="$OPENSSL_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"openssl\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "openssl") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_OPENSSL_CFLAGS=`$PKG_CONFIG --cflags "openssl" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$OPENSSL_LIBS"; then
+        pkg_cv_OPENSSL_LIBS="$OPENSSL_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"openssl\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "openssl") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_OPENSSL_LIBS=`$PKG_CONFIG --libs "openssl" 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
+	        OPENSSL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "openssl"`
+        else
+	        OPENSSL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "openssl"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$OPENSSL_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                as_fn_error $? "Could not find openssl library" "$LINENO" 5
+elif test $pkg_failed = untried; then
+	as_fn_error $? "Could not find openssl library" "$LINENO" 5
+else
+	OPENSSL_CFLAGS=$pkg_cv_OPENSSL_CFLAGS
+	OPENSSL_LIBS=$pkg_cv_OPENSSL_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+
+$as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
+
+        HAVE_HLS="yes"
+
+fi
+     ;; #(
+  *) :
+
 
 pkg_failed=no
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for NETTLE" >&5
@@ -54123,7 +56126,7 @@
 
 $as_echo "#define HAVE_LIBGCRYPT 1" >>confdefs.h
 
-      HAVE_HLS="yes"
+          HAVE_HLS="yes"
 
     libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
     if test x"$libgcrypt_config_host" != xnone ; then
@@ -54212,11 +56215,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 
-        HAVE_HLS="no"
+            HAVE_HLS="no"
 
 elif test $pkg_failed = untried; then
 
-        HAVE_HLS="no"
+            HAVE_HLS="no"
 
 else
 	OPENSSL_CFLAGS=$pkg_cv_OPENSSL_CFLAGS
@@ -54227,7 +56230,7 @@
 
 $as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
 
-        HAVE_HLS="yes"
+            HAVE_HLS="yes"
 
 fi
 
@@ -54426,7 +56429,7 @@
 
 $as_echo "#define HAVE_LIBGCRYPT 1" >>confdefs.h
 
-      HAVE_HLS="yes"
+          HAVE_HLS="yes"
 
     libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
     if test x"$libgcrypt_config_host" != xnone ; then
@@ -54515,11 +56518,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 
-        HAVE_HLS="no"
+            HAVE_HLS="no"
 
 elif test $pkg_failed = untried; then
 
-        HAVE_HLS="no"
+            HAVE_HLS="no"
 
 else
 	OPENSSL_CFLAGS=$pkg_cv_OPENSSL_CFLAGS
@@ -54530,7 +56533,7 @@
 
 $as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
 
-        HAVE_HLS="yes"
+            HAVE_HLS="yes"
 
 fi
 
@@ -54548,10 +56551,13 @@
 
 $as_echo "#define HAVE_NETTLE 1" >>confdefs.h
 
-    HAVE_HLS="yes"
+        HAVE_HLS="yes"
 
 fi
 
+   ;;
+esac
+
 
   LIBS=$gst_check_save_LIBS
   LDFLAGS=$gst_check_save_LDFLAGS
@@ -55473,6 +57479,9 @@
 
 
 GST_ALL_LDFLAGS="-no-undefined"
+if test "x${enable_Bsymbolic}" = "xyes"; then
+  GST_ALL_LDFLAGS="$GST_ALL_LDFLAGS -Wl,-Bsymbolic-functions"
+fi
 
 
 GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
@@ -55485,7 +57494,7 @@
 $MKDIR_P tests/check/orc
 
 
-ac_config_files="$ac_config_files Makefile common/Makefile common/m4/Makefile gst-plugins-bad.spec gst/Makefile gst/accurip/Makefile gst/adpcmdec/Makefile gst/adpcmenc/Makefile gst/aiff/Makefile gst/asfmux/Makefile gst/audiofxbad/Makefile gst/audiomixer/Makefile gst/audiovisualizers/Makefile gst/autoconvert/Makefile gst/bayer/Makefile gst/camerabin2/Makefile gst/cdxaparse/Makefile gst/coloreffects/Makefile gst/dataurisrc/Makefile gst/dccp/Makefile gst/debugutils/Makefile gst/dvbsuboverlay/Makefile gst/dvdspu/Makefile gst/faceoverlay/Makefile gst/festival/Makefile gst/fieldanalysis/Makefile gst/freeverb/Makefile gst/frei0r/Makefile gst/gaudieffects/Makefile gst/geometrictransform/Makefile gst/gdp/Makefile gst/hdvparse/Makefile gst/id3tag/Makefile gst/inter/Makefile gst/interlace/Makefile gst/ivfparse/Makefile gst/ivtc/Makefile gst/jp2kdecimator/Makefile gst/jpegformat/Makefile gst/librfb/Makefile gst/liveadder/Makefile gst/midi/Makefile gst/mpegdemux/Makefile gst/mpegtsdemux/Makefile gst/mpegtsmux/Makefile gst/mpegtsmux/tsmux/Makefile gst/mpegpsmux/Makefile gst/mve/Makefile gst/mxf/Makefile gst/nuvdemux/Makefile gst/onvif/Makefile gst/patchdetect/Makefile gst/pcapparse/Makefile gst/pnm/Makefile gst/rawparse/Makefile gst/removesilence/Makefile gst/rtp/Makefile gst/sdi/Makefile gst/sdp/Makefile gst/segmentclip/Makefile gst/siren/Makefile gst/smooth/Makefile gst/speed/Makefile gst/subenc/Makefile gst/stereo/Makefile gst/tta/Makefile gst/videofilters/Makefile gst/videomeasure/Makefile gst/videoparsers/Makefile gst/videosignal/Makefile gst/vmnc/Makefile gst/y4m/Makefile gst/yadif/Makefile gst/compositor/Makefile gst-libs/Makefile gst-libs/gst/Makefile gst-libs/gst/adaptivedemux/Makefile gst-libs/gst/basecamerabinsrc/Makefile gst-libs/gst/gl/Makefile gst-libs/gst/gl/android/Makefile gst-libs/gst/gl/cocoa/Makefile gst-libs/gst/gl/dispmanx/Makefile gst-libs/gst/gl/glprototypes/Makefile gst-libs/gst/gl/eagl/Makefile gst-libs/gst/gl/egl/Makefile gst-libs/gst/gl/wayland/Makefile gst-libs/gst/gl/win32/Makefile gst-libs/gst/gl/x11/Makefile gst-libs/gst/insertbin/Makefile gst-libs/gst/interfaces/Makefile gst-libs/gst/codecparsers/Makefile gst-libs/gst/mpegts/Makefile gst-libs/gst/uridownloader/Makefile gst-libs/gst/wayland/Makefile gst-libs/gst/base/Makefile gst-libs/gst/video/Makefile sys/Makefile sys/dshowdecwrapper/Makefile sys/acmenc/Makefile sys/acmmp3dec/Makefile sys/androidmedia/Makefile sys/applemedia/Makefile sys/applemedia-nonpublic/Makefile sys/avc/Makefile sys/bluez/Makefile sys/d3dvideosink/Makefile sys/decklink/Makefile sys/directsound/Makefile sys/dshowsrcwrapper/Makefile sys/dshowvideosink/Makefile sys/dvb/Makefile sys/fbdev/Makefile sys/linsys/Makefile sys/opensles/Makefile sys/shm/Makefile sys/uvch264/Makefile sys/vcd/Makefile sys/vdpau/Makefile sys/pvr2d/Makefile sys/wasapi/Makefile sys/wininet/Makefile sys/winks/Makefile sys/winscreencap/Makefile tests/Makefile tests/check/Makefile tests/files/Makefile tests/examples/Makefile tests/examples/avsamplesink/Makefile tests/examples/camerabin2/Makefile tests/examples/codecparsers/Makefile tests/examples/directfb/Makefile tests/examples/gl/Makefile tests/examples/gl/cocoa/Makefile tests/examples/gl/clutter/Makefile tests/examples/gl/generic/Makefile tests/examples/gl/generic/cube/Makefile tests/examples/gl/generic/cubeyuv/Makefile tests/examples/gl/generic/doublecube/Makefile tests/examples/gl/generic/recordgraphic/Makefile tests/examples/gl/gtk/Makefile tests/examples/gl/gtk/gtkvideooverlay/Makefile tests/examples/gl/gtk/3dvideo/Makefile tests/examples/gl/gtk/filternovideooverlay/Makefile tests/examples/gl/gtk/filtervideooverlay/Makefile tests/examples/gl/gtk/fxtest/Makefile tests/examples/gl/gtk/switchvideooverlay/Makefile tests/examples/gl/qt/Makefile tests/examples/gl/sdl/Makefile tests/examples/gtk/Makefile tests/examples/mpegts/Makefile tests/examples/mxf/Makefile tests/examples/opencv/Makefile tests/examples/uvch264/Makefile tests/icles/Makefile ext/voamrwbenc/Makefile ext/voaacenc/Makefile ext/assrender/Makefile ext/apexsink/Makefile ext/bs2b/Makefile ext/bz2/Makefile ext/chromaprint/Makefile ext/curl/Makefile ext/dash/Makefile ext/dc1394/Makefile ext/directfb/Makefile ext/wayland/Makefile ext/daala/Makefile ext/dts/Makefile ext/gl/Makefile ext/gtk/Makefile ext/faac/Makefile ext/faad/Makefile ext/flite/Makefile ext/fluidsynth/Makefile ext/gsm/Makefile ext/hls/Makefile ext/kate/Makefile ext/ladspa/Makefile ext/lv2/Makefile ext/libde265/Makefile ext/libmms/Makefile ext/libvisual/Makefile ext/Makefile ext/modplug/Makefile ext/mpeg2enc/Makefile ext/mpg123/Makefile ext/mimic/Makefile ext/mplex/Makefile ext/musepack/Makefile ext/nas/Makefile ext/neon/Makefile ext/ofa/Makefile ext/openal/Makefile ext/opencv/Makefile ext/openexr/Makefile ext/openh264/Makefile ext/openjpeg/Makefile ext/openni2/Makefile ext/opus/Makefile ext/qt/Makefile ext/rsvg/Makefile ext/resindvd/Makefile ext/rtmp/Makefile ext/sbc/Makefile ext/schroedinger/Makefile ext/sdl/Makefile ext/smoothstreaming/Makefile ext/sndfile/Makefile ext/soundtouch/Makefile ext/spandsp/Makefile ext/sndio/Makefile ext/srtp/Makefile ext/teletextdec/Makefile ext/gme/Makefile ext/gsettings/Makefile ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml ext/spc/Makefile ext/timidity/Makefile ext/webp/Makefile ext/x265/Makefile ext/xvid/Makefile ext/zbar/Makefile ext/dtls/Makefile po/Makefile.in docs/Makefile docs/plugins/Makefile docs/libs/Makefile docs/version.entities pkgconfig/Makefile pkgconfig/gstreamer-plugins-bad.pc pkgconfig/gstreamer-plugins-bad-uninstalled.pc pkgconfig/gstreamer-codecparsers.pc pkgconfig/gstreamer-codecparsers-uninstalled.pc pkgconfig/gstreamer-insertbin.pc pkgconfig/gstreamer-insertbin-uninstalled.pc pkgconfig/gstreamer-gl.pc pkgconfig/gstreamer-gl-uninstalled.pc pkgconfig/gstreamer-mpegts.pc pkgconfig/gstreamer-mpegts-uninstalled.pc pkgconfig/gstreamer-wayland.pc pkgconfig/gstreamer-wayland-uninstalled.pc pkgconfig/gstreamer-bad-base.pc pkgconfig/gstreamer-bad-base-uninstalled.pc pkgconfig/gstreamer-bad-video.pc pkgconfig/gstreamer-bad-video-uninstalled.pc tools/Makefile m4/Makefile"
+ac_config_files="$ac_config_files Makefile common/Makefile common/m4/Makefile gst-plugins-bad.spec gst/Makefile gst/accurip/Makefile gst/adpcmdec/Makefile gst/adpcmenc/Makefile gst/aiff/Makefile gst/videoframe_audiolevel/Makefile gst/asfmux/Makefile gst/audiofxbad/Makefile gst/audiomixer/Makefile gst/audiovisualizers/Makefile gst/autoconvert/Makefile gst/bayer/Makefile gst/camerabin2/Makefile gst/cdxaparse/Makefile gst/coloreffects/Makefile gst/dataurisrc/Makefile gst/dccp/Makefile gst/debugutils/Makefile gst/dvbsuboverlay/Makefile gst/dvdspu/Makefile gst/faceoverlay/Makefile gst/festival/Makefile gst/fieldanalysis/Makefile gst/freeverb/Makefile gst/frei0r/Makefile gst/gaudieffects/Makefile gst/geometrictransform/Makefile gst/gdp/Makefile gst/hdvparse/Makefile gst/id3tag/Makefile gst/inter/Makefile gst/interlace/Makefile gst/ivfparse/Makefile gst/ivtc/Makefile gst/jp2kdecimator/Makefile gst/jpegformat/Makefile gst/librfb/Makefile gst/midi/Makefile gst/mpegdemux/Makefile gst/mpegtsdemux/Makefile gst/mpegtsmux/Makefile gst/mpegtsmux/tsmux/Makefile gst/mpegpsmux/Makefile gst/mve/Makefile gst/mxf/Makefile gst/nuvdemux/Makefile gst/onvif/Makefile gst/patchdetect/Makefile gst/pcapparse/Makefile gst/pnm/Makefile gst/rawparse/Makefile gst/removesilence/Makefile gst/rtp/Makefile gst/sdi/Makefile gst/sdp/Makefile gst/segmentclip/Makefile gst/siren/Makefile gst/smooth/Makefile gst/speed/Makefile gst/subenc/Makefile gst/stereo/Makefile gst/tta/Makefile gst/videofilters/Makefile gst/videomeasure/Makefile gst/videoparsers/Makefile gst/videosignal/Makefile gst/vmnc/Makefile gst/y4m/Makefile gst/yadif/Makefile gst/compositor/Makefile gst-libs/Makefile gst-libs/gst/Makefile gst-libs/gst/adaptivedemux/Makefile gst-libs/gst/basecamerabinsrc/Makefile gst-libs/gst/gl/Makefile gst-libs/gst/gl/android/Makefile gst-libs/gst/gl/cocoa/Makefile gst-libs/gst/gl/dispmanx/Makefile gst-libs/gst/gl/glprototypes/Makefile gst-libs/gst/gl/eagl/Makefile gst-libs/gst/gl/egl/Makefile gst-libs/gst/gl/wayland/Makefile gst-libs/gst/gl/win32/Makefile gst-libs/gst/gl/x11/Makefile gst-libs/gst/insertbin/Makefile gst-libs/gst/interfaces/Makefile gst-libs/gst/codecparsers/Makefile gst-libs/gst/mpegts/Makefile gst-libs/gst/uridownloader/Makefile gst-libs/gst/wayland/Makefile gst-libs/gst/base/Makefile gst-libs/gst/player/Makefile gst-libs/gst/video/Makefile sys/Makefile sys/dshowdecwrapper/Makefile sys/acmenc/Makefile sys/acmmp3dec/Makefile sys/androidmedia/Makefile sys/applemedia/Makefile sys/applemedia-nonpublic/Makefile sys/avc/Makefile sys/bluez/Makefile sys/d3dvideosink/Makefile sys/decklink/Makefile sys/directsound/Makefile sys/dshowsrcwrapper/Makefile sys/dshowvideosink/Makefile sys/dvb/Makefile sys/fbdev/Makefile sys/linsys/Makefile sys/nvenc/Makefile sys/opensles/Makefile sys/shm/Makefile sys/uvch264/Makefile sys/vcd/Makefile sys/vdpau/Makefile sys/pvr2d/Makefile sys/wasapi/Makefile sys/wininet/Makefile sys/winks/Makefile sys/winscreencap/Makefile tests/Makefile tests/check/Makefile tests/files/Makefile tests/examples/Makefile tests/examples/avsamplesink/Makefile tests/examples/camerabin2/Makefile tests/examples/codecparsers/Makefile tests/examples/directfb/Makefile tests/examples/gl/Makefile tests/examples/gl/cocoa/Makefile tests/examples/gl/clutter/Makefile tests/examples/gl/generic/Makefile tests/examples/gl/generic/cube/Makefile tests/examples/gl/generic/cubeyuv/Makefile tests/examples/gl/generic/doublecube/Makefile tests/examples/gl/generic/recordgraphic/Makefile tests/examples/gl/gtk/Makefile tests/examples/gl/gtk/gtkvideooverlay/Makefile tests/examples/gl/gtk/3dvideo/Makefile tests/examples/gl/gtk/filternovideooverlay/Makefile tests/examples/gl/gtk/filtervideooverlay/Makefile tests/examples/gl/gtk/fxtest/Makefile tests/examples/gl/gtk/switchvideooverlay/Makefile tests/examples/gl/qt/Makefile tests/examples/gl/sdl/Makefile tests/examples/gtk/Makefile tests/examples/mpegts/Makefile tests/examples/mxf/Makefile tests/examples/opencv/Makefile tests/examples/uvch264/Makefile tests/examples/waylandsink/Makefile tests/icles/Makefile ext/voamrwbenc/Makefile ext/voaacenc/Makefile ext/assrender/Makefile ext/apexsink/Makefile ext/bs2b/Makefile ext/bz2/Makefile ext/chromaprint/Makefile ext/curl/Makefile ext/dash/Makefile ext/dc1394/Makefile ext/directfb/Makefile ext/wayland/Makefile ext/daala/Makefile ext/dts/Makefile ext/gl/Makefile ext/gtk/Makefile ext/faac/Makefile ext/faad/Makefile ext/flite/Makefile ext/fluidsynth/Makefile ext/gsm/Makefile ext/hls/Makefile ext/kate/Makefile ext/ladspa/Makefile ext/lv2/Makefile ext/libde265/Makefile ext/libmms/Makefile ext/libvisual/Makefile ext/Makefile ext/modplug/Makefile ext/mpeg2enc/Makefile ext/mpg123/Makefile ext/mimic/Makefile ext/mplex/Makefile ext/musepack/Makefile ext/nas/Makefile ext/neon/Makefile ext/ofa/Makefile ext/openal/Makefile ext/opencv/Makefile ext/openexr/Makefile ext/openh264/Makefile ext/openjpeg/Makefile ext/openni2/Makefile ext/opus/Makefile ext/qt/Makefile ext/rsvg/Makefile ext/resindvd/Makefile ext/rtmp/Makefile ext/sbc/Makefile ext/schroedinger/Makefile ext/sdl/Makefile ext/smoothstreaming/Makefile ext/sndfile/Makefile ext/soundtouch/Makefile ext/spandsp/Makefile ext/sndio/Makefile ext/srtp/Makefile ext/teletextdec/Makefile ext/gme/Makefile ext/gsettings/Makefile ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml ext/spc/Makefile ext/timidity/Makefile ext/webp/Makefile ext/x265/Makefile ext/xvid/Makefile ext/zbar/Makefile ext/dtls/Makefile po/Makefile.in docs/Makefile docs/plugins/Makefile docs/libs/Makefile docs/version.entities pkgconfig/Makefile pkgconfig/gstreamer-plugins-bad.pc pkgconfig/gstreamer-plugins-bad-uninstalled.pc pkgconfig/gstreamer-codecparsers.pc pkgconfig/gstreamer-codecparsers-uninstalled.pc pkgconfig/gstreamer-insertbin.pc pkgconfig/gstreamer-insertbin-uninstalled.pc pkgconfig/gstreamer-gl.pc pkgconfig/gstreamer-gl-uninstalled.pc pkgconfig/gstreamer-mpegts.pc pkgconfig/gstreamer-mpegts-uninstalled.pc pkgconfig/gstreamer-player.pc pkgconfig/gstreamer-player-uninstalled.pc pkgconfig/gstreamer-wayland.pc pkgconfig/gstreamer-wayland-uninstalled.pc pkgconfig/gstreamer-bad-base.pc pkgconfig/gstreamer-bad-base-uninstalled.pc pkgconfig/gstreamer-bad-video.pc pkgconfig/gstreamer-bad-video-uninstalled.pc tools/Makefile m4/Makefile"
 
 
 sed \
@@ -55852,6 +57861,10 @@
   as_fn_error $? "conditional \"GST_PLUGIN_BUILD_STATIC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${WITH_GST_PLAYER_TESTS_TRUE}" && test -z "${WITH_GST_PLAYER_TESTS_FALSE}"; then
+  as_fn_error $? "conditional \"WITH_GST_PLAYER_TESTS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${USE_PLUGIN_ACCURIP_TRUE}" && test -z "${USE_PLUGIN_ACCURIP_FALSE}"; then
   as_fn_error $? "conditional \"USE_PLUGIN_ACCURIP\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -55868,6 +57881,10 @@
   as_fn_error $? "conditional \"USE_PLUGIN_AIFF\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_TRUE}" && test -z "${USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL_FALSE}"; then
+  as_fn_error $? "conditional \"USE_PLUGIN_VIDEOFRAME_AUDIOLEVEL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${USE_PLUGIN_ASFMUX_TRUE}" && test -z "${USE_PLUGIN_ASFMUX_FALSE}"; then
   as_fn_error $? "conditional \"USE_PLUGIN_ASFMUX\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -55996,10 +58013,6 @@
   as_fn_error $? "conditional \"USE_PLUGIN_LIBRFB\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
-if test -z "${USE_PLUGIN_LIVEADDER_TRUE}" && test -z "${USE_PLUGIN_LIVEADDER_FALSE}"; then
-  as_fn_error $? "conditional \"USE_PLUGIN_LIVEADDER\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
 if test -z "${USE_PLUGIN_MIDI_TRUE}" && test -z "${USE_PLUGIN_MIDI_FALSE}"; then
   as_fn_error $? "conditional \"USE_PLUGIN_MIDI\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -56268,6 +58281,14 @@
   as_fn_error $? "conditional \"USE_UVCH264\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${USE_NVENC_TRUE}" && test -z "${USE_NVENC_FALSE}"; then
+  as_fn_error $? "conditional \"USE_NVENC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${USE_NVENC_GST_GL_TRUE}" && test -z "${USE_NVENC_GST_GL_FALSE}"; then
+  as_fn_error $? "conditional \"USE_NVENC_GST_GL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${USE_ASSRENDER_TRUE}" && test -z "${USE_ASSRENDER_FALSE}"; then
   as_fn_error $? "conditional \"USE_ASSRENDER\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -57325,7 +59346,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GStreamer Bad Plug-ins $as_me 1.6.2, which was
+This file was extended by GStreamer Bad Plug-ins $as_me 1.7.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -57391,7 +59412,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 Bad Plug-ins config.status 1.6.2
+GStreamer Bad Plug-ins config.status 1.7.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -57940,6 +59961,7 @@
     "gst/adpcmdec/Makefile") CONFIG_FILES="$CONFIG_FILES gst/adpcmdec/Makefile" ;;
     "gst/adpcmenc/Makefile") CONFIG_FILES="$CONFIG_FILES gst/adpcmenc/Makefile" ;;
     "gst/aiff/Makefile") CONFIG_FILES="$CONFIG_FILES gst/aiff/Makefile" ;;
+    "gst/videoframe_audiolevel/Makefile") CONFIG_FILES="$CONFIG_FILES gst/videoframe_audiolevel/Makefile" ;;
     "gst/asfmux/Makefile") CONFIG_FILES="$CONFIG_FILES gst/asfmux/Makefile" ;;
     "gst/audiofxbad/Makefile") CONFIG_FILES="$CONFIG_FILES gst/audiofxbad/Makefile" ;;
     "gst/audiomixer/Makefile") CONFIG_FILES="$CONFIG_FILES gst/audiomixer/Makefile" ;;
@@ -57971,7 +59993,6 @@
     "gst/jp2kdecimator/Makefile") CONFIG_FILES="$CONFIG_FILES gst/jp2kdecimator/Makefile" ;;
     "gst/jpegformat/Makefile") CONFIG_FILES="$CONFIG_FILES gst/jpegformat/Makefile" ;;
     "gst/librfb/Makefile") CONFIG_FILES="$CONFIG_FILES gst/librfb/Makefile" ;;
-    "gst/liveadder/Makefile") CONFIG_FILES="$CONFIG_FILES gst/liveadder/Makefile" ;;
     "gst/midi/Makefile") CONFIG_FILES="$CONFIG_FILES gst/midi/Makefile" ;;
     "gst/mpegdemux/Makefile") CONFIG_FILES="$CONFIG_FILES gst/mpegdemux/Makefile" ;;
     "gst/mpegtsdemux/Makefile") CONFIG_FILES="$CONFIG_FILES gst/mpegtsdemux/Makefile" ;;
@@ -58026,6 +60047,7 @@
     "gst-libs/gst/uridownloader/Makefile") CONFIG_FILES="$CONFIG_FILES gst-libs/gst/uridownloader/Makefile" ;;
     "gst-libs/gst/wayland/Makefile") CONFIG_FILES="$CONFIG_FILES gst-libs/gst/wayland/Makefile" ;;
     "gst-libs/gst/base/Makefile") CONFIG_FILES="$CONFIG_FILES gst-libs/gst/base/Makefile" ;;
+    "gst-libs/gst/player/Makefile") CONFIG_FILES="$CONFIG_FILES gst-libs/gst/player/Makefile" ;;
     "gst-libs/gst/video/Makefile") CONFIG_FILES="$CONFIG_FILES gst-libs/gst/video/Makefile" ;;
     "sys/Makefile") CONFIG_FILES="$CONFIG_FILES sys/Makefile" ;;
     "sys/dshowdecwrapper/Makefile") CONFIG_FILES="$CONFIG_FILES sys/dshowdecwrapper/Makefile" ;;
@@ -58044,6 +60066,7 @@
     "sys/dvb/Makefile") CONFIG_FILES="$CONFIG_FILES sys/dvb/Makefile" ;;
     "sys/fbdev/Makefile") CONFIG_FILES="$CONFIG_FILES sys/fbdev/Makefile" ;;
     "sys/linsys/Makefile") CONFIG_FILES="$CONFIG_FILES sys/linsys/Makefile" ;;
+    "sys/nvenc/Makefile") CONFIG_FILES="$CONFIG_FILES sys/nvenc/Makefile" ;;
     "sys/opensles/Makefile") CONFIG_FILES="$CONFIG_FILES sys/opensles/Makefile" ;;
     "sys/shm/Makefile") CONFIG_FILES="$CONFIG_FILES sys/shm/Makefile" ;;
     "sys/uvch264/Makefile") CONFIG_FILES="$CONFIG_FILES sys/uvch264/Makefile" ;;
@@ -58084,6 +60107,7 @@
     "tests/examples/mxf/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/mxf/Makefile" ;;
     "tests/examples/opencv/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/opencv/Makefile" ;;
     "tests/examples/uvch264/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/uvch264/Makefile" ;;
+    "tests/examples/waylandsink/Makefile") CONFIG_FILES="$CONFIG_FILES tests/examples/waylandsink/Makefile" ;;
     "tests/icles/Makefile") CONFIG_FILES="$CONFIG_FILES tests/icles/Makefile" ;;
     "ext/voamrwbenc/Makefile") CONFIG_FILES="$CONFIG_FILES ext/voamrwbenc/Makefile" ;;
     "ext/voaacenc/Makefile") CONFIG_FILES="$CONFIG_FILES ext/voaacenc/Makefile" ;;
@@ -58170,6 +60194,8 @@
     "pkgconfig/gstreamer-gl-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-gl-uninstalled.pc" ;;
     "pkgconfig/gstreamer-mpegts.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-mpegts.pc" ;;
     "pkgconfig/gstreamer-mpegts-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-mpegts-uninstalled.pc" ;;
+    "pkgconfig/gstreamer-player.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-player.pc" ;;
+    "pkgconfig/gstreamer-player-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-player-uninstalled.pc" ;;
     "pkgconfig/gstreamer-wayland.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-wayland.pc" ;;
     "pkgconfig/gstreamer-wayland-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-wayland-uninstalled.pc" ;;
     "pkgconfig/gstreamer-bad-base.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-bad-base.pc" ;;
diff --git a/configure.ac b/configure.ac
index c092874..5aa65e6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@
 dnl initialize autoconf
 dnl when going to/from release please set the nano (fourth number) right !
 dnl releases only do Wall, git and prerelease does Werror too
-AC_INIT([GStreamer Bad Plug-ins],[1.6.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
+AC_INIT([GStreamer Bad Plug-ins],[1.7.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
 
 AG_GST_INIT
 
@@ -51,11 +51,11 @@
 dnl - interfaces added -> increment AGE
 dnl - interfaces removed -> AGE = 0
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 602, 0, 602)
+AS_LIBTOOL(GST, 701, 0, 701)
 
 dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.6.2
-GSTPB_REQ=1.6.2
+GST_REQ=1.7.1
+GSTPB_REQ=1.7.1
 
 dnl *** autotools stuff ****
 
@@ -74,6 +74,7 @@
 dnl *** check for arguments to configure ***
 
 AG_GST_ARG_DISABLE_FATAL_WARNINGS
+AG_GST_ARG_ENABLE_EXTRA_CHECKS
 
 AG_GST_ARG_DEBUG
 AG_GST_ARG_PROFILING
@@ -190,7 +191,7 @@
 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
 
 dnl GLib is required
-GLIB_REQ=2.32.0
+GLIB_REQ=2.40.0
 AG_GST_GLIB_CHECK([$GLIB_REQ])
 
 dnl checks for gstreamer
@@ -241,6 +242,22 @@
 fi
 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
 
+dnl Check for -Bsymbolic-functions linker flag used to avoid
+dnl intra-library PLT jumps, if available.
+AC_ARG_ENABLE(Bsymbolic,
+              [AS_HELP_STRING([--disable-Bsymbolic],[avoid linking with -Bsymbolic])],,
+              [SAVED_LDFLAGS="${LDFLAGS}" SAVED_LIBS="${LIBS}"
+               AC_MSG_CHECKING([for -Bsymbolic-functions linker flag])
+               LDFLAGS=-Wl,-Bsymbolic-functions
+               LIBS=
+               AC_TRY_LINK([], [return 0],
+                           AC_MSG_RESULT(yes)
+                           enable_Bsymbolic=yes,
+                           AC_MSG_RESULT(no)
+                           enable_Bsymbolic=no)
+               LDFLAGS="${SAVED_LDFLAGS}" LIBS="${SAVED_LIBS}"])
+
+dnl *** set variables based on configure arguments ***
 
 dnl GTK is optional and used in examples
 HAVE_GTK3=NO
@@ -379,6 +396,17 @@
 AC_SUBST(GST_PLUGIN_LIBTOOLFLAGS)
 AM_CONDITIONAL(GST_PLUGIN_BUILD_STATIC, test "x$enable_static_plugins" = "xyes")
 
+AC_ARG_WITH([player-tests],
+  AS_HELP_STRING([--with-player-tests],[Enable GstPlayer tests that need network access (default: no)]))
+if test x$with_player_tests = xyes; then
+  AC_PATH_PROG([WGET], [wget], no)
+  if test x$WGET = xno; then
+    AC_MSG_WARN([wget required for GstPlayer tests but not found - disabling])
+    with_player_tests=no
+  fi
+fi
+AM_CONDITIONAL(WITH_GST_PLAYER_TESTS, test "x$with_player_tests" = "xyes")
+
 # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above
 dnl make sure it doesn't complain about unused variables if debugging is disabled
 NO_WARNINGS=""
@@ -425,8 +453,8 @@
  apexsink dc1394 \
  gsettings \
  musepack nas sdl timidity \
- acm wininet \
- xvid lv2 teletextdec sndio libvisual"
+ wininet \
+ xvid lv2 sndio libvisual"
 AC_SUBST(GST_PLUGINS_NONPORTED)
 
 dnl these are all the gst plug-ins, compilable without additional libs
@@ -434,6 +462,7 @@
 AG_GST_CHECK_PLUGIN(adpcmdec)
 AG_GST_CHECK_PLUGIN(adpcmenc)
 AG_GST_CHECK_PLUGIN(aiff)
+AG_GST_CHECK_PLUGIN(videoframe_audiolevel)
 AG_GST_CHECK_PLUGIN(asfmux)
 AG_GST_CHECK_PLUGIN(audiofxbad)
 AG_GST_CHECK_PLUGIN(audiomixer)
@@ -466,7 +495,6 @@
 AG_GST_CHECK_PLUGIN(jp2kdecimator)
 AG_GST_CHECK_PLUGIN(jpegformat)
 AG_GST_CHECK_PLUGIN(librfb)
-AG_GST_CHECK_PLUGIN(liveadder)
 AG_GST_CHECK_PLUGIN(midi)
 AG_GST_CHECK_PLUGIN(mpegdemux)
 AG_GST_CHECK_PLUGIN(mpegtsdemux)
@@ -670,13 +698,22 @@
   ;;
   *)
     if test "x$NEED_GL" != "xno"; then
-      AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
+      AG_GST_PKG_CHECK_MODULES(GL, gl)
+      if test "x$HAVE_GL" != "xyes"; then
+        AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
+      fi
     fi
     if test "x$NEED_GLES2" != "xno"; then
-      AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
+      AG_GST_PKG_CHECK_MODULES(GLES2, glesv2)
+      if test "x$HAVE_GLES2" != "xyes"; then
+        AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
+      fi
     fi
     if test "x$NEED_EGL" != "xno"; then
-      AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
+      AG_GST_PKG_CHECK_MODULES(EGL, egl)
+      if test "x$HAVE_EGL" != "xyes"; then
+        AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
+      fi
     fi
 
     old_LIBS=$LIBS
@@ -803,9 +840,28 @@
   fi
 fi
 
+dnl check for DMABUF support
+HAVE_DRM_FOURCC_HEADER=no
+AC_CHECK_HEADER(libdrm/drm_fourcc.h,
+  HAVE_DRM_FOURCC_HEADER=yes, )
+
+HAVE_GST_ALLOCATORS=no
+PKG_CHECK_MODULES(GST_ALLOCATORS, gstreamer-allocators-1.0,
+  HAVE_GST_ALLOCATORS=yes, )
+
+if test "x$HAVE_DRM_FOURCC_HEADER" = "xyes" -a \
+        "x$HAVE_GST_ALLOCATORS" = "xyes" -a \
+        "x$HAVE_EGL" = "xyes"; then
+          AC_DEFINE(GST_GL_HAVE_DMABUF, [1] , [DMABUF available for gl plugins])
+fi
+
 dnl check if we can include both GL and GLES2 at the same time
 if test "x$HAVE_GL" = "xyes" -a "x$HAVE_GLES2" = "xyes"; then
   GL_INCLUDES="
+#ifdef __GNUC__
+#  pragma GCC diagnostic push
+#  pragma GCC diagnostic ignored \"-Wredundant-decls\"
+#endif
 #ifndef GL_GLEXT_PROTOTYPES
 #define GL_GLEXT_PROTOTYPES 1
 #endif
@@ -829,11 +885,12 @@
 #   include <GL/glext.h>
 #  endif
 # endif
+int main (int argc, char **argv) { return 0; }
 "
   AC_MSG_CHECKING([whether it is possible to include both GL and GLES2 headers])
-  save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS $ERROR_CFLAGS"
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$GL_INCLUDES]], [[
+  save_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS $GL_CFLAGS $GLES2_CFLAGS $WARNING_CFLAGS $ERROR_CFLAGS"
+  AC_COMPILE_IFELSE([AC_LANG_SOURCE([[$GL_INCLUDES]], [[
     #if !defined(GL_FALSE)
     #error Failed to include GL headers
     #endif
@@ -851,7 +908,7 @@
       HAVE_GLES2=no
     fi
   ])
-  CPPFLAGS="$save_CPPFLAGS"
+  CFLAGS="$save_CFLAGS"
 fi
 
 #dnl Check for OpenGL
@@ -1727,6 +1784,108 @@
 AC_SUBST(LIBUSB_CFLAGS)
 AC_SUBST(LIBUSB_LIBS)
 
+dnl *** NVENC ***
+translit(dnm, m, l) AM_CONDITIONAL(USE_NVENC, true)
+AG_GST_CHECK_FEATURE(NVENC, [NVIDIA Encode API], nvenc, [
+  AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-1.0)
+  AG_GST_PKG_CHECK_MODULES(GST_PBUTILS, gstreamer-pbutils-1.0)
+  AC_ARG_WITH([cuda-prefix],
+          AS_HELP_STRING([--with-cuda-prefix],
+          [Use the provided prefix for detecting the cuda installation]),
+          [AS_IF([test "x$with_cuda_prefix" != "x"],
+                 [CUDA_PREFIX="$with_cuda_prefix"])],
+          [CUDA_PREFIX=""])
+
+  HAVE_CUDA="yes"
+  if test "x$CUDA_PREFIX" != "x"; then
+    dnl only override if not already set
+    if test "x$CUDA_CFLAGS" = "x" -a "x$CUDA_LIBS" = "x"; then
+      dnl this is an educated guess, user can always override these
+      CUDA_CFLAGS="-I$CUDA_PREFIX/include"
+      CUDA_LIBS="-L$CUDA_PREFIX/lib -L$CUDA_PREFIX/lib64 -L$CUDA_PREFIX/lib/stubs -L$CUDA_PREFIX/lib64/stubs -lcuda -lcudart"
+    fi
+  else
+    PKG_CHECK_MODULES([CUDA], [cuda-7.5 cudart-7.5],, [
+      PKG_CHECK_MODULES([CUDA], [cuda-7.0 cudart-7.0],, [
+        PKG_CHECK_MODULES([CUDA], [cuda-6.5 cudart-6.5],, [
+          AC_MSG_WARN([Could not find cuda headers/libraries])])])])
+  fi
+
+  HAVE_CUDA_H=no
+  HAVE_CUDART_H=no
+  save_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$CUDA_CFLAGS $save_CPPFLAGS "
+  AC_CHECK_HEADER([cuda.h], [HAVE_CUDA_H=yes],
+      AC_MSG_WARN([Could not find cuda.h]))
+  AC_CHECK_HEADER([cuda_runtime_api.h], [HAVE_CUDART_H=yes],
+      AC_MSG_WARN([Could not find cuda_runtime_api.h]))
+  CPPFLAGS=$save_CPPFLAGS
+
+  dnl libcuda and libcudart libraries
+  save_LIBS="$LIBS"
+  LIBS="$CUDA_LIBS $save_LIBS"
+  HAVE_CUDART_LIB="no"
+  AC_CHECK_LIB(cudart,cudaGetErrorString,[HAVE_CUDART_LIB="yes"], [
+      AC_MSG_WARN([Could not find cudart library])])
+  HAVE_CUDA_LIB="no"
+  AC_CHECK_LIB(cuda,cuInit,[HAVE_CUDA_LIB="yes"], [
+      AC_MSG_WARN([Could not find cuda library])])
+  LIBS="$save_LIBS"
+
+  dnl nvEncodeAPI.h header
+  HAVE_NVENCODEAPI_H=no
+  AC_ARG_VAR(NVENCODE_CFLAGS, [C compiler flags for NvEncodeAPI.h])
+  save_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$NVENCODE_CFLAGS $save_CPPFLAGS"
+  AC_CHECK_HEADER([nvEncodeAPI.h], [
+      AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <nvEncodeAPI.h>
+          #if NVENCAPI_MAJOR_VERSION < 5
+          #error "Need nvEncodeAPI.h >= 5.0"
+          #endif
+          ]])], [
+          HAVE_NVENCODEAPI_H=yes
+          ], [
+          AC_MSG_WARN([nvEncodeAPI.h must be >= 5.0])
+          ])
+      ],
+      AC_MSG_WARN([Could not find nvEncodeAPI.h]))
+  AC_SUBST(NVENCODE_CFLAGS)
+  CPPFLAGS="$save_CPPFLAGS"
+
+  dnl libnvnidia-encode library
+  HAVE_NVENCODE_LIB=no
+  AC_ARG_VAR(NVENCODE_LIBS, [linker flags for nvidia-encode])
+  saved_LIBS="$LIBS"
+  LIBS="$NVENCODE_LIBS $saved_LIBS"
+  AC_CHECK_LIB(nvidia-encode, NvEncodeAPICreateInstance, [HAVE_NVENCODE_LIB="yes"],
+      AC_MSG_WARN([Could not find library nvidia-encode]))
+  NVENCODE_LIBS="$NVENCODE_LIBS -lnvidia-encode"
+  AC_SUBST(NVENCODE_LIBS)
+  LIBS="$saved_LIBS"
+
+  USE_NVENC_GST_GL=no
+  if test "x$HAVE_CUDA_H" = "xyes" \
+      -a "x$HAVE_CUDART_H" = "xyes" \
+      -a "x$HAVE_CUDA_LIB" = "xyes" \
+      -a "x$HAVE_CUDART_LIB" = "xyes" \
+      -a "x$HAVE_NVENCODEAPI_H" = "xyes" \
+      -a "x$HAVE_NVENCODE_LIB" = "xyes"; then
+    HAVE_NVENC="yes"
+    if test x"$USE_OPENGL" = x"yes"; then
+      dnl cuda-gl interop header
+      save_CPPFLAGS="$CPPFLAGS"
+      CPPFLAGS="$save_CPPFLAGS $CUDA_CFLAGS"
+      AC_CHECK_HEADER([cuda_gl_interop.h], [
+        USE_NVENC_GST_GL="yes"
+        AC_DEFINE(HAVE_NVENC_GST_GL, [1] , [NVENC GStreamer OpenGL support available])
+        ])
+      CPPFLAGS="$save_CPPFLAGS"
+    fi
+  else
+    HAVE_NVENC="no"
+  fi
+])
+AM_CONDITIONAL(USE_NVENC_GST_GL, test "x$USE_NVENC_GST_GL" = "xyes")
 
 dnl *** ext plug-ins ***
 dnl keep this list sorted alphabetically !
@@ -1736,7 +1895,7 @@
 dnl *** assrender ***
 translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
 AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
-  PKG_CHECK_MODULES(ASSRENDER, libass >= 0.9.4, [
+  PKG_CHECK_MODULES(ASSRENDER, libass >= 0.10.2, [
     HAVE_ASSRENDER="yes" ], [
     HAVE_ASSRENDER="no"
   ])
@@ -2652,7 +2811,7 @@
 dnl *** Qt ***
 translit(dnm, m, l) AM_CONDITIONAL(USE_QT, true)
 AG_GST_CHECK_FEATURE(QT, [Qt elements], qt, [
-  PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Quick >= 5.4.0, [
+  PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0, [
       QT_PATH=`$PKG_CONFIG --variable=exec_prefix Qt5Core`
       QT_HOST_PATH=`$PKG_CONFIG --variable=host_bins Qt5Core`
       AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
@@ -2681,6 +2840,44 @@
             HAVE_QT_WINDOWING="yes"
           ], [AC_MSG_NOTICE([Could not find Qt Wayland integration])])
         fi
+        if test "x$GST_GL_HAVE_WINDOW_ANDROID" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
+          PKG_CHECK_MODULES(QT_ANDROID, Qt5AndroidExtras, [
+            # c++ on android requires a standard library and there are multiple
+            # choices.  cerbero provides a pkg-config file the describes a choice
+            # so try to use that.  Outside cerbero one has to pass these flags
+            # manually for the library one is using
+            PKG_CHECK_MODULES(GNUSTL, gnustl, [
+              QT_CFLAGS="$QT_CFLAGS $GNUSTL_CFLAGS"
+              QT_LIBS="$QT_CFLAGS $GNUSTL_LIBS"
+              ], [
+              AC_MSG_NOTICE([Could not find Standard C++ library])])
+
+            AC_DEFINE([HAVE_QT_ANDROID], [],
+                [Define if Qt Android integration is installed])
+            QT_CFLAGS="$QT_CFLAGS $QT_ANDROID_CFLAGS"
+            QT_LIBS="$QT_LIBS $QT_ANDROID_LIBS"
+            HAVE_QT_WINDOWING="yes"
+          ], [AC_MSG_NOTICE([Could not find Qt Android integration])])
+        fi
+        if test "x$GST_GL_HAVE_WINDOW_COCOA" = "x1" -a "x$GST_GL_HAVE_PLATFORM_CGL" = "x1"; then
+          PKG_CHECK_MODULES(QT_MAC, Qt5MacExtras, [
+            AC_DEFINE([HAVE_QT_MAC], [],
+                [Define if Qt Mac integration is installed])
+            QT_LIBDIR=`$PKG_CONFIG --variable=libdir Qt5Core`
+            QT_CFLAGS="$QT_CFLAGS $QT_MAC_CFLAGS -F$QT_LIBDIR -framework QtCore -framework QtGui -framework QtQuick -framework QtQml -framework QtMacExtras"
+            QT_LIBS="$QT_LIBS $QT_MAC_LIBS"
+            HAVE_QT_WINDOWING="yes"
+          ], [AC_MSG_NOTICE([Could not find Qt Mac integration])])
+        fi
+        if test "x$GST_GL_HAVE_WINDOW_EAGL" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EAGL" = "x1"; then
+          if test "x$HAVE_IOS" = "xyes"; then
+            # iOS doesn't have its own extras package so if we have the core
+            # modules we are good to go
+            AC_DEFINE([HAVE_QT_IOS], [],
+                [Define if Qt iOS integration is installed])
+            HAVE_QT_WINDOWING="yes"
+          fi
+        fi
         if test "x$HAVE_QT_WINDOWING" = "xno"; then
           AC_MSG_WARN([Could not find any Qt Windowing integration])
           HAVE_QT="no"
@@ -3036,28 +3233,62 @@
   fi
 ])
 
+dnl *** hls-crypto ***
+AC_ARG_WITH([hls-crypto],
+  AS_HELP_STRING([--with-hls-crypto=auto|nettle|libgcrypt|openssl], [
+    which cryptographic library version to compile against for hls (default: auto)
+  ]), [
+    AS_CASE([$with_hls_crypto],
+      [nettle],[],
+      [libgcrypt],[],
+      [openssl],[],
+      [with_hls_crypto=auto]
+    )
+  ]
+)
+
 dnl *** hls ***
 translit(dnm, m, l) AM_CONDITIONAL(USE_HLS, true)
 AG_GST_CHECK_FEATURE(HLS, [http live streaming plugin], hls, [
-  PKG_CHECK_MODULES(NETTLE, nettle,
-  [
-    AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
-    HAVE_HLS="yes"
-  ], [
-    AM_PATH_LIBGCRYPT([1.2.0],
-    [
-      AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
-      HAVE_HLS="yes"
-    ], [
-      PKG_CHECK_MODULES(OPENSSL, openssl,
-      [
+  AS_CASE([$with_hls_crypto],
+    [nettle], [
+      PKG_CHECK_MODULES(NETTLE, nettle, [
+        AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
+        HAVE_HLS="yes"
+      ],[AC_MSG_ERROR([Could not find nettle library])])
+    ],
+    [libgcrypt], [
+      AM_PATH_LIBGCRYPT([1.2.0], [
+        AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
+        HAVE_HLS="yes"
+      ],[AC_MSG_ERROR([Could not find libgcrypt library])])
+    ],
+    [openssl], [
+      PKG_CHECK_MODULES(OPENSSL, openssl, [
         AC_DEFINE(HAVE_OPENSSL, 1, [Define if openssl is available])
         HAVE_HLS="yes"
-      ], [
-        HAVE_HLS="no"
+      ],[AC_MSG_ERROR([Could not find openssl library])])
+    ],
+    [
+      dnl Try to find a valid crypto library
+      PKG_CHECK_MODULES(NETTLE, nettle, [
+        AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
+        HAVE_HLS="yes"
+      ],[
+        AM_PATH_LIBGCRYPT([1.2.0], [
+          AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
+          HAVE_HLS="yes"
+        ],[
+          PKG_CHECK_MODULES(OPENSSL, openssl, [
+            AC_DEFINE(HAVE_OPENSSL, 1, [Define if openssl is available])
+            HAVE_HLS="yes"
+          ],[
+            HAVE_HLS="no"
+          ])
+        ])
       ])
-    ])
-  ])
+    ]
+  )
 ])
 
 dnl *** x265 (H.265/HEVC encoder) ***
@@ -3211,6 +3442,9 @@
 dnl LDFLAGS really should only contain flags, not libs - they get added before
 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
 GST_ALL_LDFLAGS="-no-undefined"
+if test "x${enable_Bsymbolic}" = "xyes"; then
+  GST_ALL_LDFLAGS="$GST_ALL_LDFLAGS -Wl,-Bsymbolic-functions"
+fi
 AC_SUBST(GST_ALL_LDFLAGS)
 
 dnl GST_LIB_LDFLAGS
@@ -3241,6 +3475,7 @@
 gst/adpcmdec/Makefile
 gst/adpcmenc/Makefile
 gst/aiff/Makefile
+gst/videoframe_audiolevel/Makefile
 gst/asfmux/Makefile
 gst/audiofxbad/Makefile
 gst/audiomixer/Makefile
@@ -3272,7 +3507,6 @@
 gst/jp2kdecimator/Makefile
 gst/jpegformat/Makefile
 gst/librfb/Makefile
-gst/liveadder/Makefile
 gst/midi/Makefile
 gst/mpegdemux/Makefile
 gst/mpegtsdemux/Makefile
@@ -3327,6 +3561,7 @@
 gst-libs/gst/uridownloader/Makefile
 gst-libs/gst/wayland/Makefile
 gst-libs/gst/base/Makefile
+gst-libs/gst/player/Makefile
 gst-libs/gst/video/Makefile
 sys/Makefile
 sys/dshowdecwrapper/Makefile
@@ -3345,6 +3580,7 @@
 sys/dvb/Makefile
 sys/fbdev/Makefile
 sys/linsys/Makefile
+sys/nvenc/Makefile
 sys/opensles/Makefile
 sys/shm/Makefile
 sys/uvch264/Makefile
@@ -3385,6 +3621,7 @@
 tests/examples/mxf/Makefile
 tests/examples/opencv/Makefile
 tests/examples/uvch264/Makefile
+tests/examples/waylandsink/Makefile
 tests/icles/Makefile
 ext/voamrwbenc/Makefile
 ext/voaacenc/Makefile
@@ -3471,6 +3708,8 @@
 pkgconfig/gstreamer-gl-uninstalled.pc
 pkgconfig/gstreamer-mpegts.pc
 pkgconfig/gstreamer-mpegts-uninstalled.pc
+pkgconfig/gstreamer-player.pc
+pkgconfig/gstreamer-player-uninstalled.pc
 pkgconfig/gstreamer-wayland.pc
 pkgconfig/gstreamer-wayland-uninstalled.pc
 pkgconfig/gstreamer-bad-base.pc
diff --git a/docs/Makefile.in b/docs/Makefile.in
index ad6b0f7..0c53151 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -247,6 +247,8 @@
 CLUTTER_X11_LIBS = @CLUTTER_X11_LIBS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CUDA_CFLAGS = @CUDA_CFLAGS@
+CUDA_LIBS = @CUDA_LIBS@
 CURL_CFLAGS = @CURL_CFLAGS@
 CURL_LIBS = @CURL_LIBS@
 CXX = @CXX@
@@ -284,6 +286,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGL_CFLAGS = @EGL_CFLAGS@
+EGL_LIBS = @EGL_LIBS@
 EGREP = @EGREP@
 ERROR_CFLAGS = @ERROR_CFLAGS@
 ERROR_CXXFLAGS = @ERROR_CXXFLAGS@
@@ -311,6 +315,8 @@
 GIO_LIBS = @GIO_LIBS@
 GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@
 GIO_UNIX_LIBS = @GIO_UNIX_LIBS@
+GLES2_CFLAGS = @GLES2_CFLAGS@
+GLES2_LIBS = @GLES2_LIBS@
 GLIB_CFLAGS = @GLIB_CFLAGS@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
@@ -329,6 +335,8 @@
 GMODULE_NO_EXPORT_LIBS = @GMODULE_NO_EXPORT_LIBS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
+GNUSTL_CFLAGS = @GNUSTL_CFLAGS@
+GNUSTL_LIBS = @GNUSTL_LIBS@
 GRAPHENE_CFLAGS = @GRAPHENE_CFLAGS@
 GRAPHENE_LIBS = @GRAPHENE_LIBS@
 GREP = @GREP@
@@ -339,6 +347,8 @@
 GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@
 GSTPB_PREFIX = @GSTPB_PREFIX@
 GST_AGE = @GST_AGE@
+GST_ALLOCATORS_CFLAGS = @GST_ALLOCATORS_CFLAGS@
+GST_ALLOCATORS_LIBS = @GST_ALLOCATORS_LIBS@
 GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
 GST_API_VERSION = @GST_API_VERSION@
 GST_BASE_CFLAGS = @GST_BASE_CFLAGS@
@@ -364,6 +374,8 @@
 GST_OPTION_OBJCFLAGS = @GST_OPTION_OBJCFLAGS@
 GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
 GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PBUTILS_CFLAGS = @GST_PBUTILS_CFLAGS@
+GST_PBUTILS_LIBS = @GST_PBUTILS_LIBS@
 GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
 GST_PLUGINS_ALL = @GST_PLUGINS_ALL@
 GST_PLUGINS_BAD_CFLAGS = @GST_PLUGINS_BAD_CFLAGS@
@@ -389,6 +401,8 @@
 GST_PREFIX = @GST_PREFIX@
 GST_REVISION = @GST_REVISION@
 GST_TOOLS_DIR = @GST_TOOLS_DIR@
+GST_VIDEO_CFLAGS = @GST_VIDEO_CFLAGS@
+GST_VIDEO_LIBS = @GST_VIDEO_LIBS@
 GTK3_CFLAGS = @GTK3_CFLAGS@
 GTK3_GL_CFLAGS = @GTK3_GL_CFLAGS@
 GTK3_GL_LIBS = @GTK3_GL_LIBS@
@@ -520,6 +534,8 @@
 NETTLE_LIBS = @NETTLE_LIBS@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NVENCODE_CFLAGS = @NVENCODE_CFLAGS@
+NVENCODE_LIBS = @NVENCODE_LIBS@
 OBJC = @OBJC@
 OBJCDEPMODE = @OBJCDEPMODE@
 OBJCFLAGS = @OBJCFLAGS@
@@ -577,8 +593,12 @@
 PYTHON_PLATFORM = @PYTHON_PLATFORM@
 PYTHON_PREFIX = @PYTHON_PREFIX@
 PYTHON_VERSION = @PYTHON_VERSION@
+QT_ANDROID_CFLAGS = @QT_ANDROID_CFLAGS@
+QT_ANDROID_LIBS = @QT_ANDROID_LIBS@
 QT_CFLAGS = @QT_CFLAGS@
 QT_LIBS = @QT_LIBS@
+QT_MAC_CFLAGS = @QT_MAC_CFLAGS@
+QT_MAC_LIBS = @QT_MAC_LIBS@
 QT_WAYLAND_CFLAGS = @QT_WAYLAND_CFLAGS@
 QT_WAYLAND_LIBS = @QT_WAYLAND_LIBS@
 QT_X11_CFLAGS = @QT_X11_CFLAGS@
@@ -648,6 +668,7 @@
 WAYLAND_LIBS = @WAYLAND_LIBS@
 WEBP_CFLAGS = @WEBP_CFLAGS@
 WEBP_LIBS = @WEBP_LIBS@
+WGET = @WGET@
 WILDMIDI_CFLAGS = @WILDMIDI_CFLAGS@
 WILDMIDI_LIBS = @WILDMIDI_LIBS@
 WINKS_LIBS = @WINKS_LIBS@
diff --git a/docs/libs/Makefile.am b/docs/libs/Makefile.am
index f360db9..744e1c2 100644
--- a/docs/libs/Makefile.am
+++ b/docs/libs/Makefile.am
@@ -36,7 +36,11 @@
 CFILE_GLOB=$(top_srcdir)/gst-libs/gst/*/*.c
 
 # Header files to ignore when scanning.
-IGNORE_HFILES = $(top_srcdir)/gst-libs/gst/mpegts/gstmpegts-private.h
+IGNORE_HFILES = \
+	$(top_srcdir)/gst-libs/gst/mpegts/gstmpegts-private.h \
+	$(top_srcdir)/gst-libs/gst/player/gstplayer-signal-dispatcher-private.h \
+	$(top_srcdir)/gst-libs/gst/player/gstplayer-video-renderer-private.h \
+	$(top_srcdir)/gst-libs/gst/player/gstplayer-media-info-private.h
 
 # Images to copy into HTML directory.
 HTML_IMAGES =
@@ -55,6 +59,7 @@
 	$(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
 	$(top_builddir)/gst-libs/gst/insertbin/libgstinsertbin-@GST_API_VERSION@.la \
 	$(top_builddir)/gst-libs/gst/mpegts/libgstmpegts-@GST_API_VERSION@.la \
+	$(top_builddir)/gst-libs/gst/player/libgstplayer-@GST_API_VERSION@.la \
   $(GST_BASE_LIBS)
 
 # If you need to override some of the declarations, place them in this file
diff --git a/docs/libs/Makefile.in b/docs/libs/Makefile.in
index d352115..ae32eb4 100644
--- a/docs/libs/Makefile.in
+++ b/docs/libs/Makefile.in
@@ -209,6 +209,8 @@
 CLUTTER_X11_LIBS = @CLUTTER_X11_LIBS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
+CUDA_CFLAGS = @CUDA_CFLAGS@
+CUDA_LIBS = @CUDA_LIBS@
 CURL_CFLAGS = @CURL_CFLAGS@
 CURL_LIBS = @CURL_LIBS@
 CXX = @CXX@
@@ -246,6 +248,8 @@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
+EGL_CFLAGS = @EGL_CFLAGS@
+EGL_LIBS = @EGL_LIBS@
 EGREP = @EGREP@
 ERROR_CFLAGS = @ERROR_CFLAGS@
 ERROR_CXXFLAGS = @ERROR_CXXFLAGS@
@@ -273,6 +277,8 @@
 GIO_LIBS = @GIO_LIBS@
 GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@
 GIO_UNIX_LIBS = @GIO_UNIX_LIBS@
+GLES2_CFLAGS = @GLES2_CFLAGS@
+GLES2_LIBS = @GLES2_LIBS@
 GLIB_CFLAGS = @GLIB_CFLAGS@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@
@@ -291,6 +297,8 @@
 GMODULE_NO_EXPORT_LIBS = @GMODULE_NO_EXPORT_LIBS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
+GNUSTL_CFLAGS = @GNUSTL_CFLAGS@
+GNUSTL_LIBS = @GNUSTL_LIBS@
 GRAPHENE_CFLAGS = @GRAPHENE_CFLAGS@
 GRAPHENE_LIBS = @GRAPHENE_LIBS@
 GREP = @GREP@
@@ -301,6 +309,8 @@
 GSTPB_PLUGINS_DIR = @GSTPB_PLUGINS_DIR@
 GSTPB_PREFIX = @GSTPB_PREFIX@
 GST_AGE = @GST_AGE@
+GST_ALLOCATORS_CFLAGS = @GST_ALLOCATORS_CFLAGS@
+GST_ALLOCATORS_LIBS = @GST_ALLOCATORS_LIBS@
 GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@
 GST_API_VERSION = @GST_API_VERSION@
 GST_BASE_CFLAGS = @GST_BASE_CFLAGS@
@@ -326,6 +336,8 @@
 GST_OPTION_OBJCFLAGS = @GST_OPTION_OBJCFLAGS@
 GST_PACKAGE_NAME = @GST_PACKAGE_NAME@
 GST_PACKAGE_ORIGIN = @GST_PACKAGE_ORIGIN@
+GST_PBUTILS_CFLAGS = @GST_PBUTILS_CFLAGS@
+GST_PBUTILS_LIBS = @GST_PBUTILS_LIBS@
 GST_PKG_CONFIG_PATH = @GST_PKG_CONFIG_PATH@
 GST_PLUGINS_ALL = @GST_PLUGINS_ALL@
 GST_PLUGINS_BAD_CFLAGS = @GST_PLUGINS_BAD_CFLAGS@
@@ -351,6 +363,8 @@
 GST_PREFIX = @GST_PREFIX@
 GST_REVISION = @GST_REVISION@
 GST_TOOLS_DIR = @GST_TOOLS_DIR@
+GST_VIDEO_CFLAGS = @GST_VIDEO_CFLAGS@
+GST_VIDEO_LIBS = @GST_VIDEO_LIBS@
 GTK3_CFLAGS = @GTK3_CFLAGS@
 GTK3_GL_CFLAGS = @GTK3_GL_CFLAGS@
 GTK3_GL_LIBS = @GTK3_GL_LIBS@
@@ -482,6 +496,8 @@
 NETTLE_LIBS = @NETTLE_LIBS@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NVENCODE_CFLAGS = @NVENCODE_CFLAGS@
+NVENCODE_LIBS = @NVENCODE_LIBS@
 OBJC = @OBJC@
 OBJCDEPMODE = @OBJCDEPMODE@
 OBJCFLAGS = @OBJCFLAGS@
@@ -539,8 +555,12 @@
 PYTHON_PLATFORM = @PYTHON_PLATFORM@
 PYTHON_PREFIX = @PYTHON_PREFIX@
 PYTHON_VERSION = @PYTHON_VERSION@
+QT_ANDROID_CFLAGS = @QT_ANDROID_CFLAGS@
+QT_ANDROID_LIBS = @QT_ANDROID_LIBS@
 QT_CFLAGS = @QT_CFLAGS@
 QT_LIBS = @QT_LIBS@
+QT_MAC_CFLAGS = @QT_MAC_CFLAGS@
+QT_MAC_LIBS = @QT_MAC_LIBS@
 QT_WAYLAND_CFLAGS = @QT_WAYLAND_CFLAGS@
 QT_WAYLAND_LIBS = @QT_WAYLAND_LIBS@
 QT_X11_CFLAGS = @QT_X11_CFLAGS@
@@ -610,6 +630,7 @@
 WAYLAND_LIBS = @WAYLAND_LIBS@
 WEBP_CFLAGS = @WEBP_CFLAGS@
 WEBP_LIBS = @WEBP_LIBS@
+WGET = @WGET@
 WILDMIDI_CFLAGS = @WILDMIDI_CFLAGS@
 WILDMIDI_LIBS = @WILDMIDI_LIBS@
 WINKS_LIBS = @WINKS_LIBS@
@@ -737,7 +758,12 @@
 CFILE_GLOB = $(top_srcdir)/gst-libs/gst/*/*.c
 
 # Header files to ignore when scanning.
-IGNORE_HFILES = $(top_srcdir)/gst-libs/gst/mpegts/gstmpegts-private.h
+IGNORE_HFILES = \
+	$(top_srcdir)/gst-libs/gst/mpegts/gstmpegts-private.h \
+	$(top_srcdir)/gst-libs/gst/player/gstplayer-signal-dispatcher-private.h \
+	$(top_srcdir)/gst-libs/gst/player/gstplayer-video-renderer-private.h \
+	$(top_srcdir)/gst-libs/gst/player/gstplayer-media-info-private.h
+
 
 # Images to copy into HTML directory.
 HTML_IMAGES = 
@@ -756,6 +782,7 @@
 	$(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
 	$(top_builddir)/gst-libs/gst/insertbin/libgstinsertbin-@GST_API_VERSION@.la \
 	$(top_builddir)/gst-libs/gst/mpegts/libgstmpegts-@GST_API_VERSION@.la \
+	$(top_builddir)/gst-libs/gst/player/libgstplayer-@GST_API_VERSION@.la \
   $(GST_BASE_LIBS)
 
 
diff --git a/docs/libs/gst-plugins-bad-libs-docs.sgml b/docs/libs/gst-plugins-bad-libs-docs.sgml
index 76651b7..0159175 100644
--- a/docs/libs/gst-plugins-bad-libs-docs.sgml
+++ b/docs/libs/gst-plugins-bad-libs-docs.sgml
@@ -82,7 +82,6 @@
       <xi:include href="xml/gstglcontextglx.xml"/>
       <xi:include href="xml/gstglcontextwgl.xml"/>
       <xi:include href="xml/gstgldisplay.xml"/>
-      <xi:include href="xml/gstgldownload.xml"/>
       <xi:include href="xml/gsteglimagememory.xml"/>
       <xi:include href="xml/gstglbasefilter.xml"/>
       <xi:include href="xml/gstglfilter.xml"/>
@@ -91,7 +90,6 @@
       <xi:include href="xml/gstglshader.xml"/>
       <xi:include href="xml/gstglsyncmeta.xml"/>
       <xi:include href="xml/gstglupload.xml"/>
-      <xi:include href="xml/gstgluploadmeta.xml"/>
       <xi:include href="xml/gstglutils.xml"/>
       <xi:include href="xml/gstglwindow.xml"/>
       <xi:include href="xml/gstglwindowandroid.xml"/>
@@ -102,6 +100,15 @@
       <xi:include href="xml/gstglwindowx11.xml"/>
     </chapter>
 
+    <chapter id="player">
+      <title>Player Library</title>
+      <xi:include href="xml/gstplayer.xml"/>
+      <xi:include href="xml/gstplayer-mediainfo.xml"/>
+      <xi:include href="xml/gstplayer-gmaincontextsignaldispatcher.xml"/>
+      <xi:include href="xml/gstplayer-videooverlayvideorenderer.xml"/>
+      <xi:include href="xml/gstplayer-visualization.xml"/>
+    </chapter>
+
     <chapter>
       <title>Interfaces</title>
       <xi:include href="xml/gstphotography.xml" />
diff --git a/docs/libs/gst-plugins-bad-libs-sections.txt b/docs/libs/gst-plugins-bad-libs-sections.txt
index 3b7cc05..84c435e 100644
--- a/docs/libs/gst-plugins-bad-libs-sections.txt
+++ b/docs/libs/gst-plugins-bad-libs-sections.txt
@@ -854,11 +854,11 @@
 gst_gl_context_get_current
 <SUBSECTION Standard>
 GST_GL_CONTEXT
-GST_GL_IS_CONTEXT
+GST_IS_GL_CONTEXT
 GST_GL_TYPE_CONTEXT
 GST_GL_CONTEXT_CLASS
 GST_GL_CONTEXT_GET_CLASS
-GST_GL_IS_CONTEXT_CLASS
+GST_IS_GL_CONTEXT_CLASS
 GST_GL_CONTEXT_CAST
 GstGLContextPrivate
 gst_gl_context_get_type
@@ -873,11 +873,11 @@
 gst_gl_context_cocoa_get_pixel_format
 <SUBSECTION Standard>
 GST_GL_CONTEXT_COCOA
-GST_GL_IS_CONTEXT_COCOA
+GST_IS_GL_CONTEXT_COCOA
 GST_GL_TYPE_CONTEXT_COCOA
 GST_GL_CONTEXT_COCOA_CLASS
 GST_GL_CONTEXT_COCOA_GET_CLASS
-GST_GL_IS_CONTEXT_COCOA_CLASS
+GST_IS_GL_CONTEXT_COCOA_CLASS
 GST_GL_CONTEXT_COCOA_CAST
 GstGLContextCocoaPrivate
 gst_gl_context_cocoa_get_type
@@ -894,11 +894,11 @@
 gst_gl_context_egl_get_proc_address
 <SUBSECTION Standard>
 GST_GL_CONTEXT_EGL
-GST_GL_IS_CONTEXT_EGL
+GST_IS_GL_CONTEXT_EGL
 GST_GL_TYPE_CONTEXT_EGL
 GST_GL_CONTEXT_EGL_CLASS
 GST_GL_CONTEXT_EGL_GET_CLASS
-GST_GL_IS_CONTEXT_EGL_CLASS
+GST_IS_GL_CONTEXT_EGL_CLASS
 GST_GL_CONTEXT_EGL_CAST
 GstGLContextEGLPrivate
 gst_gl_context_egl_get_type
@@ -913,11 +913,11 @@
 gst_gl_context_glx_get_proc_address
 <SUBSECTION Standard>
 GST_GL_CONTEXT_GLX
-GST_GL_IS_CONTEXT_GLX
+GST_IS_GL_CONTEXT_GLX
 GST_GL_TYPE_CONTEXT_GLX
 GST_GL_CONTEXT_GLX_CLASS
 GST_GL_CONTEXT_GLX_GET_CLASS
-GST_GL_IS_CONTEXT_GLX_CLASS
+GST_IS_GL_CONTEXT_GLX_CLASS
 GST_GL_CONTEXT_GLX_CAST
 GstGLContextGLXPrivate
 gst_gl_context_glx_get_type
@@ -932,11 +932,11 @@
 gst_gl_context_wgl_get_proc_address
 <SUBSECTION Standard>
 GST_GL_CONTEXT_WGL
-GST_GL_IS_CONTEXT_WGL
+GST_IS_GL_CONTEXT_WGL
 GST_GL_TYPE_CONTEXT_WGL
 GST_GL_CONTEXT_WGL_CLASS
 GST_GL_CONTEXT_WGL_GET_CLASS
-GST_GL_IS_CONTEXT_WGL_CLASS
+GST_IS_GL_CONTEXT_WGL_CLASS
 GST_GL_CONTEXT_WGL_CAST
 GstGLContextWGLPrivate
 gst_gl_context_wgl_get_type
@@ -950,11 +950,11 @@
 gst_gl_context_eagl_get_current_context
 <SUBSECTION Standard>
 GST_GL_CONTEXT_EAGL
-GST_GL_IS_CONTEXT_EAGL
+GST_IS_GL_CONTEXT_EAGL
 GST_GL_TYPE_CONTEXT_EAGL
 GST_GL_CONTEXT_EAGL_CLASS
 GST_GL_CONTEXT_EAGL_GET_CLASS
-GST_GL_IS_CONTEXT_EAGL_CLASS
+GST_IS_GL_CONTEXT_EAGL_CLASS
 GST_GL_CONTEXT_EAGL_CAST
 GstGLContextEaglPrivate
 
@@ -992,26 +992,6 @@
 </SECTION>
 
 <SECTION>
-<FILE>gstgldownload</FILE>
-<TITLE>GstGLDownload</TITLE>
-GstGLDownload
-gst_gl_download_new
-gst_gl_download_set_format
-gst_gl_download_transform_caps
-gst_gl_download_perform_with_data
-<SUBSECTION Standard>
-GST_GL_DOWNLOAD
-GST_GL_DOWNLOAD_CAST
-GST_GL_DOWNLOAD_CLASS
-GST_GL_DOWNLOAD_GET_CLASS
-gst_gl_download_get_type
-GST_IS_GL_DOWNLOAD
-GST_IS_GL_DOWNLOAD_CLASS
-GST_TYPE_GL_DOWNLOAD
-GstGLDownloadPrivate
-</SECTION>
-
-<SECTION>
 <FILE>gstglbasefilter</FILE>
 <TITLE>GstGLBaseFilter</TITLE>
 GstGLBaseFilter
@@ -1165,11 +1145,11 @@
 <SUBSECTION Standard>
 GstGLShaderPrivate
 GST_GL_SHADER
-GST_GL_IS_SHADER
+GST_IS_GL_SHADER
 GST_GL_TYPE_SHADER
 gst_gl_shader_get_type
 GST_GL_SHADER_CLASS
-GST_GL_IS_SHADER_CLASS
+GST_IS_GL_SHADER_CLASS
 GST_GL_SHADER_GET_CLASS
 </SECTION>
 
@@ -1199,7 +1179,6 @@
 gst_gl_upload_propose_allocation
 gst_gl_upload_transform_caps
 gst_gl_upload_perform_with_buffer
-gst_gl_upload_release_buffer
 <SUBSECTION Standard>
 GST_GL_UPLOAD
 GST_GL_UPLOAD_CAST
@@ -1213,26 +1192,6 @@
 </SECTION>
 
 <SECTION>
-<FILE>gstgluploadmeta</FILE>
-<TITLE>GstGLUploadMeta</TITLE>
-GstGLUploadMeta
-gst_gl_upload_meta_new
-gst_gl_upload_meta_set_format
-gst_gl_upload_meta_get_format
-gst_gl_upload_meta_add_to_buffer
-<SUBSECTION Standard>
-GST_GL_UPLOAD_META
-GST_GL_UPLOAD_META_CAST
-GST_GL_UPLOAD_META_CLASS
-GST_GL_UPLOAD_META_GET_CLASS
-gst_gl_upload_meta_get_type
-GST_IS_GL_UPLOAD_META
-GST_IS_GL_UPLOAD_META_CLASS
-GST_TYPE_GL_UPLOAD_META
-GstGLUploadMetaPrivate
-</SECTION>
-
-<SECTION>
 <FILE>gstglutils</FILE>
 <TITLE>Utilities</TITLE>
 GLCB
@@ -1274,7 +1233,6 @@
 GstGLWindowClass
 gst_gl_window_new
 gst_gl_window_draw
-gst_gl_window_draw_unlocked
 gst_gl_window_is_running
 gst_gl_window_quit
 gst_gl_window_run
@@ -1292,8 +1250,8 @@
 gst_gl_window_get_surface_dimensions
 gst_gl_window_handle_events
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW
-GST_GL_IS_WINDOW_CLASS
+GST_IS_GL_WINDOW
+GST_IS_GL_WINDOW_CLASS
 GST_GL_TYPE_WINDOW
 GST_GL_WINDOW
 GST_GL_WINDOW_CLASS
@@ -1314,8 +1272,8 @@
 GstGLWindowAndroidEGLClass
 gst_gl_window_android_egl_new
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW_ANDROID_EGL
-GST_GL_IS_WINDOW_ANDROID_EGL_CLASS
+GST_IS_GL_WINDOW_ANDROID_EGL
+GST_IS_GL_WINDOW_ANDROID_EGL_CLASS
 GST_GL_TYPE_WINDOW_ANDROID_EGL
 GST_GL_WINDOW_ANDROID_EGL
 GST_GL_WINDOW_ANDROID_EGL_CLASS
@@ -1331,8 +1289,8 @@
 gst_gl_window_cocoa_new
 gst_gl_window_cocoa_create_window
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW_COCOA
-GST_GL_IS_WINDOW_COCOA_CLASS
+GST_IS_GL_WINDOW_COCOA
+GST_IS_GL_WINDOW_COCOA_CLASS
 GST_GL_TYPE_WINDOW_COCOA
 GST_GL_WINDOW_COCOA
 GST_GL_WINDOW_COCOA_CLASS
@@ -1348,8 +1306,8 @@
 GstGLWindowDispmanxEGLClass
 gst_gl_window_dispmanx_egl_new
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW_DISPMANX_EGL
-GST_GL_IS_WINDOW_DISPMANX_EGL_CLASS
+GST_IS_GL_WINDOW_DISPMANX_EGL
+GST_IS_GL_WINDOW_DISPMANX_EGL_CLASS
 GST_GL_TYPE_WINDOW_DISPMANX_EGL
 GST_GL_WINDOW_DISPMANX_EGL
 GST_GL_WINDOW_DISPMANX_EGL_CLASS
@@ -1364,8 +1322,8 @@
 GstGLWindowWaylandEGLClass
 gst_gl_window_wayland_egl_new
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW_WAYLAND_EGL
-GST_GL_IS_WINDOW_WAYLAND_EGL_CLASS
+GST_IS_GL_WINDOW_WAYLAND_EGL
+GST_IS_GL_WINDOW_WAYLAND_EGL_CLASS
 GST_GL_TYPE_WINDOW_WAYLAND_EGL
 GST_GL_WINDOW_WAYLAND_EGL
 GST_GL_WINDOW_WAYLAND_EGL_CLASS
@@ -1382,8 +1340,8 @@
 gst_gl_window_win32_new
 gst_gl_window_win32_create_window
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW_WIN32
-GST_GL_IS_WINDOW_WIN32_CLASS
+GST_IS_GL_WINDOW_WIN32
+GST_IS_GL_WINDOW_WIN32_CLASS
 GST_GL_TYPE_WINDOW_WIN32
 GST_GL_WINDOW_WIN32
 GST_GL_WINDOW_WIN32_CLASS
@@ -1402,8 +1360,8 @@
 gst_gl_window_x11_trap_x_errors
 gst_gl_window_x11_untrap_x_errors
 <SUBSECTION Standard>
-GST_GL_IS_WINDOW_X11
-GST_GL_IS_WINDOW_X11_CLASS
+GST_IS_GL_WINDOW_X11
+GST_IS_GL_WINDOW_X11_CLASS
 GST_GL_TYPE_WINDOW_X11
 GST_GL_WINDOW_X11
 GST_GL_WINDOW_X11_CLASS
@@ -1481,3 +1439,245 @@
 GST_VIDEO_AGGREGATOR_PAD_GET_CLASS
 gst_videoaggregator_pad_get_type
 </SECTION>
+
+<SECTION>
+<FILE>gstplayer</FILE>
+GstPlayer
+
+gst_player_new
+gst_player_new_full
+
+gst_player_play
+gst_player_pause
+gst_player_stop
+
+gst_player_seek
+
+gst_player_set_uri
+gst_player_get_uri
+
+gst_player_get_duration
+gst_player_get_position
+
+gst_player_set_volume
+gst_player_set_mute
+gst_player_get_volume
+gst_player_get_mute
+
+gst_player_get_pipeline
+
+gst_player_set_position_update_interval
+gst_player_get_position_update_interval
+
+GstPlayerState
+gst_player_state_get_name
+
+GST_PLAYER_ERROR
+GstPlayerError
+gst_player_error_get_name
+
+gst_player_get_media_info
+gst_player_get_audio_streams
+gst_player_get_video_streams
+gst_player_get_subtitle_streams
+
+gst_player_set_audio_track
+gst_player_set_video_track
+gst_player_set_subtitle_track
+
+gst_player_get_current_audio_track
+gst_player_get_current_video_track
+gst_player_get_current_subtitle_track
+
+gst_player_set_audio_track_enabled
+gst_player_set_video_track_enabled
+gst_player_set_subtitle_track_enabled
+
+gst_player_set_subtitle_uri
+gst_player_get_subtitle_uri
+
+gst_player_set_visualization
+gst_player_set_visualization_enabled
+gst_player_get_current_visualization
+
+GstPlayerColorBalanceType
+gst_player_color_balance_type_get_name
+
+gst_player_has_color_balance
+gst_player_set_color_balance
+gst_player_get_color_balance
+
+gst_player_get_rate
+gst_player_set_rate
+
+GstPlayerSignalDispatcher
+GstPlayerSignalDispatcherInterface
+
+GstPlayerVideoRenderer
+GstPlayerVideoRendererInterface
+
+<SUBSECTION Standard>
+GST_IS_PLAYER
+GST_IS_PLAYER_CLASS
+GST_PLAYER
+GST_PLAYER_CAST
+GST_PLAYER_CLASS
+GST_PLAYER_GET_CLASS
+GST_TYPE_PLAYER
+GstPlayerClass
+gst_player_get_type
+
+gst_player_visualization_get_type
+
+GST_TYPE_PLAYER_ERROR
+gst_player_error_quark
+gst_player_error_get_type
+
+GST_TYPE_PLAYER_STATE
+gst_player_state_get_type
+
+GST_TYPE_PLAYER_COLOR_BALANCE_TYPE
+gst_player_color_balance_type_get_type
+
+GST_TYPE_PLAYER_SIGNAL_DISPATCHER
+GST_PLAYER_SIGNAL_DISPATCHER
+GST_IS_PLAYER_SIGNAL_DISPATCHER
+GST_PLAYER_SIGNAL_DISPATCHER_GET_INTERFACE
+gst_player_signal_dispatcher_get_type
+
+GST_TYPE_PLAYER_VIDEO_RENDERER
+GST_IS_PLAYER_VIDEO_RENDERER
+GST_PLAYER_VIDEO_RENDERER
+GST_PLAYER_VIDEO_RENDERER_GET_INTERFACE
+gst_player_video_renderer_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gstplayer-gmaincontextsignaldispatcher</FILE>
+gst_player_g_main_context_signal_dispatcher_new
+
+<SUBSECTION Standard>
+GST_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER
+GST_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER_CAST
+GST_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER_CLASS
+GST_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER_GET_CLASS
+GST_IS_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER
+GST_IS_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER_CLASS
+GST_TYPE_PLAYER_G_MAIN_CONTEXT_SIGNAL_DISPATCHER
+
+gst_player_g_main_context_signal_dispatcher_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gstplayer-videooverlayvideorenderer</FILE>
+GstPlayerVideoOverlayVideoRenderer
+
+gst_player_video_overlay_video_renderer_new
+gst_player_video_overlay_video_renderer_get_window_handle
+gst_player_video_overlay_video_renderer_set_window_handle
+
+<SUBSECTION Standard>
+GST_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER
+GST_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER_CAST
+GST_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER_CLASS
+GST_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER_GET_CLASS
+GST_IS_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER
+GST_IS_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER_CLASS
+GST_TYPE_PLAYER_VIDEO_OVERLAY_VIDEO_RENDERER
+
+gst_player_video_overlay_video_renderer_get_type
+
+</SECTION>
+
+<SECTION>
+<FILE>gstplayer-visualization</FILE>
+GstPlayerVisualization
+gst_player_visualizations_get
+gst_player_visualizations_free
+gst_player_visualization_copy
+gst_player_visualization_free
+
+<SUBSECTION Standard>
+gst_player_visualization_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gstplayer-mediainfo</FILE>
+GstPlayerMediaInfo
+
+GstPlayerStreamInfo
+GstPlayerAudioInfo
+GstPlayerVideoInfo
+GstPlayerSubtitleInfo
+
+gst_player_media_info_get_uri
+gst_player_media_info_get_duration
+gst_player_media_info_get_title
+gst_player_media_info_get_container_format
+gst_player_media_info_is_seekable
+gst_player_media_info_get_image_sample
+gst_player_media_info_get_tags
+gst_player_media_info_get_stream_list
+
+gst_player_stream_info_get_index
+gst_player_stream_info_get_caps
+gst_player_stream_info_get_tags
+gst_player_stream_info_get_codec
+gst_player_stream_info_get_stream_type
+
+gst_player_audio_info_get_bitrate
+gst_player_audio_info_get_channels
+gst_player_audio_info_get_language
+gst_player_audio_info_get_max_bitrate
+gst_player_audio_info_get_sample_rate
+
+gst_player_video_info_get_bitrate
+gst_player_video_info_get_height
+gst_player_video_info_get_width
+gst_player_video_info_get_framerate
+gst_player_video_info_get_max_bitrate
+gst_player_video_info_get_pixel_aspect_ratio
+
+gst_player_subtitle_info_get_language
+<SUBSECTION Standard>
+GST_PLAYER_MEDIA_INFO
+GST_IS_PLAYER_MEDIA_INFO
+GST_PLAYER_MEDIA_INFO_CLASS
+GST_IS_PLAYER_MEDIA_INFO_CLASS
+GST_TYPE_PLAYER_MEDIA_INFO
+GstPlayerMediaInfoClass
+gst_player_media_info_get_type
+
+GST_PLAYER_STREAM_INFO
+GST_IS_PLAYER_STREAM_INFO
+GST_PLAYER_STREAM_INFO_CLASS
+GST_IS_PLAYER_STREAM_INFO_CLASS
+GST_TYPE_PLAYER_STREAM_INFO
+GstPlayerStreamInfoClass
+gst_player_stream_info_get_type
+
+GST_PLAYER_AUDIO_INFO
+GST_IS_PLAYER_AUDIO_INFO
+GST_PLAYER_AUDIO_INFO_CLASS
+GST_IS_PLAYER_AUDIO_INFO_CLASS
+GST_TYPE_PLAYER_AUDIO_INFO
+GstPlayerAudioInfoClass
+gst_player_audio_info_get_type
+
+GST_PLAYER_VIDEO_INFO
+GST_IS_PLAYER_VIDEO_INFO
+GST_PLAYER_VIDEO_INFO_CLASS
+GST_IS_PLAYER_VIDEO_INFO_CLASS
+GST_TYPE_PLAYER_VIDEO_INFO
+GstPlayerVideoInfoClass
+gst_player_video_info_get_type
+
+GST_IS_PLAYER_SUBTITLE_INFO
+GST_PLAYER_SUBTITLE_INFO
+GST_PLAYER_SUBTITLE_INFO_CLASS
+GST_IS_PLAYER_SUBTITLE_INFO_CLASS
+GST_TYPE_PLAYER_SUBTITLE_INFO
+GstPlayerSubtitleInfoClass
+gst_player_subtitle_info_get_type
+</SECTION>
+
diff --git a/docs/libs/gst-plugins-bad-libs.types b/docs/libs/gst-plugins-bad-libs.types
index 2bf883e..d0de339 100644
--- a/docs/libs/gst-plugins-bad-libs.types
+++ b/docs/libs/gst-plugins-bad-libs.types
@@ -5,6 +5,7 @@
 #include <gst/insertbin/gstinsertbin.h>
 #include <gst/mpegts/mpegts.h>
 #include <gst/gl/gl.h>
+#include <gst/player/player.h>
 
 gst_mpegts_section_get_type
 gst_mpegts_section_type_get_type
@@ -26,17 +27,31 @@
 gst_insert_bin_get_type
 
 
-gst_gl_allocator_get_type
+gst_gl_buffer_allocator_get_type
+gst_gl_memory_allocator_get_type
 gst_gl_base_filter_get_type
 gst_gl_buffer_pool_get_type
 gst_gl_color_convert_get_type
 gst_gl_context_get_type
 gst_gl_display_get_type
-gst_gl_download_get_type
 gst_gl_filter_get_type
 gst_gl_framebuffer_get_type
 gst_gl_shader_get_type
 gst_gl_upload_get_type
-gst_gl_upload_meta_get_type
 gst_gl_window_get_type
 
+gst_player_audio_info_get_type
+gst_player_color_balance_type_get_type
+gst_player_error_get_type
+gst_player_g_main_context_signal_dispatcher_get_type
+gst_player_get_type
+gst_player_media_info_get_type
+gst_player_signal_dispatcher_get_type
+gst_player_state_get_type
+gst_player_stream_info_get_type
+gst_player_subtitle_info_get_type
+gst_player_video_info_get_type
+gst_player_video_overlay_video_renderer_get_type
+gst_player_video_renderer_get_type
+gst_player_visualization_get_type
+
diff --git a/docs/libs/html/GstGLBaseFilter.html b/docs/libs/html/GstGLBaseFilter.html
index 8cc430b..b383e00 100644
--- a/docs/libs/html/GstGLBaseFilter.html
+++ b/docs/libs/html/GstGLBaseFilter.html
@@ -94,7 +94,7 @@
 <p><a class="link" href="GstGLBaseFilter.html" title="GstGLBaseFilter"><span class="type">GstGLBaseFilter</span></a> is a base class that provides the logic of getting the
 GL context from the pipeline.</p>
 <div class="refsect3">
-<a name="id-1.2.9.14.8.2.5"></a><h4>Members</h4>
+<a name="id-1.2.9.13.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -119,7 +119,7 @@
 } GstGLBaseFilterClass;
 </pre>
 <div class="refsect3">
-<a name="id-1.2.9.14.8.3.4"></a><h4>Members</h4>
+<a name="id-1.2.9.13.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
diff --git a/docs/libs/html/GstGLBufferPool.html b/docs/libs/html/GstGLBufferPool.html
index 84a96f3..5a87703 100644
--- a/docs/libs/html/GstGLBufferPool.html
+++ b/docs/libs/html/GstGLBufferPool.html
@@ -58,12 +58,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="GstGLBufferPool.html#GstGLBufferPool-struct" title="struct GstGLBufferPool">GstGLBufferPool</a></td>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="GstGLBufferPool.html#GstGLBufferPool-struct" title="GstGLBufferPool">GstGLBufferPool</a></td>
 </tr>
 <tr>
-<td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="GstGLBufferPool.html#GstGLBufferPoolClass" title="struct GstGLBufferPoolClass">GstGLBufferPoolClass</a></td>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="GstGLBufferPool.html#GstGLBufferPoolClass" title="GstGLBufferPoolClass">GstGLBufferPoolClass</a></td>
 </tr>
 </tbody>
 </table></div>
@@ -114,18 +114,18 @@
 <div class="refsect1">
 <a name="GstGLBufferPool.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstGLBufferPool-struct"></a><h3>struct GstGLBufferPool</h3>
-<pre class="programlisting">struct GstGLBufferPool;</pre>
+<a name="GstGLBufferPool-struct"></a><h3>GstGLBufferPool</h3>
+<pre class="programlisting">typedef struct _GstGLBufferPool GstGLBufferPool;</pre>
 <p>Opaque GstGLBufferPool struct</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstGLBufferPoolClass"></a><h3>struct GstGLBufferPoolClass</h3>
-<pre class="programlisting">struct GstGLBufferPoolClass {
+<a name="GstGLBufferPoolClass"></a><h3>GstGLBufferPoolClass</h3>
+<pre class="programlisting">typedef struct {
   GstBufferPoolClass parent_class;
-};
+} GstGLBufferPoolClass;
 </pre>
-<p>The <a class="link" href="GstGLBufferPool.html#GstGLBufferPoolClass" title="struct GstGLBufferPoolClass"><span class="type">GstGLBufferPoolClass</span></a> structure contains only private data</p>
+<p>The <a class="link" href="GstGLBufferPool.html#GstGLBufferPoolClass" title="GstGLBufferPoolClass"><span class="type">GstGLBufferPoolClass</span></a> structure contains only private data</p>
 </div>
 </div>
 <div class="refsect1">
diff --git a/docs/libs/html/GstGLColorConvert.html b/docs/libs/html/GstGLColorConvert.html
index 9fd6ad0..fbfc2c4 100644
--- a/docs/libs/html/GstGLColorConvert.html
+++ b/docs/libs/html/GstGLColorConvert.html
@@ -258,7 +258,7 @@
 </div>
 <div class="refsect1">
 <a name="GstGLColorConvert.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a>, <a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a>, <a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a></p>
+<p><a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a>, <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/GstGLDownload.html"><span class="type">GstGLDownload</span></a>, <a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a></p>
 </div>
 </div>
 <div class="footer">
diff --git a/docs/libs/html/GstGLDisplay.html b/docs/libs/html/GstGLDisplay.html
index 3cc92f2..0339415 100644
--- a/docs/libs/html/GstGLDisplay.html
+++ b/docs/libs/html/GstGLDisplay.html
@@ -7,7 +7,7 @@
 <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Library Reference Manual">
 <link rel="up" href="gl.html" title="OpenGL Helper Library">
 <link rel="prev" href="gst-plugins-bad-libs-GstGLContextWGL.html" title="GstGLContextWGL">
-<link rel="next" href="GstGLDownload.html" title="GstGLDownload">
+<link rel="next" href="gst-plugins-bad-libs-GstEGLImageMemory.html" title="GstEGLImageMemory">
 <meta name="generator" content="GTK-Doc V1.24 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
@@ -22,7 +22,7 @@
 <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="gl.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
 <td><a accesskey="p" href="gst-plugins-bad-libs-GstGLContextWGL.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="GstGLDownload.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gst-plugins-bad-libs-GstEGLImageMemory.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="GstGLDisplay"></a><div class="titlepage"></div>
diff --git a/docs/libs/html/GstGLDownload.html b/docs/libs/html/GstGLDownload.html
deleted file mode 100644
index 3ddf3c1..0000000
--- a/docs/libs/html/GstGLDownload.html
+++ /dev/null
@@ -1,238 +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>GstGLDownload: GStreamer Bad Plugins 1.0 Library Reference Manual</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
-<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Library Reference Manual">
-<link rel="up" href="gl.html" title="OpenGL Helper Library">
-<link rel="prev" href="GstGLDisplay.html" title="GstGLDisplay">
-<link rel="next" href="gst-plugins-bad-libs-GstEGLImageMemory.html" title="GstEGLImageMemory">
-<meta name="generator" content="GTK-Doc V1.24 (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="#GstGLDownload.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
-                  <a href="#GstGLDownload.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="gl.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="GstGLDisplay.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gst-plugins-bad-libs-GstEGLImageMemory.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="GstGLDownload"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="GstGLDownload.top_of_page"></a>GstGLDownload</span></h2>
-<p>GstGLDownload — an object that downloads GL textures</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="GstGLDownload.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="GstGLDownload.html" title="GstGLDownload"><span class="returnvalue">GstGLDownload</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstGLDownload.html#gst-gl-download-new" title="gst_gl_download_new ()">gst_gl_download_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="GstGLDownload.html#gst-gl-download-set-format" title="gst_gl_download_set_format ()">gst_gl_download_set_format</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/GstCaps.html"><span class="returnvalue">GstCaps</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstGLDownload.html#gst-gl-download-transform-caps" title="gst_gl_download_transform_caps ()">gst_gl_download_transform_caps</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="GstGLDownload.html#gst-gl-download-perform-with-data" title="gst_gl_download_perform_with_data ()">gst_gl_download_perform_with_data</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GstGLDownload.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="GstGLDownload.html#GstGLDownload-struct" title="GstGLDownload">GstGLDownload</a></td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GstGLDownload.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 href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
-            <span class="lineart">╰──</span> GstGLDownload
-</pre>
-</div>
-<div class="refsect1">
-<a name="GstGLDownload.description"></a><h2>Description</h2>
-<p><a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a> is an object that downloads GL textures into system memory.</p>
-<p>A <a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a> can be created with <a class="link" href="GstGLDownload.html#gst-gl-download-new" title="gst_gl_download_new ()"><code class="function">gst_gl_download_new()</code></a></p>
-</div>
-<div class="refsect1">
-<a name="GstGLDownload.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="gst-gl-download-new"></a><h3>gst_gl_download_new ()</h3>
-<pre class="programlisting"><a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="returnvalue">GstGLDownload</span></a> *
-gst_gl_download_new (<em class="parameter"><code><a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a> *context</code></em>);</pre>
-<div class="refsect3">
-<a name="id-1.2.9.12.7.2.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>context</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.9.12.7.2.5"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a> object</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-download-set-format"></a><h3>gst_gl_download_set_format ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_gl_download_set_format (<em class="parameter"><code><a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a> *download</code></em>,
-                            <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="type">GstVideoInfo</span></a> *out_info</code></em>);</pre>
-<p>Initializes <em class="parameter"><code>download</code></em>
- with the information required for download.</p>
-<div class="refsect3">
-<a name="id-1.2.9.12.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>download</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>out_info</p></td>
-<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="type">GstVideoInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-download-transform-caps"></a><h3>gst_gl_download_transform_caps ()</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_gl_download_transform_caps (<em class="parameter"><code><a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a> *convert</code></em>,
-                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstPadDirection"><span class="type">GstPadDirection</span></a> direction</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/GstCaps.html"><span class="type">GstCaps</span></a> *filter</code></em>);</pre>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-download-perform-with-data"></a><h3>gst_gl_download_perform_with_data ()</h3>
-<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_gl_download_perform_with_data (<em class="parameter"><code><a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a> *download</code></em>,
-                                   <em class="parameter"><code><span class="type">GLuint</span> texture_id</code></em>,
-                                   <em class="parameter"><code><span class="type">GLuint</span> texture_target</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[GST_VIDEO_MAX_PLANES]</code></em>);</pre>
-<p>Downloads <em class="parameter"><code>texture_id</code></em>
- into <em class="parameter"><code>data</code></em>
-. <em class="parameter"><code>data</code></em>
- size and format is specified by
-the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoFormat"><span class="type">GstVideoFormat</span></a> passed to <a class="link" href="GstGLDownload.html#gst-gl-download-set-format" title="gst_gl_download_set_format ()"><code class="function">gst_gl_download_set_format()</code></a></p>
-<p>This method can only be used for download a single view.</p>
-<div class="refsect3">
-<a name="id-1.2.9.12.7.5.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>download</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>texture_id</p></td>
-<td class="parameter_description"><p>the texture id to download</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>texture_target</p></td>
-<td class="parameter_description"><p>the GL texture target</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>data</p></td>
-<td class="parameter_description"><p> where the downloaded data should go. </p></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.9.12.7.5.7"></a><h4>Returns</h4>
-<p> whether the download was successful</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="GstGLDownload.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GstGLDownload-struct"></a><h3>GstGLDownload</h3>
-<pre class="programlisting">typedef struct _GstGLDownload GstGLDownload;</pre>
-<p>Opaque <a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a> object</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="GstGLDownload.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a>, <a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a></p>
-</div>
-</div>
-<div class="footer">
-<hr>Generated by GTK-Doc V1.24</div>
-</body>
-</html>
\ No newline at end of file
diff --git a/docs/libs/html/GstGLFilter.html b/docs/libs/html/GstGLFilter.html
index 29f3018..f6ad33d 100644
--- a/docs/libs/html/GstGLFilter.html
+++ b/docs/libs/html/GstGLFilter.html
@@ -122,7 +122,7 @@
  and <em class="parameter"><code>height</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.9.15.7.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.14.7.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -174,7 +174,7 @@
  is the input texture of <em class="parameter"><code>filter</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.9.15.7.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.14.7.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -241,7 +241,7 @@
 .</p>
 <p>See also: <a class="link" href="GstGLFilter.html#gst-gl-filter-render-to-target" title="gst_gl_filter_render_to_target ()"><code class="function">gst_gl_filter_render_to_target()</code></a></p>
 <div class="refsect3">
-<a name="id-1.2.9.15.7.4.6"></a><h4>Parameters</h4>
+<a name="id-1.2.9.14.7.4.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -289,7 +289,7 @@
 <p>Perform automatic upload if needed, call filter_texture vfunc and then an
 automatic download if needed.</p>
 <div class="refsect3">
-<a name="id-1.2.9.15.7.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.14.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -316,7 +316,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.15.7.5.6"></a><h4>Returns</h4>
+<a name="id-1.2.9.14.7.5.6"></a><h4>Returns</h4>
 <p> whether the transformation succeeded</p>
 </div>
 </div>
@@ -330,7 +330,7 @@
 from downstream and automatic upload/download for non-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a>
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a>s.</p>
 <div class="refsect3">
-<a name="id-1.2.9.15.8.2.5"></a><h4>Members</h4>
+<a name="id-1.2.9.14.8.2.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -361,7 +361,7 @@
 } GstGLFilterClass;
 </pre>
 <div class="refsect3">
-<a name="id-1.2.9.15.8.3.4"></a><h4>Members</h4>
+<a name="id-1.2.9.14.8.3.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
diff --git a/docs/libs/html/GstGLUpload.html b/docs/libs/html/GstGLUpload.html
index 4700a58..81e6363 100644
--- a/docs/libs/html/GstGLUpload.html
+++ b/docs/libs/html/GstGLUpload.html
@@ -7,7 +7,7 @@
 <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Library Reference Manual">
 <link rel="up" href="gl.html" title="OpenGL Helper Library">
 <link rel="prev" href="gst-plugins-bad-libs-GstGLSyncMeta.html" title="GstGLSyncMeta">
-<link rel="next" href="GstGLUploadMeta.html" title="GstGLUploadMeta">
+<link rel="next" href="gst-plugins-bad-libs-Utilities.html" title="Utilities">
 <meta name="generator" content="GTK-Doc V1.24 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
@@ -21,7 +21,7 @@
 <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="gl.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
 <td><a accesskey="p" href="gst-plugins-bad-libs-GstGLSyncMeta.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="GstGLUploadMeta.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gst-plugins-bad-libs-Utilities.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="GstGLUpload"></a><div class="titlepage"></div>
@@ -88,14 +88,6 @@
 <a class="link" href="GstGLUpload.html#gst-gl-upload-perform-with-buffer" title="gst_gl_upload_perform_with_buffer ()">gst_gl_upload_perform_with_buffer</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="GstGLUpload.html#gst-gl-upload-release-buffer" title="gst_gl_upload_release_buffer ()">gst_gl_upload_release_buffer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
 </tbody>
 </table></div>
 </div>
@@ -132,7 +124,7 @@
 <pre class="programlisting"><a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="returnvalue">GstGLUpload</span></a> *
 gst_gl_upload_new (<em class="parameter"><code><a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a> *context</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.2.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.19.7.2.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -147,7 +139,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.2.5"></a><h4>Returns</h4>
+<a name="id-1.2.9.19.7.2.5"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a> object</p>
 </div>
 </div>
@@ -159,7 +151,7 @@
                         <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html"><span class="type">GstCaps</span></a> **in_caps</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> **out_caps</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.3.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.19.7.3.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -186,7 +178,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.3.5"></a><h4>Returns</h4>
+<a name="id-1.2.9.19.7.3.5"></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> set by <a class="link" href="GstGLUpload.html#gst-gl-upload-set-caps" title="gst_gl_upload_set_caps ()"><code class="function">gst_gl_upload_set_caps()</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>
 </div>
@@ -201,7 +193,7 @@
 <p>Initializes <em class="parameter"><code>upload</code></em>
  with the information required for upload.</p>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.19.7.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -228,7 +220,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.4.6"></a><h4>Returns</h4>
+<a name="id-1.2.9.19.7.4.6"></a><h4>Returns</h4>
 <p> whether <em class="parameter"><code>in_caps</code></em>
 and <em class="parameter"><code>out_caps</code></em>
 could be set on <em class="parameter"><code>upload</code></em>
@@ -244,7 +236,7 @@
                                   <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>);</pre>
 <p>Adds the required allocation parameters to support uploading.</p>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.5.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.19.7.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -288,12 +280,10 @@
                                    <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://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html"><span class="type">GstBuffer</span></a> **outbuf</code></em>);</pre>
 <p>Uploads <em class="parameter"><code>buffer</code></em>
- to the texture given by <em class="parameter"><code>tex_id</code></em>
-.  <em class="parameter"><code>tex_id</code></em>
- is valid
-until <a class="link" href="GstGLUpload.html#gst-gl-upload-release-buffer" title="gst_gl_upload_release_buffer ()"><code class="function">gst_gl_upload_release_buffer()</code></a> is called.</p>
+ using the transformation specified by
+<a class="link" href="GstGLUpload.html#gst-gl-upload-set-caps" title="gst_gl_upload_set_caps ()"><code class="function">gst_gl_upload_set_caps()</code></a>.</p>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.19.7.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -313,40 +303,17 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>outbuf_ptr</p></td>
-<td class="parameter_description"><p> resulting buffer. </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>esulting buffer</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.20.7.7.6"></a><h4>Returns</h4>
+<a name="id-1.2.9.19.7.7.6"></a><h4>Returns</h4>
 <p> whether the upload was successful</p>
 </div>
 </div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-upload-release-buffer"></a><h3>gst_gl_upload_release_buffer ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_gl_upload_release_buffer (<em class="parameter"><code><a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a> *upload</code></em>);</pre>
-<p>Releases any buffers currently referenced by <em class="parameter"><code>upload</code></em>
-</p>
-<div class="refsect3">
-<a name="id-1.2.9.20.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>upload</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-</div>
 </div>
 <div class="refsect1">
 <a name="GstGLUpload.other_details"></a><h2>Types and Values</h2>
@@ -358,7 +325,7 @@
 </div>
 <div class="refsect1">
 <a name="GstGLUpload.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="GstGLDownload.html" title="GstGLDownload"><span class="type">GstGLDownload</span></a>, <a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a></p>
+<p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/GstGLDownload.html"><span class="type">GstGLDownload</span></a>, <a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a></p>
 </div>
 </div>
 <div class="footer">
diff --git a/docs/libs/html/GstGLUploadMeta.html b/docs/libs/html/GstGLUploadMeta.html
deleted file mode 100644
index b412b10..0000000
--- a/docs/libs/html/GstGLUploadMeta.html
+++ /dev/null
@@ -1,241 +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>GstGLUploadMeta: GStreamer Bad Plugins 1.0 Library Reference Manual</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
-<link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Library Reference Manual">
-<link rel="up" href="gl.html" title="OpenGL Helper Library">
-<link rel="prev" href="GstGLUpload.html" title="GstGLUpload">
-<link rel="next" href="gst-plugins-bad-libs-Utilities.html" title="Utilities">
-<meta name="generator" content="GTK-Doc V1.24 (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="#GstGLUploadMeta.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
-                  <a href="#GstGLUploadMeta.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="gl.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="GstGLUpload.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gst-plugins-bad-libs-Utilities.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="GstGLUploadMeta"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="GstGLUploadMeta.top_of_page"></a>GstGLUploadMeta</span></h2>
-<p>GstGLUploadMeta — an object that provides <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideometa.html#GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a></p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.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="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="returnvalue">GstGLUploadMeta</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-new" title="gst_gl_upload_meta_new ()">gst_gl_upload_meta_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="GstGLUploadMeta.html#gst-gl-upload-meta-set-format" title="gst_gl_upload_meta_set_format ()">gst_gl_upload_meta_set_format</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="returnvalue">GstVideoInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-get-format" title="gst_gl_upload_meta_get_format ()">gst_gl_upload_meta_get_format</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="GstGLUploadMeta.html#gst-gl-upload-meta-add-to-buffer" title="gst_gl_upload_meta_add_to_buffer ()">gst_gl_upload_meta_add_to_buffer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.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="GstGLUploadMeta.html#GstGLUploadMeta-struct" title="GstGLUploadMeta">GstGLUploadMeta</a></td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.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 href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
-            <span class="lineart">╰──</span> GstGLUploadMeta
-</pre>
-</div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.description"></a><h2>Description</h2>
-<p><a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a> is an object that uploads data from system memory into GL textures.</p>
-<p>A <a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a> can be created with <a class="link" href="GstGLUpload.html#gst-gl-upload-new" title="gst_gl_upload_new ()"><code class="function">gst_gl_upload_new()</code></a></p>
-</div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="gst-gl-upload-meta-new"></a><h3>gst_gl_upload_meta_new ()</h3>
-<pre class="programlisting"><a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="returnvalue">GstGLUploadMeta</span></a> *
-gst_gl_upload_meta_new (<em class="parameter"><code><a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a> *context</code></em>);</pre>
-<div class="refsect3">
-<a name="id-1.2.9.21.7.2.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>context</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.9.21.7.2.5"></a><h4>Returns</h4>
-<p> a new <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a> object</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-upload-meta-set-format"></a><h3>gst_gl_upload_meta_set_format ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_gl_upload_meta_set_format (<em class="parameter"><code><a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a> *upload</code></em>,
-                               <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="type">GstVideoInfo</span></a> *info</code></em>);</pre>
-<p>Initializes <em class="parameter"><code>upload</code></em>
- with the information required for upload.</p>
-<div class="refsect3">
-<a name="id-1.2.9.21.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>upload</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>input <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="type">GstVideoInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-upload-meta-get-format"></a><h3>gst_gl_upload_meta_get_format ()</h3>
-<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="returnvalue">GstVideoInfo</span></a> *
-gst_gl_upload_meta_get_format (<em class="parameter"><code><a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a> *upload</code></em>);</pre>
-<div class="refsect3">
-<a name="id-1.2.9.21.7.4.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>upload</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.9.21.7.4.5"></a><h4>Returns</h4>
-<p> The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoInfo"><span class="type">GstVideoInfo</span></a> set by
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-set-format" title="gst_gl_upload_meta_set_format ()"><code class="function">gst_gl_upload_meta_set_format()</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>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-gl-upload-meta-add-to-buffer"></a><h3>gst_gl_upload_meta_add_to_buffer ()</h3>
-<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_gl_upload_meta_add_to_buffer (<em class="parameter"><code><a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a> *upload</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>Adds a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideometa.html#GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> on <em class="parameter"><code>buffer</code></em>
- using <em class="parameter"><code>upload</code></em>
-</p>
-<div class="refsect3">
-<a name="id-1.2.9.21.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>upload</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<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>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.9.21.7.5.6"></a><h4>Returns</h4>
-<p> whether it was successful</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GstGLUploadMeta-struct"></a><h3>GstGLUploadMeta</h3>
-<pre class="programlisting">typedef struct _GstGLUploadMeta GstGLUploadMeta;</pre>
-<p>Opaque <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta"><span class="type">GstGLUploadMeta</span></a> object</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="GstGLUploadMeta.see-also"></a><h2>See Also</h2>
-<p><a class="link" href="GstGLUpload.html" title="GstGLUpload"><span class="type">GstGLUpload</span></a>, <a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLMemory" title="GstGLMemory"><span class="type">GstGLMemory</span></a></p>
-</div>
-</div>
-<div class="footer">
-<hr>Generated by GTK-Doc V1.24</div>
-</body>
-</html>
\ No newline at end of file
diff --git a/docs/libs/html/GstGLWindow.html b/docs/libs/html/GstGLWindow.html
index 565211e..91cb01e 100644
--- a/docs/libs/html/GstGLWindow.html
+++ b/docs/libs/html/GstGLWindow.html
@@ -99,14 +99,6 @@
 </tr>
 <tr>
 <td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="GstGLWindow.html#gst-gl-window-draw-unlocked" title="gst_gl_window_draw_unlocked ()">gst_gl_window_draw_unlocked</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">
@@ -339,7 +331,7 @@
 <pre class="programlisting"><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="returnvalue">GstGLWindow</span></a> *
 gst_gl_window_new (<em class="parameter"><code><a class="link" href="GstGLDisplay.html" title="GstGLDisplay"><span class="type">GstGLDisplay</span></a> *display</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.8.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.8.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -354,7 +346,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.8.5"></a><h4>Returns</h4>
+<a name="id-1.2.9.21.8.8.5"></a><h4>Returns</h4>
 <p> a new <a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> using <em class="parameter"><code>display</code></em>
 's connection. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
@@ -368,30 +360,7 @@
 gst_gl_window_draw (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <p>Redraw the window contents.  Implementations should invoke the draw callback.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.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>window</p></td>
-<td class="parameter_description"><p>a <a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</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-gl-window-draw-unlocked"></a><h3>gst_gl_window_draw_unlocked ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gst_gl_window_draw_unlocked (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
-<p>Redraw the window contents.  Implementations should invoke the draw callback.</p>
-<div class="refsect3">
-<a name="id-1.2.9.23.8.10.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.9.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -414,7 +383,7 @@
 gst_gl_window_is_running (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <p>Whether the runloop is running</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.11.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -437,7 +406,7 @@
 gst_gl_window_quit (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <p>Quit the runloop's execution.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -460,7 +429,7 @@
 gst_gl_window_run (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <p>Start the execution of the runloop.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.13.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -482,7 +451,7 @@
 <pre class="programlisting"><a class="link" href="GstGLContext.html" title="GstGLContext"><span class="returnvalue">GstGLContext</span></a> *
 gst_gl_window_get_context (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.14.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.13.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -497,7 +466,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.14.5"></a><h4>Returns</h4>
+<a name="id-1.2.9.21.8.13.5"></a><h4>Returns</h4>
 <p> the <a class="link" href="GstGLContext.html" title="GstGLContext"><span class="type">GstGLContext</span></a> associated with this <em class="parameter"><code>window</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>
@@ -510,7 +479,7 @@
 <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guintptr"><span class="returnvalue">guintptr</span></a>
 gst_gl_window_get_display (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.15.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.14.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -525,7 +494,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.15.5"></a><h4>Returns</h4>
+<a name="id-1.2.9.21.8.14.5"></a><h4>Returns</h4>
 <p> the windowing system display handle for this <em class="parameter"><code>window</code></em>
 </p>
 </div>
@@ -543,7 +512,7 @@
  is guarenteed to
 have executed when this function returns.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.16.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.15.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -585,7 +554,7 @@
  on the window thread.  The callback may not
 have been executed when this function returns.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.16.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -630,7 +599,7 @@
                                   <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_notify</code></em>);</pre>
 <p>Sets the callback called when the window is about to close.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.18.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.17.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -675,7 +644,7 @@
                                  <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_notify</code></em>);</pre>
 <p>Sets the draw callback called everytime <a class="link" href="GstGLWindow.html#gst-gl-window-draw" title="gst_gl_window_draw ()"><code class="function">gst_gl_window_draw()</code></a> is called</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.19.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.18.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -720,7 +689,7 @@
                                    <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_notify</code></em>);</pre>
 <p>Sets the resize callback called everytime a resize of the window occurs.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.20.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -765,7 +734,7 @@
  should render into.  Some implementations
 require this to be called with a valid handle before drawing can commence.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.21.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.20.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -794,7 +763,7 @@
 <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guintptr"><span class="returnvalue">guintptr</span></a>
 gst_gl_window_get_window_handle (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.22.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.21.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -809,7 +778,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.22.5"></a><h4>Returns</h4>
+<a name="id-1.2.9.21.8.21.5"></a><h4>Returns</h4>
 <p> the window handle we are currently rendering into</p>
 </div>
 <p class="since">Since: 1.4</p>
@@ -824,7 +793,7 @@
 <p>Set the preferred width and height of the window.  Implementations are free
 to ignore this information.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.23.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.22.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -859,7 +828,7 @@
 gst_gl_window_show (<em class="parameter"><code><a class="link" href="GstGLWindow.html" title="GstGLWindow"><span class="type">GstGLWindow</span></a> *window</code></em>);</pre>
 <p>Present the window to the screen.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.24.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.23.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -883,7 +852,7 @@
                                       <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *width</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> *height</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.25.4"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.24.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -925,7 +894,7 @@
 from the <em class="parameter"><code>window</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.8.26.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.8.25.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -953,7 +922,7 @@
 <div class="refsect2">
 <a name="GstGLWindowError"></a><h3>enum GstGLWindowError</h3>
 <div class="refsect3">
-<a name="id-1.2.9.23.9.2.3"></a><h4>Members</h4>
+<a name="id-1.2.9.21.9.2.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="enum_members_name">
@@ -996,7 +965,6 @@
   guintptr (*get_display)        (GstGLWindow *window);
   void     (*set_window_handle)  (GstGLWindow *window, guintptr id);
   guintptr (*get_window_handle)  (GstGLWindow *window);
-  void     (*draw_unlocked)      (GstGLWindow *window);
   void     (*draw)               (GstGLWindow *window);
   void     (*run)                (GstGLWindow *window);
   void     (*quit)               (GstGLWindow *window);
@@ -1013,7 +981,7 @@
 } GstGLWindowClass;
 </pre>
 <div class="refsect3">
-<a name="id-1.2.9.23.9.4.4"></a><h4>Members</h4>
+<a name="id-1.2.9.21.9.4.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -1043,11 +1011,6 @@
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><em class="structfield"><code><a name="GstGLWindowClass.draw-unlocked"></a>draw_unlocked</code></em> ()</p></td>
-<td class="struct_member_description"><p>redraw the window with the specified dimensions</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
 <td class="struct_member_name"><p><em class="structfield"><code><a name="GstGLWindowClass.draw"></a>draw</code></em> ()</p></td>
 <td class="struct_member_description"><p>redraw the window with the specified dimensions</p></td>
 <td class="struct_member_annotations"> </td>
@@ -1128,7 +1091,7 @@
                <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 a key event is received by the GstGLwindow.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.10.2.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.10.2.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1174,7 +1137,7 @@
                <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 a mouse event is received by the GstGLwindow.</p>
 <div class="refsect3">
-<a name="id-1.2.9.23.10.3.5"></a><h4>Parameters</h4>
+<a name="id-1.2.9.21.10.3.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
diff --git a/docs/libs/html/annotation-glossary.html b/docs/libs/html/annotation-glossary.html
index f49fb27..002195c 100644
--- a/docs/libs/html/annotation-glossary.html
+++ b/docs/libs/html/annotation-glossary.html
@@ -38,6 +38,8 @@
 <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>
+<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>
 <dt><span class="glossterm"><a name="annotation-glossterm-closure"></a>closure</span></dt>
 <dd class="glossdef"><p>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</p></dd>
diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html
index e7c13b4..064c13f 100644
--- a/docs/libs/html/api-index-full.html
+++ b/docs/libs/html/api-index-full.html
@@ -271,14 +271,6 @@
 <dd></dd>
 <a name="idxG"></a><h3 class="title">G</h3>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLAllocator-struct" title="GstGLAllocator">GstGLAllocator</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">gstglmemory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GstGLAllocatorClass" title="GstGLAllocatorClass">GstGLAllocatorClass</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">gstglmemory</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-GstGLAPI.html#GstGLAPI" title="enum GstGLAPI">GstGLAPI</a>, enum in <a class="link" href="gst-plugins-bad-libs-GstGLAPI.html" title="GstGLAPI">GstGLAPI</a>
 </dt>
 <dd></dd>
@@ -295,11 +287,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLBufferPool.html#GstGLBufferPool-struct" title="struct GstGLBufferPool">GstGLBufferPool</a>, struct in <a class="link" href="GstGLBufferPool.html" title="GstGLBufferPool">GstGLBufferPool</a>
+<a class="link" href="GstGLBufferPool.html#GstGLBufferPool-struct" title="GstGLBufferPool">GstGLBufferPool</a>, struct in <a class="link" href="GstGLBufferPool.html" title="GstGLBufferPool">GstGLBufferPool</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLBufferPool.html#GstGLBufferPoolClass" title="struct GstGLBufferPoolClass">GstGLBufferPoolClass</a>, struct in <a class="link" href="GstGLBufferPool.html" title="GstGLBufferPool">GstGLBufferPool</a>
+<a class="link" href="GstGLBufferPool.html#GstGLBufferPoolClass" title="GstGLBufferPoolClass">GstGLBufferPoolClass</a>, struct in <a class="link" href="GstGLBufferPool.html" title="GstGLBufferPool">GstGLBufferPool</a>
 </dt>
 <dd></dd>
 <dt>
@@ -367,10 +359,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLDownload.html#GstGLDownload-struct" title="GstGLDownload">GstGLDownload</a>, struct in <a class="link" href="GstGLDownload.html" title="GstGLDownload">GstGLDownload</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstGLFilter.html#GstGLFilter-struct" title="GstGLFilter">GstGLFilter</a>, struct in <a class="link" href="GstGLFilter.html" title="GstGLFilter">GstGLFilter</a>
 </dt>
 <dd></dd>
@@ -399,27 +387,7 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShader--active" title="The “active” property">GstGLShader:active</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShader--compiled" title="The “compiled” property">GstGLShader:compiled</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShader--fragment-src" title="The “fragment-src” property">GstGLShader:fragment-src</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShader--vertex-src" title="The “vertex-src” property">GstGLShader:vertex-src</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShaderError" title="enum GstGLShaderError">GstGLShaderError</a>, enum in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShaderSourceType" title="enum GstGLShaderSourceType">GstGLShaderSourceType</a>, enum in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
+<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GstGLShader--linked" title="The “linked” property">GstGLShader:linked</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
 <dt>
@@ -431,10 +399,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLUploadMeta.html#GstGLUploadMeta-struct" title="GstGLUploadMeta">GstGLUploadMeta</a>, struct in <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta">GstGLUploadMeta</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstGLWindow.html#GstGLWindow-struct" title="GstGLWindow">GstGLWindow</a>, struct in <a class="link" href="GstGLWindow.html" title="GstGLWindow">GstGLWindow</a>
 </dt>
 <dd></dd>
@@ -803,22 +767,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLDownload.html#gst-gl-download-new" title="gst_gl_download_new ()">gst_gl_download_new</a>, function in <a class="link" href="GstGLDownload.html" title="GstGLDownload">GstGLDownload</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstGLDownload.html#gst-gl-download-perform-with-data" title="gst_gl_download_perform_with_data ()">gst_gl_download_perform_with_data</a>, function in <a class="link" href="GstGLDownload.html" title="GstGLDownload">GstGLDownload</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstGLDownload.html#gst-gl-download-set-format" title="gst_gl_download_set_format ()">gst_gl_download_set_format</a>, function in <a class="link" href="GstGLDownload.html" title="GstGLDownload">GstGLDownload</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstGLDownload.html#gst-gl-download-transform-caps" title="gst_gl_download_transform_caps ()">gst_gl_download_transform_caps</a>, function in <a class="link" href="GstGLDownload.html" title="GstGLDownload">GstGLDownload</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-Utilities.html#gst-gl-ensure-element-data" title="gst_gl_ensure_element_data ()">gst_gl_ensure_element_data</a>, function in <a class="link" href="gst-plugins-bad-libs-Utilities.html" title="Utilities">Utilities</a>
 </dt>
 <dd></dd>
@@ -871,15 +819,7 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#gst-gl-memory-alloc" title="gst_gl_memory_alloc ()">gst_gl_memory_alloc</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">GstGLMemory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GST-GL-MEMORY-ALLOCATOR:CAPS" title="GST_GL_MEMORY_ALLOCATOR">GST_GL_MEMORY_ALLOCATOR</a>, macro in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">gstglmemory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#gst-gl-memory-copy-into-texture" title="gst_gl_memory_copy_into_texture ()">gst_gl_memory_copy_into_texture</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">GstGLMemory</a>
+<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#GST-GL-MEMORY-ALLOCATOR:CAPS" title="GST_GL_MEMORY_ALLOCATOR()">GST_GL_MEMORY_ALLOCATOR</a>, macro in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">gstglmemory</a>
 </dt>
 <dd></dd>
 <dt>
@@ -891,18 +831,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#gst-gl-memory-setup-wrapped" title="gst_gl_memory_setup_wrapped ()">gst_gl_memory_setup_wrapped</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">GstGLMemory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#gst-gl-memory-wrapped" title="gst_gl_memory_wrapped ()">gst_gl_memory_wrapped</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">GstGLMemory</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglmemory.html#gst-gl-memory-wrapped-texture" title="gst_gl_memory_wrapped_texture ()">gst_gl_memory_wrapped_texture</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglmemory.html" title="GstGLMemory">GstGLMemory</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-GstGLAPI.html#gst-gl-platform-from-string" title="gst_gl_platform_from_string ()">gst_gl_platform_from_string</a>, function in <a class="link" href="gst-plugins-bad-libs-GstGLAPI.html" title="GstGLAPI">GstGLAPI</a>
 </dt>
 <dd></dd>
@@ -915,74 +843,18 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shadervariables-parse" title="gst_gl_shadervariables_parse ()">gst_gl_shadervariables_parse</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shadervariable-desc" title="struct gst_gl_shadervariable_desc">gst_gl_shadervariable_desc</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shadervariable-set" title="gst_gl_shadervariable_set ()">gst_gl_shadervariable_set</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-bind-attribute-location" title="gst_gl_shader_bind_attribute_location ()">gst_gl_shader_bind_attribute_location</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-compile" title="gst_gl_shader_compile ()">gst_gl_shader_compile</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-compile-all-with-attribs-and-check" title="gst_gl_shader_compile_all_with_attribs_and_check ()">gst_gl_shader_compile_all_with_attribs_and_check</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-compile-and-check" title="gst_gl_shader_compile_and_check ()">gst_gl_shader_compile_and_check</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-compile-with-default-f-and-check" title="gst_gl_shader_compile_with_default_f_and_check ()">gst_gl_shader_compile_with_default_f_and_check</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-compile-with-default-vf-and-check" title="gst_gl_shader_compile_with_default_vf_and_check ()">gst_gl_shader_compile_with_default_vf_and_check</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-compile-with-default-v-and-check" title="gst_gl_shader_compile_with_default_v_and_check ()">gst_gl_shader_compile_with_default_v_and_check</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#GST-GL-SHADER-ERROR:CAPS" title="GST_GL_SHADER_ERROR">GST_GL_SHADER_ERROR</a>, macro in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-error-quark" title="gst_gl_shader_error_quark ()">gst_gl_shader_error_quark</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">gstglshader</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-get-attribute-location" title="gst_gl_shader_get_attribute_location ()">gst_gl_shader_get_attribute_location</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-get-fragment-source" title="gst_gl_shader_get_fragment_source ()">gst_gl_shader_get_fragment_source</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-get-program-handle" title="gst_gl_shader_get_program_handle ()">gst_gl_shader_get_program_handle</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-get-vertex-source" title="gst_gl_shader_get_vertex_source ()">gst_gl_shader_get_vertex_source</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-is-compiled" title="gst_gl_shader_is_compiled ()">gst_gl_shader_is_compiled</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-new" title="gst_gl_shader_new ()">gst_gl_shader_new</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
@@ -991,14 +863,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-set-active" title="gst_gl_shader_set_active ()">gst_gl_shader_set_active</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-set-fragment-source" title="gst_gl_shader_set_fragment_source ()">gst_gl_shader_set_fragment_source</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-set-uniform-1f" title="gst_gl_shader_set_uniform_1f ()">gst_gl_shader_set_uniform_1f</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
@@ -1099,10 +963,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-set-vertex-source" title="gst_gl_shader_set_vertex_source ()">gst_gl_shader_set_vertex_source</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="gst-plugins-bad-libs-gstglshader.html#gst-gl-shader-use" title="gst_gl_shader_use ()">gst_gl_shader_use</a>, function in <a class="link" href="gst-plugins-bad-libs-gstglshader.html" title="GstGLShader">GstGLShader</a>
 </dt>
 <dd></dd>
@@ -1131,22 +991,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-add-to-buffer" title="gst_gl_upload_meta_add_to_buffer ()">gst_gl_upload_meta_add_to_buffer</a>, function in <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta">GstGLUploadMeta</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-get-format" title="gst_gl_upload_meta_get_format ()">gst_gl_upload_meta_get_format</a>, function in <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta">GstGLUploadMeta</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-new" title="gst_gl_upload_meta_new ()">gst_gl_upload_meta_new</a>, function in <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta">GstGLUploadMeta</a>
-</dt>
-<dd></dd>
-<dt>
-<a class="link" href="GstGLUploadMeta.html#gst-gl-upload-meta-set-format" title="gst_gl_upload_meta_set_format ()">gst_gl_upload_meta_set_format</a>, function in <a class="link" href="GstGLUploadMeta.html" title="GstGLUploadMeta">GstGLUploadMeta</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstGLUpload.html#gst-gl-upload-new" title="gst_gl_upload_new ()">gst_gl_upload_new</a>, function in <a class="link" href="GstGLUpload.html" title="GstGLUpload">GstGLUpload</a>
 </dt>
 <dd></dd>
@@ -1159,10 +1003,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLUpload.html#gst-gl-upload-release-buffer" title="gst_gl_upload_release_buffer ()">gst_gl_upload_release_buffer</a>, function in <a class="link" href="GstGLUpload.html" title="GstGLUpload">GstGLUpload</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstGLUpload.html#gst-gl-upload-set-caps" title="gst_gl_upload_set_caps ()">gst_gl_upload_set_caps</a>, function in <a class="link" href="GstGLUpload.html" title="GstGLUpload">GstGLUpload</a>
 </dt>
 <dd></dd>
@@ -1195,10 +1035,6 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstGLWindow.html#gst-gl-window-draw-unlocked" title="gst_gl_window_draw_unlocked ()">gst_gl_window_draw_unlocked</a>, function in <a class="link" href="GstGLWindow.html" title="GstGLWindow">GstGLWindow</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstGLWindow.html#GST-GL-WINDOW-ERROR:CAPS" title="GST_GL_WINDOW_ERROR">GST_GL_WINDOW_ERROR</a>, macro in <a class="link" href="GstGLWindow.html" title="GstGLWindow">GstGLWindow</a>
 </dt>
 <dd></dd>
@@ -2771,6 +2607,478 @@
 <a class="link" href="gst-plugins-bad-libs-GstPhotography.html#GST-PHOTOGRAPHY-SHAKE-RISK:CAPS" title="GST_PHOTOGRAPHY_SHAKE_RISK">GST_PHOTOGRAPHY_SHAKE_RISK</a>, macro in <a class="link" href="gst-plugins-bad-libs-GstPhotography.html" title="GstPhotography">GstPhotography</a>
 </dt>
 <dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-struct" title="GstPlayer">GstPlayer</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-buffering" title="The “buffering” signal">GstPlayer::buffering</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-duration-changed" title="The “duration-changed” signal">GstPlayer::duration-changed</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-end-of-stream" title="The “end-of-stream” signal">GstPlayer::end-of-stream</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-error" title="The “error” signal">GstPlayer::error</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-media-info-updated" title="The “media-info-updated” signal">GstPlayer::media-info-updated</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-mute-changed" title="The “mute-changed” signal">GstPlayer::mute-changed</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-position-updated" title="The “position-updated” signal">GstPlayer::position-updated</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-seek-done" title="The “seek-done” signal">GstPlayer::seek-done</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-state-changed" title="The “state-changed” signal">GstPlayer::state-changed</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-video-dimensions-changed" title="The “video-dimensions-changed” signal">GstPlayer::video-dimensions-changed</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-volume-changed" title="The “volume-changed” signal">GstPlayer::volume-changed</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer-warning" title="The “warning” signal">GstPlayer::warning</a>, object signal in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--current-audio-track" title="The “current-audio-track” property">GstPlayer:current-audio-track</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--current-subtitle-track" title="The “current-subtitle-track” property">GstPlayer:current-subtitle-track</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--current-video-track" title="The “current-video-track” property">GstPlayer:current-video-track</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--duration" title="The “duration” property">GstPlayer:duration</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--media-info" title="The “media-info” property">GstPlayer:media-info</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--mute" title="The “mute” property">GstPlayer:mute</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--pipeline" title="The “pipeline” property">GstPlayer:pipeline</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--position" title="The “position” property">GstPlayer:position</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--position-update-interval" title="The “position-update-interval” property">GstPlayer:position-update-interval</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--rate" title="The “rate” property">GstPlayer:rate</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--signal-dispatcher" title="The “signal-dispatcher” property">GstPlayer:signal-dispatcher</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--suburi" title="The “suburi” property">GstPlayer:suburi</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--uri" title="The “uri” property">GstPlayer:uri</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--video-renderer" title="The “video-renderer” property">GstPlayer:video-renderer</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayer--volume" title="The “volume” property">GstPlayer:volume</a>, object property in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html#GstPlayerAudioInfo-struct" title="GstPlayerAudioInfo">GstPlayerAudioInfo</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html" title="gstplayer-mediainfo">gstplayer-mediainfo</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayerColorBalanceType" title="enum GstPlayerColorBalanceType">GstPlayerColorBalanceType</a>, enum in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayerError" title="enum GstPlayerError">GstPlayerError</a>, enum in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html#GstPlayerMediaInfo-struct" title="GstPlayerMediaInfo">GstPlayerMediaInfo</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html" title="gstplayer-mediainfo">gstplayer-mediainfo</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayerSignalDispatcher-struct" title="GstPlayerSignalDispatcher">GstPlayerSignalDispatcher</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayerSignalDispatcherInterface" title="struct GstPlayerSignalDispatcherInterface">GstPlayerSignalDispatcherInterface</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer.html#GstPlayerState" title="enum GstPlayerState">GstPlayerState</a>, enum in <a class="link" href="gst-plugins-bad-libs-gstplayer.html" title="gstplayer">gstplayer</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html#GstPlayerStreamInfo-struct" title="GstPlayerStreamInfo">GstPlayerStreamInfo</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html" title="gstplayer-mediainfo">gstplayer-mediainfo</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html#GstPlayerSubtitleInfo-struct" title="GstPlayerSubtitleInfo">GstPlayerSubtitleInfo</a>, struct in <a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html" title="gstplayer-mediainfo">gstplayer-mediainfo</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-gstplayer-mediainfo.html#GstPlayerVideoInfo-struct"