Imported Upstream version 1.3.90
diff --git a/ChangeLog b/ChangeLog
index 4f5512e..658c0e6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,578 @@
-=== release 1.3.3 ===
+=== release 1.3.90 ===
 
-2014-06-22  Sebastian Dröge <slomo@coaxion.net>
+2014-06-28  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.3.3
+	  releasing 1.3.90
+
+2014-06-28 10:43:43 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/inter/gstinteraudiosrc.c:
+	  interaudiosrc: Fail in set_caps() if the caps can't be parsed
+
+2014-06-27 17:35:32 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* tests/check/elements/camerabin.c:
+	  tests: camerabin: fix caps leak in test
+	  The gst_query_set_caps_result doesn't take ownership of caps
+
+2014-06-27 17:27:25 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* gst/audiovisualizers/gstaudiovisualizer.c:
+	  audiovisualizer: fix caps leaks
+	  Fix leak of caps event and of caps objects when setting caps on
+	  sink and src pads
+
+2014-06-27 17:00:03 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* ext/kate/gstkateutil.c:
+	  kate: unref events when freeing events list
+	  Instead of just feeing the queue structs
+
+2014-06-27 16:58:47 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* ext/kate/gstkateenc.c:
+	  kateenc: fix segment event leak
+	  gst_event_replace increments the refcount
+
+2014-06-27 12:50:02 -0300  Thiago Santos <ts.santos@sisa.samsung.com>
+
+	* gst-libs/gst/mpegts/gst-atsc-section.c:
+	  mpegts: atsc: avoid calling g_convert with 0-sized input
+	  Avoids an assertion. The cached string will be assigned an empty string
+	  as its value when size is 0.
+
+2014-06-27 10:53:20 +0200  Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* gst-libs/gst/codecparsers/gsth264parser.c:
+	* gst-libs/gst/codecparsers/gsth264parser.h:
+	* gst/videoparsers/gsth264parse.c:
+	* win32/common/libgstcodecparsers.def:
+	  codecparsers: h264: fix memory leak in GstH264PPS.
+	  The gst_h264_parse_pps() function dynamically allocates the slice
+	  group ids map array, so that needs to be cleared before parsing a
+	  new PPS NAL unit again, or when it is no longer needed.
+	  Likewise, a clean copy to the internal NAL parser state needs to be
+	  performed so that to avoid a double-free corruption.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=707282
+	  Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+2014-06-26 17:18:47 +0200  Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+	* gst-libs/gst/codecparsers/gsth264parser.h:
+	  codecparsers: h264: fix typo in GstH264VUIParams description.
+
+2014-01-31 17:07:42 +0100  Aurélien Zanelli <aurelien.zanelli@parrot.com>
+
+	* gst-libs/gst/codecparsers/gsth264parser.c:
+	* gst-libs/gst/codecparsers/gsth264parser.h:
+	* gst/videoparsers/gsth264parse.c:
+	  codecparsers: h264: add support for Recovery Point SEI message.
+	  The recovery point SEI message helps a decoder in determining if the
+	  decoding process would produce acceptable pictures for display after
+	  the decoder initiates random access or after the encoder indicates
+	  a broken link in the coded video sequence.
+	  This is not used in the h264parse element, but it could help debugging.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=723380
+
+2014-03-25 12:01:55 +0100  Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+	* gst-libs/gst/codecparsers/gsth264parser.c:
+	* gst-libs/gst/codecparsers/nalutils.c:
+	* gst-libs/gst/codecparsers/nalutils.h:
+	  codecparsers: h264: add nal_reader_skip_long() helper.
+	  Add nal_reader_skip_long() helper function to allow an arbitrary number
+	  of bits to be skipped. The former nal_reader_skip() function is too
+	  limited to the actual cache size.
+	  Use this new function to simplify gst_h264_parser_parse_sei_message()
+	  default case, that skips unsupported payloads.
+	  v2: made args consistent from header to source file.
+	  Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+2014-06-27 00:09:08 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/video/gstvideoaggregator.c:
+	  videoaggregator: fix a refcount error when keeping the buffer
+	  We take a ref on the pad's buffer at the beginning so we need to
+	  unref when we are done in all cases.
+
+2014-06-26 15:59:35 +0200  Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+	* gst-libs/gst/codecparsers/gstvp8rangedecoder.c:
+	  codecparsers: vp8: move up built-in range decoder private data.
+	  Use the first _gst_reserved[] slot to hold the built-in range decoder
+	  private data. The first slot was formerly the buffer size, which was
+	  then promoted to semi-public namespace when it got integrated as git
+	  commit 2940ac6.
+	  Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
+
+2014-06-26 11:25:37 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglcolorconvert.c:
+	  glcolorconvert: free pixel swizzling information
+
+2014-06-26 11:15:56 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglmixer.c:
+	* gst-libs/gst/gl/gstglmixer.h:
+	  glmixer: remove redundant/unused lock
+	  Use the GstObject lock instead
+
+2014-06-26 11:12:49 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglmixer.c:
+	  glmixer: remove redundant creation and free of GPtrArrays
+	  Also plugs a memory leak
+
+2014-06-26 10:54:38 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglmixer.c:
+	  glmixer: plug a memory leak for the caps
+	  gst_query_set_caps_result() takes a ref on the caps
+
+2014-06-26 10:53:16 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/base/gstaggregator.c:
+	  aggregator: plug a memory leak of the srccaps
+
+2014-06-26 10:31:02 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglmixer.c:
+	  glmixer: intersect with the filtercaps if available
+
+2014-06-26 10:30:41 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h:
+	  gl: update gles2 compatability header
+
+2014-06-25 14:50:05 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* docs/libs/gst-plugins-bad-libs.types:
+	* gst-libs/gst/mpegts/Makefile.am:
+	* gst-libs/gst/mpegts/gst-atsc-section.c:
+	* gst-libs/gst/mpegts/gst-atsc-section.h:
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+	* gst-libs/gst/mpegts/gst-dvb-section.c:
+	* gst-libs/gst/mpegts/gst-dvb-section.h:
+	* gst-libs/gst/mpegts/gst-scte-section.h:
+	* gst-libs/gst/mpegts/gstmpegts-private.h:
+	* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
+	* gst-libs/gst/mpegts/gstmpegtsdescriptor.h:
+	* gst-libs/gst/mpegts/gstmpegtssection.c:
+	* gst-libs/gst/mpegts/gstmpegtssection.h:
+	* gst/mpegtsdemux/mpegtsbase.c:
+	* gst/mpegtsdemux/mpegtsbase.h:
+	* gst/mpegtsdemux/mpegtspacketizer.c:
+	* gst/mpegtsdemux/mpegtspacketizer.h:
+	* gst/mpegtsdemux/mpegtsparse.c:
+	* gst/mpegtsdemux/tsdemux.c:
+	* gst/mpegtsmux/mpegtsmux.c:
+	* gst/mpegtsmux/tsmux/tsmux.c:
+	* gst/mpegtsmux/tsmux/tsmux.h:
+	* gst/mpegtsmux/tsmux/tsmuxstream.c:
+	* gst/mpegtsmux/tsmux/tsmuxstream.h:
+	* sys/dvb/camconditionalaccess.c:
+	* sys/dvb/camconditionalaccess.h:
+	* sys/dvb/camdevice.c:
+	* sys/dvb/camdevice.h:
+	* sys/dvb/camswclient.c:
+	* sys/dvb/camswclient.h:
+	* sys/dvb/camutils.c:
+	* sys/dvb/camutils.h:
+	* sys/dvb/dvbbasebin.c:
+	* tests/check/libs/mpegts.c:
+	* tests/examples/mpegts/ts-parser.c:
+	  mpegts: Unify API : GstMpegts / gst_mpegts_ / GST_*_MPEGTS_
+	  It was previously a mix and match of both variants, introducing just too much
+	  confusion.
+	  The prefix are from now on:
+	  * GstMpegts for structures and type names (and not GstMpegTs)
+	  * gst_mpegts_ for functions (and not gst_mpeg_ts_)
+	  * GST_MPEGTS_ for enums/flags (and not GST_MPEG_TS_)
+	  * GST_TYPE_MPEGTS_ for types (and not GST_TYPE_MPEG_TS_)
+	  The rationale for chosing that is:
+	  * the namespace is shorter/direct (it's mpegts, not mpeg_ts nor mpeg-ts)
+	  * the namespace is one word under Gst
+	  * it's shorter (yah)
+
+2014-06-25 14:13:55 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* gst-libs/gst/mpegts/gstmpegtssection.c:
+	  mpegtssection: Free data in error cases
+	  Data is marked as "transfer full", if we have an error we need to
+	  free it.
+
+2014-06-25 22:05:37 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglfilter.c:
+	  glfilter: pass through the allocation query when in passthrough mode
+	  Otherwise two GL elements on either side will fail to use the same
+	  GL context.
+
+2014-06-25 21:50:40 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstglfilter.c:
+	  glfilter: prefer passthrough for non-sysmem caps
+
+2014-06-25 18:23:52 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* ext/gl/Makefile.am:
+	* ext/gl/gstglfiltershader.c:
+	* ext/gl/gstopengl.c:
+	  glshader: enable glshader on GLES2
+
+2014-06-24 19:37:17 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
+
+	* ext/gl/gstglcolorscale.c:
+	  glcolorscale: do passthrough on same caps
+	  See https://bugzilla.gnome.org/show_bug.cgi?id=732178
+
+2014-06-24 19:35:01 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
+
+	* gst-libs/gst/gl/gstglfilter.c:
+	  glfilter: handle NULL decide_query which means passthrough
+	  See https://bugzilla.gnome.org/show_bug.cgi?id=732178
+
+2014-06-24 19:23:01 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
+
+	* gst-libs/gst/gl/gstglfilter.c:
+	  glfilter: prepend intersection to src caps
+	  Prefer to stay in the same memory space if possible.
+	  Also it let a chance to do passthrough.
+	  See https://bugzilla.gnome.org/show_bug.cgi?id=732178
+
+2014-06-22 13:14:27 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
+
+	* ext/gl/Makefile.am:
+	* ext/gl/gstglvideomixer.c:
+	* ext/gl/gstopengl.c:
+	  gl: enable glvideomixer on GLES2
+
+2014-06-24 22:15:53 -0400  Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
+
+	* sys/dvb/gstdvbsrc.h:
+	  dvbsrc: add copyright/license stub to header
+
+2014-06-24 20:52:54 -0400  Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
+
+	* sys/dvb/gstdvbsrc.c:
+	* sys/dvb/gstdvbsrc.h:
+	  dvbsrc: documentation fixes
+
+2014-06-25 12:00:34 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* ext/gl/gstglvideomixer.c:
+	  glvideomixer: bas output width/height on the pad properties
+	  Allows automatic negotiation of the size in the following case:
+	  gst-launch-1.0 glvideomixer name=m sink_0::xpos=0 sink_1::xpos=320 ! glimagesink \
+	  videotestsrc ! m. \
+	  videotestsrc pattern=1 ! m.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731878
+
+2014-06-25 10:18:48 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* ext/gl/gstglvideomixer.c:
+	  glvideomixer: don't clobber already allocated shader
+
+2014-06-24 16:32:22 +0200  Sebastian Rasmussen <sebrn@axis.com>
+
+	* ext/curl/gstcurlftpsink.c:
+	* ext/curl/gstcurlsftpsink.c:
+	  curls?ftpsink: Fix memory leaks due to new error handling
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732174
+
+2014-06-24 16:04:57 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* docs/libs/gst-plugins-bad-libs-sections.txt:
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+	  mpegts: More doc fixes
+	  Still not done :(
+
+2014-06-24 15:41:36 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* gst-libs/gst/mpegts/gst-atsc-section.h:
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+	* gst-libs/gst/mpegts/gst-dvb-section.h:
+	* gst-libs/gst/mpegts/gstmpegtssection.h:
+	  mpegts: more annotation fixes
+
+2014-06-01 10:44:23 +0200  Stefan Ringel <linuxtv@stefanringel.de>
+
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+	* gst-libs/gst/mpegts/gstmpegts-private.h:
+	* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
+	* gst-libs/gst/mpegts/gstmpegtsdescriptor.h:
+	* gst/mpegtsdemux/tsdemux.c:
+	* tests/examples/mpegts/ts-parser.c:
+	  mpegts: change to GType and from gchar[] to gchar*
+	  https://bugzilla.gnome.org/show_bug.cgi?id=730914
+
+2014-06-24 23:51:24 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* ext/gl/gstopengl.c:
+	  gl: XInitThreads when env variable is set
+	  This is too allow gst-launch debugging with multiple GL contexts as
+	  well as avoiding segfaulting innocent gtk+ apps that have not called
+	  XInitThreads.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731525
+
+2014-06-24 23:33:30 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstgldisplay.c:
+	  gl: add a scary note about initializing thread support for the winsys
+	  We cannot do it as the winsys may crash if we initialize too late.
+	  Example, GLX contexts with Intel drivers:
+	  Intel requires the X Display to be the same in order to share GL
+	  resources across GL contexts.  These GL contexts are generally
+	  accessed from different threads.  Without winsys support it is
+	  nearly impossible to guarentee that concurrent access will not
+	  occur.  This concurrent access could result in crashes or abortion
+	  by the winsys (xcb).
+	  https://bugzilla.gnome.org/show_bug.cgi?id=731525
+
+2014-06-24 14:05:14 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+	* tests/check/libs/mpegts.c:
+	  mpegts: Fix descriptor_from_dvb_service
+	  Various leaks/overwrites issues
+
+2014-06-24 13:46:17 +0200  Edward Hervey <bilboed@bilboed.com>
+
+	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+	* gst/geometrictransform/gstgeometrictransform.c:
+	* gst/geometrictransform/gstperspective.c:
+	  all: Don't declare variables in 'for' loops
+
+2014-06-24 11:27:15 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/base/Makefile.am:
+	  badbase: Use the correct LDFLAGS for creating libraries
+	  Otherwise we won't e.g. create .dlls on Windows
+
+2014-06-24 08:01:21 +0200  Edward Hervey <edward@collabora.com>
+
+	* gst/compositor/Makefile.am:
+	  compositor: Fix Makefile CFLAGS/LIBADD ordering
+	  We want to use the libraries from -bad if/when present
+
+2014-06-23 20:44:23 +0200  Eric Trousset <etrousset@awox.com>
+
+	* sys/d3dvideosink/d3dhelpers.c:
+	* sys/d3dvideosink/d3dhelpers.h:
+	  d3dvideosink: Release D3D surfaces when shutting down the sink
+	  https://bugzilla.gnome.org/show_bug.cgi?id=726026
+
+2014-06-23 20:33:54 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* sys/opensles/openslessrc.c:
+	  openslessrc: Classification of the element factory should be Source/ not Src/
+	  https://bugzilla.gnome.org/show_bug.cgi?id=727811
+
+2014-06-23 22:40:23 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/video/gstvideoaggregator.c:
+	  videoaggregator: don't clobber already heap allocated video frame
+	  CID # 1223440
+
+2014-06-23 22:36:23 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/video/gstvideoaggregator.c:
+	  videoaggregator: fix up the parent chaining for dispose and finalize
+
+2014-06-23 21:43:10 +1000  Matthew Waters <ystreet00@gmail.com>
+
+	* gst-libs/gst/gl/gstgluploadmeta.c:
+	  gluploadmeta: reenable GLMemory upload path
+
+2014-06-22 23:39:14 -0400  Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
+
+	* sys/dvb/gstdvbsrc.c:
+	  dvbsrc: fix diseqc-source prop name in example
+
+2014-06-22 21:04:45 -0400  Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
+
+	* sys/dvb/gstdvbsrc.c:
+	  dvbsrc: fix nit on warning message
+
+2014-06-22 22:04:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* configure.ac:
+	  configure: use $ERROR_CFLAGS instead of hard-coding -Werror
+	  https://bugzilla.gnome.org//show_bug.cgi?id=731692
+
+2014-06-15 21:15:51 +0200  Koop Mast <kwm@rainbow-runner.nl>
+
+	* configure.ac:
+	  configure: use -Werror to make the include GL and GLES2 header check guaranteed fatal
+	  Clang will only give a warning for the redefinition of typedef GLenum.
+	  Since master is build with -Werror this will result in a build failure
+	  later in the gl plugin. Add -Werror to the test, so the test result is as
+	  expected. This will allow the gl plugins to build.
+	  https://bugzilla.gnome.org//show_bug.cgi?id=731692
+
+2014-06-17 14:23:43 +0100  Chris Bass <floobleflam@gmail.com>
+
+	* gst/videoparsers/gsth265parse.c:
+	  h265parse: fix hvcC size check
+	  In ISO/IEC 14496-15, the minimum size of a HEVCDecoderConfigurationRecord
+	  (i.e., the contents of a hvcC box) is 23 bytes. However, the code in h265parse
+	  checks that the size of this data is not less than 28 bytes, and it refuses to
+	  accept caps if the check fails. The result is that standards-conformant streams
+	  that don't carry any parameter sets in their hvcC boxes won't play.
+	  https://bugzilla.gnome.org//show_bug.cgi?id=731783
+
+2014-06-19 20:15:05 +0200  Koop Mast <kwm@rainbow-runner.nl>
+
+	* ext/modplug/Makefile.am:
+	  modplug: don't hardcode c++ standard library
+	  Fixes build with llvm on FreeBSD.
+	  https://bugzilla.gnome.org//show_bug.cgi?id=731930
+
+2014-06-22 19:36:14 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* configure.ac:
+	  Back to development
+
+=== release 1.3.3 ===
+
+2014-06-22 19:22:28 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/gst-plugins-bad-plugins.args:
+	* docs/plugins/gst-plugins-bad-plugins.hierarchy:
+	* docs/plugins/gst-plugins-bad-plugins.interfaces:
+	* docs/plugins/gst-plugins-bad-plugins.prerequisites:
+	* docs/plugins/gst-plugins-bad-plugins.signals:
+	* docs/plugins/inspect/plugin-accurip.xml:
+	* docs/plugins/inspect/plugin-adpcmdec.xml:
+	* docs/plugins/inspect/plugin-adpcmenc.xml:
+	* docs/plugins/inspect/plugin-asfmux.xml:
+	* docs/plugins/inspect/plugin-assrender.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-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-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-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-libs/gst/video/bad-video-orc-dist.c:
+	* gst-plugins-bad.doap:
+	* gst/compositor/compositororc-dist.c:
+	* win32/common/config.h:
+	  Release 1.3.3
+
+2014-06-22 19:09:43 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/bg.po:
+	* po/ca.po:
+	* po/cs.po:
+	* po/da.po:
+	* po/de.po:
+	* po/el.po:
+	* po/en_GB.po:
+	* po/eo.po:
+	* po/es.po:
+	* po/eu.po:
+	* po/fi.po:
+	* po/fr.po:
+	* po/gl.po:
+	* po/hr.po:
+	* po/hu.po:
+	* po/id.po:
+	* po/it.po:
+	* po/ja.po:
+	* po/ky.po:
+	* po/lt.po:
+	* po/lv.po:
+	* po/mt.po:
+	* po/nb.po:
+	* po/nl.po:
+	* po/or.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/sk.po:
+	* po/sl.po:
+	* po/sq.po:
+	* po/sr.po:
+	* po/sv.po:
+	* po/tr.po:
+	* po/uk.po:
+	* po/vi.po:
+	* po/zh_CN.po:
+	  Update .po files
 
 2014-06-22 18:58:51 +0200  Sebastian Dröge <sebastian@centricular.com>
 
diff --git a/Makefile.in b/Makefile.in
index e89b803..7fb4b46 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -97,7 +97,7 @@
 	$(top_srcdir)/configure $(am__configure_deps) \
 	$(srcdir)/config.h.in $(srcdir)/gst-plugins-bad.spec.in \
 	ABOUT-NLS COPYING COPYING.LIB compile config.guess \
-	config.rpath config.sub depcomp install-sh missing ltmain.sh
+	config.rpath config.sub install-sh missing ltmain.sh
 subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
diff --git a/NEWS b/NEWS
index b4f0a58..d183c4e 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-This is GStreamer Bad Plugins 1.3.3
+This is GStreamer Bad Plugins 1.3.90
 
 Changes since 1.2:
 
@@ -129,7 +129,7 @@
      with downstream via caps.
    ∘ Lots of fixes for coverity warnings all over the place.
    ∘ Negotiation related performance improvements.
-   ∘ 500+ fixed bug reports, and many other bug fixes and other
+   ∘ 800+ fixed bug reports, and many other bug fixes and other
      improvements everywhere that had no bug report.
 
 Things to look out for:
@@ -137,5 +137,9 @@
    element.
  • The mfcdec element was removed and replaced by v4l2videodec.
  • osxvideosink is only available in OS X 10.6 or newer.
- • The GstDeviceMonitor API will likely change slightly before the
-   1.4.0 release.
+ • On Android the namespace of the automatically generated Java class
+   for initialization of GStreamer has changed from com.gstreamer to
+   org.freedesktop.gstreamer to prevent namespace pollution.
+ • On iOS you have to update your gst_ios_init.h and gst_ios_init.m in
+   your projects from the one included in the binaries if you used the
+   GnuTLS GIO module before. The loading mechanism has slightly changed.
diff --git a/RELEASE b/RELEASE
index 86b84db..1603d32 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,22 +1,27 @@
 
-Release notes for GStreamer Bad Plugins 1.3.3
+Release notes for GStreamer Bad Plugins 1.3.90
 
 
-The GStreamer team is pleased to announce the third release of the unstable
-1.3 release series. The 1.3 release series is adding new features on top of
-the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x release
-series of the GStreamer multimedia framework. The unstable 1.3 release series
-will lead to the stable 1.4 release series in the next weeks, and newly added
-API can still change until that point.
+The GStreamer team is pleased to announce the first release candidate of
+the stable 1.4 release series. The 1.4 release series is adding new features
+on top of the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x
+release series of the GStreamer multimedia framework.
 
 
-This is hopefully the last 1.3 development release and will be followed by
-the first 1.4.0 release candidate (1.3.90) in 1-2 weeks. Which then hopefully
-is followed by 1.4.0 soonish in early July.
+This release candidate will hopefully shortly be followed by the stable 1.4.0
+release if no bigger regressions or bigger issues are detected, and enough
+testing of the release candidate happened. The new API that was added during
+the 1.3 release series is not expected to change anymore at this point.
 
 
-Binaries for Android, iOS, Mac OS X and Windows will be provided separately
-during the unstable 1.3 release series.
+Binaries for Android, iOS, Mac OS X and Windows are provided together with this
+release.
+
+
+The stable 1.4 release series is API and ABI compatible with 1.0.x, 1.2.x and
+any other 1.x release series in the future. Compared to 1.2.x it contains some
+new features and more intrusive changes that were considered too risky as a
+bugfix.
 
 
 
@@ -68,70 +73,17 @@
 
 Bugs fixed in this release
      
-      * 731918 : videoaggregator: Add a new base class that aggregates video streams
-      * 731921 : gl: Port glmixer to the GstVideoAggregator baseclass
-      * 723352 : codecparsers_h264: Framerate estimation enhancement
-      * 675132 : tsdemux: implement proper seeking with binary search and keyframe detection
-      * 674536 : tsdemux: Freeze on pts-wrap with streaming sources
-      * 704507 : glimagesink: Replace pointer properties with signals
-      * 705129 : androidmedia: add support for video encoding
-      * 709414 : dvbsrc: Uses deprecated field frontend type and add DVB S2/T2 support
-      * 721035 : tsdemux: fails to seek on the attached file (regression)
-      * 721869 : dvbsrc needs to conditionally build for older dvb headers
-      * 722397 : liveadder: handle gap buffer flag
-      * 723529 : glimagesink: only draws on buffer push
-      * 726193 : waylandsink: subsurface & scaling support, plus many other improvements
-      * 726861 : srtp: add support for rollover counter
-      * 728364 : mpegts: add service list, stuffing and bouquet name descriptors
-      * 728429 : mpegts: add multilingual descriptors
-      * 728514 : glimagesink fails with gst-sdk android tutorial-5 / tutorial-4
-      * 728890 : GstGLUpload: wrong colors for YUY2 and UYVY on GLES
-      * 729054 : schroenc: Does not handle variable framerate streams
-      * 729245 : gl: rename platform cocoa to cgl to be more consistent with context type
-      * 729257 : glvideomixer: segfault in gst_gl_video_mixer_callback when accessing frame info
-      * 729278 : gl: avoid using an extra FBO pass in some basic cases
-      * 729750 : gl: GL_FRAMEBUFFER_UNSUPPORTED with GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE_ALPHA
-      * 729798 : glvideomixer: Does not support positioning of input streams
-      * 729861 : glfilter: lose some caps informations like the framerate
-      * 729882 : opusenc: use aux vars to minimize critical region
-      * 730141 : motioncells improvements
-      * 730231 : gl*: No libGLU with NVIDIA binary drivers
-      * 730363 : h264parse: set field_pic_flag when parsing a slice header
-      * 730435 : mpegts: add support for ATSC tables MGT / ETT / EIT / STT
-      * 730523 : pnmdec: PBM (Bitmap) decoding support is not present
-      * 730570 : dvbsrc: fix building with newer kernel headers
-      * 730574 : hlsdemux: Saving IV from media sequence number is done out of file- > iv structure
-      * 730635 : androidmedia: Add a new QCOM color format
-      * 730641 : dvbbasebin: criticals/crash if tsparse is missing
-      * 730642 : mpegts: atsc: rename TVCT to VCT as it is the same as CVCT
-      * 730666 : gl: YUY2 conversion broken in GLES2
-      * 730692 : dvbsrc: Add missing tone ioctl
-      * 730703 : gl: Freshly allocated memory is twice the expected size
-      * 730782 : glimagesink: cannot create window and stalls
-      * 730802 : glimagesink: should honor " show-preroll-frame " property inherited from GstVideoSink
-      * 730830 : hlsdemux: Remove \ " sign from decryption KEY url does not always work
-      * 730847 : example: ts-parser: add terrestrial delivery system descriptor
-      * 730854 : example: ts-parser: add component, content, stream id, ca id, parential rating descriptors
-      * 730901 : example: ts-parser: add linkage descriptor
-      * 730944 : glvideomixer: Got data flow before stream-start event
-      * 731088 : tsdemux: missing audio after seeking in mpeg transport stream (regression)
-      * 731107 : glimagesink: Failed to create window surface: EGL_BAD_ALLOC
-      * 731164 : hlsdemux: Attempt to reload variant playlist if refreshing playlist or downloading fragments failed
-      * 731250 : dvbsrc: tuning/locking logic improvements
-      * 731400 : pnmdec: PNMDecoder gives sticky event warning
-      * 731522 : codecparsers: add C++ guards for MPEG-4 and VP8 parsers
-      * 731524 : codecparsers: h264: fix quantization matrix conversion  routine names
-      * 731555 : gst-plugins-bad requires glib > = 2.34.0
-      * 731698 : tsdemux : latest patch for accurate seeking of h264 streams has been incorrectly merged.
-      * 731707 : tsdemux: remove unused const variables
-      * 731714 : gstsrtpenc: add allow-repeat-tx property
-      * 731722 : OpenGL: Add an element for transforming video geometry
-      * 731768 : gstsrtpenc: unref event when needed
-      * 731899 : rawparser doesn't forward custom query
-      * 731917 : aggregator: Add a new base class for mixers and muxers
-      * 731919 : compositor: Add a new compositor based on the new GstVideoAggregator base class
-      * 731968 : hlsdemux: Fix decrypting fragments
-      * 641204 : dvbsrc: Faster tuning logic: Use poll instead of artificial usleep
+      * 707282 : Memory leak in h264 codecparser
+      * 723380 : codecparsers_h264: Add SEI recovery point message parsing.
+      * 726026 : d3dvideosink: D3d surface not released when pipeline is set to GST_STATE_NULL
+      * 727811 : opensslessrc: Does not work with autoaudiosrc
+      * 731525 : multiple glimagesink elements aborts due to no XInitThreads.
+      * 731692 : Fix include GL and GLES header check with clang.
+      * 731783 : h265parse: incorrect value used to check size of hvcC data
+      * 731878 : glvideomixer: Does not provide correct video resolution information when inputs are tiled
+      * 731930 : modplug: don't hardcode c++ standard lib in Makefile.am
+      * 732174 : curls?ftpsink: Fix memory leaks due to new error handling
+      * 732178 : glcolorscale: add support for passthrough on same caps
 
 ==== Download ====
 
@@ -168,36 +120,18 @@
         
 Contributors to this release
     
-      * Aleix Conchillo Flaqué
-      * Arnaud Vrac
       * Aurélien Zanelli
-      * Chen Jie
-      * Christian Fredrik Kalager Schaller
-      * Damian Ziobro
+      * Chris Bass
       * Edward Hervey
-      * George Kiagiadakis
+      * Eric Trousset
       * Gwenole Beauchesne
-      * Jan Schmidt
-      * Jorge Zapata
       * Julien Isorce
-      * Justin Joy
-      * Lubosz Sarnecki
-      * Mathieu Duponchelle
+      * Koop Mast
       * Matthew Waters
-      * Matthieu Bouron
-      * Michael Olbrich
-      * Miguel París Díaz
-      * Nicola Murino
-      * Nicolas Dufresne
-      * Olivier Crête
       * Reynaldo H. Verdejo Pinochet
-      * Sanjay NM
       * Sebastian Dröge
+      * Sebastian Rasmussen
       * Stefan Ringel
       * Thiago Santos
-      * Thibault Saunier
-      * Thomas Bluemel
       * Tim-Philipp Müller
-      * Vincent Penquerc'h
-      * Wim Taymans
  
\ No newline at end of file
diff --git a/compile b/compile
index b1f4749..531136b 100755
--- a/compile
+++ b/compile
@@ -1,10 +1,9 @@
 #! /bin/sh
 # Wrapper for compilers which do not understand '-c -o'.
 
-scriptversion=2012-01-04.17; # UTC
+scriptversion=2012-10-14.11; # UTC
 
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free
-# Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 # Written by Tom Tromey <tromey@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -79,6 +78,53 @@
   esac
 }
 
+# func_cl_dashL linkdir
+# Make cl look for libraries in LINKDIR
+func_cl_dashL ()
+{
+  func_file_conv "$1"
+  if test -z "$lib_path"; then
+    lib_path=$file
+  else
+    lib_path="$lib_path;$file"
+  fi
+  linker_opts="$linker_opts -LIBPATH:$file"
+}
+
+# func_cl_dashl library
+# Do a library search-path lookup for cl
+func_cl_dashl ()
+{
+  lib=$1
+  found=no
+  save_IFS=$IFS
+  IFS=';'
+  for dir in $lib_path $LIB
+  do
+    IFS=$save_IFS
+    if $shared && test -f "$dir/$lib.dll.lib"; then
+      found=yes
+      lib=$dir/$lib.dll.lib
+      break
+    fi
+    if test -f "$dir/$lib.lib"; then
+      found=yes
+      lib=$dir/$lib.lib
+      break
+    fi
+    if test -f "$dir/lib$lib.a"; then
+      found=yes
+      lib=$dir/lib$lib.a
+      break
+    fi
+  done
+  IFS=$save_IFS
+
+  if test "$found" != yes; then
+    lib=$lib.lib
+  fi
+}
+
 # func_cl_wrapper cl arg...
 # Adjust compile command to suit cl
 func_cl_wrapper ()
@@ -109,43 +155,34 @@
 	      ;;
 	  esac
 	  ;;
+	-I)
+	  eat=1
+	  func_file_conv "$2" mingw
+	  set x "$@" -I"$file"
+	  shift
+	  ;;
 	-I*)
 	  func_file_conv "${1#-I}" mingw
 	  set x "$@" -I"$file"
 	  shift
 	  ;;
-	-l*)
-	  lib=${1#-l}
-	  found=no
-	  save_IFS=$IFS
-	  IFS=';'
-	  for dir in $lib_path $LIB
-	  do
-	    IFS=$save_IFS
-	    if $shared && test -f "$dir/$lib.dll.lib"; then
-	      found=yes
-	      set x "$@" "$dir/$lib.dll.lib"
-	      break
-	    fi
-	    if test -f "$dir/$lib.lib"; then
-	      found=yes
-	      set x "$@" "$dir/$lib.lib"
-	      break
-	    fi
-	  done
-	  IFS=$save_IFS
-
-	  test "$found" != yes && set x "$@" "$lib.lib"
+	-l)
+	  eat=1
+	  func_cl_dashl "$2"
+	  set x "$@" "$lib"
 	  shift
 	  ;;
+	-l*)
+	  func_cl_dashl "${1#-l}"
+	  set x "$@" "$lib"
+	  shift
+	  ;;
+	-L)
+	  eat=1
+	  func_cl_dashL "$2"
+	  ;;
 	-L*)
-	  func_file_conv "${1#-L}"
-	  if test -z "$lib_path"; then
-	    lib_path=$file
-	  else
-	    lib_path="$lib_path;$file"
-	  fi
-	  linker_opts="$linker_opts -LIBPATH:$file"
+	  func_cl_dashL "${1#-L}"
 	  ;;
 	-static)
 	  shared=false
diff --git a/config.guess b/config.guess
index d622a44..1f5c50c 100755
--- a/config.guess
+++ b/config.guess
@@ -1,14 +1,12 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012 Free Software Foundation, Inc.
+#   Copyright 1992-2014 Free Software Foundation, Inc.
 
-timestamp='2012-02-10'
+timestamp='2014-03-23'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful, but
@@ -22,19 +20,17 @@
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
 # configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner.  Please send patches (context
-# diff format) to <config-patches@gnu.org> and include a ChangeLog
-# entry.
+# the same distribution terms that you use for the rest of that
+# program.  This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
 #
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
+# Originally written by Per Bothner.
 #
 # You can get the latest version of this script from:
 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+#
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+
 
 me=`echo "$0" | sed -e 's,.*/,,'`
 
@@ -54,9 +50,7 @@
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -138,6 +132,27 @@
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
+case "${UNAME_SYSTEM}" in
+Linux|GNU|GNU/*)
+	# If the system lacks a compiler, then just pick glibc.
+	# We could probably try harder.
+	LIBC=gnu
+
+	eval $set_cc_for_build
+	cat <<-EOF > $dummy.c
+	#include <features.h>
+	#if defined(__UCLIBC__)
+	LIBC=uclibc
+	#elif defined(__dietlibc__)
+	LIBC=dietlibc
+	#else
+	LIBC=gnu
+	#endif
+	EOF
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+	;;
+esac
+
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -200,6 +215,10 @@
 	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
 	echo "${machine}-${os}${release}"
 	exit ;;
+    *:Bitrig:*:*)
+	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+	exit ;;
     *:OpenBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
 	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
@@ -302,7 +321,7 @@
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
 	echo arm-acorn-riscix${UNAME_RELEASE}
 	exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
+    arm*:riscos:*:*|arm*:RISCOS:*:*)
 	echo arm-unknown-riscos
 	exit ;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
@@ -801,10 +820,13 @@
     i*:CYGWIN*:*)
 	echo ${UNAME_MACHINE}-pc-cygwin
 	exit ;;
+    *:MINGW64*:*)
+	echo ${UNAME_MACHINE}-pc-mingw64
+	exit ;;
     *:MINGW*:*)
 	echo ${UNAME_MACHINE}-pc-mingw32
 	exit ;;
-    i*:MSYS*:*)
+    *:MSYS*:*)
 	echo ${UNAME_MACHINE}-pc-msys
 	exit ;;
     i*:windows32*:*)
@@ -852,21 +874,21 @@
 	exit ;;
     *:GNU:*:*)
 	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
 	exit ;;
     *:GNU/*:*:*)
 	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
 	exit ;;
     i*86:Minix:*:*)
 	echo ${UNAME_MACHINE}-pc-minix
 	exit ;;
     aarch64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     aarch64_be:Linux:*:*)
 	UNAME_MACHINE=aarch64_be
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     alpha:Linux:*:*)
 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -879,59 +901,54 @@
 	  EV68*) UNAME_MACHINE=alphaev68 ;;
 	esac
 	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	exit ;;
+    arc:Linux:*:* | arceb:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     arm*:Linux:*:*)
 	eval $set_cc_for_build
 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
 	    | grep -q __ARM_EABI__
 	then
-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
+	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	else
 	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
 		| grep -q __ARM_PCS_VFP
 	    then
-		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
 	    else
-		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
 	    fi
 	fi
 	exit ;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     cris:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-gnu
+	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
 	exit ;;
     crisv32:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-gnu
+	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
 	exit ;;
     frv:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     hexagon:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     i*86:Linux:*:*)
-	LIBC=gnu
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
 	exit ;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     mips:Linux:*:* | mips64:Linux:*:*)
 	eval $set_cc_for_build
@@ -950,54 +967,63 @@
 	#endif
 EOF
 	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
 	;;
-    or32:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+    openrisc*:Linux:*:*)
+	echo or1k-unknown-linux-${LIBC}
+	exit ;;
+    or32:Linux:*:* | or1k*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     padre:Linux:*:*)
-	echo sparc-unknown-linux-gnu
+	echo sparc-unknown-linux-${LIBC}
 	exit ;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
+	echo hppa64-unknown-linux-${LIBC}
 	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
+	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+	  *)    echo hppa-unknown-linux-${LIBC} ;;
 	esac
 	exit ;;
     ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
+	echo powerpc64-unknown-linux-${LIBC}
 	exit ;;
     ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
+	echo powerpc-unknown-linux-${LIBC}
+	exit ;;
+    ppc64le:Linux:*:*)
+	echo powerpc64le-unknown-linux-${LIBC}
+	exit ;;
+    ppcle:Linux:*:*)
+	echo powerpcle-unknown-linux-${LIBC}
 	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
+	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
 	exit ;;
     sh64*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     tile*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
+	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
 	exit ;;
     x86_64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     xtensa*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1201,6 +1227,9 @@
     BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
 	echo i586-pc-haiku
 	exit ;;
+    x86_64:Haiku:*:*)
+	echo x86_64-unknown-haiku
+	exit ;;
     SX-4:SUPER-UX:*:*)
 	echo sx4-nec-superux${UNAME_RELEASE}
 	exit ;;
@@ -1227,19 +1256,31 @@
 	exit ;;
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    i386)
-		eval $set_cc_for_build
-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		      grep IS_64BIT_ARCH >/dev/null
-		  then
-		      UNAME_PROCESSOR="x86_64"
-		  fi
-		fi ;;
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
+	eval $set_cc_for_build
+	if test "$UNAME_PROCESSOR" = unknown ; then
+	    UNAME_PROCESSOR=powerpc
+	fi
+	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+	    if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+		    (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+		    grep IS_64BIT_ARCH >/dev/null
+		then
+		    case $UNAME_PROCESSOR in
+			i386) UNAME_PROCESSOR=x86_64 ;;
+			powerpc) UNAME_PROCESSOR=powerpc64 ;;
+		    esac
+		fi
+	    fi
+	elif test "$UNAME_PROCESSOR" = i386 ; then
+	    # Avoid executing cc on OS X 10.9, as it ships with a stub
+	    # that puts up a graphical alert prompting to install
+	    # developer tools.  Any system running Mac OS X 10.7 or
+	    # later (Darwin 11 and later) is required to have a 64-bit
+	    # processor. This is not true of the ARM version of Darwin
+	    # that Apple uses in portable devices.
+	    UNAME_PROCESSOR=x86_64
+	fi
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
 	exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
@@ -1256,7 +1297,7 @@
     NEO-?:NONSTOP_KERNEL:*:*)
 	echo neo-tandem-nsk${UNAME_RELEASE}
 	exit ;;
-    NSE-?:NONSTOP_KERNEL:*:*)
+    NSE-*:NONSTOP_KERNEL:*:*)
 	echo nse-tandem-nsk${UNAME_RELEASE}
 	exit ;;
     NSR-?:NONSTOP_KERNEL:*:*)
@@ -1330,157 +1371,6 @@
 	exit ;;
 esac
 
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-	"4"
-#else
-	""
-#endif
-	); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
 cat >&2 <<EOF
 $0: unable to guess system type
 
diff --git a/config.sub b/config.sub
index c894da4..d654d03 100755
--- a/config.sub
+++ b/config.sub
@@ -1,24 +1,18 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012 Free Software Foundation, Inc.
+#   Copyright 1992-2014 Free Software Foundation, Inc.
 
-timestamp='2012-02-10'
+timestamp='2014-05-01'
 
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine.  It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
 # (at your option) any later version.
 #
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, see <http://www.gnu.org/licenses/>.
@@ -26,11 +20,12 @@
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
 # configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# the same distribution terms that you use for the rest of that
+# program.  This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
 
 
-# Please send patches to <config-patches@gnu.org>.  Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
@@ -73,9 +68,7 @@
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -123,7 +116,7 @@
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
-  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
   knetbsd*-gnu* | netbsd*-gnu* | \
   kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
@@ -156,7 +149,7 @@
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray | -microblaze)
+	-apple | -axis | -knuth | -cray | -microblaze*)
 		os=
 		basic_machine=$1
 		;;
@@ -225,6 +218,12 @@
 	-isc*)
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
 		;;
+	-lynx*178)
+		os=-lynxos178
+		;;
+	-lynx*5)
+		os=-lynxos5
+		;;
 	-lynx*)
 		os=-lynxos
 		;;
@@ -253,10 +252,12 @@
 	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
 	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
 	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-        | be32 | be64 \
+	| arc | arceb \
+	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
+	| avr | avr32 \
+	| be32 | be64 \
 	| bfin \
-	| c4x | clipper \
+	| c4x | c8051 | clipper \
 	| d10v | d30v | dlx | dsp16xx \
 	| epiphany \
 	| fido | fr30 | frv \
@@ -264,10 +265,11 @@
 	| hexagon \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
+	| k1om \
 	| le32 | le64 \
 	| lm32 \
 	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep | metag \
+	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
@@ -281,20 +283,22 @@
 	| mips64vr5900 | mips64vr5900el \
 	| mipsisa32 | mipsisa32el \
 	| mipsisa32r2 | mipsisa32r2el \
+	| mipsisa32r6 | mipsisa32r6el \
 	| mipsisa64 | mipsisa64el \
 	| mipsisa64r2 | mipsisa64r2el \
+	| mipsisa64r6 | mipsisa64r6el \
 	| mipsisa64sb1 | mipsisa64sb1el \
 	| mipsisa64sr71k | mipsisa64sr71kel \
+	| mipsr5900 | mipsr5900el \
 	| mipstx39 | mipstx39el \
 	| mn10200 | mn10300 \
 	| moxie \
 	| mt \
 	| msp430 \
 	| nds32 | nds32le | nds32be \
-	| nios | nios2 \
+	| nios | nios2 | nios2eb | nios2el \
 	| ns16k | ns32k \
-	| open8 \
-	| or32 \
+	| open8 | or1k | or1knd | or32 \
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle \
 	| pyramid \
@@ -322,7 +326,7 @@
 	c6x)
 		basic_machine=tic6x-unknown
 		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
 		basic_machine=$basic_machine-unknown
 		os=-none
 		;;
@@ -364,13 +368,13 @@
 	| aarch64-* | aarch64_be-* \
 	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
 	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
 	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
 	| avr-* | avr32-* \
 	| be32-* | be64-* \
 	| bfin-* | bs2000-* \
 	| c[123]* | c30-* | [cjt]90-* | c4x-* \
-	| clipper-* | craynv-* | cydra-* \
+	| c8051-* | clipper-* | craynv-* | cydra-* \
 	| d10v-* | d30v-* | dlx-* \
 	| elxsi-* \
 	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
@@ -379,11 +383,13 @@
 	| hexagon-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
+	| k1om-* \
 	| le32-* | le64-* \
 	| lm32-* \
 	| m32c-* | m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
+	| microblaze-* | microblazeel-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
 	| mips16-* \
 	| mips64-* | mips64el-* \
@@ -397,18 +403,22 @@
 	| mips64vr5900-* | mips64vr5900el-* \
 	| mipsisa32-* | mipsisa32el-* \
 	| mipsisa32r2-* | mipsisa32r2el-* \
+	| mipsisa32r6-* | mipsisa32r6el-* \
 	| mipsisa64-* | mipsisa64el-* \
 	| mipsisa64r2-* | mipsisa64r2el-* \
+	| mipsisa64r6-* | mipsisa64r6el-* \
 	| mipsisa64sb1-* | mipsisa64sb1el-* \
 	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
+	| mipsr5900-* | mipsr5900el-* \
 	| mipstx39-* | mipstx39el-* \
 	| mmix-* \
 	| mt-* \
 	| msp430-* \
 	| nds32-* | nds32le-* | nds32be-* \
-	| nios-* | nios2-* \
+	| nios-* | nios2-* | nios2eb-* | nios2el-* \
 	| none-* | np1-* | ns16k-* | ns32k-* \
 	| open8-* \
+	| or1k*-* \
 	| orion-* \
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
@@ -782,11 +792,15 @@
 		basic_machine=ns32k-utek
 		os=-sysv
 		;;
-	microblaze)
+	microblaze*)
 		basic_machine=microblaze-xilinx
 		;;
+	mingw64)
+		basic_machine=x86_64-pc
+		os=-mingw64
+		;;
 	mingw32)
-		basic_machine=i386-pc
+		basic_machine=i686-pc
 		os=-mingw32
 		;;
 	mingw32ce)
@@ -822,7 +836,7 @@
 		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
 		;;
 	msys)
-		basic_machine=i386-pc
+		basic_machine=i686-pc
 		os=-msys
 		;;
 	mvs)
@@ -1013,7 +1027,11 @@
 		basic_machine=i586-unknown
 		os=-pw32
 		;;
-	rdos)
+	rdos | rdos64)
+		basic_machine=x86_64-pc
+		os=-rdos
+		;;
+	rdos32)
 		basic_machine=i386-pc
 		os=-rdos
 		;;
@@ -1340,21 +1358,21 @@
 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
 	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
 	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-	      | -sym* | -kopensolaris* \
+	      | -sym* | -kopensolaris* | -plan9* \
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
 	      | -aos* | -aros* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-	      | -openbsd* | -solidbsd* \
+	      | -bitrig* | -openbsd* | -solidbsd* \
 	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
 	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
 	      | -chorusos* | -chorusrdb* | -cegcc* \
 	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -linux-android* \
-	      | -linux-newlib* | -linux-uclibc* \
+	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
 	      | -uxpv* | -beos* | -mpeix* | -udk* \
 	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
@@ -1362,7 +1380,7 @@
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1486,9 +1504,6 @@
 	-aros*)
 		os=-aros
 		;;
-	-kaos*)
-		os=-kaos
-		;;
 	-zvmoe)
 		os=-zvmoe
 		;;
@@ -1537,6 +1552,12 @@
 	c4x-* | tic4x-*)
 		os=-coff
 		;;
+	c8051-*)
+		os=-elf
+		;;
+	hexagon-*)
+		os=-elf
+		;;
 	tic54x-*)
 		os=-coff
 		;;
diff --git a/configure b/configure
index 643d812..4fad55f 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.3.3.
+# Generated by GNU Autoconf 2.69 for GStreamer Bad Plug-ins 1.3.90.
 #
 # 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.3.3'
-PACKAGE_STRING='GStreamer Bad Plug-ins 1.3.3'
+PACKAGE_VERSION='1.3.90'
+PACKAGE_STRING='GStreamer Bad Plug-ins 1.3.90'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -2526,7 +2526,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.3.3 to adapt to many kinds of systems.
+\`configure' configures GStreamer Bad Plug-ins 1.3.90 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2601,7 +2601,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer Bad Plug-ins 1.3.3:";;
+     short | recursive ) echo "Configuration of GStreamer Bad Plug-ins 1.3.90:";;
    esac
   cat <<\_ACEOF
 
@@ -3215,7 +3215,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer Bad Plug-ins configure 1.3.3
+GStreamer Bad Plug-ins configure 1.3.90
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -4188,7 +4188,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.3.3, which was
+It was created by GStreamer Bad Plug-ins $as_me 1.3.90, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -5170,7 +5170,7 @@
 
 # Define the identity of the package.
  PACKAGE='gst-plugins-bad'
- VERSION='1.3.3'
+ VERSION='1.3.90'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -5381,9 +5381,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.3.3 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.3.3 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.3.3 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.3.90 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.3.90 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.3.90 | cut -d'.' -f3)
 
 
 
@@ -5394,7 +5394,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.3.3 | cut -d'.' -f4)
+  NANO=$(echo 1.3.90 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -10051,10 +10051,10 @@
 done
 
 
-  GST_CURRENT=303
+  GST_CURRENT=390
   GST_REVISION=0
-  GST_AGE=303
-  GST_LIBVERSION=303:0:303
+  GST_AGE=390
+  GST_LIBVERSION=390:0:390
 
 
 
@@ -14379,8 +14379,8 @@
 
 
 
-GST_REQ=1.3.3
-GSTPB_REQ=1.3.3
+GST_REQ=1.3.90
+GSTPB_REQ=1.3.90
 
 
 
@@ -33885,6 +33885,8 @@
 "
   { $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"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $GL_INCLUDES
@@ -33922,6 +33924,7 @@
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  CPPFLAGS="$save_CPPFLAGS"
 fi
 
 #dnl Check for OpenGL, GLU
@@ -56279,7 +56282,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.3.3, which was
+This file was extended by GStreamer Bad Plug-ins $as_me 1.3.90, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -56345,7 +56348,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.3.3
+GStreamer Bad Plug-ins config.status 1.3.90
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index fa06db3..614cecd 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, cvs and prerelease does Werror too
-AC_INIT([GStreamer Bad Plug-ins],[1.3.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
+AC_INIT([GStreamer Bad Plug-ins],[1.3.90],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
 
 AG_GST_INIT
 
@@ -48,11 +48,11 @@
 dnl - interfaces added -> increment AGE
 dnl - interfaces removed -> AGE = 0
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 303, 0, 303)
+AS_LIBTOOL(GST, 390, 0, 390)
 
 dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.3.3
-GSTPB_REQ=1.3.3
+GST_REQ=1.3.90
+GSTPB_REQ=1.3.90
 
 dnl *** autotools stuff ****
 
@@ -851,6 +851,8 @@
 # endif
 "
   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]], [[
     #if !defined(GL_FALSE)
     #error Failed to include GL headers
@@ -868,6 +870,7 @@
       HAVE_GLES2=no
     fi
   ])
+  CPPFLAGS="$save_CPPFLAGS"
 fi
 
 #dnl Check for OpenGL, GLU
diff --git a/depcomp b/depcomp
index bd0ac08..4ebd5b3 100755
--- a/depcomp
+++ b/depcomp
@@ -1,10 +1,9 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2011-12-04.11; # UTC
+scriptversion=2013-05-30.07; # UTC
 
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
-# 2011 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -28,9 +27,9 @@
 
 case $1 in
   '')
-     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
+    echo "$0: No command.  Try '$0 --help' for more information." 1>&2
+    exit 1;
+    ;;
   -h | --h*)
     cat <<\EOF
 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
@@ -40,8 +39,8 @@
 
 Environment variables:
   depmode     Dependency tracking mode.
-  source      Source file read by `PROGRAMS ARGS'.
-  object      Object file output by `PROGRAMS ARGS'.
+  source      Source file read by 'PROGRAMS ARGS'.
+  object      Object file output by 'PROGRAMS ARGS'.
   DEPDIR      directory where to store dependencies.
   depfile     Dependency file to output.
   tmpdepfile  Temporary file to use when outputting dependencies.
@@ -57,6 +56,66 @@
     ;;
 esac
 
+# Get the directory component of the given path, and save it in the
+# global variables '$dir'.  Note that this directory component will
+# be either empty or ending with a '/' character.  This is deliberate.
+set_dir_from ()
+{
+  case $1 in
+    */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
+      *) dir=;;
+  esac
+}
+
+# Get the suffix-stripped basename of the given path, and save it the
+# global variable '$base'.
+set_base_from ()
+{
+  base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
+}
+
+# If no dependency file was actually created by the compiler invocation,
+# we still have to create a dummy depfile, to avoid errors with the
+# Makefile "include basename.Plo" scheme.
+make_dummy_depfile ()
+{
+  echo "#dummy" > "$depfile"
+}
+
+# Factor out some common post-processing of the generated depfile.
+# Requires the auxiliary global variable '$tmpdepfile' to be set.
+aix_post_process_depfile ()
+{
+  # If the compiler actually managed to produce a dependency file,
+  # post-process it.
+  if test -f "$tmpdepfile"; then
+    # Each line is of the form 'foo.o: dependency.h'.
+    # Do two passes, one to just change these to
+    #   $object: dependency.h
+    # and one to simply output
+    #   dependency.h:
+    # which is needed to avoid the deleted-header problem.
+    { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
+      sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
+    } > "$depfile"
+    rm -f "$tmpdepfile"
+  else
+    make_dummy_depfile
+  fi
+}
+
+# A tabulation character.
+tab='	'
+# A newline character.
+nl='
+'
+# Character ranges might be problematic outside the C locale.
+# These definitions help.
+upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
+lower=abcdefghijklmnopqrstuvwxyz
+digits=0123456789
+alpha=${upper}${lower}
+
 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
   echo "depcomp: Variables source, object and depmode must be set" 1>&2
   exit 1
@@ -69,6 +128,9 @@
 
 rm -f "$tmpdepfile"
 
+# Avoid interferences from the environment.
+gccflag= dashmflag=
+
 # Some modes work just like other modes, but use different flags.  We
 # parameterize here, but still list the modes in the big case below,
 # to make depend.m4 easier to write.  Note that we *cannot* use a case
@@ -80,26 +142,32 @@
 fi
 
 if test "$depmode" = dashXmstdout; then
-   # This is just like dashmstdout with a different argument.
-   dashmflag=-xM
-   depmode=dashmstdout
+  # This is just like dashmstdout with a different argument.
+  dashmflag=-xM
+  depmode=dashmstdout
 fi
 
 cygpath_u="cygpath -u -f -"
 if test "$depmode" = msvcmsys; then
-   # This is just like msvisualcpp but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u='sed s,\\\\,/,g'
-   depmode=msvisualcpp
+  # This is just like msvisualcpp but w/o cygpath translation.
+  # Just convert the backslash-escaped backslashes to single forward
+  # slashes to satisfy depend.m4
+  cygpath_u='sed s,\\\\,/,g'
+  depmode=msvisualcpp
 fi
 
 if test "$depmode" = msvc7msys; then
-   # This is just like msvc7 but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u='sed s,\\\\,/,g'
-   depmode=msvc7
+  # This is just like msvc7 but w/o cygpath translation.
+  # Just convert the backslash-escaped backslashes to single forward
+  # slashes to satisfy depend.m4
+  cygpath_u='sed s,\\\\,/,g'
+  depmode=msvc7
+fi
+
+if test "$depmode" = xlc; then
+  # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
+  gccflag=-qmakedep=gcc,-MF
+  depmode=gcc
 fi
 
 case "$depmode" in
@@ -122,8 +190,7 @@
   done
   "$@"
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -131,13 +198,17 @@
   ;;
 
 gcc)
+## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
+## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
+## (see the conditional assignment to $gccflag above).
 ## There are various ways to get dependency output from gcc.  Here's
 ## why we pick this rather obscure method:
 ## - Don't want to use -MD because we'd like the dependencies to end
 ##   up in a subdir.  Having to rename by hand is ugly.
 ##   (We might end up doing this anyway to support other compilers.)
 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-##   -MM, not -M (despite what the docs say).
+##   -MM, not -M (despite what the docs say).  Also, it might not be
+##   supported by the other compilers which use the 'gcc' depmode.
 ## - Using -M directly means running the compiler twice (even worse
 ##   than renaming).
   if test -z "$gccflag"; then
@@ -145,33 +216,31 @@
   fi
   "$@" -Wp,"$gccflag$tmpdepfile"
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
+  # The second -e expression handles DOS-style file names with drive
+  # letters.
   sed -e 's/^[^:]*: / /' \
       -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
+## This next piece of magic avoids the "deleted header file" problem.
 ## The problem is that when a header file which appears in a .P file
 ## is deleted, the dependency causes make to die (because there is
 ## typically no way to rebuild the header).  We avoid this by adding
 ## dummy dependencies for each header file.  Too bad gcc doesn't do
 ## this for us directly.
-  tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'.  On the theory
+## Some versions of gcc put a space before the ':'.  On the theory
 ## that the space means something, we add a space to the output as
 ## well.  hp depmode also adds that space, but also prefixes the VPATH
 ## to the object.  Take care to not repeat it in the output.
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
-      | sed -e 's/$/ :/' >> "$depfile"
+  tr ' ' "$nl" < "$tmpdepfile" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -189,8 +258,7 @@
     "$@" -MDupdate "$tmpdepfile"
   fi
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -198,43 +266,41 @@
 
   if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
     echo "$object : \\" > "$depfile"
-
     # Clip off the initial element (the dependent).  Don't try to be
     # clever and replace this with sed code, as IRIX sed won't handle
     # lines with more than a fixed number of characters (4096 in
     # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
-    # the IRIX cc adds comments like `#:fec' to the end of the
+    # the IRIX cc adds comments like '#:fec' to the end of the
     # dependency line.
-    tr ' ' '
-' < "$tmpdepfile" \
-    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
-    tr '
-' ' ' >> "$depfile"
+    tr ' ' "$nl" < "$tmpdepfile" \
+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
+      | tr "$nl" ' ' >> "$depfile"
     echo >> "$depfile"
-
     # The second pass generates a dummy entry for each header file.
-    tr ' ' '
-' < "$tmpdepfile" \
-   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> "$depfile"
+    tr ' ' "$nl" < "$tmpdepfile" \
+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+      >> "$depfile"
   else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
+    make_dummy_depfile
   fi
   rm -f "$tmpdepfile"
   ;;
 
+xlc)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
 aix)
   # The C for AIX Compiler uses -M and outputs the dependencies
   # in a .u file.  In older versions, this file always lives in the
-  # current directory.  Also, the AIX compiler puts `$object:' at the
+  # current directory.  Also, the AIX compiler puts '$object:' at the
   # start of each line; $object doesn't have directory information.
   # Version 6 uses the directory in both cases.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  set_dir_from "$object"
+  set_base_from "$object"
   if test "$libtool" = yes; then
     tmpdepfile1=$dir$base.u
     tmpdepfile2=$base.u
@@ -247,9 +313,7 @@
     "$@" -M
   fi
   stat=$?
-
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
     exit $stat
   fi
@@ -258,44 +322,100 @@
   do
     test -f "$tmpdepfile" && break
   done
-  if test -f "$tmpdepfile"; then
-    # Each line is of the form `foo.o: dependent.h'.
-    # Do two passes, one to just change these to
-    # `$object: dependent.h' and one to simply `dependent.h:'.
-    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-    # That's a tab and a space in the [].
-    sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
+  aix_post_process_depfile
+  ;;
+
+tcc)
+  # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
+  # FIXME: That version still under development at the moment of writing.
+  #        Make that this statement remains true also for stable, released
+  #        versions.
+  # It will wrap lines (doesn't matter whether long or short) with a
+  # trailing '\', as in:
+  #
+  #   foo.o : \
+  #    foo.c \
+  #    foo.h \
+  #
+  # It will put a trailing '\' even on the last line, and will use leading
+  # spaces rather than leading tabs (at least since its commit 0394caf7
+  # "Emit spaces for -MD").
+  "$@" -MD -MF "$tmpdepfile"
+  stat=$?
+  if test $stat -ne 0; then
+    rm -f "$tmpdepfile"
+    exit $stat
   fi
+  rm -f "$depfile"
+  # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
+  # We have to change lines of the first kind to '$object: \'.
+  sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
+  # And for each line of the second kind, we have to emit a 'dep.h:'
+  # dummy dependency, to avoid the deleted-header problem.
+  sed -n -e 's|^  *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
-icc)
-  # Intel's C compiler understands `-MD -MF file'.  However on
-  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
-  # ICC 7.0 will fill foo.d with something like
-  #    foo.o: sub/foo.c
-  #    foo.o: sub/foo.h
-  # which is wrong.  We want:
-  #    sub/foo.o: sub/foo.c
-  #    sub/foo.o: sub/foo.h
-  #    sub/foo.c:
-  #    sub/foo.h:
-  # ICC 7.1 will output
+## The order of this option in the case statement is important, since the
+## shell code in configure will try each of these formats in the order
+## listed in this file.  A plain '-MD' option would be understood by many
+## compilers, so we must ensure this comes after the gcc and icc options.
+pgcc)
+  # Portland's C compiler understands '-MD'.
+  # Will always output deps to 'file.d' where file is the root name of the
+  # source file under compilation, even if file resides in a subdirectory.
+  # The object file name does not affect the name of the '.d' file.
+  # pgcc 10.2 will output
   #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using \ :
+  # and will wrap long lines using '\' :
   #    foo.o: sub/foo.c ... \
   #     sub/foo.h ... \
   #     ...
+  set_dir_from "$object"
+  # Use the source, not the object, to determine the base name, since
+  # that's sadly what pgcc will do too.
+  set_base_from "$source"
+  tmpdepfile=$base.d
 
-  "$@" -MD -MF "$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
+  # For projects that build the same source file twice into different object
+  # files, the pgcc approach of using the *source* file root name can cause
+  # problems in parallel builds.  Use a locking strategy to avoid stomping on
+  # the same $tmpdepfile.
+  lockdir=$base.d-lock
+  trap "
+    echo '$0: caught signal, cleaning up...' >&2
+    rmdir '$lockdir'
+    exit 1
+  " 1 2 13 15
+  numtries=100
+  i=$numtries
+  while test $i -gt 0; do
+    # mkdir is a portable test-and-set.
+    if mkdir "$lockdir" 2>/dev/null; then
+      # This process acquired the lock.
+      "$@" -MD
+      stat=$?
+      # Release the lock.
+      rmdir "$lockdir"
+      break
+    else
+      # If the lock is being held by a different process, wait
+      # until the winning process is done or we timeout.
+      while test -d "$lockdir" && test $i -gt 0; do
+        sleep 1
+        i=`expr $i - 1`
+      done
+    fi
+    i=`expr $i - 1`
+  done
+  trap - 1 2 13 15
+  if test $i -le 0; then
+    echo "$0: failed to acquire lock after $numtries attempts" >&2
+    echo "$0: check lockdir '$lockdir'" >&2
+    exit 1
+  fi
+
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -307,8 +427,8 @@
   sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
   # Some versions of the HPUX 10.20 sed can't process this invocation
   # correctly.  Breaking it into two sed invocations is a workaround.
-  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
-    sed -e 's/$/ :/' >> "$depfile"
+  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -319,9 +439,8 @@
   # 'foo.d', which lands next to the object file, wherever that
   # happens to be.
   # Much of this is similar to the tru64 case; see comments there.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  set_dir_from  "$object"
+  set_base_from "$object"
   if test "$libtool" = yes; then
     tmpdepfile1=$dir$base.d
     tmpdepfile2=$dir.libs/$base.d
@@ -332,8 +451,7 @@
     "$@" +Maked
   fi
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
      rm -f "$tmpdepfile1" "$tmpdepfile2"
      exit $stat
   fi
@@ -343,77 +461,61 @@
     test -f "$tmpdepfile" && break
   done
   if test -f "$tmpdepfile"; then
-    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
-    # Add `dependent.h:' lines.
+    sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
+    # Add 'dependent.h:' lines.
     sed -ne '2,${
-	       s/^ *//
-	       s/ \\*$//
-	       s/$/:/
-	       p
-	     }' "$tmpdepfile" >> "$depfile"
+               s/^ *//
+               s/ \\*$//
+               s/$/:/
+               p
+             }' "$tmpdepfile" >> "$depfile"
   else
-    echo "#dummy" > "$depfile"
+    make_dummy_depfile
   fi
   rm -f "$tmpdepfile" "$tmpdepfile2"
   ;;
 
 tru64)
-   # The Tru64 compiler uses -MD to generate dependencies as a side
-   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
-   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-   # dependencies in `foo.d' instead, so we check for that too.
-   # Subdirectories are respected.
-   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-   test "x$dir" = "x$object" && dir=
-   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  # The Tru64 compiler uses -MD to generate dependencies as a side
+  # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
+  # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+  # dependencies in 'foo.d' instead, so we check for that too.
+  # Subdirectories are respected.
+  set_dir_from  "$object"
+  set_base_from "$object"
 
-   if test "$libtool" = yes; then
-      # With Tru64 cc, shared objects can also be used to make a
-      # static library.  This mechanism is used in libtool 1.4 series to
-      # handle both shared and static libraries in a single compilation.
-      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
-      #
-      # With libtool 1.5 this exception was removed, and libtool now
-      # generates 2 separate objects for the 2 libraries.  These two
-      # compilations output dependencies in $dir.libs/$base.o.d and
-      # in $dir$base.o.d.  We have to check for both files, because
-      # one of the two compilations can be disabled.  We should prefer
-      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-      # automatically cleaned when .libs/ is deleted, while ignoring
-      # the former would cause a distcleancheck panic.
-      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
-      tmpdepfile2=$dir$base.o.d          # libtool 1.5
-      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
-      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
-      "$@" -Wc,-MD
-   else
-      tmpdepfile1=$dir$base.o.d
-      tmpdepfile2=$dir$base.d
-      tmpdepfile3=$dir$base.d
-      tmpdepfile4=$dir$base.d
-      "$@" -MD
-   fi
+  if test "$libtool" = yes; then
+    # Libtool generates 2 separate objects for the 2 libraries.  These
+    # two compilations output dependencies in $dir.libs/$base.o.d and
+    # in $dir$base.o.d.  We have to check for both files, because
+    # one of the two compilations can be disabled.  We should prefer
+    # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+    # automatically cleaned when .libs/ is deleted, while ignoring
+    # the former would cause a distcleancheck panic.
+    tmpdepfile1=$dir$base.o.d          # libtool 1.5
+    tmpdepfile2=$dir.libs/$base.o.d    # Likewise.
+    tmpdepfile3=$dir.libs/$base.d      # Compaq CCC V6.2-504
+    "$@" -Wc,-MD
+  else
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir$base.d
+    tmpdepfile3=$dir$base.d
+    "$@" -MD
+  fi
 
-   stat=$?
-   if test $stat -eq 0; then :
-   else
-      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-      exit $stat
-   fi
+  stat=$?
+  if test $stat -ne 0; then
+    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+    exit $stat
+  fi
 
-   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-   do
-     test -f "$tmpdepfile" && break
-   done
-   if test -f "$tmpdepfile"; then
-      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-      # That's a tab and a space in the [].
-      sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-   else
-      echo "#dummy" > "$depfile"
-   fi
-   rm -f "$tmpdepfile"
-   ;;
+  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+  do
+    test -f "$tmpdepfile" && break
+  done
+  # Same post-processing that is required for AIX mode.
+  aix_post_process_depfile
+  ;;
 
 msvc7)
   if test "$libtool" = yes; then
@@ -424,8 +526,7 @@
   "$@" $showIncludes > "$tmpdepfile"
   stat=$?
   grep -v '^Note: including file: ' "$tmpdepfile"
-  if test "$stat" = 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -443,14 +544,15 @@
   p
 }' | $cygpath_u | sort -u | sed -n '
 s/ /\\ /g
-s/\(.*\)/	\1 \\/p
+s/\(.*\)/'"$tab"'\1 \\/p
 s/.\(.*\) \\/\1:/
 H
 $ {
-  s/.*/	/
+  s/.*/'"$tab"'/
   G
   p
 }' >> "$depfile"
+  echo >> "$depfile" # make sure the fragment doesn't end with a backslash
   rm -f "$tmpdepfile"
   ;;
 
@@ -478,7 +580,7 @@
     shift
   fi
 
-  # Remove `-o $object'.
+  # Remove '-o $object'.
   IFS=" "
   for arg
   do
@@ -498,18 +600,18 @@
   done
 
   test -z "$dashmflag" && dashmflag=-M
-  # Require at least two characters before searching for `:'
+  # Require at least two characters before searching for ':'
   # in the target name.  This is to cope with DOS-style filenames:
-  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+  # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
   "$@" $dashmflag |
-    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
+    sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
   rm -f "$depfile"
   cat < "$tmpdepfile" > "$depfile"
-  tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this sed invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  tr ' ' "$nl" < "$tmpdepfile" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -562,11 +664,12 @@
   # makedepend may prepend the VPATH from the source file name to the object.
   # No need to regex-escape $object, excess matching of '.' is harmless.
   sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
-  sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process the last invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed '1,2d' "$tmpdepfile" \
+    | tr ' ' "$nl" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile" "$tmpdepfile".bak
   ;;
 
@@ -583,7 +686,7 @@
     shift
   fi
 
-  # Remove `-o $object'.
+  # Remove '-o $object'.
   IFS=" "
   for arg
   do
@@ -602,10 +705,10 @@
     esac
   done
 
-  "$@" -E |
-    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
-    sed '$ s: \\$::' > "$tmpdepfile"
+  "$@" -E \
+    | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+             -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+    | sed '$ s: \\$::' > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
   cat < "$tmpdepfile" >> "$depfile"
@@ -637,23 +740,23 @@
       shift
       ;;
     "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
-	set fnord "$@"
-	shift
-	shift
-	;;
+        set fnord "$@"
+        shift
+        shift
+        ;;
     *)
-	set fnord "$@" "$arg"
-	shift
-	shift
-	;;
+        set fnord "$@" "$arg"
+        shift
+        shift
+        ;;
     esac
   done
   "$@" -E 2>/dev/null |
   sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
-  echo "	" >> "$depfile"
+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
+  echo "$tab" >> "$depfile"
   sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
diff --git a/docs/libs/gst-plugins-bad-libs-sections.txt b/docs/libs/gst-plugins-bad-libs-sections.txt
index 21c432e..eb98f7a 100644
--- a/docs/libs/gst-plugins-bad-libs-sections.txt
+++ b/docs/libs/gst-plugins-bad-libs-sections.txt
@@ -40,6 +40,7 @@
 gst_h264_nal_parser_free
 gst_h264_parse_sps
 gst_h264_parse_pps
+gst_h264_pps_clear
 gst_h264_quant_matrix_8x8_get_zigzag_from_raster
 gst_h264_quant_matrix_8x8_get_raster_from_zigzag
 gst_h264_quant_matrix_4x4_get_zigzag_from_raster
@@ -184,98 +185,101 @@
 <SECTION>
 <FILE>gstmpegtsdescriptor</FILE>
 <SUBSECTION Common>
-GstMpegTsDescriptor
-GstMpegTsDescriptorType
-GstMpegTsMiscDescriptorType
+GstMpegtsDescriptor
+GstMpegtsDescriptorType
+GstMpegtsMiscDescriptorType
 gst_mpegts_find_descriptor
 gst_mpegts_parse_descriptors
 gst_mpegts_descriptor_from_custom
 <SUBSECTION registration>
 gst_mpegts_descriptor_from_registration
 <SUBSECTION iso639>
-GstMpegTsISO639LanguageDescriptor
-GstMpegTsIso639AudioType
+GstMpegtsISO639LanguageDescriptor
+GstMpegtsIso639AudioType
 gst_mpegts_descriptor_parse_iso_639_language
-gst_mpegts_descriptor_parse_dvb_stream_identifier
+gst_mpegts_descriptor_parse_iso_639_language_idx
+gst_mpegts_descriptor_parse_iso_639_language_nb
+gst_mpegts_iso_639_language_descriptor_free
 <SUBSECTION logical_channel>
-GstMpegTsLogicalChannel
-GstMpegTsLogicalChannelDescriptor
+GstMpegtsLogicalChannel
+GstMpegtsLogicalChannelDescriptor
 gst_mpegts_descriptor_parse_logical_channel
 <SUBSECTION Standard>
-GST_TYPE_MPEG_TS_DVB_CODE_RATE
-GST_TYPE_MPEG_TS_CABLE_OUTER_FEC_SCHEME
-GST_TYPE_MPEG_TS_MODULATION_TYPE
-GST_TYPE_MPEG_TS_SATELLITE_POLARIZATION_TYPE
-GST_TYPE_MPEG_TS_SATELLITE_ROLLOFF
+GST_TYPE_MPEGTS_DVB_CODE_RATE
+GST_TYPE_MPEGTS_CABLE_OUTER_FEC_SCHEME
+GST_TYPE_MPEGTS_MODULATION_TYPE
+GST_TYPE_MPEGTS_SATELLITE_POLARIZATION_TYPE
+GST_TYPE_MPEGTS_SATELLITE_ROLLOFF
+GST_TYPE_MPEGTS_ISO_639_LANGUAGE
 GST_TYPE_MPEGTS_DESCRIPTOR
-GST_TYPE_MPEG_TS_DVB_SERVICE_TYPE
-GST_TYPE_MPEG_TS_DESCRIPTOR_TYPE
-GST_TYPE_MPEG_TS_ISO639_AUDIO_TYPE
-GST_TYPE_MPEG_TS_ATSC_DESCRIPTOR_TYPE
-GST_TYPE_MPEG_TS_DVB_DESCRIPTOR_TYPE
-GST_TYPE_MPEG_TS_ISDB_DESCRIPTOR_TYPE
-GST_TYPE_MPEG_TS_MISC_DESCRIPTOR_TYPE
+GST_TYPE_MPEGTS_DVB_SERVICE_TYPE
+GST_TYPE_MPEGTS_DESCRIPTOR_TYPE
+GST_TYPE_MPEGTS_ISO639_AUDIO_TYPE
+GST_TYPE_MPEGTS_ATSC_DESCRIPTOR_TYPE
+GST_TYPE_MPEGTS_DVB_DESCRIPTOR_TYPE
+GST_TYPE_MPEGTS_ISDB_DESCRIPTOR_TYPE
+GST_TYPE_MPEGTS_MISC_DESCRIPTOR_TYPE
 gst_mpegts_descriptor_get_type
-gst_mpeg_ts_cable_outer_fec_scheme_get_type
-gst_mpeg_ts_modulation_type_get_type
-gst_mpeg_ts_satellite_polarization_type_get_type
-gst_mpeg_ts_satellite_rolloff_get_type
-gst_mpeg_ts_dvb_code_rate_get_type
-gst_mpeg_ts_descriptor_type_get_type
-gst_mpeg_ts_atsc_descriptor_type_get_type
-gst_mpeg_ts_dvb_descriptor_type_get_type
-gst_mpeg_ts_isdb_descriptor_type_get_type
-gst_mpeg_ts_misc_descriptor_type_get_type
-gst_mpeg_ts_iso639_audio_type_get_type
-gst_mpeg_ts_dvb_service_type_get_type
+gst_mpegts_iso_639_language_get_type
+gst_mpegts_cable_outer_fec_scheme_get_type
+gst_mpegts_modulation_type_get_type
+gst_mpegts_satellite_polarization_type_get_type
+gst_mpegts_satellite_rolloff_get_type
+gst_mpegts_dvb_code_rate_get_type
+gst_mpegts_descriptor_type_get_type
+gst_mpegts_atsc_descriptor_type_get_type
+gst_mpegts_dvb_descriptor_type_get_type
+gst_mpegts_isdb_descriptor_type_get_type
+gst_mpegts_misc_descriptor_type_get_type
+gst_mpegts_iso639_audio_type_get_type
+gst_mpegts_dvb_service_type_get_type
 </SECTION>
 
 <SECTION>
 <FILE>gst-atsc-descriptor</FILE>
-GstMpegTsATSCDescriptorType
+GstMpegtsATSCDescriptorType
 <SUBSECTION Standard>
-GST_TYPE_MPEG_TS_ATSC_DESCRIPTOR_TYPE
-gst_mpeg_ts_atsc_descriptor_type_get_type
+GST_TYPE_MPEGTS_ATSC_DESCRIPTOR_TYPE
+gst_mpegts_atsc_descriptor_type_get_type
 </SECTION>
 
 <SECTION>
 <FILE>gst-dvb-descriptor</FILE>
-GstMpegTsDVBDescriptorType
-GstMpegTsDVBExtendedDescriptorType
+GstMpegtsDVBDescriptorType
+GstMpegtsDVBExtendedDescriptorType
 <SUBSECTION content>
-GstMpegTsContent
+GstMpegtsContent
 gst_mpegts_descriptor_parse_dvb_content
 <SUBSECTION component>
-GstMpegTsComponentDescriptor
+GstMpegtsComponentDescriptor
 gst_mpegts_descriptor_parse_dvb_component
 <SUBSECTION extended_event>
-GstMpegTsExtendedEventItem
-GstMpegTsExtendedEventDescriptor
+GstMpegtsExtendedEventItem
+GstMpegtsExtendedEventDescriptor
 gst_mpegts_descriptor_parse_dvb_extended_event
 <SUBSECTION satellite_delivery>
-GstMpegTsSatelliteDeliverySystemDescriptor
-GstMpegTsDVBCodeRate
-GstMpegTsModulationType
-GstMpegTsSatellitePolarizationType
-GstMpegTsSatelliteRolloff
+GstMpegtsSatelliteDeliverySystemDescriptor
+GstMpegtsDVBCodeRate
+GstMpegtsModulationType
+GstMpegtsSatellitePolarizationType
+GstMpegtsSatelliteRolloff
 gst_mpegts_descriptor_parse_satellite_delivery_system
 <SUBSECTION cable_delivery>
-GstMpegTsCableDeliverySystemDescriptor
-GstMpegTsCableOuterFECScheme
+GstMpegtsCableDeliverySystemDescriptor
+GstMpegtsCableOuterFECScheme
 gst_mpegts_descriptor_parse_cable_delivery_system
 <SUBSECTION terrestrial_delivery>
-GstMpegTsTerrestrialDeliverySystemDescriptor
-GstMpegTsTerrestrialBandwidth
-GstMpegTsTerrestrialTransmissionMode
-GstMpegTsTerrestrialGuardInterval
-GstMpegTsTerrestrialHierarchy
-GstMpegTsModulationType
-GstMpegTsDVBCodeRate
+GstMpegtsTerrestrialDeliverySystemDescriptor
+GstMpegtsTerrestrialTransmissionMode
+GstMpegtsTerrestrialGuardInterval
+GstMpegtsTerrestrialHierarchy
+GstMpegtsModulationType
+GstMpegtsDVBCodeRate
 gst_mpegts_descriptor_parse_terrestrial_delivery_system
 <SUBSECTION t2_delivery>
-GstMpegTsT2DeliverySystemCellExtension
-GstMpegTsT2DeliverySystemCell
-GstMpegTsT2DeliverySystemDescriptor
+GstMpegtsT2DeliverySystemCellExtension
+GstMpegtsT2DeliverySystemCell
+GstMpegtsT2DeliverySystemDescriptor
 gst_mpegts_descriptor_parse_dvb_t2_delivery_system
 <SUBSECTION short_event>
 gst_mpegts_descriptor_parse_dvb_short_event
@@ -283,82 +287,93 @@
 gst_mpegts_descriptor_parse_dvb_network_name
 gst_mpegts_descriptor_from_dvb_network_name
 <SUBSECTION service>
-GstMpegTsDVBServiceType
+GstMpegtsDVBServiceType
 gst_mpegts_descriptor_parse_dvb_service
 gst_mpegts_descriptor_from_dvb_service
 <SUBSECTION teletext>
-GstMpegTsDVBTeletextType
+GstMpegtsDVBTeletextType
 gst_mpegts_descriptor_parse_dvb_teletext_idx
 gst_mpegts_descriptor_parse_dvb_teletext_nb
 <SUBSECTION subtitling>
-gst_mpegts_descriptor_parse_dvb_subtitling
+gst_mpegts_descriptor_parse_dvb_subtitling_idx
+gst_mpegts_descriptor_parse_dvb_subtitling_nb
 gst_mpegts_descriptor_from_dvb_subtitling
 <SUBSECTION linkage>
-GstMpegTsDVBLinkageType
-GstMpegTsDVBLinkageHandOverType
-GstMpegTsDVBLinkageMobileHandOver
-GstMpegTsDVBLinkageEvent
-GstMpegTsDVBLinkageExtendedEvent
-GstMpegTsDVBLinkageDescriptor
+GstMpegtsDVBLinkageType
+GstMpegtsDVBLinkageHandOverType
+GstMpegtsDVBLinkageMobileHandOver
+GstMpegtsDVBLinkageEvent
+GstMpegtsDVBLinkageExtendedEvent
+GstMpegtsDVBLinkageDescriptor
 gst_mpegts_descriptor_parse_dvb_linkage
 <SUBSECTION private_data_specifier>
 gst_mpegts_descriptor_parse_dvb_private_data_specifier
 <SUBSECTION frequency_list>
 gst_mpegts_descriptor_parse_dvb_frequency_list
 <SUBSECTION data_broadcast>
-GstMpegTsDataBroadcastDescriptor
+GstMpegtsDataBroadcastDescriptor
 gst_mpegts_descriptor_parse_dvb_data_broadcast
 <SUBSECTION scrambling>
-GstMpegTsDvbScramblingModeType
+GstMpegtsDVBScramblingModeType
 gst_mpegts_descriptor_parse_dvb_scrambling
 <SUBSECTION data_broadcast_id>
 gst_mpegts_descriptor_parse_dvb_data_broadcast_id
 <SUBSECTION parental_rating>
-GstMpegTsDVBParentalRatingItem
+GstMpegtsDVBParentalRatingItem
 gst_mpegts_descriptor_parse_dvb_parental_rating
 <SUBSECTION stream_identifier>
 gst_mpegts_descriptor_parse_dvb_stream_identifier
 <SUBSECTION ca_identifier>
 gst_mpegts_descriptor_parse_dvb_ca_identifier
 <SUBSECTION service_list>
-GstMpegTsDVBServiceListItem
+GstMpegtsDVBServiceListItem
 gst_mpegts_descriptor_parse_dvb_service_list
 <SUBSECTION stuffing>
 gst_mpegts_descriptor_parse_dvb_stuffing
 <SUBSECTION bouquet_name>
 gst_mpegts_descriptor_parse_dvb_bouquet_name
 <SUBSECTION multilingual_network_name>
-GstMpegTsDvbMultilingualNetworkNameItem
+GstMpegtsDvbMultilingualNetworkNameItem
 gst_mpegts_descriptor_parse_dvb_multilingual_network_name
 <SUBSECTION multilingual_bouquet_name>
-GstMpegTsDvbMultilingualBouquetNameItem
+GstMpegtsDvbMultilingualBouquetNameItem
 gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name
 <SUBSECTION multilingual_service_name>
-GstMpegTsDvbMultilingualServiceNameItem
+GstMpegtsDvbMultilingualServiceNameItem
 gst_mpegts_descriptor_parse_dvb_multilingual_service_name
 <SUBSECTION multilingual_component>
-GstMpegTsDvbMultilingualComponentItem
+GstMpegtsDvbMultilingualComponentItem
 gst_mpegts_descriptor_parse_dvb_multilingual_component
 <SUBSECTION Standard>
-GST_TYPE_MPEG_TSDVB_CODE_RATE
+GST_TYPE_MPEGTS_DVB_CODE_RATE
+GST_TYPE_MPEGTS_COMPONENT_DESCRIPTOR
+GST_TYPE_MPEGTS_DVB_DATA_BROADCAST_DESCRIPTOR
+GST_TYPE_MPEGTS_DVB_LINKAGE_DESCRIPTOR
+GST_TYPE_MPEGTS_EXTENDED_EVENT_DESCRIPTOR
+GST_TYPE_MPEGTS_T2_DELIVERY_SYSTEM_DESCRIPTOR
 gst_mpegts_dvb_code_rate_get_type
+gst_mpegts_component_descriptor_get_type
+gst_mpegts_dvb_data_broadcast_descriptor_get_type
+gst_mpegts_dvb_linkage_descriptor_get_type
+gst_mpegts_extended_event_descriptor_get_type
+gst_mpegts_t2_delivery_system_descriptor_get_type
 </SECTION>
 
 <SECTION>
 <FILE>gst-isdb-descriptor</FILE>
-GstMpegTsISDBDescriptorType
+GstMpegtsISDBDescriptorType
 <SUBSECTION Standard>
-GST_TYPE_MPEG_TS_ISDB_DESCRIPTOR_TYPE
-gst_mpeg_ts_isdb_descriptor_type_get_type
+GST_TYPE_MPEGTS_ISDB_DESCRIPTOR_TYPE
+gst_mpegts_isdb_descriptor_type_get_type
 </SECTION>
 
 <SECTION>
 <FILE>gstmpegtssection</FILE>
 <SUBSECTION section>
 GST_MPEGTS_SECTION_TYPE
-GstMpegTsSection
-GstMpegTsSectionTableID
-GstMpegTsSectionType
+GstMpegtsSection
+GstMpegtsSectionTableID
+GstMpegtsSectionType
 gst_message_new_mpegts_section
 gst_message_parse_mpegts_section
 gst_mpegts_section_send_event
@@ -368,15 +383,15 @@
 gst_mpegts_section_ref
 gst_mpegts_section_unref
 <SUBSECTION PAT>
-GstMpegTsPatProgram
+GstMpegtsPatProgram
 gst_mpegts_section_get_pat
 gst_mpegts_pat_new
 gst_mpegts_pat_program_new
 gst_mpegts_section_from_pat
 <SUBSECTION PMT>
-GstMpegTsPMT
-GstMpegTsPMTStream
-GstMpegTsStreamType
+GstMpegtsPMT
+GstMpegtsPMTStream
+GstMpegtsStreamType
 gst_mpegts_section_get_pmt
 gst_mpegts_pmt_new
 gst_mpegts_pmt_stream_new
@@ -386,66 +401,101 @@
 <SUBSECTION CAT>
 gst_mpegts_section_get_cat
 <SUBSECTION Standard>
-GST_TYPE_MPEG_TS_SECTION_TABLE_ID
-GST_TYPE_MPEG_TS_SECTION_TYPE
-GST_TYPE_MPEG_TS_SECTION_DVB_TABLE_ID
+GST_TYPE_MPEGTS_SECTION_TABLE_ID
+GST_TYPE_MPEGTS_SECTION_TYPE
+GST_TYPE_MPEGTS_SECTION_DVB_TABLE_ID
 GST_MPEGTS_SECTION
-GST_TYPE_MPEG_TS_STREAM_TYPE
+GST_TYPE_MPEGTS_STREAM_TYPE
 GST_TYPE_MPEGTS_PMT
 GST_TYPE_MPEGTS_PMT_STREAM
 GST_TYPE_MPEGTS_SECTION
-gst_mpeg_ts_section_table_id_get_type
-gst_mpeg_ts_section_type_get_type
+gst_mpegts_section_table_id_get_type
+gst_mpegts_section_type_get_type
 gst_mpegts_pmt_get_type
 gst_mpegts_pmt_stream_get_type
 gst_mpegts_section_get_type
-gst_mpeg_ts_stream_type_get_type
+gst_mpegts_stream_type_get_type
 </SECTION>
 
 <SECTION>
 <FILE>gst-atsc-section</FILE>
-GstMpegTsSectionATSCTableID
-<SUBSECTION tvct>
-GstMpegTsAtscTVCTSource
-GstMpegTsAtscTVCT
+GstMpegtsSectionATSCTableID
+GstMpegtsAtscVCTSource
+GstMpegtsAtscVCT
 gst_mpegts_section_get_atsc_tvct
+gst_mpegts_section_get_atsc_cvct
+GstMpegtsAtscMGTTableType
+GstMpegtsAtscMGTTable
+GstMpegtsAtscMGT
+gst_mpegts_section_get_atsc_mgt
+gst_mpegts_atsc_string_segment_get_string
+GstMpegtsAtscMultString
+GstMpegtsAtscEITEvent
+GstMpegtsAtscEIT
+gst_mpegts_section_get_atsc_eit
+GstMpegtsAtscETT
+gst_mpegts_section_get_atsc_ett
+GstMpegtsAtscSTT
+gst_mpegts_section_get_atsc_stt
+gst_mpegts_atsc_stt_get_datetime_utc
 <SUBSECTION Standard>
-GST_TYPE_MPEG_TS_SECTION_ATSC_TABLE_ID
-gst_mpeg_ts_section_atsc_table_id_get_type
+GST_TYPE_MPEGTS_ATSC_EIT
+GST_TYPE_MPEGTS_ATSC_EIT_EVENT
+GST_TYPE_MPEGTS_ATSC_ETT
+GST_TYPE_MPEGTS_ATSC_MGT
+GST_TYPE_MPEGTS_ATSC_MGT_TABLE
+GST_TYPE_MPEGTS_ATSC_MULT_STRING
+GST_TYPE_MPEGTS_ATSC_STRING_SEGMENT
+GST_TYPE_MPEGTS_ATSC_STT
+GST_TYPE_MPEGTS_ATSC_VCT
+GST_TYPE_MPEGTS_ATSC_VCT_SOURCE
+GstMpegtsAtscStringSegment
+gst_mpegts_atsc_eit_event_get_type
+gst_mpegts_atsc_eit_get_type
+gst_mpegts_atsc_ett_get_type
+gst_mpegts_atsc_mgt_get_type
+gst_mpegts_atsc_mgt_table_get_type
+gst_mpegts_atsc_mult_string_get_type
+gst_mpegts_atsc_string_segment_get_type
+gst_mpegts_atsc_stt_get_type
+gst_mpegts_atsc_vct_get_type
+gst_mpegts_atsc_vct_source_get_type
 </SECTION>
 
 <SECTION>
 <FILE>gst-dvb-section</FILE>
-GstMpegTsSectionDVBTableID
+GstMpegtsSectionDVBTableID
 <SUBSECTION NIT>
-GstMpegTsNIT
-GstMpegTsNITStream
+GstMpegtsNIT
+GstMpegtsNITStream
 gst_mpegts_section_get_nit
 gst_mpegts_nit_new
 gst_mpegts_nit_stream_new
 gst_mpegts_section_from_nit
 <SUBSECTION BAT>
-GstMpegTsBAT
-GstMpegTsBATStream
+GstMpegtsBAT
+GstMpegtsBATStream
+gst_mpegts_section_get_bat
 <SUBSECTION SDT>
-GstMpegTsSDT
-GstMpegTsSDTService
+GstMpegtsSDT
+GstMpegtsSDTService
 gst_mpegts_section_get_sdt
 gst_mpegts_sdt_new
 gst_mpegts_sdt_service_new
 gst_mpegts_section_from_sdt
 <SUBSECTION EIT>
-GstMpegTsEIT
-GstMpegTsEITEvent
-GstMpegTsRunningStatus
+GstMpegtsEIT
+GstMpegtsEITEvent
+GstMpegtsRunningStatus
 gst_mpegts_section_get_eit
 <SUBSECTION TDT>
 gst_mpegts_section_get_tdt
 <SUBSECTION TOT>
-GstMpegTsTOT
+GstMpegtsTOT
 gst_mpegts_section_get_tot
 <SUBSECTION Standard>
 GST_TYPE_MPEGTS_BAT
+GST_TYPE_MPEGTS_BAT_STREAM
 GST_TYPE_MPEGTS_EIT
 GST_TYPE_MPEGTS_EIT_EVENT
 GST_TYPE_MPEGTS_NIT
@@ -453,10 +503,11 @@
 GST_TYPE_MPEGTS_SDT
 GST_TYPE_MPEGTS_SDT_SERVICE
 GST_TYPE_MPEGTS_TOT
-GST_TYPE_MPEG_TS_SECTION_DVB_TABLE_ID
-GST_TYPE_MPEG_TS_RUNNING_STATUS
-gst_mpeg_ts_running_status_get_type
-gst_mpeg_ts_section_dvb_table_id_get_type
+GST_TYPE_MPEGTS_SECTION_DVB_TABLE_ID
+GST_TYPE_MPEGTS_RUNNING_STATUS
+gst_mpegts_running_status_get_type
+gst_mpegts_section_dvb_table_id_get_type
+gst_mpegts_bat_stream_get_type
 gst_mpegts_bat_get_type
 gst_mpegts_eit_event_get_type
 gst_mpegts_eit_get_type
diff --git a/docs/libs/gst-plugins-bad-libs.types b/docs/libs/gst-plugins-bad-libs.types
index 92eb80d..29179d9 100644
--- a/docs/libs/gst-plugins-bad-libs.types
+++ b/docs/libs/gst-plugins-bad-libs.types
@@ -7,20 +7,20 @@
 #include <gst/gl/gl.h>
 
 gst_mpegts_section_get_type
-gst_mpeg_ts_section_type_get_type
-gst_mpeg_ts_section_table_id_get_type
+gst_mpegts_section_type_get_type
+gst_mpegts_section_table_id_get_type
 
 gst_mpegts_descriptor_get_type
-gst_mpeg_ts_cable_outer_fec_scheme_get_type
-gst_mpeg_ts_modulation_type_get_type
-gst_mpeg_ts_satellite_polarization_type_get_type
-gst_mpeg_ts_satellite_rolloff_get_type
-gst_mpeg_ts_dvb_code_rate_get_type
-gst_mpeg_ts_descriptor_type_get_type
-gst_mpeg_ts_iso639_audio_type_get_type
-gst_mpeg_ts_running_status_get_type
-gst_mpeg_ts_dvb_service_type_get_type
-gst_mpeg_ts_stream_type_get_type
+gst_mpegts_cable_outer_fec_scheme_get_type
+gst_mpegts_modulation_type_get_type
+gst_mpegts_satellite_polarization_type_get_type
+gst_mpegts_satellite_rolloff_get_type
+gst_mpegts_dvb_code_rate_get_type
+gst_mpegts_descriptor_type_get_type
+gst_mpegts_iso639_audio_type_get_type
+gst_mpegts_running_status_get_type
+gst_mpegts_dvb_service_type_get_type
+gst_mpegts_stream_type_get_type
 
 
 gst_insert_bin_get_type
diff --git a/docs/libs/html/GstGLDisplay.html b/docs/libs/html/GstGLDisplay.html
index 2c2c618..59ad1ff 100644
--- a/docs/libs/html/GstGLDisplay.html
+++ b/docs/libs/html/GstGLDisplay.html
@@ -111,6 +111,13 @@
 <p><a class="link" href="GstGLDisplay.html" title="GstGLDisplay"><span class="type">GstGLDisplay</span></a> represents a connection to the underlying windowing system. 
 Elements are required to make use of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstContext.html"><span class="type">GstContext</span></a> to share and propogate
 a <a class="link" href="GstGLDisplay.html" title="GstGLDisplay"><span class="type">GstGLDisplay</span></a>.</p>
+<div class="note">Certain window systems require a special function to be called to
+initialize threading support.  As this GStreamer GL library does not preclude
+concurrent access to the windowing system, it is strongly advised that
+applications ensure that threading support has been initialized before any
+other toolkit/library functionality is accessed.  Failure to do so could
+result in sudden application abortion during execution.  The most notably
+example of such a function is X11's <code class="function">XInitThreads()</code>.</div>
 </div>
 <div class="refsect1">
 <a name="GstGLDisplay.functions_details"></a><h2>Functions</h2>
diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html
index 71454bd..3002422 100644
--- a/docs/libs/html/api-index-full.html
+++ b/docs/libs/html/api-index-full.html
@@ -1380,6 +1380,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-bad-libs-h264parser.html#gst-h264-pps-clear" title="gst_h264_pps_clear ()">gst_h264_pps_clear</a>, function in <a class="link" href="gst-plugins-bad-libs-h264parser.html" title="h264parser">h264parser</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-4x4-get-raster-from-zigzag" title="gst_h264_quant_matrix_4x4_get_raster_from_zigzag ()">gst_h264_quant_matrix_4x4_get_raster_from_zigzag</a>, function in <a class="link" href="gst-plugins-bad-libs-h264parser.html" title="h264parser">h264parser</a>
 </dt>
 <dd></dd>
@@ -1598,255 +1602,307 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegTsATSCDescriptorType" title="enum GstMpegTsATSCDescriptorType">GstMpegTsATSCDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html" title="ATSC variants of MPEG-TS descriptors">ATSC variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegtsATSCDescriptorType" title="enum GstMpegtsATSCDescriptorType">GstMpegtsATSCDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html" title="ATSC variants of MPEG-TS descriptors">ATSC variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBAT" title="struct GstMpegTsBAT">GstMpegTsBAT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT" title="struct GstMpegtsAtscEIT">GstMpegtsAtscEIT</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBATStream" title="struct GstMpegTsBATStream">GstMpegTsBATStream</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEITEvent" title="struct GstMpegtsAtscEITEvent">GstMpegtsAtscEITEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableDeliverySystemDescriptor" title="struct GstMpegTsCableDeliverySystemDescriptor">GstMpegTsCableDeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT" title="struct GstMpegtsAtscETT">GstMpegtsAtscETT</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableOuterFECScheme" title="enum GstMpegTsCableOuterFECScheme">GstMpegTsCableOuterFECScheme</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT" title="struct GstMpegtsAtscMGT">GstMpegtsAtscMGT</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsComponentDescriptor" title="struct GstMpegTsComponentDescriptor">GstMpegTsComponentDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTable" title="struct GstMpegtsAtscMGTTable">GstMpegtsAtscMGTTable</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsContent" title="struct GstMpegTsContent">GstMpegTsContent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTableType" title="enum GstMpegtsAtscMGTTableType">GstMpegtsAtscMGTTableType</a>, enum in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDataBroadcastDescriptor" title="struct GstMpegTsDataBroadcastDescriptor">GstMpegTsDataBroadcastDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMultString" title="struct GstMpegtsAtscMultString">GstMpegtsAtscMultString</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor-struct" title="struct GstMpegTsDescriptor">GstMpegTsDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT">GstMpegtsAtscSTT</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptorType" title="enum GstMpegTsDescriptorType">GstMpegTsDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT">GstMpegtsAtscVCT</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate">GstMpegTsDVBCodeRate</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCTSource" title="struct GstMpegtsAtscVCTSource">GstMpegtsAtscVCTSource</a>, struct in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBDescriptorType" title="enum GstMpegTsDVBDescriptorType">GstMpegTsDVBDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT" title="struct GstMpegtsBAT">GstMpegtsBAT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBExtendedDescriptorType" title="enum GstMpegTsDVBExtendedDescriptorType">GstMpegTsDVBExtendedDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBATStream" title="struct GstMpegtsBATStream">GstMpegtsBATStream</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageDescriptor" title="struct GstMpegTsDVBLinkageDescriptor">GstMpegTsDVBLinkageDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableDeliverySystemDescriptor" title="struct GstMpegtsCableDeliverySystemDescriptor">GstMpegtsCableDeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageEvent" title="struct GstMpegTsDVBLinkageEvent">GstMpegTsDVBLinkageEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableOuterFECScheme" title="enum GstMpegtsCableOuterFECScheme">GstMpegtsCableOuterFECScheme</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageExtendedEvent" title="struct GstMpegTsDVBLinkageExtendedEvent">GstMpegTsDVBLinkageExtendedEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsComponentDescriptor" title="struct GstMpegtsComponentDescriptor">GstMpegtsComponentDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageHandOverType" title="enum GstMpegTsDVBLinkageHandOverType">GstMpegTsDVBLinkageHandOverType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsContent" title="struct GstMpegtsContent">GstMpegtsContent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageMobileHandOver" title="struct GstMpegTsDVBLinkageMobileHandOver">GstMpegTsDVBLinkageMobileHandOver</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDataBroadcastDescriptor" title="struct GstMpegtsDataBroadcastDescriptor">GstMpegtsDataBroadcastDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageType" title="enum GstMpegTsDVBLinkageType">GstMpegTsDVBLinkageType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor-struct" title="struct GstMpegtsDescriptor">GstMpegtsDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualBouquetNameItem" title="struct GstMpegTsDvbMultilingualBouquetNameItem">GstMpegTsDvbMultilingualBouquetNameItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptorType" title="enum GstMpegtsDescriptorType">GstMpegtsDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualComponentItem" title="struct GstMpegTsDvbMultilingualComponentItem">GstMpegTsDvbMultilingualComponentItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate">GstMpegtsDVBCodeRate</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualNetworkNameItem" title="struct GstMpegTsDvbMultilingualNetworkNameItem">GstMpegTsDvbMultilingualNetworkNameItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBDescriptorType" title="enum GstMpegtsDVBDescriptorType">GstMpegtsDVBDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualServiceNameItem" title="struct GstMpegTsDvbMultilingualServiceNameItem">GstMpegTsDvbMultilingualServiceNameItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBExtendedDescriptorType" title="enum GstMpegtsDVBExtendedDescriptorType">GstMpegtsDVBExtendedDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBParentalRatingItem" title="struct GstMpegTsDVBParentalRatingItem">GstMpegTsDVBParentalRatingItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageDescriptor" title="struct GstMpegtsDVBLinkageDescriptor">GstMpegtsDVBLinkageDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceListItem" title="struct GstMpegTsDVBServiceListItem">GstMpegTsDVBServiceListItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageEvent" title="struct GstMpegtsDVBLinkageEvent">GstMpegtsDVBLinkageEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType">GstMpegTsDVBServiceType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageExtendedEvent" title="struct GstMpegtsDVBLinkageExtendedEvent">GstMpegtsDVBLinkageExtendedEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBTeletextType" title="enum GstMpegTsDVBTeletextType">GstMpegTsDVBTeletextType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageHandOverType" title="enum GstMpegtsDVBLinkageHandOverType">GstMpegtsDVBLinkageHandOverType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT" title="struct GstMpegTsEIT">GstMpegTsEIT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageMobileHandOver" title="struct GstMpegtsDVBLinkageMobileHandOver">GstMpegtsDVBLinkageMobileHandOver</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEITEvent" title="struct GstMpegTsEITEvent">GstMpegTsEITEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageType" title="enum GstMpegtsDVBLinkageType">GstMpegtsDVBLinkageType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventDescriptor" title="struct GstMpegTsExtendedEventDescriptor">GstMpegTsExtendedEventDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualBouquetNameItem" title="struct GstMpegtsDvbMultilingualBouquetNameItem">GstMpegtsDvbMultilingualBouquetNameItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventItem" title="struct GstMpegTsExtendedEventItem">GstMpegTsExtendedEventItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualComponentItem" title="struct GstMpegtsDvbMultilingualComponentItem">GstMpegtsDvbMultilingualComponentItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegTsISDBDescriptorType" title="enum GstMpegTsISDBDescriptorType">GstMpegTsISDBDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html" title="ISDB variants of MPEG-TS descriptors">ISDB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualNetworkNameItem" title="struct GstMpegtsDvbMultilingualNetworkNameItem">GstMpegtsDvbMultilingualNetworkNameItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsIso639AudioType" title="enum GstMpegTsIso639AudioType">GstMpegTsIso639AudioType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualServiceNameItem" title="struct GstMpegtsDvbMultilingualServiceNameItem">GstMpegtsDvbMultilingualServiceNameItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsISO639LanguageDescriptor" title="struct GstMpegTsISO639LanguageDescriptor">GstMpegTsISO639LanguageDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBParentalRatingItem" title="struct GstMpegtsDVBParentalRatingItem">GstMpegtsDVBParentalRatingItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannel" title="struct GstMpegTsLogicalChannel">GstMpegTsLogicalChannel</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBScramblingModeType" title="enum GstMpegtsDVBScramblingModeType">GstMpegtsDVBScramblingModeType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannelDescriptor" title="struct GstMpegTsLogicalChannelDescriptor">GstMpegTsLogicalChannelDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceListItem" title="struct GstMpegtsDVBServiceListItem">GstMpegtsDVBServiceListItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsMiscDescriptorType" title="enum GstMpegTsMiscDescriptorType">GstMpegTsMiscDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType">GstMpegtsDVBServiceType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType" title="enum GstMpegTsModulationType">GstMpegTsModulationType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBTeletextType" title="enum GstMpegtsDVBTeletextType">GstMpegtsDVBTeletextType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT">GstMpegTsNIT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT" title="struct GstMpegtsEIT">GstMpegtsEIT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream" title="struct GstMpegTsNITStream">GstMpegTsNITStream</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEITEvent" title="struct GstMpegtsEITEvent">GstMpegtsEITEvent</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram">GstMpegTsPatProgram</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventDescriptor" title="struct GstMpegtsExtendedEventDescriptor">GstMpegtsExtendedEventDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT">GstMpegTsPMT</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventItem" title="struct GstMpegtsExtendedEventItem">GstMpegtsExtendedEventItem</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream">GstMpegTsPMTStream</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegtsISDBDescriptorType" title="enum GstMpegtsISDBDescriptorType">GstMpegtsISDBDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html" title="ISDB variants of MPEG-TS descriptors">ISDB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus" title="enum GstMpegTsRunningStatus">GstMpegTsRunningStatus</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType" title="enum GstMpegtsIso639AudioType">GstMpegtsIso639AudioType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteDeliverySystemDescriptor" title="struct GstMpegTsSatelliteDeliverySystemDescriptor">GstMpegTsSatelliteDeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor" title="struct GstMpegtsISO639LanguageDescriptor">GstMpegtsISO639LanguageDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatellitePolarizationType" title="enum GstMpegTsSatellitePolarizationType">GstMpegTsSatellitePolarizationType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannel" title="struct GstMpegtsLogicalChannel">GstMpegtsLogicalChannel</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteRolloff" title="enum GstMpegTsSatelliteRolloff">GstMpegTsSatelliteRolloff</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannelDescriptor" title="struct GstMpegtsLogicalChannelDescriptor">GstMpegtsLogicalChannelDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT">GstMpegTsSDT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsMiscDescriptorType" title="enum GstMpegtsMiscDescriptorType">GstMpegtsMiscDescriptorType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService" title="struct GstMpegTsSDTService">GstMpegTsSDTService</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType" title="enum GstMpegtsModulationType">GstMpegtsModulationType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection-struct" title="struct GstMpegTsSection">GstMpegTsSection</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT">GstMpegtsNIT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegTsSectionATSCTableID" title="enum GstMpegTsSectionATSCTableID">GstMpegTsSectionATSCTableID</a>, enum in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream" title="struct GstMpegtsNITStream">GstMpegtsNITStream</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSectionDVBTableID" title="enum GstMpegTsSectionDVBTableID">GstMpegTsSectionDVBTableID</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram">GstMpegtsPatProgram</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID" title="enum GstMpegTsSectionTableID">GstMpegTsSectionTableID</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT">GstMpegtsPMT</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionType" title="enum GstMpegTsSectionType">GstMpegTsSectionType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream">GstMpegtsPMTStream</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsStreamType" title="enum GstMpegTsStreamType">GstMpegTsStreamType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus" title="enum GstMpegtsRunningStatus">GstMpegtsRunningStatus</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCell" title="struct GstMpegTsT2DeliverySystemCell">GstMpegTsT2DeliverySystemCell</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteDeliverySystemDescriptor" title="struct GstMpegtsSatelliteDeliverySystemDescriptor">GstMpegtsSatelliteDeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCellExtension" title="struct GstMpegTsT2DeliverySystemCellExtension">GstMpegTsT2DeliverySystemCellExtension</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatellitePolarizationType" title="enum GstMpegtsSatellitePolarizationType">GstMpegtsSatellitePolarizationType</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemDescriptor" title="struct GstMpegTsT2DeliverySystemDescriptor">GstMpegTsT2DeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteRolloff" title="enum GstMpegtsSatelliteRolloff">GstMpegtsSatelliteRolloff</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialDeliverySystemDescriptor" title="struct GstMpegTsTerrestrialDeliverySystemDescriptor">GstMpegTsTerrestrialDeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT">GstMpegtsSDT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialGuardInterval" title="enum GstMpegTsTerrestrialGuardInterval">GstMpegTsTerrestrialGuardInterval</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService" title="struct GstMpegtsSDTService">GstMpegtsSDTService</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialHierarchy" title="enum GstMpegTsTerrestrialHierarchy">GstMpegTsTerrestrialHierarchy</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection-struct" title="struct GstMpegtsSection">GstMpegtsSection</a>, struct in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialTransmissionMode" title="enum GstMpegTsTerrestrialTransmissionMode">GstMpegTsTerrestrialTransmissionMode</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsSectionATSCTableID" title="enum GstMpegtsSectionATSCTableID">GstMpegtsSectionATSCTableID</a>, enum in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT" title="struct GstMpegTsTOT">GstMpegTsTOT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSectionDVBTableID" title="enum GstMpegtsSectionDVBTableID">GstMpegtsSectionDVBTableID</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID" title="enum GstMpegtsSectionTableID">GstMpegtsSectionTableID</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionType" title="enum GstMpegtsSectionType">GstMpegtsSectionType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsStreamType" title="enum GstMpegtsStreamType">GstMpegtsStreamType</a>, enum in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCell" title="struct GstMpegtsT2DeliverySystemCell">GstMpegtsT2DeliverySystemCell</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCellExtension" title="struct GstMpegtsT2DeliverySystemCellExtension">GstMpegtsT2DeliverySystemCellExtension</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemDescriptor" title="struct GstMpegtsT2DeliverySystemDescriptor">GstMpegtsT2DeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialDeliverySystemDescriptor" title="struct GstMpegtsTerrestrialDeliverySystemDescriptor">GstMpegtsTerrestrialDeliverySystemDescriptor</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialGuardInterval" title="enum GstMpegtsTerrestrialGuardInterval">GstMpegtsTerrestrialGuardInterval</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialHierarchy" title="enum GstMpegtsTerrestrialHierarchy">GstMpegtsTerrestrialHierarchy</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialTransmissionMode" title="enum GstMpegtsTerrestrialTransmissionMode">GstMpegtsTerrestrialTransmissionMode</a>, enum in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT" title="struct GstMpegtsTOT">GstMpegtsTOT</a>, struct in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-string-segment-get-string" title="gst_mpegts_atsc_string_segment_get_string ()">gst_mpegts_atsc_string_segment_get_string</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-stt-get-datetime-utc" title="gst_mpegts_atsc_stt_get_datetime_utc ()">gst_mpegts_atsc_stt_get_datetime_utc</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
@@ -1954,7 +2010,7 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier" title="gst_mpegts_descriptor_parse_dvb_stream_identifier ()">gst_mpegts_descriptor_parse_dvb_stream_identifier</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier" title="gst_mpegts_descriptor_parse_dvb_stream_identifier ()">gst_mpegts_descriptor_parse_dvb_stream_identifier</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
 <dt>
@@ -1962,6 +2018,14 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-idx" title="gst_mpegts_descriptor_parse_dvb_subtitling_idx ()">gst_mpegts_descriptor_parse_dvb_subtitling_idx</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-nb" title="gst_mpegts_descriptor_parse_dvb_subtitling_nb ()">gst_mpegts_descriptor_parse_dvb_subtitling_nb</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-t2-delivery-system" title="gst_mpegts_descriptor_parse_dvb_t2_delivery_system ()">gst_mpegts_descriptor_parse_dvb_t2_delivery_system</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html" title="DVB variants of MPEG-TS descriptors">DVB variants of MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
@@ -1978,6 +2042,14 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-idx" title="gst_mpegts_descriptor_parse_iso_639_language_idx ()">gst_mpegts_descriptor_parse_iso_639_language_idx</a>, function in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-nb" title="gst_mpegts_descriptor_parse_iso_639_language_nb ()">gst_mpegts_descriptor_parse_iso_639_language_nb</a>, function in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-logical-channel" title="gst_mpegts_descriptor_parse_logical_channel ()">gst_mpegts_descriptor_parse_logical_channel</a>, function in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
 </dt>
 <dd></dd>
@@ -1998,6 +2070,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-iso-639-language-descriptor-free" title="gst_mpegts_iso_639_language_descriptor_free ()">gst_mpegts_iso_639_language_descriptor_free</a>, function in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html" title="Base MPEG-TS descriptors">Base MPEG-TS descriptors</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-new" title="gst_mpegts_nit_new ()">gst_mpegts_nit_new</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
@@ -2050,10 +2126,34 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-cvct" title="gst_mpegts_section_get_atsc_cvct ()">gst_mpegts_section_get_atsc_cvct</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-eit" title="gst_mpegts_section_get_atsc_eit ()">gst_mpegts_section_get_atsc_eit</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-ett" title="gst_mpegts_section_get_atsc_ett ()">gst_mpegts_section_get_atsc_ett</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-mgt" title="gst_mpegts_section_get_atsc_mgt ()">gst_mpegts_section_get_atsc_mgt</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-stt" title="gst_mpegts_section_get_atsc_stt ()">gst_mpegts_section_get_atsc_stt</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-tvct" title="gst_mpegts_section_get_atsc_tvct ()">gst_mpegts_section_get_atsc_tvct</a>, function in <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html" title="ATSC variants of MPEG-TS sections">ATSC variants of MPEG-TS sections</a>
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-bat" title="gst_mpegts_section_get_bat ()">gst_mpegts_section_get_bat</a>, function in <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html" title="DVB variants of MPEG-TS sections">DVB variants of MPEG-TS sections</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-get-cat" title="gst_mpegts_section_get_cat ()">gst_mpegts_section_get_cat</a>, function in <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html" title="Base MPEG-TS sections">Base MPEG-TS sections</a>
 </dt>
 <dd></dd>
diff --git a/docs/libs/html/gst-plugins-bad-libs-1.0.devhelp2 b/docs/libs/html/gst-plugins-bad-libs-1.0.devhelp2
index 420c1f8..5471e75 100644
--- a/docs/libs/html/gst-plugins-bad-libs-1.0.devhelp2
+++ b/docs/libs/html/gst-plugins-bad-libs-1.0.devhelp2
@@ -83,6 +83,7 @@
     <keyword type="function" name="gst_h264_nal_parser_free ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-nal-parser-free"/>
     <keyword type="function" name="gst_h264_parse_sps ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-parse-sps"/>
     <keyword type="function" name="gst_h264_parse_pps ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-parse-pps"/>
+    <keyword type="function" name="gst_h264_pps_clear ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-pps-clear" since="1.4"/>
     <keyword type="function" name="gst_h264_quant_matrix_8x8_get_zigzag_from_raster ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-8x8-get-zigzag-from-raster" since="1.4"/>
     <keyword type="function" name="gst_h264_quant_matrix_8x8_get_raster_from_zigzag ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-8x8-get-raster-from-zigzag" since="1.4"/>
     <keyword type="function" name="gst_h264_quant_matrix_4x4_get_zigzag_from_raster ()" link="gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-4x4-get-zigzag-from-raster" since="1.4"/>
@@ -223,33 +224,53 @@
     <keyword type="function" name="gst_mpegts_section_from_pmt ()" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-from-pmt"/>
     <keyword type="function" name="gst_mpegts_section_get_tsdt ()" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-get-tsdt"/>
     <keyword type="function" name="gst_mpegts_section_get_cat ()" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-get-cat"/>
-    <keyword type="struct" name="struct GstMpegTsSection" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection-struct"/>
-    <keyword type="enum" name="enum GstMpegTsSectionTableID" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID"/>
-    <keyword type="enum" name="enum GstMpegTsSectionType" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionType"/>
-    <keyword type="struct" name="struct GstMpegTsPatProgram" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram"/>
-    <keyword type="struct" name="struct GstMpegTsPMT" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT"/>
-    <keyword type="struct" name="struct GstMpegTsPMTStream" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream"/>
-    <keyword type="enum" name="enum GstMpegTsStreamType" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsStreamType"/>
+    <keyword type="struct" name="struct GstMpegtsSection" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection-struct"/>
+    <keyword type="enum" name="enum GstMpegtsSectionTableID" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID"/>
+    <keyword type="enum" name="enum GstMpegtsSectionType" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionType"/>
+    <keyword type="struct" name="struct GstMpegtsPatProgram" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram"/>
+    <keyword type="struct" name="struct GstMpegtsPMT" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT"/>
+    <keyword type="struct" name="struct GstMpegtsPMTStream" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream"/>
+    <keyword type="enum" name="enum GstMpegtsStreamType" link="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsStreamType"/>
     <keyword type="function" name="gst_mpegts_find_descriptor ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-find-descriptor"/>
     <keyword type="function" name="gst_mpegts_parse_descriptors ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-parse-descriptors"/>
     <keyword type="function" name="gst_mpegts_descriptor_from_custom ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-custom"/>
     <keyword type="function" name="gst_mpegts_descriptor_from_registration ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-registration"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_iso_639_language ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language"/>
-    <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_stream_identifier ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier"/>
+    <keyword type="function" name="gst_mpegts_descriptor_parse_iso_639_language_idx ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-idx"/>
+    <keyword type="function" name="gst_mpegts_descriptor_parse_iso_639_language_nb ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-nb"/>
+    <keyword type="function" name="gst_mpegts_iso_639_language_descriptor_free ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-iso-639-language-descriptor-free"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_logical_channel ()" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-logical-channel"/>
-    <keyword type="struct" name="struct GstMpegTsDescriptor" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor-struct"/>
-    <keyword type="enum" name="enum GstMpegTsDescriptorType" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptorType"/>
-    <keyword type="enum" name="enum GstMpegTsMiscDescriptorType" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsMiscDescriptorType"/>
-    <keyword type="struct" name="struct GstMpegTsISO639LanguageDescriptor" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsISO639LanguageDescriptor"/>
-    <keyword type="enum" name="enum GstMpegTsIso639AudioType" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsIso639AudioType"/>
-    <keyword type="struct" name="struct GstMpegTsLogicalChannel" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannel"/>
-    <keyword type="struct" name="struct GstMpegTsLogicalChannelDescriptor" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannelDescriptor"/>
+    <keyword type="struct" name="struct GstMpegtsDescriptor" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor-struct"/>
+    <keyword type="enum" name="enum GstMpegtsDescriptorType" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptorType"/>
+    <keyword type="enum" name="enum GstMpegtsMiscDescriptorType" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsMiscDescriptorType"/>
+    <keyword type="struct" name="struct GstMpegtsISO639LanguageDescriptor" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor"/>
+    <keyword type="enum" name="enum GstMpegtsIso639AudioType" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType"/>
+    <keyword type="struct" name="struct GstMpegtsLogicalChannel" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannel"/>
+    <keyword type="struct" name="struct GstMpegtsLogicalChannelDescriptor" link="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannelDescriptor"/>
     <keyword type="function" name="gst_mpegts_section_get_atsc_tvct ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-tvct"/>
-    <keyword type="enum" name="enum GstMpegTsSectionATSCTableID" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegTsSectionATSCTableID"/>
+    <keyword type="function" name="gst_mpegts_section_get_atsc_cvct ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-cvct"/>
+    <keyword type="function" name="gst_mpegts_section_get_atsc_mgt ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-mgt"/>
+    <keyword type="function" name="gst_mpegts_atsc_string_segment_get_string ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-string-segment-get-string"/>
+    <keyword type="function" name="gst_mpegts_section_get_atsc_eit ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-eit"/>
+    <keyword type="function" name="gst_mpegts_section_get_atsc_ett ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-ett"/>
+    <keyword type="function" name="gst_mpegts_section_get_atsc_stt ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-stt"/>
+    <keyword type="function" name="gst_mpegts_atsc_stt_get_datetime_utc ()" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-stt-get-datetime-utc"/>
+    <keyword type="enum" name="enum GstMpegtsSectionATSCTableID" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsSectionATSCTableID"/>
+    <keyword type="struct" name="struct GstMpegtsAtscVCTSource" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCTSource"/>
+    <keyword type="struct" name="struct GstMpegtsAtscVCT" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT"/>
+    <keyword type="enum" name="enum GstMpegtsAtscMGTTableType" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTableType"/>
+    <keyword type="struct" name="struct GstMpegtsAtscMGTTable" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTable"/>
+    <keyword type="struct" name="struct GstMpegtsAtscMGT" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT"/>
+    <keyword type="struct" name="struct GstMpegtsAtscMultString" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMultString"/>
+    <keyword type="struct" name="struct GstMpegtsAtscEITEvent" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEITEvent"/>
+    <keyword type="struct" name="struct GstMpegtsAtscEIT" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT"/>
+    <keyword type="struct" name="struct GstMpegtsAtscETT" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT"/>
+    <keyword type="struct" name="struct GstMpegtsAtscSTT" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT"/>
     <keyword type="function" name="gst_mpegts_section_get_nit ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-nit"/>
     <keyword type="function" name="gst_mpegts_nit_new ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-new"/>
     <keyword type="function" name="gst_mpegts_nit_stream_new ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-stream-new"/>
     <keyword type="function" name="gst_mpegts_section_from_nit ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-from-nit"/>
+    <keyword type="function" name="gst_mpegts_section_get_bat ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-bat"/>
     <keyword type="function" name="gst_mpegts_section_get_sdt ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-sdt"/>
     <keyword type="function" name="gst_mpegts_sdt_new ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-sdt-new"/>
     <keyword type="function" name="gst_mpegts_sdt_service_new ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-sdt-service-new"/>
@@ -257,18 +278,18 @@
     <keyword type="function" name="gst_mpegts_section_get_eit ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-eit"/>
     <keyword type="function" name="gst_mpegts_section_get_tdt ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-tdt"/>
     <keyword type="function" name="gst_mpegts_section_get_tot ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-tot"/>
-    <keyword type="enum" name="enum GstMpegTsSectionDVBTableID" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSectionDVBTableID"/>
-    <keyword type="struct" name="struct GstMpegTsNIT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT"/>
-    <keyword type="struct" name="struct GstMpegTsNITStream" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream"/>
-    <keyword type="struct" name="struct GstMpegTsBAT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBAT"/>
-    <keyword type="struct" name="struct GstMpegTsBATStream" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBATStream"/>
-    <keyword type="struct" name="struct GstMpegTsSDT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT"/>
-    <keyword type="struct" name="struct GstMpegTsSDTService" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService"/>
-    <keyword type="struct" name="struct GstMpegTsEIT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT"/>
-    <keyword type="struct" name="struct GstMpegTsEITEvent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEITEvent"/>
-    <keyword type="enum" name="enum GstMpegTsRunningStatus" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus"/>
-    <keyword type="struct" name="struct GstMpegTsTOT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT"/>
-    <keyword type="enum" name="enum GstMpegTsATSCDescriptorType" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegTsATSCDescriptorType"/>
+    <keyword type="enum" name="enum GstMpegtsSectionDVBTableID" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSectionDVBTableID"/>
+    <keyword type="struct" name="struct GstMpegtsNIT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT"/>
+    <keyword type="struct" name="struct GstMpegtsNITStream" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream"/>
+    <keyword type="struct" name="struct GstMpegtsBAT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT"/>
+    <keyword type="struct" name="struct GstMpegtsBATStream" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBATStream"/>
+    <keyword type="struct" name="struct GstMpegtsSDT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT"/>
+    <keyword type="struct" name="struct GstMpegtsSDTService" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService"/>
+    <keyword type="struct" name="struct GstMpegtsEIT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT"/>
+    <keyword type="struct" name="struct GstMpegtsEITEvent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEITEvent"/>
+    <keyword type="enum" name="enum GstMpegtsRunningStatus" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus"/>
+    <keyword type="struct" name="struct GstMpegtsTOT" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT"/>
+    <keyword type="enum" name="enum GstMpegtsATSCDescriptorType" link="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegtsATSCDescriptorType"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_content ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-content"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_component ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-component"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_extended_event ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-extended-event"/>
@@ -283,6 +304,8 @@
     <keyword type="function" name="gst_mpegts_descriptor_from_dvb_service ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-service"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_teletext_idx ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-teletext-idx"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_teletext_nb ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-teletext-nb"/>
+    <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_subtitling_idx ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-idx"/>
+    <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_subtitling_nb ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-nb"/>
     <keyword type="function" name="gst_mpegts_descriptor_from_dvb_subtitling ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-subtitling"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_linkage ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-linkage"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_private_data_specifier ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-private-data-specifier"/>
@@ -300,42 +323,43 @@
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-multilingual-bouquet-name"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_multilingual_service_name ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-multilingual-service-name"/>
     <keyword type="function" name="gst_mpegts_descriptor_parse_dvb_multilingual_component ()" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-multilingual-component"/>
-    <keyword type="enum" name="enum GstMpegTsDVBDescriptorType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBDescriptorType"/>
-    <keyword type="enum" name="enum GstMpegTsDVBExtendedDescriptorType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBExtendedDescriptorType"/>
-    <keyword type="struct" name="struct GstMpegTsContent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsContent"/>
-    <keyword type="struct" name="struct GstMpegTsComponentDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsComponentDescriptor"/>
-    <keyword type="struct" name="struct GstMpegTsExtendedEventItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventItem"/>
-    <keyword type="struct" name="struct GstMpegTsExtendedEventDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventDescriptor"/>
-    <keyword type="struct" name="struct GstMpegTsSatelliteDeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteDeliverySystemDescriptor"/>
-    <keyword type="enum" name="enum GstMpegTsDVBCodeRate" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate"/>
-    <keyword type="enum" name="enum GstMpegTsModulationType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType"/>
-    <keyword type="enum" name="enum GstMpegTsSatellitePolarizationType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatellitePolarizationType"/>
-    <keyword type="enum" name="enum GstMpegTsSatelliteRolloff" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteRolloff"/>
-    <keyword type="struct" name="struct GstMpegTsCableDeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableDeliverySystemDescriptor"/>
-    <keyword type="enum" name="enum GstMpegTsCableOuterFECScheme" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableOuterFECScheme"/>
-    <keyword type="struct" name="struct GstMpegTsTerrestrialDeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialDeliverySystemDescriptor"/>
-    <keyword type="enum" name="enum GstMpegTsTerrestrialTransmissionMode" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialTransmissionMode"/>
-    <keyword type="enum" name="enum GstMpegTsTerrestrialGuardInterval" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialGuardInterval"/>
-    <keyword type="enum" name="enum GstMpegTsTerrestrialHierarchy" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialHierarchy"/>
-    <keyword type="struct" name="struct GstMpegTsT2DeliverySystemCellExtension" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCellExtension"/>
-    <keyword type="struct" name="struct GstMpegTsT2DeliverySystemCell" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCell"/>
-    <keyword type="struct" name="struct GstMpegTsT2DeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemDescriptor"/>
-    <keyword type="enum" name="enum GstMpegTsDVBServiceType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType"/>
-    <keyword type="enum" name="enum GstMpegTsDVBTeletextType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBTeletextType"/>
-    <keyword type="enum" name="enum GstMpegTsDVBLinkageType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageType"/>
-    <keyword type="enum" name="enum GstMpegTsDVBLinkageHandOverType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageHandOverType"/>
-    <keyword type="struct" name="struct GstMpegTsDVBLinkageMobileHandOver" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageMobileHandOver"/>
-    <keyword type="struct" name="struct GstMpegTsDVBLinkageEvent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageEvent"/>
-    <keyword type="struct" name="struct GstMpegTsDVBLinkageExtendedEvent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageExtendedEvent"/>
-    <keyword type="struct" name="struct GstMpegTsDVBLinkageDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageDescriptor"/>
-    <keyword type="struct" name="struct GstMpegTsDataBroadcastDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDataBroadcastDescriptor"/>
-    <keyword type="struct" name="struct GstMpegTsDVBParentalRatingItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBParentalRatingItem"/>
-    <keyword type="struct" name="struct GstMpegTsDVBServiceListItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceListItem"/>
-    <keyword type="struct" name="struct GstMpegTsDvbMultilingualNetworkNameItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualNetworkNameItem"/>
-    <keyword type="struct" name="struct GstMpegTsDvbMultilingualBouquetNameItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualBouquetNameItem"/>
-    <keyword type="struct" name="struct GstMpegTsDvbMultilingualServiceNameItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualServiceNameItem"/>
-    <keyword type="struct" name="struct GstMpegTsDvbMultilingualComponentItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualComponentItem"/>
-    <keyword type="enum" name="enum GstMpegTsISDBDescriptorType" link="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegTsISDBDescriptorType"/>
+    <keyword type="enum" name="enum GstMpegtsDVBDescriptorType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBDescriptorType"/>
+    <keyword type="enum" name="enum GstMpegtsDVBExtendedDescriptorType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBExtendedDescriptorType"/>
+    <keyword type="struct" name="struct GstMpegtsContent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsContent"/>
+    <keyword type="struct" name="struct GstMpegtsComponentDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsComponentDescriptor"/>
+    <keyword type="struct" name="struct GstMpegtsExtendedEventItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventItem"/>
+    <keyword type="struct" name="struct GstMpegtsExtendedEventDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventDescriptor"/>
+    <keyword type="struct" name="struct GstMpegtsSatelliteDeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteDeliverySystemDescriptor"/>
+    <keyword type="enum" name="enum GstMpegtsDVBCodeRate" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate"/>
+    <keyword type="enum" name="enum GstMpegtsModulationType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType"/>
+    <keyword type="enum" name="enum GstMpegtsSatellitePolarizationType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatellitePolarizationType"/>
+    <keyword type="enum" name="enum GstMpegtsSatelliteRolloff" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteRolloff"/>
+    <keyword type="struct" name="struct GstMpegtsCableDeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableDeliverySystemDescriptor"/>
+    <keyword type="enum" name="enum GstMpegtsCableOuterFECScheme" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableOuterFECScheme"/>
+    <keyword type="struct" name="struct GstMpegtsTerrestrialDeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialDeliverySystemDescriptor"/>
+    <keyword type="enum" name="enum GstMpegtsTerrestrialTransmissionMode" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialTransmissionMode"/>
+    <keyword type="enum" name="enum GstMpegtsTerrestrialGuardInterval" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialGuardInterval"/>
+    <keyword type="enum" name="enum GstMpegtsTerrestrialHierarchy" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialHierarchy"/>
+    <keyword type="struct" name="struct GstMpegtsT2DeliverySystemCellExtension" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCellExtension"/>
+    <keyword type="struct" name="struct GstMpegtsT2DeliverySystemCell" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCell"/>
+    <keyword type="struct" name="struct GstMpegtsT2DeliverySystemDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemDescriptor"/>
+    <keyword type="enum" name="enum GstMpegtsDVBServiceType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType"/>
+    <keyword type="enum" name="enum GstMpegtsDVBTeletextType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBTeletextType"/>
+    <keyword type="enum" name="enum GstMpegtsDVBLinkageType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageType"/>
+    <keyword type="enum" name="enum GstMpegtsDVBLinkageHandOverType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageHandOverType"/>
+    <keyword type="struct" name="struct GstMpegtsDVBLinkageMobileHandOver" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageMobileHandOver"/>
+    <keyword type="struct" name="struct GstMpegtsDVBLinkageEvent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageEvent"/>
+    <keyword type="struct" name="struct GstMpegtsDVBLinkageExtendedEvent" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageExtendedEvent"/>
+    <keyword type="struct" name="struct GstMpegtsDVBLinkageDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageDescriptor"/>
+    <keyword type="struct" name="struct GstMpegtsDataBroadcastDescriptor" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDataBroadcastDescriptor"/>
+    <keyword type="enum" name="enum GstMpegtsDVBScramblingModeType" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBScramblingModeType"/>
+    <keyword type="struct" name="struct GstMpegtsDVBParentalRatingItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBParentalRatingItem"/>
+    <keyword type="struct" name="struct GstMpegtsDVBServiceListItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceListItem"/>
+    <keyword type="struct" name="struct GstMpegtsDvbMultilingualNetworkNameItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualNetworkNameItem"/>
+    <keyword type="struct" name="struct GstMpegtsDvbMultilingualBouquetNameItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualBouquetNameItem"/>
+    <keyword type="struct" name="struct GstMpegtsDvbMultilingualServiceNameItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualServiceNameItem"/>
+    <keyword type="struct" name="struct GstMpegtsDvbMultilingualComponentItem" link="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualComponentItem"/>
+    <keyword type="enum" name="enum GstMpegtsISDBDescriptorType" link="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegtsISDBDescriptorType"/>
     <keyword type="function" name="GstInsertBinCallback ()" link="gst-plugins-bad-libs-GstInsertbin.html#GstInsertBinCallback"/>
     <keyword type="function" name="gst_insert_bin_new ()" link="gst-plugins-bad-libs-GstInsertbin.html#gst-insert-bin-new" since="1.2"/>
     <keyword type="function" name="gst_insert_bin_append ()" link="gst-plugins-bad-libs-GstInsertbin.html#gst-insert-bin-append" since="1.2"/>
diff --git a/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html b/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html
index 04252c7..3878550 100644
--- a/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html
+++ b/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html
@@ -41,7 +41,7 @@
 </colgroup>
 <tbody><tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegTsATSCDescriptorType" title="enum GstMpegTsATSCDescriptorType">GstMpegTsATSCDescriptorType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegtsATSCDescriptorType" title="enum GstMpegtsATSCDescriptorType">GstMpegtsATSCDescriptorType</a></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -64,7 +64,7 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsATSCDescriptorType"></a><h3>enum GstMpegTsATSCDescriptorType</h3>
+<a name="GstMpegtsATSCDescriptorType"></a><h3>enum GstMpegtsATSCDescriptorType</h3>
 <p>These values correspond to the registered descriptor type from
 the various ATSC specifications.</p>
 <p>Consult the relevant specifications for more details.</p>
diff --git a/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html b/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html
index 83ff174..2f04932 100644
--- a/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html
+++ b/docs/libs/html/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html
@@ -39,13 +39,65 @@
 <col width="150px" class="functions_return">
 <col class="functions_name">
 </colgroup>
-<tbody><tr>
-<td class="function_type">const <span class="returnvalue">GstMpegTsAtscVCT</span> *
+<tbody>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="returnvalue">GstMpegtsAtscVCT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-tvct" title="gst_mpegts_section_get_atsc_tvct ()">gst_mpegts_section_get_atsc_tvct</a> <span class="c_punctuation">()</span>
 </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="returnvalue">GstMpegtsAtscVCT</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-cvct" title="gst_mpegts_section_get_atsc_cvct ()">gst_mpegts_section_get_atsc_cvct</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT" title="struct GstMpegtsAtscMGT"><span class="returnvalue">GstMpegtsAtscMGT</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-mgt" title="gst_mpegts_section_get_atsc_mgt ()">gst_mpegts_section_get_atsc_mgt</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-string-segment-get-string" title="gst_mpegts_atsc_string_segment_get_string ()">gst_mpegts_atsc_string_segment_get_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT" title="struct GstMpegtsAtscEIT"><span class="returnvalue">GstMpegtsAtscEIT</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-eit" title="gst_mpegts_section_get_atsc_eit ()">gst_mpegts_section_get_atsc_eit</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT" title="struct GstMpegtsAtscETT"><span class="returnvalue">GstMpegtsAtscETT</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-ett" title="gst_mpegts_section_get_atsc_ett ()">gst_mpegts_section_get_atsc_ett</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT"><span class="returnvalue">GstMpegtsAtscSTT</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-stt" title="gst_mpegts_section_get_atsc_stt ()">gst_mpegts_section_get_atsc_stt</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/gstreamer-GstDateTime.html#GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-stt-get-datetime-utc" title="gst_mpegts_atsc_stt_get_datetime_utc ()">gst_mpegts_atsc_stt_get_datetime_utc</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
 <div class="refsect1">
@@ -55,10 +107,52 @@
 <col width="150px" class="name">
 <col class="description">
 </colgroup>
-<tbody><tr>
+<tbody>
+<tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegTsSectionATSCTableID" title="enum GstMpegTsSectionATSCTableID">GstMpegTsSectionATSCTableID</a></td>
-</tr></tbody>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsSectionATSCTableID" title="enum GstMpegtsSectionATSCTableID">GstMpegtsSectionATSCTableID</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCTSource" title="struct GstMpegtsAtscVCTSource">GstMpegtsAtscVCTSource</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT">GstMpegtsAtscVCT</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTableType" title="enum GstMpegtsAtscMGTTableType">GstMpegtsAtscMGTTableType</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTable" title="struct GstMpegtsAtscMGTTable">GstMpegtsAtscMGTTable</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT" title="struct GstMpegtsAtscMGT">GstMpegtsAtscMGT</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMultString" title="struct GstMpegtsAtscMultString">GstMpegtsAtscMultString</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEITEvent" title="struct GstMpegtsAtscEITEvent">GstMpegtsAtscEITEvent</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT" title="struct GstMpegtsAtscEIT">GstMpegtsAtscEIT</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT" title="struct GstMpegtsAtscETT">GstMpegtsAtscETT</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT">GstMpegtsAtscSTT</a></td>
+</tr>
+</tbody>
 </table></div>
 </div>
 <div class="refsect1">
@@ -78,9 +172,9 @@
 <a name="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-mpegts-section-get-atsc-tvct"></a><h3>gst_mpegts_section_get_atsc_tvct ()</h3>
-<pre class="programlisting">const <span class="returnvalue">GstMpegTsAtscVCT</span> *
-gst_mpegts_section_get_atsc_tvct (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <span class="type">GstMpegTsAtscVCT</span> contained in the <em class="parameter"><code>section</code></em>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="returnvalue">GstMpegtsAtscVCT</span></a> *
+gst_mpegts_section_get_atsc_tvct (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="type">GstMpegtsAtscVCT</span></a> contained in the <em class="parameter"><code>section</code></em>
 </p>
 <div class="refsect3">
 <a name="id-1.2.5.6.8.2.5"></a><h4>Parameters</h4>
@@ -92,26 +186,184 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-TVCT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_TVCT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-TVCT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_TVCT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.6.8.2.6"></a><h4>Returns</h4>
-<p> The <span class="type">GstMpegTsAtscVCT</span> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<p> The <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="type">GstMpegtsAtscVCT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened.</p>
 <p></p>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-get-atsc-cvct"></a><h3>gst_mpegts_section_get_atsc_cvct ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="returnvalue">GstMpegtsAtscVCT</span></a> *
+gst_mpegts_section_get_atsc_cvct (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="type">GstMpegtsAtscVCT</span></a> contained in the <em class="parameter"><code>section</code></em>
+</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.3.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-CVCT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_CVCT</code></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.3.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT" title="struct GstMpegtsAtscVCT"><span class="type">GstMpegtsAtscVCT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-get-atsc-mgt"></a><h3>gst_mpegts_section_get_atsc_mgt ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT" title="struct GstMpegtsAtscMGT"><span class="returnvalue">GstMpegtsAtscMGT</span></a> *
+gst_mpegts_section_get_atsc_mgt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT" title="struct GstMpegtsAtscMGT"><span class="type">GstMpegtsAtscMGT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.4.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-MGT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_MGT</code></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.4.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT" title="struct GstMpegtsAtscMGT"><span class="type">GstMpegtsAtscMGT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-atsc-string-segment-get-string"></a><h3>gst_mpegts_atsc_string_segment_get_string ()</h3>
+<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+gst_mpegts_atsc_string_segment_get_string
+                               (<em class="parameter"><code><span class="type">GstMpegtsAtscStringSegment</span> *seg</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-get-atsc-eit"></a><h3>gst_mpegts_section_get_atsc_eit ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT" title="struct GstMpegtsAtscEIT"><span class="returnvalue">GstMpegtsAtscEIT</span></a> *
+gst_mpegts_section_get_atsc_eit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT" title="struct GstMpegtsAtscEIT"><span class="type">GstMpegtsAtscEIT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.6.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-EIT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_EIT</code></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.6.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT" title="struct GstMpegtsAtscEIT"><span class="type">GstMpegtsAtscEIT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-get-atsc-ett"></a><h3>gst_mpegts_section_get_atsc_ett ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT" title="struct GstMpegtsAtscETT"><span class="returnvalue">GstMpegtsAtscETT</span></a> *
+gst_mpegts_section_get_atsc_ett (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT" title="struct GstMpegtsAtscETT"><span class="type">GstMpegtsAtscETT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.7.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-ETT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_ETT</code></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.7.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT" title="struct GstMpegtsAtscETT"><span class="type">GstMpegtsAtscETT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-get-atsc-stt"></a><h3>gst_mpegts_section_get_atsc_stt ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT"><span class="returnvalue">GstMpegtsAtscSTT</span></a> *
+gst_mpegts_section_get_atsc_stt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT"><span class="type">GstMpegtsAtscSTT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.8.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-ATSC-STT:CAPS"><code class="literal">GST_MPEGTS_SECTION_ATSC_STT</code></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.6.8.8.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT"><span class="type">GstMpegtsAtscSTT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-atsc-stt-get-datetime-utc"></a><h3>gst_mpegts_atsc_stt_get_datetime_utc ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
+gst_mpegts_atsc_stt_get_datetime_utc (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT" title="struct GstMpegtsAtscSTT"><span class="type">GstMpegtsAtscSTT</span></a> *stt</code></em>);</pre>
+</div>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsSectionATSCTableID"></a><h3>enum GstMpegTsSectionATSCTableID</h3>
-<p>Values for a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> table_id.</p>
+<a name="GstMpegtsSectionATSCTableID"></a><h3>enum GstMpegtsSectionATSCTableID</h3>
+<p>Values for a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> table_id.</p>
 <p>These are the registered ATSC table_id variants.</p>
-<p>see also: <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID" title="enum GstMpegTsSectionTableID"><span class="type">GstMpegTsSectionTableID</span></a></p>
+<p>see also: <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID" title="enum GstMpegtsSectionTableID"><span class="type">GstMpegtsSectionTableID</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.6.9.2.6"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -210,6 +462,543 @@
 </table></div>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscVCTSource"></a><h3>struct GstMpegtsAtscVCTSource</h3>
+<pre class="programlisting">struct GstMpegtsAtscVCTSource {
+  gchar    *short_name;
+  guint16   major_channel_number;
+  guint16   minor_channel_number;
+  guint8    modulation_mode;
+  guint32   carrier_frequency;
+  guint16   channel_TSID;
+  guint16   program_number;
+  /* FIXME: */
+  guint8    ETM_location;
+  gboolean  access_controlled;
+  gboolean  hidden;
+  gboolean  path_select; /* CVCT only - reserved bit in TVCT */
+  gboolean  out_of_band; /* CVCT only - reserved bit in TVCT */
+  gboolean  hide_guide;
+  /* FIXME: */
+  guint8    service_type;
+  guint16   source_id;
+  GPtrArray *descriptors;
+};
+</pre>
+<p>Source from a <em class="parameter"><code>GstMpegtsAtscVCT</code></em>
+, can be used both for TVCT and CVCT tables</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.3.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscVCTSource.short-name"></a>short_name</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.major-channel-number"></a>major_channel_number</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.minor-channel-number"></a>minor_channel_number</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.modulation-mode"></a>modulation_mode</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.carrier-frequency"></a>carrier_frequency</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.channel-TSID"></a>channel_TSID</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.program-number"></a>program_number</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.ETM-location"></a>ETM_location</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.access-controlled"></a>access_controlled</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.hidden"></a>hidden</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.path-select"></a>path_select</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.out-of-band"></a>out_of_band</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.hide-guide"></a>hide_guide</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.service-type"></a>service_type</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscVCTSource.source-id"></a>source_id</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscVCTSource.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> descriptors. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscVCT"></a><h3>struct GstMpegtsAtscVCT</h3>
+<pre class="programlisting">struct GstMpegtsAtscVCT {
+  guint16   transport_stream_id;
+  guint8    protocol_version;
+  GPtrArray *sources;
+  GPtrArray *descriptors;
+};
+</pre>
+<p>Represents both:
+  Terrestrial Virtual Channel Table (A65)
+  Cable Virtual Channel Table (A65)</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.4.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscVCT.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscVCT.protocol-version"></a>protocol_version</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscVCT.sources"></a>sources</code></em>;</p></td>
+<td class="struct_member_description"><p> sources. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsAtscVCTSource]</span></td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscVCT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> descriptors. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscMGTTableType"></a><h3>enum GstMpegtsAtscMGTTableType</h3>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.5.3"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-ATSC-MGT-TABLE-TYPE-EIT0:CAPS"></a>GST_MPEGTS_ATSC_MGT_TABLE_TYPE_EIT0</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-ATSC-MGT-TABLE-TYPE-EIT127:CAPS"></a>GST_MPEGTS_ATSC_MGT_TABLE_TYPE_EIT127</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-ATSC-MGT-TABLE-TYPE-ETT0:CAPS"></a>GST_MPEGTS_ATSC_MGT_TABLE_TYPE_ETT0</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-ATSC-MGT-TABLE-TYPE-ETT127:CAPS"></a>GST_MPEGTS_ATSC_MGT_TABLE_TYPE_ETT127</p></td>
+<td> </td>
+<td> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscMGTTable"></a><h3>struct GstMpegtsAtscMGTTable</h3>
+<pre class="programlisting">struct GstMpegtsAtscMGTTable {
+  guint16 table_type;
+  guint16 pid;
+  guint8  version_number;
+  guint32 number_bytes;
+  GPtrArray *descriptors;
+};
+</pre>
+<p>Source from a <em class="parameter"><code>GstMpegtsAtscMGT</code></em>
+</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.6.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscMGTTable.table-type"></a>table_type</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscMGTTable.pid"></a>pid</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscMGTTable.version-number"></a>version_number</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsAtscMGTTable.number-bytes"></a>number_bytes</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscMGTTable.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> descriptors. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscMGT"></a><h3>struct GstMpegtsAtscMGT</h3>
+<pre class="programlisting">struct GstMpegtsAtscMGT {
+  guint8  protocol_version;
+  guint16 tables_defined;
+  GPtrArray *tables;
+  GPtrArray *descriptors;
+};
+</pre>
+<p>Master Guide Table (A65)</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.7.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscMGT.protocol-version"></a>protocol_version</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscMGT.tables-defined"></a>tables_defined</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscMGT.tables"></a>tables</code></em>;</p></td>
+<td class="struct_member_description"><p> the tables. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsAtscMGTTable]</span></td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscMGT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> descriptors. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscMultString"></a><h3>struct GstMpegtsAtscMultString</h3>
+<pre class="programlisting">struct GstMpegtsAtscMultString {
+  gchar      iso_639_langcode[4];
+  GPtrArray *segments;
+};
+</pre>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.8.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegtsAtscMultString.iso-639-langcode"></a>iso_639_langcode</code></em>[4];</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscMultString.segments"></a>segments</code></em>;</p></td>
+<td class="struct_member_description"><p>(element-type GstMpegtsAtscStringSegment)</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscEITEvent"></a><h3>struct GstMpegtsAtscEITEvent</h3>
+<pre class="programlisting">struct GstMpegtsAtscEITEvent {
+  guint16        event_id;
+  guint32        start_time;
+  guint8         etm_location;
+  guint32        length_in_seconds;
+  GPtrArray     *titles;
+
+  GPtrArray *descriptors;
+};
+</pre>
+<p>An ATSC EIT Event</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.9.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscEITEvent.event-id"></a>event_id</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsAtscEITEvent.start-time"></a>start_time</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscEITEvent.etm-location"></a>etm_location</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsAtscEITEvent.length-in-seconds"></a>length_in_seconds</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscEITEvent.titles"></a>titles</code></em>;</p></td>
+<td class="struct_member_description"><p> the titles. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsAtscMultString]</span></td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscEITEvent.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> descriptors. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscEIT"></a><h3>struct GstMpegtsAtscEIT</h3>
+<pre class="programlisting">struct GstMpegtsAtscEIT {
+  guint16        source_id;
+  guint8         protocol_version;
+
+  GPtrArray     *events;
+};
+</pre>
+<p>Event Information Table (ATSC)</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.10.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscEIT.source-id"></a>source_id</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscEIT.protocol-version"></a>protocol_version</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscEIT.events"></a>events</code></em>;</p></td>
+<td class="struct_member_description"><p> Events. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsAtscEITEvent]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscETT"></a><h3>struct GstMpegtsAtscETT</h3>
+<pre class="programlisting">struct GstMpegtsAtscETT {
+  guint16        ett_table_id_extension;
+  guint16        protocol_version;
+  guint32        etm_id;
+
+  GPtrArray     *messages;
+};
+</pre>
+<p>Extended Text Table (ATSC)</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.11.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscETT.ett-table-id-extension"></a>ett_table_id_extension</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsAtscETT.protocol-version"></a>protocol_version</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsAtscETT.etm-id"></a>etm_id</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscETT.messages"></a>messages</code></em>;</p></td>
+<td class="struct_member_description"><p> List of texts. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsAtscMultString]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsAtscSTT"></a><h3>struct GstMpegtsAtscSTT</h3>
+<pre class="programlisting">struct GstMpegtsAtscSTT {
+  guint8     protocol_version;
+  guint32    system_time;
+  guint8     gps_utc_offset;
+  gboolean   ds_status;
+  guint8     ds_dayofmonth;
+  guint8     ds_hour;
+  GPtrArray *descriptors;
+
+  GstDateTime *utc_datetime;
+};
+</pre>
+<p>System Time Table (A65)</p>
+<div class="refsect3">
+<a name="id-1.2.5.6.9.12.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscSTT.protocol-version"></a>protocol_version</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsAtscSTT.system-time"></a>system_time</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscSTT.gps-utc-offset"></a>gps_utc_offset</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsAtscSTT.ds-status"></a>ds_status</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscSTT.ds-dayofmonth"></a>ds_dayofmonth</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsAtscSTT.ds-hour"></a>ds_hour</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscSTT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> descriptors. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> *<em class="structfield"><code><a name="GstMpegtsAtscSTT.utc-datetime"></a>utc_datetime</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
 </div>
 </div>
 <div class="footer">
diff --git a/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html b/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html
index a5a8349..4d8dd1a 100644
--- a/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html
+++ b/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html
@@ -41,7 +41,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-find-descriptor" title="gst_mpegts_find_descriptor ()">gst_mpegts_find_descriptor</a> <span class="c_punctuation">()</span>
@@ -57,7 +57,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-custom" title="gst_mpegts_descriptor_from_custom ()">gst_mpegts_descriptor_from_custom</a> <span class="c_punctuation">()</span>
@@ -65,7 +65,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-registration" title="gst_mpegts_descriptor_from_registration ()">gst_mpegts_descriptor_from_registration</a> <span class="c_punctuation">()</span>
@@ -84,7 +84,23 @@
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier" title="gst_mpegts_descriptor_parse_dvb_stream_identifier ()">gst_mpegts_descriptor_parse_dvb_stream_identifier</a> <span class="c_punctuation">()</span>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-idx" title="gst_mpegts_descriptor_parse_iso_639_language_idx ()">gst_mpegts_descriptor_parse_iso_639_language_idx</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-nb" title="gst_mpegts_descriptor_parse_iso_639_language_nb ()">gst_mpegts_descriptor_parse_iso_639_language_nb</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="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-iso-639-language-descriptor-free" title="gst_mpegts_iso_639_language_descriptor_free ()">gst_mpegts_iso_639_language_descriptor_free</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
@@ -98,7 +114,7 @@
 </tbody>
 </table></div>
 </div>
-<a name="GstMpegTsDescriptor"></a><div class="refsect1">
+<a name="GstMpegtsDescriptor"></a><div class="refsect1">
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.other"></a><h2>Types and Values</h2>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -108,31 +124,31 @@
 <tbody>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor-struct" title="struct GstMpegTsDescriptor">GstMpegTsDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor-struct" title="struct GstMpegtsDescriptor">GstMpegtsDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptorType" title="enum GstMpegTsDescriptorType">GstMpegTsDescriptorType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptorType" title="enum GstMpegtsDescriptorType">GstMpegtsDescriptorType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsMiscDescriptorType" title="enum GstMpegTsMiscDescriptorType">GstMpegTsMiscDescriptorType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsMiscDescriptorType" title="enum GstMpegtsMiscDescriptorType">GstMpegtsMiscDescriptorType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsISO639LanguageDescriptor" title="struct GstMpegTsISO639LanguageDescriptor">GstMpegTsISO639LanguageDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor" title="struct GstMpegtsISO639LanguageDescriptor">GstMpegtsISO639LanguageDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsIso639AudioType" title="enum GstMpegTsIso639AudioType">GstMpegTsIso639AudioType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType" title="enum GstMpegtsIso639AudioType">GstMpegtsIso639AudioType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannel" title="struct GstMpegTsLogicalChannel">GstMpegTsLogicalChannel</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannel" title="struct GstMpegtsLogicalChannel">GstMpegtsLogicalChannel</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannelDescriptor" title="struct GstMpegTsLogicalChannelDescriptor">GstMpegTsLogicalChannelDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannelDescriptor" title="struct GstMpegtsLogicalChannelDescriptor">GstMpegtsLogicalChannelDescriptor</a></td>
 </tr>
 </tbody>
 </table></div>
@@ -140,10 +156,10 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.object-hierarchy"></a><h2>Object Hierarchy</h2>
 <pre class="screen">    GBoxed
-    <span class="lineart">╰──</span> GstMpegTsDescriptor
+    <span class="lineart">╰──</span> GstMpegtsDescriptor
     GEnum
-    <span class="lineart">├──</span> GstMpegTsDescriptorType
-    <span class="lineart">╰──</span> GstMpegTsIso639AudioType
+    <span class="lineart">├──</span> GstMpegtsDescriptorType
+    <span class="lineart">╰──</span> GstMpegtsIso639AudioType
 </pre>
 </div>
 <div class="refsect1">
@@ -161,7 +177,7 @@
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-mpegts-find-descriptor"></a><h3>gst_mpegts_find_descriptor ()</h3>
-<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 gst_mpegts_find_descriptor (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *descriptors</code></em>,
                             <em class="parameter"><code><span class="type">guint8</span> tag</code></em>);</pre>
 <p>Finds the first descriptor of type <em class="parameter"><code>tag</code></em>
@@ -180,8 +196,8 @@
 <tr>
 <td class="parameter_name"><p>descriptors</p></td>
 <td class="parameter_description"><p> an array
-of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>tag</p></td>
@@ -237,17 +253,17 @@
 <p> an
 array of the parsed descriptors or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there was an error.
 Release with <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#g-array-unref"><span class="type">g_array_unref</span></a> when done with it. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-descriptor-from-custom"></a><h3>gst_mpegts_descriptor_from_custom ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 gst_mpegts_descriptor_from_custom (<em class="parameter"><code><span class="type">guint8</span> tag</code></em>,
                                    <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>,
                                    <em class="parameter"><code><span class="type">gsize</span> length</code></em>);</pre>
-<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> with custom <em class="parameter"><code>tag</code></em>
+<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> with custom <em class="parameter"><code>tag</code></em>
  and <em class="parameter"><code>data</code></em>
 </p>
 <div class="refsect3">
@@ -280,20 +296,20 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.5.9.4.6"></a><h4>Returns</h4>
-<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p>
+<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-descriptor-from-registration"></a><h3>gst_mpegts_descriptor_from_registration ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 gst_mpegts_descriptor_from_registration
                                (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *format_identifier</code></em>,
                                 <em class="parameter"><code><span class="type">guint8</span> *additional_info</code></em>,
                                 <em class="parameter"><code><span class="type">gsize</span> additional_info_length</code></em>);</pre>
-<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-REGISTRATION:CAPS"><code class="literal">GST_MTS_DESC_REGISTRATION</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p>
-<p>Return: <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure</p>
+<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-REGISTRATION:CAPS"><code class="literal">GST_MTS_DESC_REGISTRATION</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p>
+<p>Return: <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure</p>
 <div class="refsect3">
 <a name="id-1.2.5.5.9.5.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -328,8 +344,8 @@
 <a name="gst-mpegts-descriptor-parse-iso-639-language"></a><h3>gst_mpegts_descriptor_parse_iso_639_language ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_iso_639_language
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsISO639LanguageDescriptor" title="struct GstMpegTsISO639LanguageDescriptor"><span class="type">GstMpegTsISO639LanguageDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor" title="struct GstMpegtsISO639LanguageDescriptor"><span class="type">GstMpegtsISO639LanguageDescriptor</span></a> **res</code></em>);</pre>
 <p>Extracts the iso 639-2 language information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <p>Note: Use <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gsttaglanguagecodes.html#gst-tag-get-language-code"><span class="type">gst_tag_get_language_code</span></a> if you want to get the the
@@ -345,13 +361,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-ISO-639-LANGUAGE:CAPS"><code class="literal">GST_MTS_DESC_ISO_639_LANGUAGE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-ISO-639-LANGUAGE:CAPS"><code class="literal">GST_MTS_DESC_ISO_639_LANGUAGE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsISO639LanguageDescriptor" title="struct GstMpegTsISO639LanguageDescriptor"><span class="type">GstMpegTsISO639LanguageDescriptor</span></a> to fill. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor" title="struct GstMpegtsISO639LanguageDescriptor"><span class="type">GstMpegtsISO639LanguageDescriptor</span></a> to fill. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -364,15 +380,19 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-stream-identifier"></a><h3>gst_mpegts_descriptor_parse_dvb_stream_identifier ()</h3>
+<a name="gst-mpegts-descriptor-parse-iso-639-language-idx"></a><h3>gst_mpegts_descriptor_parse_iso_639_language_idx ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_stream_identifier
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> *component_tag</code></em>);</pre>
-<p>Extracts the component tag from <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_iso_639_language_idx
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **lang</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType" title="enum GstMpegtsIso639AudioType"><span class="type">GstMpegtsIso639AudioType</span></a> *audio_type</code></em>);</pre>
+<p>Extracts the iso 639-2 language information from specific table id in <em class="parameter"><code>descriptor</code></em>
 .</p>
+<p>Note: Use <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gsttaglanguagecodes.html#gst-tag-get-language-code"><span class="type">gst_tag_get_language_code</span></a> if you want to get the the
+ISO 639-1 language code from the returned ISO 639-2 one.</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.9.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.7.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -382,34 +402,79 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CONTENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_CONTENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-ISO-639-LANGUAGE:CAPS"><code class="literal">GST_MTS_DESC_ISO_639_LANGUAGE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>component_tag</p></td>
-<td class="parameter_description"><p> the component tag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_name"><p>idx</p></td>
+<td class="parameter_description"><p>Table id of the language to parse</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>lang</p></td>
+<td class="parameter_description"><p> 4-byte gchar array to hold the language code. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>audio_type</p></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType" title="enum GstMpegtsIso639AudioType"><span class="type">GstMpegtsIso639AudioType</span></a> to set. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.9.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happended correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<a name="id-1.2.5.5.9.7.7"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parsing succeeded, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-iso-639-language-nb"></a><h3>gst_mpegts_descriptor_parse_iso_639_language_nb ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_mpegts_descriptor_parse_iso_639_language_nb
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.5.5.9.8.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>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-ISO-639-LANGUAGE:CAPS"><code class="literal">GST_MTS_DESC_ISO_639_LANGUAGE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.5.9.8.5"></a><h4>Returns</h4>
+<p> The number of languages in <em class="parameter"><code>descriptor</code></em>
+</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-iso-639-language-descriptor-free"></a><h3>gst_mpegts_iso_639_language_descriptor_free ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_mpegts_iso_639_language_descriptor_free
+                               (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor" title="struct GstMpegtsISO639LanguageDescriptor"><span class="type">GstMpegtsISO639LanguageDescriptor</span></a> *desc</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-mpegts-descriptor-parse-logical-channel"></a><h3>gst_mpegts_descriptor_parse_logical_channel ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_logical_channel
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannelDescriptor" title="struct GstMpegTsLogicalChannelDescriptor"><span class="type">GstMpegTsLogicalChannelDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannelDescriptor" title="struct GstMpegtsLogicalChannelDescriptor"><span class="type">GstMpegtsLogicalChannelDescriptor</span></a> *res</code></em>);</pre>
 <p>Extracts the logical channels from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.5.5.9.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.5.9.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -419,19 +484,19 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-DTG-LOGICAL-CHANNEL:CAPS"><code class="literal">GST_MTS_DESC_DTG_LOGICAL_CHANNEL</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GST-MTS-DESC-DTG-LOGICAL-CHANNEL:CAPS"><code class="literal">GST_MTS_DESC_DTG_LOGICAL_CHANNEL</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannelDescriptor" title="struct GstMpegTsLogicalChannelDescriptor"><span class="type">GstMpegTsLogicalChannelDescriptor</span></a> to fill. </p></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannelDescriptor" title="struct GstMpegtsLogicalChannelDescriptor"><span class="type">GstMpegtsLogicalChannelDescriptor</span></a> to fill. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.5.9.8.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.5.9.10.6"></a><h4>Returns</h4>
 <p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parsing succeeded, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
@@ -440,8 +505,8 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsDescriptor-struct"></a><h3>struct GstMpegTsDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsDescriptor {
+<a name="GstMpegtsDescriptor-struct"></a><h3>struct GstMpegtsDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsDescriptor {
   guint8 tag;
   guint8 tag_extension;
   guint8 length;
@@ -459,23 +524,23 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsDescriptor-struct.tag"></a>tag</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsDescriptor-struct.tag"></a>tag</code></em>;</p></td>
 <td class="struct_member_description"><p>the type of descriptor</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsDescriptor-struct.tag-extension"></a>tag_extension</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsDescriptor-struct.tag-extension"></a>tag_extension</code></em>;</p></td>
 <td class="struct_member_description"><p>the extended type (if <em class="parameter"><code>descriptor_tag</code></em>
 is 0x7f)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsDescriptor-struct.length"></a>length</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsDescriptor-struct.length"></a>length</code></em>;</p></td>
 <td class="struct_member_description"><p>the length of the descriptor content (excluding tag/length field)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> *<em class="structfield"><code><a name="GstMpegTsDescriptor-struct.data"></a>data</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> *<em class="structfield"><code><a name="GstMpegtsDescriptor-struct.data"></a>data</code></em>;</p></td>
 <td class="struct_member_description"><p>the full descriptor data (including tag, extension, length). The first
 two bytes are the <em class="parameter"><code>tag</code></em>
 and <em class="parameter"><code>tag_extension</code></em>
@@ -488,8 +553,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDescriptorType"></a><h3>enum GstMpegTsDescriptorType</h3>
-<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p>
+<a name="GstMpegtsDescriptorType"></a><h3>enum GstMpegtsDescriptorType</h3>
+<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p>
 <p>These values correspond to the registered descriptor type from
 the base MPEG-TS specifications (ITU H.222.0 | ISO/IEC 13818-1).</p>
 <p>Consult the relevant specifications for more details.</p>
@@ -778,8 +843,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsMiscDescriptorType"></a><h3>enum GstMpegTsMiscDescriptorType</h3>
-<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p>
+<a name="GstMpegtsMiscDescriptorType"></a><h3>enum GstMpegtsMiscDescriptorType</h3>
+<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p>
 <p>These values correspond to miscellaneous descriptor types that are
 not yet identified from known specifications.</p>
 <div class="refsect3">
@@ -807,17 +872,17 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsISO639LanguageDescriptor"></a><h3>struct GstMpegTsISO639LanguageDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsISO639LanguageDescriptor {
+<a name="GstMpegtsISO639LanguageDescriptor"></a><h3>struct GstMpegtsISO639LanguageDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsISO639LanguageDescriptor {
   guint                    nb_language;
-  gchar                    language[64][3];
-  GstMpegTsIso639AudioType audio_type[64];
+  gchar                    *language[64];
+  GstMpegtsIso639AudioType audio_type[64];
 };
 </pre>
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsIso639AudioType"></a><h3>enum GstMpegTsIso639AudioType</h3>
+<a name="GstMpegtsIso639AudioType"></a><h3>enum GstMpegtsIso639AudioType</h3>
 <div class="refsect3">
 <a name="id-1.2.5.5.10.6.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -853,8 +918,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsLogicalChannel"></a><h3>struct GstMpegTsLogicalChannel</h3>
-<pre class="programlisting">struct GstMpegTsLogicalChannel {
+<a name="GstMpegtsLogicalChannel"></a><h3>struct GstMpegtsLogicalChannel</h3>
+<pre class="programlisting">struct GstMpegtsLogicalChannel {
   guint16   service_id;
   gboolean  visible_service;
   guint16   logical_channel_number;
@@ -863,10 +928,10 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsLogicalChannelDescriptor"></a><h3>struct GstMpegTsLogicalChannelDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsLogicalChannelDescriptor {
+<a name="GstMpegtsLogicalChannelDescriptor"></a><h3>struct GstMpegtsLogicalChannelDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsLogicalChannelDescriptor {
   guint                   nb_channels;
-  GstMpegTsLogicalChannel channels[64];
+  GstMpegtsLogicalChannel channels[64];
 };
 </pre>
 </div>
diff --git a/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-sections.html b/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-sections.html
index edee922..1cf83b0 100644
--- a/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-sections.html
+++ b/docs/libs/html/gst-plugins-bad-libs-Base-MPEG-TS-sections.html
@@ -56,7 +56,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-message-parse-mpegts-section" title="gst_message_parse_mpegts_section ()">gst_message_parse_mpegts_section</a> <span class="c_punctuation">()</span>
@@ -72,7 +72,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-event-parse-mpegts-section" title="gst_event_parse_mpegts_section ()">gst_event_parse_mpegts_section</a> <span class="c_punctuation">()</span>
@@ -88,7 +88,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-new" title="gst_mpegts_section_new ()">gst_mpegts_section_new</a> <span class="c_punctuation">()</span>
@@ -124,7 +124,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="returnvalue">GstMpegTsPatProgram</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="returnvalue">GstMpegtsPatProgram</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-pat-program-new" title="gst_mpegts_pat_program_new ()">gst_mpegts_pat_program_new</a> <span class="c_punctuation">()</span>
@@ -132,14 +132,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-from-pat" title="gst_mpegts_section_from_pat ()">gst_mpegts_section_from_pat</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="returnvalue">GstMpegTsPMT</span></a> *
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="returnvalue">GstMpegtsPMT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-get-pmt" title="gst_mpegts_section_get_pmt ()">gst_mpegts_section_get_pmt</a> <span class="c_punctuation">()</span>
@@ -147,7 +147,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="returnvalue">GstMpegTsPMT</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="returnvalue">GstMpegtsPMT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-pmt-new" title="gst_mpegts_pmt_new ()">gst_mpegts_pmt_new</a> <span class="c_punctuation">()</span>
@@ -155,7 +155,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream"><span class="returnvalue">GstMpegTsPMTStream</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream"><span class="returnvalue">GstMpegtsPMTStream</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-pmt-stream-new" title="gst_mpegts_pmt_stream_new ()">gst_mpegts_pmt_stream_new</a> <span class="c_punctuation">()</span>
@@ -163,7 +163,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-from-pmt" title="gst_mpegts_section_from_pmt ()">gst_mpegts_section_from_pmt</a> <span class="c_punctuation">()</span>
@@ -188,7 +188,7 @@
 </tbody>
 </table></div>
 </div>
-<a name="GstMpegTsSection"></a><div class="refsect1">
+<a name="GstMpegtsSection"></a><div class="refsect1">
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-sections.other"></a><h2>Types and Values</h2>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -198,31 +198,31 @@
 <tbody>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection-struct" title="struct GstMpegTsSection">GstMpegTsSection</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection-struct" title="struct GstMpegtsSection">GstMpegtsSection</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID" title="enum GstMpegTsSectionTableID">GstMpegTsSectionTableID</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID" title="enum GstMpegtsSectionTableID">GstMpegtsSectionTableID</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionType" title="enum GstMpegTsSectionType">GstMpegTsSectionType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionType" title="enum GstMpegtsSectionType">GstMpegtsSectionType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram">GstMpegTsPatProgram</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram">GstMpegtsPatProgram</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT">GstMpegTsPMT</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT">GstMpegtsPMT</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream">GstMpegTsPMTStream</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream">GstMpegtsPMTStream</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsStreamType" title="enum GstMpegTsStreamType">GstMpegTsStreamType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsStreamType" title="enum GstMpegtsStreamType">GstMpegtsStreamType</a></td>
 </tr>
 </tbody>
 </table></div>
@@ -230,11 +230,11 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-sections.object-hierarchy"></a><h2>Object Hierarchy</h2>
 <pre class="screen">    GBoxed
-    <span class="lineart">╰──</span> GstMpegTsSection
+    <span class="lineart">╰──</span> GstMpegtsSection
     GEnum
-    <span class="lineart">├──</span> GstMpegTsSectionTableID
-    <span class="lineart">├──</span> GstMpegTsSectionType
-    <span class="lineart">╰──</span> GstMpegTsStreamType
+    <span class="lineart">├──</span> GstMpegtsSectionTableID
+    <span class="lineart">├──</span> GstMpegtsSectionType
+    <span class="lineart">╰──</span> GstMpegtsStreamType
 </pre>
 </div>
 <div class="refsect1">
@@ -259,8 +259,8 @@
 <a name="gst-message-new-mpegts-section"></a><h3>gst_message_new_mpegts_section ()</h3>
 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
 gst_message_new_mpegts_section (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Creates a new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> for a <em class="parameter"><code>GstMpegTsSection</code></em>
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Creates a new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> for a <em class="parameter"><code>GstMpegtsSection</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.3.5"></a><h4>Parameters</h4>
@@ -278,7 +278,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> to put in a message. </p></td>
+<td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> to put in a message. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -294,9 +294,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-message-parse-mpegts-section"></a><h3>gst_message_parse_mpegts_section ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 gst_message_parse_mpegts_section (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre>
-<p>Returns the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> contained in a message.</p>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> contained in a message.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.4.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -314,7 +314,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.4.6"></a><h4>Returns</h4>
-<p> the contained <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
+<p> the contained <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -322,9 +322,9 @@
 <div class="refsect2">
 <a name="gst-mpegts-section-send-event"></a><h3>gst_mpegts_section_send_event ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_section_send_event (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>,
+gst_mpegts_section_send_event (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>,
                                <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *element</code></em>);</pre>
-<p>Creates a custom <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> with a <em class="parameter"><code>GstMpegTsSection</code></em>
+<p>Creates a custom <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> with a <em class="parameter"><code>GstMpegtsSection</code></em>
 .
 The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> is sent to the <em class="parameter"><code>element</code></em>
  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a>.</p>
@@ -344,7 +344,7 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> to put in the event. </p></td>
+<td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> to put in the event. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -359,9 +359,9 @@
 <hr>
 <div class="refsect2">
 <a name="gst-event-parse-mpegts-section"></a><h3>gst_event_parse_mpegts_section ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 gst_event_parse_mpegts_section (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre>
-<p>Extracts the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> contained in the <em class="parameter"><code>event</code></em>
+<p>Extracts the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> contained in the <em class="parameter"><code>event</code></em>
  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.6.5"></a><h4>Parameters</h4>
@@ -373,14 +373,14 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>event</p></td>
-<td class="parameter_description"><p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> containing a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>. </p></td>
+<td class="parameter_description"><p> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> containing a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.6.6"></a><h4>Returns</h4>
-<p> The extracted <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>. </p>
+<p> The extracted <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -388,7 +388,7 @@
 <div class="refsect2">
 <a name="gst-mpegts-section-packetize"></a><h3>gst_mpegts_section_packetize ()</h3>
 <pre class="programlisting"><span class="returnvalue">guint8</span> *
-gst_mpegts_section_packetize (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>,
+gst_mpegts_section_packetize (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>,
                               <em class="parameter"><code><span class="type">gsize</span> *output_size</code></em>);</pre>
 <p>If the data in <em class="parameter"><code>section</code></em>
  has aldready been packetized, the data pointer is returned
@@ -404,7 +404,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> that holds the data. </p></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> that holds the data. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 <tr>
@@ -424,11 +424,11 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-new"></a><h3>gst_mpegts_section_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 gst_mpegts_section_new (<em class="parameter"><code><span class="type">guint16</span> pid</code></em>,
                         <em class="parameter"><code><span class="type">guint8</span> *data</code></em>,
                         <em class="parameter"><code><span class="type">gsize</span> data_size</code></em>);</pre>
-<p>Creates a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> from the provided <em class="parameter"><code>data</code></em>
+<p>Creates a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> from the provided <em class="parameter"><code>data</code></em>
 .</p>
 <p>Note: Ensuring <em class="parameter"><code>data</code></em>
  is big enough to contain the full section is the
@@ -468,7 +468,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.8.8"></a><h4>Returns</h4>
-<p> A new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> if the data was valid,
+<p> A new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> if the data was valid,
 else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
@@ -476,7 +476,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-ref"></a><h3>gst_mpegts_section_ref()</h3>
-<pre class="programlisting">#define gst_mpegts_section_ref(section)   ((GstMpegTsSection*) gst_mini_object_ref (GST_MINI_OBJECT_CAST (section)))
+<pre class="programlisting">#define gst_mpegts_section_ref(section)   ((GstMpegtsSection*) gst_mini_object_ref (GST_MINI_OBJECT_CAST (section)))
 </pre>
 </div>
 <hr>
@@ -489,9 +489,9 @@
 <div class="refsect2">
 <a name="gst-mpegts-section-get-pat"></a><h3>gst_mpegts_section_get_pat ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *
-gst_mpegts_section_get_pat (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
+gst_mpegts_section_get_pat (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
 <p>Parses a Program Association Table (ITU H.222.0, ISO/IEC 13818-1).</p>
-<p>Returns the array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="type">GstMpegTsPatProgram</span></a> contained in the section.</p>
+<p>Returns the array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="type">GstMpegtsPatProgram</span></a> contained in the section.</p>
 <p>Note: The PAT "transport_id" field corresponds to the "subtable_extension"
 field of the provided <em class="parameter"><code>section</code></em>
 .</p>
@@ -505,7 +505,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-PAT:CAPS"><code class="literal">GST_MPEGTS_SECTION_PAT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-PAT:CAPS"><code class="literal">GST_MPEGTS_SECTION_PAT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -513,9 +513,9 @@
 <div class="refsect3">
 <a name="id-1.2.5.4.9.11.8"></a><h4>Returns</h4>
 <p> The
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="type">GstMpegTsPatProgram</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="type">GstMpegtsPatProgram</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened. Release with <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#g-ptr-array-unref"><span class="type">g_ptr_array_unref</span></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsPatProgram]</span></p>
+<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsPatProgram]</span></p>
 </div>
 </div>
 <hr>
@@ -523,33 +523,33 @@
 <a name="gst-mpegts-pat-new"></a><h3>gst_mpegts_pat_new ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *
 gst_mpegts_pat_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates a new <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> for <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="type">GstMpegTsPatProgram</span></a></p>
+<p>Allocates a new <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> for <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="type">GstMpegtsPatProgram</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.12.5"></a><h4>Returns</h4>
 <p> A newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsPatProgram]</span></p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsPatProgram]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-pat-program-new"></a><h3>gst_mpegts_pat_program_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="returnvalue">GstMpegTsPatProgram</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="returnvalue">GstMpegtsPatProgram</span></a> *
 gst_mpegts_pat_program_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="type">GstMpegTsPatProgram</span></a>.</p>
+<p>Allocates a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="type">GstMpegtsPatProgram</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.13.5"></a><h4>Returns</h4>
-<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="type">GstMpegTsPatProgram</span></a>. </p>
+<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="type">GstMpegtsPatProgram</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-from-pat"></a><h3>gst_mpegts_section_from_pat ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 gst_mpegts_section_from_pat (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *programs</code></em>,
                              <em class="parameter"><code><span class="type">guint16</span> ts_id</code></em>);</pre>
-<p>Creates a PAT <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> from the <em class="parameter"><code>programs</code></em>
- array of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram"><span class="type">GstMpegTsPatPrograms</span></a></p>
+<p>Creates a PAT <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> from the <em class="parameter"><code>programs</code></em>
+ array of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram"><span class="type">GstMpegtsPatPrograms</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.14.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -561,8 +561,8 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>programs</p></td>
-<td class="parameter_description"><p> an array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram" title="struct GstMpegTsPatProgram"><span class="type">GstMpegTsPatProgram</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsPatProgram]</span></td>
+<td class="parameter_description"><p> an array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram" title="struct GstMpegtsPatProgram"><span class="type">GstMpegtsPatProgram</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsPatProgram]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>ts_id</p></td>
@@ -574,16 +574,16 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.14.6"></a><h4>Returns</h4>
-<p> a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>. </p>
+<p> a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-get-pmt"></a><h3>gst_mpegts_section_get_pmt ()</h3>
-<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="returnvalue">GstMpegTsPMT</span></a> *
-gst_mpegts_section_get_pmt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a> contained in the <em class="parameter"><code>section</code></em>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="returnvalue">GstMpegtsPMT</span></a> *
+gst_mpegts_section_get_pmt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a> contained in the <em class="parameter"><code>section</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.15.5"></a><h4>Parameters</h4>
@@ -595,14 +595,14 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-PMT:CAPS"><code class="literal">GST_MPEGTS_SECTION_PMT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-PMT:CAPS"><code class="literal">GST_MPEGTS_SECTION_PMT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.15.6"></a><h4>Returns</h4>
-<p> The <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<p> The <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened.</p>
 <p></p>
 </div>
@@ -610,34 +610,34 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-pmt-new"></a><h3>gst_mpegts_pmt_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="returnvalue">GstMpegTsPMT</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="returnvalue">GstMpegtsPMT</span></a> *
 gst_mpegts_pmt_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates and initializes a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a>.</p>
+<p>Allocates and initializes a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.16.5"></a><h4>Returns</h4>
-<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a>. </p>
+<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-pmt-stream-new"></a><h3>gst_mpegts_pmt_stream_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream"><span class="returnvalue">GstMpegTsPMTStream</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream"><span class="returnvalue">GstMpegtsPMTStream</span></a> *
 gst_mpegts_pmt_stream_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates and initializes a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream"><span class="type">GstMpegTsPMTStream</span></a>.</p>
+<p>Allocates and initializes a new <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream"><span class="type">GstMpegtsPMTStream</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.17.5"></a><h4>Returns</h4>
-<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream"><span class="type">GstMpegTsPMTStream</span></a>. </p>
+<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream"><span class="type">GstMpegtsPMTStream</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-from-pmt"></a><h3>gst_mpegts_section_from_pmt ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
-gst_mpegts_section_from_pmt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a> *pmt</code></em>,
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
+gst_mpegts_section_from_pmt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a> *pmt</code></em>,
                              <em class="parameter"><code><span class="type">guint16</span> pid</code></em>);</pre>
-<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> from <em class="parameter"><code>pmt</code></em>
+<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> from <em class="parameter"><code>pmt</code></em>
  that is bound to <em class="parameter"><code>pid</code></em>
 </p>
 <div class="refsect3">
@@ -651,12 +651,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>pmt</p></td>
-<td class="parameter_description"><p> a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a> to create a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> from. </p></td>
+<td class="parameter_description"><p> a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a> to create a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> from. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>pid</p></td>
-<td class="parameter_description"><p>The PID that the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT" title="struct GstMpegTsPMT"><span class="type">GstMpegTsPMT</span></a> belongs to</p></td>
+<td class="parameter_description"><p>The PID that the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT" title="struct GstMpegtsPMT"><span class="type">GstMpegtsPMT</span></a> belongs to</p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 </tbody>
@@ -664,7 +664,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.18.6"></a><h4>Returns</h4>
-<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>. </p>
+<p> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -672,8 +672,8 @@
 <div class="refsect2">
 <a name="gst-mpegts-section-get-tsdt"></a><h3>gst_mpegts_section_get_tsdt ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *
-gst_mpegts_section_get_tsdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> contained in the section</p>
+gst_mpegts_section_get_tsdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> contained in the section</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -684,7 +684,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-TSDT:CAPS"><code class="literal">GST_MPEGTS_SECTION_TSDT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-TSDT:CAPS"><code class="literal">GST_MPEGTS_SECTION_TSDT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -692,17 +692,17 @@
 <div class="refsect3">
 <a name="id-1.2.5.4.9.19.6"></a><h4>Returns</h4>
 <p> The
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened. Release with <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#g-array-unref"><span class="type">g_array_unref</span></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></p>
+<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-get-cat"></a><h3>gst_mpegts_section_get_cat ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *
-gst_mpegts_section_get_cat (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> contained in the Condtional
+gst_mpegts_section_get_cat (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> contained in the Condtional
 Access Table.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.9.20.5"></a><h4>Parameters</h4>
@@ -714,7 +714,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-CAT:CAPS"><code class="literal">GST_MPEGTS_SECTION_CAT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-CAT:CAPS"><code class="literal">GST_MPEGTS_SECTION_CAT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -722,18 +722,18 @@
 <div class="refsect3">
 <a name="id-1.2.5.4.9.20.6"></a><h4>Returns</h4>
 <p> The
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened. Release with <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#g-array-unref"><span class="type">g_array_unref</span></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></p>
+<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></p>
 </div>
 </div>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-Base-MPEG-TS-sections.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsSection-struct"></a><h3>struct GstMpegTsSection</h3>
-<pre class="programlisting">struct GstMpegTsSection {
-  GstMpegTsSectionType   section_type;
+<a name="GstMpegtsSection-struct"></a><h3>struct GstMpegtsSection</h3>
+<pre class="programlisting">struct GstMpegtsSection {
+  GstMpegtsSectionType   section_type;
 
   guint16       pid;
   guint8        table_id;
@@ -760,48 +760,48 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionType" title="enum GstMpegTsSectionType"><span class="type">GstMpegTsSectionType</span></a> <em class="structfield"><code><a name="GstMpegTsSection-struct.section-type"></a>section_type</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionType" title="enum GstMpegtsSectionType"><span class="type">GstMpegtsSectionType</span></a> <em class="structfield"><code><a name="GstMpegtsSection-struct.section-type"></a>section_type</code></em>;</p></td>
 <td class="struct_member_description"><p>The type of section</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.pid"></a>pid</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.pid"></a>pid</code></em>;</p></td>
 <td class="struct_member_description"><p>The pid on which this section was found</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.table-id"></a>table_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.table-id"></a>table_id</code></em>;</p></td>
 <td class="struct_member_description"><p>The table id of this section</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.subtable-extension"></a>subtable_extension</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.subtable-extension"></a>subtable_extension</code></em>;</p></td>
 <td class="struct_member_description"><p>This meaning differs per section. See the documentation
 of the parsed section type for the meaning of this field</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.version-number"></a>version_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.version-number"></a>version_number</code></em>;</p></td>
 <td class="struct_member_description"><p>Version of the section.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSection-struct.current-next-indicator"></a>current_next_indicator</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSection-struct.current-next-indicator"></a>current_next_indicator</code></em>;</p></td>
 <td class="struct_member_description"><p>Applies to current/next stream or not</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.section-number"></a>section_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.section-number"></a>section_number</code></em>;</p></td>
 <td class="struct_member_description"><p>Number of the section (if multiple)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.last-section-number"></a>last_section_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.last-section-number"></a>last_section_number</code></em>;</p></td>
 <td class="struct_member_description"><p>Number of the last expected section (if multiple)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsSection-struct.crc"></a>crc</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsSection-struct.crc"></a>crc</code></em>;</p></td>
 <td class="struct_member_description"><p>CRC</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -811,11 +811,11 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSectionTableID"></a><h3>enum GstMpegTsSectionTableID</h3>
-<p>Values for a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> table_id</p>
+<a name="GstMpegtsSectionTableID"></a><h3>enum GstMpegtsSectionTableID</h3>
+<p>Values for a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> table_id</p>
 <p>These are the registered ITU H.222.0 | ISO/IEC 13818-1 table_id variants.</p>
-<p>see also <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegTsSectionATSCTableID" title="enum GstMpegTsSectionATSCTableID"><span class="type">GstMpegTsSectionATSCTableID</span></a>, <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSectionDVBTableID" title="enum GstMpegTsSectionDVBTableID"><span class="type">GstMpegTsSectionDVBTableID</span></a>, and
-<span class="type">GstMpegTsSectionSCTETableID</span></p>
+<p>see also <a class="link" href="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsSectionATSCTableID" title="enum GstMpegtsSectionATSCTableID"><span class="type">GstMpegtsSectionATSCTableID</span></a>, <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSectionDVBTableID" title="enum GstMpegtsSectionDVBTableID"><span class="type">GstMpegtsSectionDVBTableID</span></a>, and
+<span class="type">GstMpegtsSectionSCTETableID</span></p>
 <div class="refsect3">
 <a name="id-1.2.5.4.10.3.6"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -906,8 +906,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSectionType"></a><h3>enum GstMpegTsSectionType</h3>
-<p>Types of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> that the library handles.</p>
+<a name="GstMpegtsSectionType"></a><h3>enum GstMpegtsSectionType</h3>
+<p>Types of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> that the library handles.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.10.4.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1042,8 +1042,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsPatProgram"></a><h3>struct GstMpegTsPatProgram</h3>
-<pre class="programlisting">struct GstMpegTsPatProgram {
+<a name="GstMpegtsPatProgram"></a><h3>struct GstMpegtsPatProgram</h3>
+<pre class="programlisting">struct GstMpegtsPatProgram {
   guint16 program_number;
   guint16 network_or_program_map_PID;
 };
@@ -1059,12 +1059,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsPatProgram.program-number"></a>program_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsPatProgram.program-number"></a>program_number</code></em>;</p></td>
 <td class="struct_member_description"><p>the program number</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsPatProgram.network-or-program-map-PID"></a>network_or_program_map_PID</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsPatProgram.network-or-program-map-PID"></a>network_or_program_map_PID</code></em>;</p></td>
 <td class="struct_member_description"><p>the network of program map PID</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -1074,18 +1074,18 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsPMT"></a><h3>struct GstMpegTsPMT</h3>
-<pre class="programlisting">struct GstMpegTsPMT {
+<a name="GstMpegtsPMT"></a><h3>struct GstMpegtsPMT</h3>
+<pre class="programlisting">struct GstMpegtsPMT {
   guint16    pcr_pid;
   guint16    program_number;
 
-  GPtrArray    *descriptors;
+  GPtrArray *descriptors;
   GPtrArray *streams;
 };
 </pre>
 <p>Program Map Table (ISO/IEC 13818-1).</p>
 <p>The program_number is contained in the subtable_extension field of the
-container <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>.</p>
+container <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.5.4.10.6.6"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1096,24 +1096,24 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsPMT.pcr-pid"></a>pcr_pid</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsPMT.pcr-pid"></a>pcr_pid</code></em>;</p></td>
 <td class="struct_member_description"><p>PID of the stream containing PCR</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsPMT.program-number"></a>program_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsPMT.program-number"></a>program_number</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsPMT.descriptors"></a>descriptors</code></em>;</p></td>
-<td class="struct_member_description"><p> array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsPMT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_description"><p> array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a>. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsPMT.streams"></a>streams</code></em>;</p></td>
-<td class="struct_member_description"><p> Array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream" title="struct GstMpegTsPMTStream"><span class="type">GstMpegTsPMTStream</span></a>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsPMTStream]</span></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsPMT.streams"></a>streams</code></em>;</p></td>
+<td class="struct_member_description"><p> Array of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream" title="struct GstMpegtsPMTStream"><span class="type">GstMpegtsPMTStream</span></a>. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsPMTStream]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1121,12 +1121,12 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsPMTStream"></a><h3>struct GstMpegTsPMTStream</h3>
-<pre class="programlisting">struct GstMpegTsPMTStream {
+<a name="GstMpegtsPMTStream"></a><h3>struct GstMpegtsPMTStream</h3>
+<pre class="programlisting">struct GstMpegtsPMTStream {
   guint8      stream_type;
   guint16     pid;
 
-  GPtrArray     *descriptors;
+  GPtrArray  *descriptors;
 };
 </pre>
 <p>An individual stream definition.</p>
@@ -1140,20 +1140,20 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsPMTStream.stream-type"></a>stream_type</code></em>;</p></td>
-<td class="struct_member_description"><p>the type of stream. See <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsStreamType" title="enum GstMpegTsStreamType"><span class="type">GstMpegTsStreamType</span></a></p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsPMTStream.stream-type"></a>stream_type</code></em>;</p></td>
+<td class="struct_member_description"><p>the type of stream. See <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsStreamType" title="enum GstMpegtsStreamType"><span class="type">GstMpegtsStreamType</span></a></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsPMTStream.pid"></a>pid</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsPMTStream.pid"></a>pid</code></em>;</p></td>
 <td class="struct_member_description"><p>the PID of the stream</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsPMTStream.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsPMTStream.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p> the descriptors of the
 stream. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1161,7 +1161,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsStreamType"></a><h3>enum GstMpegTsStreamType</h3>
+<a name="GstMpegtsStreamType"></a><h3>enum GstMpegtsStreamType</h3>
 <p>Type of mpeg-ts stream type.</p>
 <p>These values correspond to the base standard registered types. Depending
 on the variant of mpeg-ts being used (Bluray, ATSC, DVB, ...), other
@@ -1177,21 +1177,21 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-RESERVED-00:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_RESERVED_00</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-RESERVED-00:CAPS"></a>GST_MPEGTS_STREAM_TYPE_RESERVED_00</p></td>
 <td class="enum_member_description">
 <p>ITU-T | ISO/IEC Reserved</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-MPEG1:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG1</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-MPEG1:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG1</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 11172-2 Video</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-MPEG2:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-MPEG2:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2</p></td>
 <td class="enum_member_description">
 <p>Rec. ITU-T H.262 | ISO/IEC 13818-2
 Video or ISO/IEC 11172-2 constrained parameter video stream</p>
@@ -1199,91 +1199,91 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-AUDIO-MPEG1:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG1</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-AUDIO-MPEG1:CAPS"></a>GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG1</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 11172-3 Audio</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-AUDIO-MPEG2:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG2</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-AUDIO-MPEG2:CAPS"></a>GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG2</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-3 Audio</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-PRIVATE-SECTIONS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_PRIVATE_SECTIONS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-PRIVATE-SECTIONS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_PRIVATE_SECTIONS</p></td>
 <td class="enum_member_description">
 <p>private sections</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-PRIVATE-PES-PACKETS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_PRIVATE_PES_PACKETS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-PRIVATE-PES-PACKETS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_PRIVATE_PES_PACKETS</p></td>
 <td class="enum_member_description">
 <p>PES packets containing private data</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-MHEG:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_MHEG</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-MHEG:CAPS"></a>GST_MPEGTS_STREAM_TYPE_MHEG</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13522 MHEG</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-DSM-CC:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_DSM_CC</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-DSM-CC:CAPS"></a>GST_MPEGTS_STREAM_TYPE_DSM_CC</p></td>
 <td class="enum_member_description">
 <p>Annex A DSM-CC</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-H-222-1:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_H_222_1</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-H-222-1:CAPS"></a>GST_MPEGTS_STREAM_TYPE_H_222_1</p></td>
 <td class="enum_member_description">
 <p>Rec. ITU-T H.222.1</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-DSMCC-A:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_DSMCC_A</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-DSMCC-A:CAPS"></a>GST_MPEGTS_STREAM_TYPE_DSMCC_A</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-6 type A</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-DSMCC-B:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_DSMCC_B</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-DSMCC-B:CAPS"></a>GST_MPEGTS_STREAM_TYPE_DSMCC_B</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-6 type B</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-DSMCC-C:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_DSMCC_C</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-DSMCC-C:CAPS"></a>GST_MPEGTS_STREAM_TYPE_DSMCC_C</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-6 type C</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-DSMCC-D:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_DSMCC_D</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-DSMCC-D:CAPS"></a>GST_MPEGTS_STREAM_TYPE_DSMCC_D</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-6 type D</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-AUXILIARY:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_AUXILIARY</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-AUXILIARY:CAPS"></a>GST_MPEGTS_STREAM_TYPE_AUXILIARY</p></td>
 <td class="enum_member_description">
 <p>auxiliary streams</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-AUDIO-AAC-ADTS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_ADTS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-AUDIO-AAC-ADTS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_ADTS</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-7 Audio with ADTS
 transport syntax</p>
@@ -1291,14 +1291,14 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-MPEG4:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG4</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-MPEG4:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG4</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 14496-2 Visual</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-AUDIO-AAC-LATM:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_LATM</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-AUDIO-AAC-LATM:CAPS"></a>GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_LATM</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 14496-3 Audio with the LATM
 transport syntax as defined in ISO/IEC 14496-3</p>
@@ -1306,7 +1306,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-SL-FLEXMUX-PES-PACKETS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_PES_PACKETS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-SL-FLEXMUX-PES-PACKETS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_PES_PACKETS</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 14496-1
 SL-packetized stream or FlexMux stream carried in PES packets</p>
@@ -1314,7 +1314,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-SL-FLEXMUX-SECTIONS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_SECTIONS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-SL-FLEXMUX-SECTIONS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_SECTIONS</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 14496-1 SL-packetized
 stream or FlexMux stream carried in ISO/IEC 14496_sections</p>
@@ -1322,7 +1322,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-SYNCHRONIZED-DOWNLOAD:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_SYNCHRONIZED_DOWNLOAD</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-SYNCHRONIZED-DOWNLOAD:CAPS"></a>GST_MPEGTS_STREAM_TYPE_SYNCHRONIZED_DOWNLOAD</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 13818-6 Synchronized
 Download Protocol</p>
@@ -1330,21 +1330,21 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-METADATA-PES-PACKETS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_METADATA_PES_PACKETS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-METADATA-PES-PACKETS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_METADATA_PES_PACKETS</p></td>
 <td class="enum_member_description">
 <p>Metadata carried in PES packets</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-METADATA-SECTIONS:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_METADATA_SECTIONS</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-METADATA-SECTIONS:CAPS"></a>GST_MPEGTS_STREAM_TYPE_METADATA_SECTIONS</p></td>
 <td class="enum_member_description">
 <p>Metadata carried in metadata_sections</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-METADATA-DATA-CAROUSEL:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_METADATA_DATA_CAROUSEL</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-METADATA-DATA-CAROUSEL:CAPS"></a>GST_MPEGTS_STREAM_TYPE_METADATA_DATA_CAROUSEL</p></td>
 <td class="enum_member_description">
 <p>Metadata carried in ISO/IEC
 13818-6 Data Carousel</p>
@@ -1352,7 +1352,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-METADATA-OBJECT-CAROUSEL:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_METADATA_OBJECT_CAROUSEL</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-METADATA-OBJECT-CAROUSEL:CAPS"></a>GST_MPEGTS_STREAM_TYPE_METADATA_OBJECT_CAROUSEL</p></td>
 <td class="enum_member_description">
 <p>Metadata carried in
 ISO/IEC 13818-6 Object Carousel</p>
@@ -1360,7 +1360,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-METADATA-SYNCHRONIZED-DOWNLOAD:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_METADATA_SYNCHRONIZED_DOWNLOAD</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-METADATA-SYNCHRONIZED-DOWNLOAD:CAPS"></a>GST_MPEGTS_STREAM_TYPE_METADATA_SYNCHRONIZED_DOWNLOAD</p></td>
 <td class="enum_member_description">
 <p>Metadata carried in
 ISO/IEC 13818-6 Synchronized Download Protocol</p>
@@ -1368,7 +1368,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-MPEG2-IPMP:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_MPEG2_IPMP</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-MPEG2-IPMP:CAPS"></a>GST_MPEGTS_STREAM_TYPE_MPEG2_IPMP</p></td>
 <td class="enum_member_description">
 <p>IPMP stream (defined in ISO/IEC 13818-11,
 MPEG-2 IPMP)</p>
@@ -1376,7 +1376,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-H264:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_H264</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-H264:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_H264</p></td>
 <td class="enum_member_description">
 <p>AVC video stream conforming to one or
 more profiles defined in Annex A of Rec. ITU-T H.264 | ISO/IEC 14496-10 or
@@ -1387,7 +1387,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-AUDIO-AAC-CLEAN:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_CLEAN</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-AUDIO-AAC-CLEAN:CAPS"></a>GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_CLEAN</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 14496-3 Audio, without
 using any additional transport syntax, such as DST, ALS and SLS</p>
@@ -1395,14 +1395,14 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-MPEG4-TIMED-TEXT:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_MPEG4_TIMED_TEXT</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-MPEG4-TIMED-TEXT:CAPS"></a>GST_MPEGTS_STREAM_TYPE_MPEG4_TIMED_TEXT</p></td>
 <td class="enum_member_description">
 <p>ISO/IEC 14496-17 Text</p>
 </td>
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-RVC:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_RVC</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-RVC:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_RVC</p></td>
 <td class="enum_member_description">
 <p>Auxiliary video stream as defined in
 ISO/IEC 23002-3</p>
@@ -1410,7 +1410,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-H264-SVC-SUB-BITSTREAM:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_SVC_SUB_BITSTREAM</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-H264-SVC-SUB-BITSTREAM:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_H264_SVC_SUB_BITSTREAM</p></td>
 <td class="enum_member_description">
 <p>SVC video sub-bitstream
 of an AVC video stream conforming to one or more profiles defined in Annex G
@@ -1419,7 +1419,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-H264-MVC-SUB-BITSTREAM:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_MVC_SUB_BITSTREAM</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-H264-MVC-SUB-BITSTREAM:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_H264_MVC_SUB_BITSTREAM</p></td>
 <td class="enum_member_description">
 <p>MVC video sub-bitstream
 of an AVC video stream conforming to one or more profiles defined in Annex H
@@ -1428,7 +1428,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-JP2K:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_JP2K</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-JP2K:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_JP2K</p></td>
 <td class="enum_member_description">
 <p>Video stream conforming to one or more
 profiles as defined in Rec. ITU-T T.800 | ISO/IEC 15444-1</p>
@@ -1436,7 +1436,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-MPEG2-STEREO-ADDITIONAL-VIEW:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-MPEG2-STEREO-ADDITIONAL-VIEW:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW</p></td>
 <td class="enum_member_description">
 <p>Additional view
 Rec. ITU-T H.262 | ISO/IEC 13818-2 video stream for service-compatible
@@ -1445,7 +1445,7 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-H264-STEREO-ADDITIONAL-VIEW:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-H264-STEREO-ADDITIONAL-VIEW:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW</p></td>
 <td class="enum_member_description">
 <p>Additional view
 Rec. ITU-T H.264 | ISO/IEC 14496-10 video stream conforming to one or more
@@ -1454,12 +1454,12 @@
 <td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-VIDEO-HEVC:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_VIDEO_HEVC</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-VIDEO-HEVC:CAPS"></a>GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GST-MPEG-TS-STREAM-TYPE-IPMP-STREAM:CAPS"></a>GST_MPEG_TS_STREAM_TYPE_IPMP_STREAM</p></td>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-STREAM-TYPE-IPMP-STREAM:CAPS"></a>GST_MPEGTS_STREAM_TYPE_IPMP_STREAM</p></td>
 <td class="enum_member_description">
 <p>IPMP stream</p>
 </td>
diff --git a/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html b/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html
index c305ef8..b653c2c 100644
--- a/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html
+++ b/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html
@@ -114,7 +114,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-network-name" title="gst_mpegts_descriptor_from_dvb_network_name ()">gst_mpegts_descriptor_from_dvb_network_name</a> <span class="c_punctuation">()</span>
@@ -130,7 +130,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-service" title="gst_mpegts_descriptor_from_dvb_service ()">gst_mpegts_descriptor_from_dvb_service</a> <span class="c_punctuation">()</span>
@@ -154,7 +154,23 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-idx" title="gst_mpegts_descriptor_parse_dvb_subtitling_idx ()">gst_mpegts_descriptor_parse_dvb_subtitling_idx</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-nb" title="gst_mpegts_descriptor_parse_dvb_subtitling_nb ()">gst_mpegts_descriptor_parse_dvb_subtitling_nb</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-subtitling" title="gst_mpegts_descriptor_from_dvb_subtitling ()">gst_mpegts_descriptor_from_dvb_subtitling</a> <span class="c_punctuation">()</span>
@@ -221,7 +237,7 @@
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 </td>
 <td class="function_name">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier" title="gst_mpegts_descriptor_parse_dvb_stream_identifier ()">gst_mpegts_descriptor_parse_dvb_stream_identifier</a> <span class="c_punctuation">()</span>
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier" title="gst_mpegts_descriptor_parse_dvb_stream_identifier ()">gst_mpegts_descriptor_parse_dvb_stream_identifier</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
@@ -301,143 +317,147 @@
 <tbody>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBDescriptorType" title="enum GstMpegTsDVBDescriptorType">GstMpegTsDVBDescriptorType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBDescriptorType" title="enum GstMpegtsDVBDescriptorType">GstMpegtsDVBDescriptorType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBExtendedDescriptorType" title="enum GstMpegTsDVBExtendedDescriptorType">GstMpegTsDVBExtendedDescriptorType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBExtendedDescriptorType" title="enum GstMpegtsDVBExtendedDescriptorType">GstMpegtsDVBExtendedDescriptorType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsContent" title="struct GstMpegTsContent">GstMpegTsContent</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsContent" title="struct GstMpegtsContent">GstMpegtsContent</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsComponentDescriptor" title="struct GstMpegTsComponentDescriptor">GstMpegTsComponentDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsComponentDescriptor" title="struct GstMpegtsComponentDescriptor">GstMpegtsComponentDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventItem" title="struct GstMpegTsExtendedEventItem">GstMpegTsExtendedEventItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventItem" title="struct GstMpegtsExtendedEventItem">GstMpegtsExtendedEventItem</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventDescriptor" title="struct GstMpegTsExtendedEventDescriptor">GstMpegTsExtendedEventDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventDescriptor" title="struct GstMpegtsExtendedEventDescriptor">GstMpegtsExtendedEventDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteDeliverySystemDescriptor" title="struct GstMpegTsSatelliteDeliverySystemDescriptor">GstMpegTsSatelliteDeliverySystemDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteDeliverySystemDescriptor" title="struct GstMpegtsSatelliteDeliverySystemDescriptor">GstMpegtsSatelliteDeliverySystemDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate">GstMpegTsDVBCodeRate</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate">GstMpegtsDVBCodeRate</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType" title="enum GstMpegTsModulationType">GstMpegTsModulationType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType" title="enum GstMpegtsModulationType">GstMpegtsModulationType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatellitePolarizationType" title="enum GstMpegTsSatellitePolarizationType">GstMpegTsSatellitePolarizationType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatellitePolarizationType" title="enum GstMpegtsSatellitePolarizationType">GstMpegtsSatellitePolarizationType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteRolloff" title="enum GstMpegTsSatelliteRolloff">GstMpegTsSatelliteRolloff</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteRolloff" title="enum GstMpegtsSatelliteRolloff">GstMpegtsSatelliteRolloff</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableDeliverySystemDescriptor" title="struct GstMpegTsCableDeliverySystemDescriptor">GstMpegTsCableDeliverySystemDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableDeliverySystemDescriptor" title="struct GstMpegtsCableDeliverySystemDescriptor">GstMpegtsCableDeliverySystemDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableOuterFECScheme" title="enum GstMpegTsCableOuterFECScheme">GstMpegTsCableOuterFECScheme</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableOuterFECScheme" title="enum GstMpegtsCableOuterFECScheme">GstMpegtsCableOuterFECScheme</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialDeliverySystemDescriptor" title="struct GstMpegTsTerrestrialDeliverySystemDescriptor">GstMpegTsTerrestrialDeliverySystemDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialDeliverySystemDescriptor" title="struct GstMpegtsTerrestrialDeliverySystemDescriptor">GstMpegtsTerrestrialDeliverySystemDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialTransmissionMode" title="enum GstMpegTsTerrestrialTransmissionMode">GstMpegTsTerrestrialTransmissionMode</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialTransmissionMode" title="enum GstMpegtsTerrestrialTransmissionMode">GstMpegtsTerrestrialTransmissionMode</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialGuardInterval" title="enum GstMpegTsTerrestrialGuardInterval">GstMpegTsTerrestrialGuardInterval</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialGuardInterval" title="enum GstMpegtsTerrestrialGuardInterval">GstMpegtsTerrestrialGuardInterval</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialHierarchy" title="enum GstMpegTsTerrestrialHierarchy">GstMpegTsTerrestrialHierarchy</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialHierarchy" title="enum GstMpegtsTerrestrialHierarchy">GstMpegtsTerrestrialHierarchy</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCellExtension" title="struct GstMpegTsT2DeliverySystemCellExtension">GstMpegTsT2DeliverySystemCellExtension</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCellExtension" title="struct GstMpegtsT2DeliverySystemCellExtension">GstMpegtsT2DeliverySystemCellExtension</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCell" title="struct GstMpegTsT2DeliverySystemCell">GstMpegTsT2DeliverySystemCell</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCell" title="struct GstMpegtsT2DeliverySystemCell">GstMpegtsT2DeliverySystemCell</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemDescriptor" title="struct GstMpegTsT2DeliverySystemDescriptor">GstMpegTsT2DeliverySystemDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemDescriptor" title="struct GstMpegtsT2DeliverySystemDescriptor">GstMpegtsT2DeliverySystemDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType">GstMpegTsDVBServiceType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType">GstMpegtsDVBServiceType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBTeletextType" title="enum GstMpegTsDVBTeletextType">GstMpegTsDVBTeletextType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBTeletextType" title="enum GstMpegtsDVBTeletextType">GstMpegtsDVBTeletextType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageType" title="enum GstMpegTsDVBLinkageType">GstMpegTsDVBLinkageType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageType" title="enum GstMpegtsDVBLinkageType">GstMpegtsDVBLinkageType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageHandOverType" title="enum GstMpegTsDVBLinkageHandOverType">GstMpegTsDVBLinkageHandOverType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageHandOverType" title="enum GstMpegtsDVBLinkageHandOverType">GstMpegtsDVBLinkageHandOverType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageMobileHandOver" title="struct GstMpegTsDVBLinkageMobileHandOver">GstMpegTsDVBLinkageMobileHandOver</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageMobileHandOver" title="struct GstMpegtsDVBLinkageMobileHandOver">GstMpegtsDVBLinkageMobileHandOver</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageEvent" title="struct GstMpegTsDVBLinkageEvent">GstMpegTsDVBLinkageEvent</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageEvent" title="struct GstMpegtsDVBLinkageEvent">GstMpegtsDVBLinkageEvent</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageExtendedEvent" title="struct GstMpegTsDVBLinkageExtendedEvent">GstMpegTsDVBLinkageExtendedEvent</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageExtendedEvent" title="struct GstMpegtsDVBLinkageExtendedEvent">GstMpegtsDVBLinkageExtendedEvent</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageDescriptor" title="struct GstMpegTsDVBLinkageDescriptor">GstMpegTsDVBLinkageDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageDescriptor" title="struct GstMpegtsDVBLinkageDescriptor">GstMpegtsDVBLinkageDescriptor</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDataBroadcastDescriptor" title="struct GstMpegTsDataBroadcastDescriptor">GstMpegTsDataBroadcastDescriptor</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDataBroadcastDescriptor" title="struct GstMpegtsDataBroadcastDescriptor">GstMpegtsDataBroadcastDescriptor</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBScramblingModeType" title="enum GstMpegtsDVBScramblingModeType">GstMpegtsDVBScramblingModeType</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBParentalRatingItem" title="struct GstMpegTsDVBParentalRatingItem">GstMpegTsDVBParentalRatingItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBParentalRatingItem" title="struct GstMpegtsDVBParentalRatingItem">GstMpegtsDVBParentalRatingItem</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceListItem" title="struct GstMpegTsDVBServiceListItem">GstMpegTsDVBServiceListItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceListItem" title="struct GstMpegtsDVBServiceListItem">GstMpegtsDVBServiceListItem</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualNetworkNameItem" title="struct GstMpegTsDvbMultilingualNetworkNameItem">GstMpegTsDvbMultilingualNetworkNameItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualNetworkNameItem" title="struct GstMpegtsDvbMultilingualNetworkNameItem">GstMpegtsDvbMultilingualNetworkNameItem</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualBouquetNameItem" title="struct GstMpegTsDvbMultilingualBouquetNameItem">GstMpegTsDvbMultilingualBouquetNameItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualBouquetNameItem" title="struct GstMpegtsDvbMultilingualBouquetNameItem">GstMpegtsDvbMultilingualBouquetNameItem</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualServiceNameItem" title="struct GstMpegTsDvbMultilingualServiceNameItem">GstMpegTsDvbMultilingualServiceNameItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualServiceNameItem" title="struct GstMpegtsDvbMultilingualServiceNameItem">GstMpegtsDvbMultilingualServiceNameItem</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualComponentItem" title="struct GstMpegTsDvbMultilingualComponentItem">GstMpegTsDvbMultilingualComponentItem</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualComponentItem" title="struct GstMpegtsDvbMultilingualComponentItem">GstMpegtsDvbMultilingualComponentItem</a></td>
 </tr>
 </tbody>
 </table></div>
@@ -445,12 +465,12 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.object-hierarchy"></a><h2>Object Hierarchy</h2>
 <pre class="screen">    GEnum
-    <span class="lineart">├──</span> GstMpegTsCableOuterFECScheme
-    <span class="lineart">├──</span> GstMpegTsDVBCodeRate
-    <span class="lineart">├──</span> GstMpegTsDVBServiceType
-    <span class="lineart">├──</span> GstMpegTsModulationType
-    <span class="lineart">├──</span> GstMpegTsSatellitePolarizationType
-    <span class="lineart">╰──</span> GstMpegTsSatelliteRolloff
+    <span class="lineart">├──</span> GstMpegtsCableOuterFECScheme
+    <span class="lineart">├──</span> GstMpegtsDVBCodeRate
+    <span class="lineart">├──</span> GstMpegtsDVBServiceType
+    <span class="lineart">├──</span> GstMpegtsModulationType
+    <span class="lineart">├──</span> GstMpegtsSatellitePolarizationType
+    <span class="lineart">╰──</span> GstMpegtsSatelliteRolloff
 </pre>
 </div>
 <div class="refsect1">
@@ -467,7 +487,7 @@
 <a name="gst-mpegts-descriptor-parse-dvb-content"></a><h3>gst_mpegts_descriptor_parse_dvb_content ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_content
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **content</code></em>);</pre>
 <p>Extracts the DVB content information from <em class="parameter"><code>descriptor</code></em>
 .</p>
@@ -482,13 +502,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CONTENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_CONTENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CONTENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_CONTENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>content</p></td>
-<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsContent" title="struct GstMpegTsContent"><span class="type">GstMpegTsContent</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsContent]</span></td>
+<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsContent" title="struct GstMpegtsContent"><span class="type">GstMpegtsContent</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsContent]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -504,8 +524,8 @@
 <a name="gst-mpegts-descriptor-parse-dvb-component"></a><h3>gst_mpegts_descriptor_parse_dvb_component ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_component
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsComponentDescriptor" title="struct GstMpegTsComponentDescriptor"><span class="type">GstMpegTsComponentDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsComponentDescriptor" title="struct GstMpegtsComponentDescriptor"><span class="type">GstMpegtsComponentDescriptor</span></a> **res</code></em>);</pre>
 <p>Extracts the DVB component information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
@@ -519,13 +539,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-COMPONENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_COMPONENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-COMPONENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_COMPONENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsComponentDescriptor" title="struct GstMpegTsComponentDescriptor"><span class="type">GstMpegTsComponentDescriptor</span></a> to fill. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsComponentDescriptor" title="struct GstMpegtsComponentDescriptor"><span class="type">GstMpegtsComponentDescriptor</span></a> to fill. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -541,8 +561,8 @@
 <a name="gst-mpegts-descriptor-parse-dvb-extended-event"></a><h3>gst_mpegts_descriptor_parse_dvb_extended_event ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_extended_event
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventDescriptor" title="struct GstMpegTsExtendedEventDescriptor"><span class="type">GstMpegTsExtendedEventDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventDescriptor" title="struct GstMpegtsExtendedEventDescriptor"><span class="type">GstMpegtsExtendedEventDescriptor</span></a> **res</code></em>);</pre>
 <p>Extracts the DVB extended event information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
@@ -556,13 +576,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-EXTENDED-EVENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_EXTENDED_EVENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-EXTENDED-EVENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_EXTENDED_EVENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventDescriptor" title="struct GstMpegTsExtendedEventDescriptor"><span class="type">GstMpegTsExtendedEventDescriptor</span></a> to fill. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventDescriptor" title="struct GstMpegtsExtendedEventDescriptor"><span class="type">GstMpegtsExtendedEventDescriptor</span></a> to fill. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -578,8 +598,8 @@
 <a name="gst-mpegts-descriptor-parse-satellite-delivery-system"></a><h3>gst_mpegts_descriptor_parse_satellite_delivery_system ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_satellite_delivery_system
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteDeliverySystemDescriptor" title="struct GstMpegTsSatelliteDeliverySystemDescriptor"><span class="type">GstMpegTsSatelliteDeliverySystemDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteDeliverySystemDescriptor" title="struct GstMpegtsSatelliteDeliverySystemDescriptor"><span class="type">GstMpegtsSatelliteDeliverySystemDescriptor</span></a> *res</code></em>);</pre>
 <p>Extracts the satellite delivery system information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
@@ -593,12 +613,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SATELLITE-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SATELLITE-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteDeliverySystemDescriptor" title="struct GstMpegTsSatelliteDeliverySystemDescriptor"><span class="type">GstMpegTsSatelliteDeliverySystemDescriptor</span></a> to fill. </p></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteDeliverySystemDescriptor" title="struct GstMpegtsSatelliteDeliverySystemDescriptor"><span class="type">GstMpegtsSatelliteDeliverySystemDescriptor</span></a> to fill. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -615,8 +635,8 @@
 <a name="gst-mpegts-descriptor-parse-cable-delivery-system"></a><h3>gst_mpegts_descriptor_parse_cable_delivery_system ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_cable_delivery_system
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableDeliverySystemDescriptor" title="struct GstMpegTsCableDeliverySystemDescriptor"><span class="type">GstMpegTsCableDeliverySystemDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableDeliverySystemDescriptor" title="struct GstMpegtsCableDeliverySystemDescriptor"><span class="type">GstMpegtsCableDeliverySystemDescriptor</span></a> *res</code></em>);</pre>
 <p>Extracts the cable delivery system information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
@@ -630,12 +650,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CABLE-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CABLE-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableDeliverySystemDescriptor" title="struct GstMpegTsCableDeliverySystemDescriptor"><span class="type">GstMpegTsCableDeliverySystemDescriptor</span></a> to fill. </p></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableDeliverySystemDescriptor" title="struct GstMpegtsCableDeliverySystemDescriptor"><span class="type">GstMpegtsCableDeliverySystemDescriptor</span></a> to fill. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -652,8 +672,8 @@
 <a name="gst-mpegts-descriptor-parse-terrestrial-delivery-system"></a><h3>gst_mpegts_descriptor_parse_terrestrial_delivery_system ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_terrestrial_delivery_system
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialDeliverySystemDescriptor" title="struct GstMpegTsTerrestrialDeliverySystemDescriptor"><span class="type">GstMpegTsTerrestrialDeliverySystemDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialDeliverySystemDescriptor" title="struct GstMpegtsTerrestrialDeliverySystemDescriptor"><span class="type">GstMpegtsTerrestrialDeliverySystemDescriptor</span></a> *res</code></em>);</pre>
 <p>Parses out the terrestrial delivery system from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
@@ -667,12 +687,12 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-TERRESTRIAL-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-TERRESTRIAL-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialDeliverySystemDescriptor" title="struct GstMpegTsTerrestrialDeliverySystemDescriptor"><span class="type">GstMpegTsTerrestrialDeliverySystemDescriptor</span></a>. </p></td>
+<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialDeliverySystemDescriptor" title="struct GstMpegtsTerrestrialDeliverySystemDescriptor"><span class="type">GstMpegtsTerrestrialDeliverySystemDescriptor</span></a>. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
@@ -689,8 +709,8 @@
 <a name="gst-mpegts-descriptor-parse-dvb-t2-delivery-system"></a><h3>gst_mpegts_descriptor_parse_dvb_t2_delivery_system ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_t2_delivery_system
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemDescriptor" title="struct GstMpegTsT2DeliverySystemDescriptor"><span class="type">GstMpegTsT2DeliverySystemDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemDescriptor" title="struct GstMpegtsT2DeliverySystemDescriptor"><span class="type">GstMpegtsT2DeliverySystemDescriptor</span></a> **res</code></em>);</pre>
 <p>Parses out the DVB-T2 delivery system from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
@@ -704,13 +724,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-EXT-DVB-T2-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-EXT-DVB-T2-DELIVERY-SYSTEM:CAPS"><code class="literal">GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
 <td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemDescriptor" title="struct GstMpegTsT2DeliverySystemDescriptor"><span class="type">GstMpegTsT2DeliverySystemDescriptor</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemDescriptor" title="struct GstMpegtsT2DeliverySystemDescriptor"><span class="type">GstMpegtsT2DeliverySystemDescriptor</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -726,7 +746,7 @@
 <a name="gst-mpegts-descriptor-parse-dvb-short-event"></a><h3>gst_mpegts_descriptor_parse_dvb_short_event ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_short_event
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **language_code</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **event_name</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **text</code></em>);</pre>
@@ -743,7 +763,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SHORT-EVENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_SHORT_EVENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SHORT-EVENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_SHORT_EVENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -775,7 +795,7 @@
 <a name="gst-mpegts-descriptor-parse-dvb-network-name"></a><h3>gst_mpegts_descriptor_parse_dvb_network_name ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_network_name
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **name</code></em>);</pre>
 <p>Parses out the dvb network name from the <em class="parameter"><code>descriptor</code></em>
 :</p>
@@ -790,7 +810,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-NETWORK-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_NETWORK_NAME</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-NETWORK-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_NETWORK_NAME</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -810,12 +830,12 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-descriptor-from-dvb-network-name"></a><h3>gst_mpegts_descriptor_from_dvb_network_name ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 gst_mpegts_descriptor_from_dvb_network_name
                                (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
-<p>Fills a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> to be a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-NETWORK-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_NETWORK_NAME</code></a>,
+<p>Creates a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> to be a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-NETWORK-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_NETWORK_NAME</code></a>,
 with the network name <em class="parameter"><code>name</code></em>
-. The data field of the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a>
+. The data field of the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a>
 will be allocated, and transferred to the caller.</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.11.5"></a><h4>Parameters</h4>
@@ -834,7 +854,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.11.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on fail. </p>
+<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on fail. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -843,8 +863,8 @@
 <a name="gst-mpegts-descriptor-parse-dvb-service"></a><h3>gst_mpegts_descriptor_parse_dvb_service ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_service
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType"><span class="type">GstMpegTsDVBServiceType</span></a> *service_type</code></em>,
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType"><span class="type">GstMpegtsDVBServiceType</span></a> *service_type</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **service_name</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **provider_name</code></em>);</pre>
 <p>Extracts the dvb service information from <em class="parameter"><code>descriptor</code></em>
@@ -860,7 +880,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SERVICE:CAPS"><code class="literal">GST_MTS_DESC_DVB_SERVICE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SERVICE:CAPS"><code class="literal">GST_MTS_DESC_DVB_SERVICE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -890,13 +910,13 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-descriptor-from-dvb-service"></a><h3>gst_mpegts_descriptor_from_dvb_service ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 gst_mpegts_descriptor_from_dvb_service
-                               (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType"><span class="type">GstMpegTsDVBServiceType</span></a> service_type</code></em>,
+                               (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType"><span class="type">GstMpegtsDVBServiceType</span></a> service_type</code></em>,
                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *service_name</code></em>,
                                 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *service_provider</code></em>);</pre>
-<p>Fills a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> to be a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SERVICE:CAPS"><code class="literal">GST_MTS_DESC_DVB_SERVICE</code></a>.
-The data field of the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> will be allocated,
+<p>Fills a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> to be a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SERVICE:CAPS"><code class="literal">GST_MTS_DESC_DVB_SERVICE</code></a>.
+The data field of the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> will be allocated,
 and transferred to the caller.</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.13.5"></a><h4>Parameters</h4>
@@ -909,7 +929,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>service_type</p></td>
-<td class="parameter_description"><p>Service type defined as a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType"><span class="type">GstMpegTsDVBServiceType</span></a></p></td>
+<td class="parameter_description"><p>Service type defined as a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType"><span class="type">GstMpegtsDVBServiceType</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -927,7 +947,7 @@
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.13.6"></a><h4>Returns</h4>
-<p> the <span class="type">GstMpgTsDescriptor</span> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on fail. </p>
+<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on fail. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
@@ -936,8 +956,12 @@
 <a name="gst-mpegts-descriptor-parse-dvb-teletext-idx"></a><h3>gst_mpegts_descriptor_parse_dvb_teletext_idx ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_teletext_idx
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **language_code</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBTeletextType" title="enum GstMpegtsDVBTeletextType"><span class="type">GstMpegtsDVBTeletextType</span></a> *teletext_type</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *magazine_number</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *page_number</code></em>);</pre>
 <p>Parses teletext number <em class="parameter"><code>idx</code></em>
  in the <em class="parameter"><code>descriptor</code></em>
 . The language is in ISO639 format.</p>
@@ -952,7 +976,7 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-TELETEXT:CAPS"><code class="literal">GST_MTS_DESC_DVB_TELETEXT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-TELETEXT:CAPS"><code class="literal">GST_MTS_DESC_DVB_TELETEXT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
@@ -962,12 +986,12 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>language_code</p></td>
-<td class="parameter_description"><p> a 4-byte gchar array to hold language. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td class="parameter_description"><p> a null-terminated string. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>teletext_type</p></td>
-<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBTeletextType" title="enum GstMpegTsDVBTeletextType"><span class="type">GstMpegTsDVBTeletextType</span></a>. </p></td>
+<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBTeletextType" title="enum GstMpegtsDVBTeletextType"><span class="type">GstMpegtsDVBTeletextType</span></a>. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
@@ -994,7 +1018,7 @@
 <a name="gst-mpegts-descriptor-parse-dvb-teletext-nb"></a><h3>gst_mpegts_descriptor_parse_dvb_teletext_nb ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
 gst_mpegts_descriptor_parse_dvb_teletext_nb
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>);</pre>
 <p>Find the number of teletext entries in <em class="parameter"><code>descriptor</code></em>
 </p>
 <div class="refsect3">
@@ -1007,7 +1031,7 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-TELETEXT:CAPS"><code class="literal">GST_MTS_DESC_DVB_TELETEXT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-TELETEXT:CAPS"><code class="literal">GST_MTS_DESC_DVB_TELETEXT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
@@ -1020,15 +1044,106 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-dvb-subtitling-idx"></a><h3>gst_mpegts_descriptor_parse_dvb_subtitling_idx ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_mpegts_descriptor_parse_dvb_subtitling_idx
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> idx</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **lang</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *type</code></em>,
+                                <em class="parameter"><code><span class="type">guint16</span> *composition_page_id</code></em>,
+                                <em class="parameter"><code><span class="type">guint16</span> *ancillary_page_id</code></em>);</pre>
+<p>Extracts the DVB subtitling informatio from specific table id in <em class="parameter"><code>descriptor</code></em>
+.</p>
+<p>Note: Use <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gsttaglanguagecodes.html#gst-tag-get-language-code"><span class="type">gst_tag_get_language_code</span></a> if you want to get the the
+ISO 639-1 language code from the returned ISO 639-2 one.</p>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.16.6"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SUBTITLING:CAPS"><code class="literal">GST_MTS_DESC_DVB_SUBTITLING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>idx</p></td>
+<td class="parameter_description"><p>Table id of the entry to parse</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>lang</p></td>
+<td class="parameter_description"><p> the language code. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p> the type of subtitling. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>composition_page_id</p></td>
+<td class="parameter_description"><p> the composition page id. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>ancillary_page_id</p></td>
+<td class="parameter_description"><p> the ancillary page id. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.16.7"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parsing succeeded, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-dvb-subtitling-nb"></a><h3>gst_mpegts_descriptor_parse_dvb_subtitling_nb ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
+gst_mpegts_descriptor_parse_dvb_subtitling_nb
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.17.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>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SUBTITLING:CAPS"><code class="literal">GST_MTS_DESC_DVB_SUBTITLING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.17.5"></a><h4>Returns</h4>
+<p> The number of entries in <em class="parameter"><code>descriptor</code></em>
+</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-mpegts-descriptor-from-dvb-subtitling"></a><h3>gst_mpegts_descriptor_from_dvb_subtitling ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="returnvalue">GstMpegTsDescriptor</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="returnvalue">GstMpegtsDescriptor</span></a> *
 gst_mpegts_descriptor_from_dvb_subtitling
                                (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *lang</code></em>,
                                 <em class="parameter"><code><span class="type">guint8</span> type</code></em>,
                                 <em class="parameter"><code><span class="type">guint16</span> composition</code></em>,
                                 <em class="parameter"><code><span class="type">guint16</span> ancillary</code></em>);</pre>
 <div class="refsect3">
-<a name="id-1.2.5.9.8.16.4"></a><h4>Parameters</h4>
+<a name="id-1.2.5.9.8.18.4"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1065,99 +1180,11 @@
 <a name="gst-mpegts-descriptor-parse-dvb-linkage"></a><h3>gst_mpegts_descriptor_parse_dvb_linkage ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_linkage
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageDescriptor" title="struct GstMpegTsDVBLinkageDescriptor"><span class="type">GstMpegTsDVBLinkageDescriptor</span></a> *res</code></em>);</pre>
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageDescriptor" title="struct GstMpegtsDVBLinkageDescriptor"><span class="type">GstMpegtsDVBLinkageDescriptor</span></a> **res</code></em>);</pre>
 <p>Extracts the DVB linkage information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.5.9.8.17.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-LINKAGE:CAPS"><code class="literal">GST_MTS_DESC_DVB_LINKAGE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageDescriptor" title="struct GstMpegTsDVBLinkageDescriptor"><span class="type">GstMpegTsDVBLinkageDescriptor</span></a> to fill. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.5.9.8.17.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parsing succeeded, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-private-data-specifier"></a><h3>gst_mpegts_descriptor_parse_dvb_private_data_specifier ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_private_data_specifier
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">guint32</span> *private_data_specifier</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> **private_data</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> *length</code></em>);</pre>
-<p>Parses out the private data specifier from the <em class="parameter"><code>descriptor</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.2.5.9.8.18.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-PRIVATE-DATA-SPECIFIER:CAPS"><code class="literal">GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>private_data_specifier</p></td>
-<td class="parameter_description"><p> the private data specifier id
-registered by http://www.dvbservices.com/. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>private_data</p></td>
-<td class="parameter_description"><p> additional data or NULL. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>length</p></td>
-<td class="parameter_description"><p> length of <code class="literal">private_data</code>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.5.9.8.18.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-frequency-list"></a><h3>gst_mpegts_descriptor_parse_dvb_frequency_list ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_frequency_list
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *offset</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> **list</code></em>);</pre>
-<p>Parses out a list of frequencies from the <em class="parameter"><code>descriptor</code></em>
-.</p>
-<div class="refsect3">
 <a name="id-1.2.5.9.8.19.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -1168,37 +1195,33 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-FREQUENCY-LIST:CAPS"><code class="literal">GST_MTS_DESC_DVB_FREQUENCY_LIST</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-LINKAGE:CAPS"><code class="literal">GST_MTS_DESC_DVB_LINKAGE</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>offset</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in Hz, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> in kHz. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>list</p></td>
-<td class="parameter_description"><p> a list of all frequencies in Hz/kHz
-depending on <code class="literal">offset</code>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint32]</span></td>
+<td class="parameter_name"><p>res</p></td>
+<td class="parameter_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageDescriptor" title="struct GstMpegtsDVBLinkageDescriptor"><span class="type">GstMpegtsDVBLinkageDescriptor</span></a> to fill. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.19.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parsing succeeded, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-data-broadcast"></a><h3>gst_mpegts_descriptor_parse_dvb_data_broadcast ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-private-data-specifier"></a><h3>gst_mpegts_descriptor_parse_dvb_private_data_specifier ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_data_broadcast
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDataBroadcastDescriptor" title="struct GstMpegTsDataBroadcastDescriptor"><span class="type">GstMpegTsDataBroadcastDescriptor</span></a> *res</code></em>);</pre>
-<p>Parses out the data broadcast from the <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_private_data_specifier
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><span class="type">guint32</span> *private_data_specifier</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> **private_data</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *length</code></em>);</pre>
+<p>Parses out the private data specifier from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.20.5"></a><h4>Parameters</h4>
@@ -1211,13 +1234,24 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-DATA-BROADCAST:CAPS"><code class="literal">GST_MTS_DESC_DVB_DATA_BROADCAST</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-PRIVATE-DATA-SPECIFIER:CAPS"><code class="literal">GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDataBroadcastDescriptor" title="struct GstMpegTsDataBroadcastDescriptor"><span class="type">GstMpegTsDataBroadcastDescriptor</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_name"><p>private_data_specifier</p></td>
+<td class="parameter_description"><p> the private data specifier id
+registered by http://www.dvbservices.com/. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>private_data</p></td>
+<td class="parameter_description"><p> additional data or NULL. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>length</p></td>
+<td class="parameter_description"><p> length of <code class="literal">private_data</code>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1230,12 +1264,13 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-scrambling"></a><h3>gst_mpegts_descriptor_parse_dvb_scrambling ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-frequency-list"></a><h3>gst_mpegts_descriptor_parse_dvb_frequency_list ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_scrambling
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">GstMpegTsDVBScramblingModeType</span> *scrambling_mode</code></em>);</pre>
-<p>Parses out the scrambling mode from the <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_frequency_list
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *offset</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> **list</code></em>);</pre>
+<p>Parses out a list of frequencies from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.21.5"></a><h4>Parameters</h4>
@@ -1248,18 +1283,20 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SCRAMBLING:CAPS"><code class="literal">GST_MTS_DESC_DVB_SCRAMBLING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-FREQUENCY-LIST:CAPS"><code class="literal">GST_MTS_DESC_DVB_FREQUENCY_LIST</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>scrambling_mode</p></td>
-<td class="parameter_description"><p> This 8-bit field identifies the selected
-mode of the scrambling algorithm (<span class="type">GstMpegTsDVBScramblingModeType</span>).
-The technical details of the scrambling algorithm are available only
-to bona-fide users upon signature of a Non Disclosure Agreement (NDA)
-administered by the DVB Common Scrambling Algorithm Custodian. </p></td>
+<td class="parameter_name"><p>offset</p></td>
+<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> in Hz, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> in kHz. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
 </tr>
+<tr>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p> a list of all frequencies in Hz/kHz
+depending on <code class="literal">offset</code>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint32]</span></td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -1271,14 +1308,12 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-data-broadcast-id"></a><h3>gst_mpegts_descriptor_parse_dvb_data_broadcast_id ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-data-broadcast"></a><h3>gst_mpegts_descriptor_parse_dvb_data_broadcast ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_data_broadcast_id
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">guint16</span> *data_broadcast_id</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> **id_selector_bytes</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> *len</code></em>);</pre>
-<p>Parses out the data broadcast id from the <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_data_broadcast
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDataBroadcastDescriptor" title="struct GstMpegtsDataBroadcastDescriptor"><span class="type">GstMpegtsDataBroadcastDescriptor</span></a> **res</code></em>);</pre>
+<p>Parses out the data broadcast from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.22.5"></a><h4>Parameters</h4>
@@ -1291,23 +1326,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-DATA-BROADCAST-ID:CAPS"><code class="literal">GST_MTS_DESC_DVB_DATA_BROADCAST_ID</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-DATA-BROADCAST:CAPS"><code class="literal">GST_MTS_DESC_DVB_DATA_BROADCAST</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>data_broadcast_id</p></td>
-<td class="parameter_description"><p> the data broadcast id. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>id_selector_bytes</p></td>
-<td class="parameter_description"><p> the selector bytes, if present. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>len</p></td>
-<td class="parameter_description"><p> the length of <span class="type">id_selector_bytes</span>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_name"><p>res</p></td>
+<td class="parameter_description"><p> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDataBroadcastDescriptor" title="struct GstMpegtsDataBroadcastDescriptor"><span class="type">GstMpegtsDataBroadcastDescriptor</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1320,12 +1345,12 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-parental-rating"></a><h3>gst_mpegts_descriptor_parse_dvb_parental_rating ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-scrambling"></a><h3>gst_mpegts_descriptor_parse_dvb_scrambling ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_parental_rating
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **rating</code></em>);</pre>
-<p>Extracts the DVB parental rating information from <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_scrambling
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBScramblingModeType" title="enum GstMpegtsDVBScramblingModeType"><span class="type">GstMpegtsDVBScramblingModeType</span></a> *scrambling_mode</code></em>);</pre>
+<p>Parses out the scrambling mode from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.23.5"></a><h4>Parameters</h4>
@@ -1338,13 +1363,17 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-PARENTAL-RATING:CAPS"><code class="literal">GST_MTS_DESC_DVB_PARENTAL_RATING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SCRAMBLING:CAPS"><code class="literal">GST_MTS_DESC_DVB_SCRAMBLING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>rating</p></td>
-<td class="parameter_description"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBParentalRatingItem" title="struct GstMpegTsDVBParentalRatingItem"><span class="type">GstMpegTsDVBParentalRatingItem</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDVBParentalRatingItem]</span></td>
+<td class="parameter_name"><p>scrambling_mode</p></td>
+<td class="parameter_description"><p> This 8-bit field identifies the selected
+mode of the scrambling algorithm (<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBScramblingModeType" title="enum GstMpegtsDVBScramblingModeType"><span class="type">GstMpegtsDVBScramblingModeType</span></a>).
+The technical details of the scrambling algorithm are available only
+to bona-fide users upon signature of a Non Disclosure Agreement (NDA)
+administered by the DVB Common Scrambling Algorithm Custodian. </p></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>
@@ -1357,12 +1386,14 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-stream-identifier"></a><h3>gst_mpegts_descriptor_parse_dvb_stream_identifier ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-data-broadcast-id"></a><h3>gst_mpegts_descriptor_parse_dvb_data_broadcast_id ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_stream_identifier
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> *component_tag</code></em>);</pre>
-<p>Extracts the component tag from <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_data_broadcast_id
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><span class="type">guint16</span> *data_broadcast_id</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> **id_selector_bytes</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *len</code></em>);</pre>
+<p>Parses out the data broadcast id from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.24.5"></a><h4>Parameters</h4>
@@ -1375,31 +1406,41 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CONTENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_CONTENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-DATA-BROADCAST-ID:CAPS"><code class="literal">GST_MTS_DESC_DVB_DATA_BROADCAST_ID</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>component_tag</p></td>
-<td class="parameter_description"><p> the component tag. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td class="parameter_name"><p>data_broadcast_id</p></td>
+<td class="parameter_description"><p> the data broadcast id. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>id_selector_bytes</p></td>
+<td class="parameter_description"><p> the selector bytes, if present. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p> the length of <span class="type">id_selector_bytes</span>. </p></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.5.9.8.24.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happended correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-ca-identifier"></a><h3>gst_mpegts_descriptor_parse_dvb_ca_identifier ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-parental-rating"></a><h3>gst_mpegts_descriptor_parse_dvb_parental_rating ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_ca_identifier
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> **list</code></em>);</pre>
-<p>Extracts ca id's from <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_parental_rating
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **rating</code></em>);</pre>
+<p>Extracts the DVB parental rating information from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.25.5"></a><h4>Parameters</h4>
@@ -1412,15 +1453,13 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CA-IDENTIFIER:CAPS"><code class="literal">GST_MTS_DESC_DVB_CA_IDENTIFIER</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-PARENTAL-RATING:CAPS"><code class="literal">GST_MTS_DESC_DVB_PARENTAL_RATING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>list</p></td>
-<td class="parameter_description"><p> This 16-bit field
-identifies the CA system. Allocations of the value of this field are found
-in http://www.dvbservices.com. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint16]</span></td>
+<td class="parameter_name"><p>rating</p></td>
+<td class="parameter_description"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBParentalRatingItem" title="struct GstMpegtsDVBParentalRatingItem"><span class="type">GstMpegtsDVBParentalRatingItem</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDVBParentalRatingItem]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1433,13 +1472,13 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-service-list"></a><h3>gst_mpegts_descriptor_parse_dvb_service_list ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-stream-identifier"></a><h3>gst_mpegts_descriptor_parse_dvb_stream_identifier ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_service_list
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **list</code></em>);</pre>
-<p>Parses out a list of services from the <em class="parameter"><code>descriptor</code></em>
-:</p>
+gst_mpegts_descriptor_parse_dvb_stream_identifier
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *component_tag</code></em>);</pre>
+<p>Extracts the component tag from <em class="parameter"><code>descriptor</code></em>
+.</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.26.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -1451,31 +1490,31 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SERVICE-LIST:CAPS"><code class="literal">GST_MTS_DESC_DVB_SERVICE_LIST</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CONTENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_CONTENT</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>list</p></td>
-<td class="parameter_description"><p>the list of services. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDVBServiceListItem]</span></td>
+<td class="parameter_name"><p>component_tag</p></td>
+<td class="parameter_description"><p> the component tag. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.26.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happended correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-stuffing"></a><h3>gst_mpegts_descriptor_parse_dvb_stuffing ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-ca-identifier"></a><h3>gst_mpegts_descriptor_parse_dvb_ca_identifier ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_stuffing
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> **stuffing_bytes</code></em>);</pre>
-<p>Parses out the stuffing bytes from the <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_ca_identifier
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> **list</code></em>);</pre>
+<p>Extracts ca id's from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.27.5"></a><h4>Parameters</h4>
@@ -1488,13 +1527,15 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-STUFFING:CAPS"><code class="literal">GST_MTS_DESC_DVB_STUFFING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-CA-IDENTIFIER:CAPS"><code class="literal">GST_MTS_DESC_DVB_CA_IDENTIFIER</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>stuffing_bytes</p></td>
-<td class="parameter_description"><p> the stuffing bytes. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p> a list of ca identifier.
+Edge entry identifies the CA system. Allocations of the value of this field
+are found in http://www.dvbservices.com. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint16]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1507,15 +1548,89 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-dvb-service-list"></a><h3>gst_mpegts_descriptor_parse_dvb_service_list ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_mpegts_descriptor_parse_dvb_service_list
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **list</code></em>);</pre>
+<p>Parses out a list of services from the <em class="parameter"><code>descriptor</code></em>
+:</p>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.28.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-SERVICE-LIST:CAPS"><code class="literal">GST_MTS_DESC_DVB_SERVICE_LIST</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the list of services. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDVBServiceListItem]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.28.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-dvb-stuffing"></a><h3>gst_mpegts_descriptor_parse_dvb_stuffing ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_mpegts_descriptor_parse_dvb_stuffing
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> **stuffing_bytes</code></em>);</pre>
+<p>Parses out the stuffing bytes from the <em class="parameter"><code>descriptor</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.29.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-STUFFING:CAPS"><code class="literal">GST_MTS_DESC_DVB_STUFFING</code></a> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>stuffing_bytes</p></td>
+<td class="parameter_description"><p> the stuffing bytes. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.29.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-mpegts-descriptor-parse-dvb-bouquet-name"></a><h3>gst_mpegts_descriptor_parse_dvb_bouquet_name ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_bouquet_name
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **bouquet_name</code></em>);</pre>
 <p>Extracts the bouquet name from <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.5.9.8.28.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.9.8.30.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1530,7 +1645,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.9.8.28.6"></a><h4>Returns</h4>
+<a name="id-1.2.5.9.8.30.6"></a><h4>Returns</h4>
 <p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if parsing succeeded, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
 <p></p>
 </div>
@@ -1540,87 +1655,11 @@
 <a name="gst-mpegts-descriptor-parse-dvb-multilingual-network-name"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_network_name ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
 gst_mpegts_descriptor_parse_dvb_multilingual_network_name
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
                                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **network_name_items</code></em>);</pre>
 <p>Parses out the multilingual network name from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
-<a name="id-1.2.5.9.8.29.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-NETWORK-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME</code></a>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>network_name_items</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualNetworkNameItem" title="struct GstMpegTsDvbMultilingualNetworkNameItem"><span class="type">GstMpegTsDvbMultilingualNetworkNameItem</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDvbMultilingualNetworkNameItem]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.5.9.8.29.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-multilingual-bouquet-name"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **bouquet_name_items</code></em>);</pre>
-<p>Parses out the multilingual bouquet name from the <em class="parameter"><code>descriptor</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.2.5.9.8.30.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-BOUQUET-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME</code></a>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>bouquet_name_items</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualBouquetNameItem" title="struct GstMpegTsDvbMultilingualBouquetNameItem"><span class="type">GstMpegTsDvbMultilingualBouquetNameItem</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDvbMultilingualBouquetNameItem]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.2.5.9.8.30.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-multilingual-service-name"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_service_name ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_multilingual_service_name
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **service_name_items</code></em>);</pre>
-<p>Parses out the multilingual service name from the <em class="parameter"><code>descriptor</code></em>
-.</p>
-<div class="refsect3">
 <a name="id-1.2.5.9.8.31.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -1631,14 +1670,14 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-SERVICE-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME</code></a>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-NETWORK-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME</code></a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>service_name_items</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualServiceNameItem" title="struct GstMpegTsDvbMultilingualServiceNameItem"><span class="type">GstMpegTsDvbMultilingualServiceNameItem</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDvbMultilingualServiceNameItem]</span></td>
+<td class="parameter_name"><p>network_name_items</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualNetworkNameItem" title="struct GstMpegtsDvbMultilingualNetworkNameItem"><span class="type">GstMpegtsDvbMultilingualNetworkNameItem</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDvbMultilingualNetworkNameItem]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1651,13 +1690,12 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-descriptor-parse-dvb-multilingual-component"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_component ()</h3>
+<a name="gst-mpegts-descriptor-parse-dvb-multilingual-bouquet-name"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-gst_mpegts_descriptor_parse_dvb_multilingual_component
-                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a> *descriptor</code></em>,
-                                <em class="parameter"><code><span class="type">guint8</span> *component_tag</code></em>,
-                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **component_description_items</code></em>);</pre>
-<p>Parses out the multilingual component from the <em class="parameter"><code>descriptor</code></em>
+gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **bouquet_name_items</code></em>);</pre>
+<p>Parses out the multilingual bouquet name from the <em class="parameter"><code>descriptor</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.8.32.5"></a><h4>Parameters</h4>
@@ -1670,19 +1708,14 @@
 <tbody>
 <tr>
 <td class="parameter_name"><p>descriptor</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-COMPONENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT</code></a>
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-BOUQUET-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME</code></a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td class="parameter_name"><p>component_tag</p></td>
-<td class="parameter_description"><p>the component tag</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>component_description_items</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualComponentItem" title="struct GstMpegTsDvbMultilingualComponentItem"><span class="type">GstMpegTsDvbMultilingualComponentItem</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDvbMultilingualComponentItem]</span></td>
+<td class="parameter_name"><p>bouquet_name_items</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualBouquetNameItem" title="struct GstMpegtsDvbMultilingualBouquetNameItem"><span class="type">GstMpegtsDvbMultilingualBouquetNameItem</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDvbMultilingualBouquetNameItem]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1693,12 +1726,94 @@
 <p></p>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-dvb-multilingual-service-name"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_service_name ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_mpegts_descriptor_parse_dvb_multilingual_service_name
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **service_name_items</code></em>);</pre>
+<p>Parses out the multilingual service name from the <em class="parameter"><code>descriptor</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.33.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-SERVICE-NAME:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME</code></a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>service_name_items</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualServiceNameItem" title="struct GstMpegtsDvbMultilingualServiceNameItem"><span class="type">GstMpegtsDvbMultilingualServiceNameItem</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDvbMultilingualServiceNameItem]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.33.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-descriptor-parse-dvb-multilingual-component"></a><h3>gst_mpegts_descriptor_parse_dvb_multilingual_component ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_mpegts_descriptor_parse_dvb_multilingual_component
+                               (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a> *descriptor</code></em>,
+                                <em class="parameter"><code><span class="type">guint8</span> *component_tag</code></em>,
+                                <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> **component_description_items</code></em>);</pre>
+<p>Parses out the multilingual component from the <em class="parameter"><code>descriptor</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.34.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>descriptor</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GST-MTS-DESC-DVB-MULTILINGUAL-COMPONENT:CAPS"><code class="literal">GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT</code></a>
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>component_tag</p></td>
+<td class="parameter_description"><p>the component tag</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>component_description_items</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualComponentItem" title="struct GstMpegtsDvbMultilingualComponentItem"><span class="type">GstMpegtsDvbMultilingualComponentItem</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDvbMultilingualComponentItem]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.9.8.34.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the parsing happened correctly, else <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
+<p></p>
+</div>
+</div>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsDVBDescriptorType"></a><h3>enum GstMpegTsDVBDescriptorType</h3>
-<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p>
+<a name="GstMpegtsDVBDescriptorType"></a><h3>enum GstMpegtsDVBDescriptorType</h3>
+<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p>
 <p>These values correspond to the registered descriptor type from
 the various DVB specifications.</p>
 <p>Consult the relevant specifications for more details.</p>
@@ -2037,8 +2152,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBExtendedDescriptorType"></a><h3>enum GstMpegTsDVBExtendedDescriptorType</h3>
-<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor"><span class="type">GstMpegTsDescriptor</span></a></p>
+<a name="GstMpegtsDVBExtendedDescriptorType"></a><h3>enum GstMpegtsDVBExtendedDescriptorType</h3>
+<p>The type of <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor"><span class="type">GstMpegtsDescriptor</span></a></p>
 <p>These values correspond to the registered extended descriptor
 type from the various DVB specifications.</p>
 <p>Consult the relevant specifications for more details.</p>
@@ -2152,9 +2267,9 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsContent"></a><h3>struct GstMpegTsContent</h3>
-<pre class="programlisting">struct GstMpegTsContent {
-  guint8 content_nibble_1;
+<a name="GstMpegtsContent"></a><h3>struct GstMpegtsContent</h3>
+<pre class="programlisting">struct GstMpegtsContent {
+  GstMpegtsContentNibbleHi content_nibble_1;
   guint8 content_nibble_2;
   guint8 user_byte;
 };
@@ -2162,21 +2277,20 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsComponentDescriptor"></a><h3>struct GstMpegTsComponentDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsComponentDescriptor {
+<a name="GstMpegtsComponentDescriptor"></a><h3>struct GstMpegtsComponentDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsComponentDescriptor {
   guint8 stream_content;
   guint8 component_type;
   guint8 component_tag;
-  /* FIXME : Make it a separate (allocated, null-terminated) return value  */
-  gchar  language_code[4];
-  gchar *text;
+  gchar  *language_code;
+  gchar  *text;
 };
 </pre>
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsExtendedEventItem"></a><h3>struct GstMpegTsExtendedEventItem</h3>
-<pre class="programlisting">struct GstMpegTsExtendedEventItem {
+<a name="GstMpegtsExtendedEventItem"></a><h3>struct GstMpegtsExtendedEventItem</h3>
+<pre class="programlisting">struct GstMpegtsExtendedEventItem {
   gchar *item_description;
   gchar *item;
 };
@@ -2184,11 +2298,11 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsExtendedEventDescriptor"></a><h3>struct GstMpegTsExtendedEventDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsExtendedEventDescriptor {
+<a name="GstMpegtsExtendedEventDescriptor"></a><h3>struct GstMpegtsExtendedEventDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsExtendedEventDescriptor {
   guint8 descriptor_number;
   guint8 last_descriptor_number;
-  gchar  language_code[4];
+  gchar  *language_code;
   GPtrArray *items;
   gchar *text;
 };
@@ -2204,27 +2318,27 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsExtendedEventDescriptor.descriptor-number"></a>descriptor_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsExtendedEventDescriptor.descriptor-number"></a>descriptor_number</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsExtendedEventDescriptor.last-descriptor-number"></a>last_descriptor_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsExtendedEventDescriptor.last-descriptor-number"></a>last_descriptor_number</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegTsExtendedEventDescriptor.language-code"></a>language_code</code></em>[4];</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsExtendedEventDescriptor.language-code"></a>language_code</code></em>;</p></td>
 <td class="struct_member_description"><p>NULL terminated language code.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsExtendedEventDescriptor.items"></a>items</code></em>;</p></td>
-<td class="struct_member_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventItem" title="struct GstMpegTsExtendedEventItem"><span class="type">GstMpegTsExtendedEventItem</span></a>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsExtendedEventItem]</span></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsExtendedEventDescriptor.items"></a>items</code></em>;</p></td>
+<td class="struct_member_description"><p> the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventItem" title="struct GstMpegtsExtendedEventItem"><span class="type">GstMpegtsExtendedEventItem</span></a>. </p></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsExtendedEventItem]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsExtendedEventDescriptor.text"></a>text</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsExtendedEventDescriptor.text"></a>text</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -2234,19 +2348,19 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSatelliteDeliverySystemDescriptor"></a><h3>struct GstMpegTsSatelliteDeliverySystemDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsSatelliteDeliverySystemDescriptor {
+<a name="GstMpegtsSatelliteDeliverySystemDescriptor"></a><h3>struct GstMpegtsSatelliteDeliverySystemDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsSatelliteDeliverySystemDescriptor {
   guint32                            frequency;
   gfloat                             orbital_position;
   gboolean                           west_east; 
-  GstMpegTsSatellitePolarizationType polarization;
+  GstMpegtsSatellitePolarizationType polarization;
 
-  GstMpegTsSatelliteRolloff          roll_off;
+  GstMpegtsSatelliteRolloff          roll_off;
   gboolean                           modulation_system;
-  GstMpegTsModulationType            modulation_type;
+  GstMpegtsModulationType            modulation_type;
 
   guint32                            symbol_rate;
-  GstMpegTsDVBCodeRate               fec_inner;
+  GstMpegtsDVBCodeRate               fec_inner;
 };
 </pre>
 <p>Satellite Delivery System Descriptor (EN 300 468 v.1.13.1)</p>
@@ -2260,48 +2374,48 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.frequency"></a>frequency</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.frequency"></a>frequency</code></em>;</p></td>
 <td class="struct_member_description"><p>the frequency in kHz (kiloHertz)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.orbital-position"></a>orbital_position</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.orbital-position"></a>orbital_position</code></em>;</p></td>
 <td class="struct_member_description"><p>the orbital position in degrees</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.west-east"></a>west_east</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.west-east"></a>west_east</code></em>;</p></td>
 <td class="struct_member_description"><p>If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the satellite is in the eastern part of the orbit,
 else in the western part.</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatellitePolarizationType" title="enum GstMpegTsSatellitePolarizationType"><span class="type">GstMpegTsSatellitePolarizationType</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.polarization"></a>polarization</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatellitePolarizationType" title="enum GstMpegtsSatellitePolarizationType"><span class="type">GstMpegtsSatellitePolarizationType</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.polarization"></a>polarization</code></em>;</p></td>
 <td class="struct_member_description"><p>The polarization of the transmitted signal</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteRolloff" title="enum GstMpegTsSatelliteRolloff"><span class="type">GstMpegTsSatelliteRolloff</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.roll-off"></a>roll_off</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteRolloff" title="enum GstMpegtsSatelliteRolloff"><span class="type">GstMpegtsSatelliteRolloff</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.roll-off"></a>roll_off</code></em>;</p></td>
 <td class="struct_member_description"><p>Roll-off factor used in DVB-S2</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.modulation-system"></a>modulation_system</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.modulation-system"></a>modulation_system</code></em>;</p></td>
 <td class="struct_member_description"><p>modulation system, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if DVB-S2, else DVB-S</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType" title="enum GstMpegTsModulationType"><span class="type">GstMpegTsModulationType</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.modulation-type"></a>modulation_type</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType" title="enum GstMpegtsModulationType"><span class="type">GstMpegtsModulationType</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.modulation-type"></a>modulation_type</code></em>;</p></td>
 <td class="struct_member_description"><p>Modulation scheme used</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.symbol-rate"></a>symbol_rate</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.symbol-rate"></a>symbol_rate</code></em>;</p></td>
 <td class="struct_member_description"><p>Symbol rate (in symbols per second)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate"><span class="type">GstMpegTsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegTsSatelliteDeliverySystemDescriptor.fec-inner"></a>fec_inner</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate"><span class="type">GstMpegtsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegtsSatelliteDeliverySystemDescriptor.fec-inner"></a>fec_inner</code></em>;</p></td>
 <td class="struct_member_description"><p>inner FEC scheme used</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -2311,7 +2425,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBCodeRate"></a><h3>enum GstMpegTsDVBCodeRate</h3>
+<a name="GstMpegtsDVBCodeRate"></a><h3>enum GstMpegtsDVBCodeRate</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.9.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2392,7 +2506,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsModulationType"></a><h3>enum GstMpegTsModulationType</h3>
+<a name="GstMpegtsModulationType"></a><h3>enum GstMpegtsModulationType</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.10.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2483,7 +2597,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSatellitePolarizationType"></a><h3>enum GstMpegTsSatellitePolarizationType</h3>
+<a name="GstMpegtsSatellitePolarizationType"></a><h3>enum GstMpegtsSatellitePolarizationType</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.11.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2519,7 +2633,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSatelliteRolloff"></a><h3>enum GstMpegTsSatelliteRolloff</h3>
+<a name="GstMpegtsSatelliteRolloff"></a><h3>enum GstMpegtsSatelliteRolloff</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.12.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2560,14 +2674,14 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsCableDeliverySystemDescriptor"></a><h3>struct GstMpegTsCableDeliverySystemDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsCableDeliverySystemDescriptor {
+<a name="GstMpegtsCableDeliverySystemDescriptor"></a><h3>struct GstMpegtsCableDeliverySystemDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsCableDeliverySystemDescriptor {
   guint32                            frequency;
-  GstMpegTsCableOuterFECScheme       outer_fec;
-  GstMpegTsModulationType            modulation;
+  GstMpegtsCableOuterFECScheme       outer_fec;
+  GstMpegtsModulationType            modulation;
 
   guint32                            symbol_rate;
-  GstMpegTsDVBCodeRate               fec_inner;
+  GstMpegtsDVBCodeRate               fec_inner;
 };
 </pre>
 <p>Cable Delivery System Descriptor (EN 300 468 v.1.13.1)</p>
@@ -2581,27 +2695,27 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsCableDeliverySystemDescriptor.frequency"></a>frequency</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsCableDeliverySystemDescriptor.frequency"></a>frequency</code></em>;</p></td>
 <td class="struct_member_description"><p>the frequency in Hz (Hertz)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableOuterFECScheme" title="enum GstMpegTsCableOuterFECScheme"><span class="type">GstMpegTsCableOuterFECScheme</span></a> <em class="structfield"><code><a name="GstMpegTsCableDeliverySystemDescriptor.outer-fec"></a>outer_fec</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableOuterFECScheme" title="enum GstMpegtsCableOuterFECScheme"><span class="type">GstMpegtsCableOuterFECScheme</span></a> <em class="structfield"><code><a name="GstMpegtsCableDeliverySystemDescriptor.outer-fec"></a>outer_fec</code></em>;</p></td>
 <td class="struct_member_description"><p>the outer FEC scheme used</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType" title="enum GstMpegTsModulationType"><span class="type">GstMpegTsModulationType</span></a> <em class="structfield"><code><a name="GstMpegTsCableDeliverySystemDescriptor.modulation"></a>modulation</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType" title="enum GstMpegtsModulationType"><span class="type">GstMpegtsModulationType</span></a> <em class="structfield"><code><a name="GstMpegtsCableDeliverySystemDescriptor.modulation"></a>modulation</code></em>;</p></td>
 <td class="struct_member_description"><p>Modulation scheme used</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsCableDeliverySystemDescriptor.symbol-rate"></a>symbol_rate</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsCableDeliverySystemDescriptor.symbol-rate"></a>symbol_rate</code></em>;</p></td>
 <td class="struct_member_description"><p>Symbol rate (in symbols per second)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate"><span class="type">GstMpegTsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegTsCableDeliverySystemDescriptor.fec-inner"></a>fec_inner</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate"><span class="type">GstMpegtsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegtsCableDeliverySystemDescriptor.fec-inner"></a>fec_inner</code></em>;</p></td>
 <td class="struct_member_description"><p>inner FEC scheme used</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -2611,7 +2725,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsCableOuterFECScheme"></a><h3>enum GstMpegTsCableOuterFECScheme</h3>
+<a name="GstMpegtsCableOuterFECScheme"></a><h3>enum GstMpegtsCableOuterFECScheme</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.14.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2642,19 +2756,19 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsTerrestrialDeliverySystemDescriptor"></a><h3>struct GstMpegTsTerrestrialDeliverySystemDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsTerrestrialDeliverySystemDescriptor {
+<a name="GstMpegtsTerrestrialDeliverySystemDescriptor"></a><h3>struct GstMpegtsTerrestrialDeliverySystemDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsTerrestrialDeliverySystemDescriptor {
   guint32				frequency;
   guint32				bandwidth;
   gboolean				priority;
   gboolean				time_slicing;
   gboolean				mpe_fec;
-  GstMpegTsModulationType		constellation;
-  GstMpegTsTerrestrialHierarchy		hierarchy;
-  GstMpegTsDVBCodeRate			code_rate_hp;
-  GstMpegTsDVBCodeRate			code_rate_lp;
-  GstMpegTsTerrestrialGuardInterval guard_interval;
-  GstMpegTsTerrestrialTransmissionMode transmission_mode;
+  GstMpegtsModulationType		constellation;
+  GstMpegtsTerrestrialHierarchy		hierarchy;
+  GstMpegtsDVBCodeRate			code_rate_hp;
+  GstMpegtsDVBCodeRate			code_rate_lp;
+  GstMpegtsTerrestrialGuardInterval guard_interval;
+  GstMpegtsTerrestrialTransmissionMode transmission_mode;
   gboolean				other_frequency;
 };
 </pre>
@@ -2669,62 +2783,62 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.frequency"></a>frequency</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.frequency"></a>frequency</code></em>;</p></td>
 <td class="struct_member_description"><p>the frequency in Hz (Hertz)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.bandwidth"></a>bandwidth</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.bandwidth"></a>bandwidth</code></em>;</p></td>
 <td class="struct_member_description"><p>the bandwidth in Hz (Hertz)</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.priority"></a>priority</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.priority"></a>priority</code></em>;</p></td>
 <td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> High Priority <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> Low Priority</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.time-slicing"></a>time_slicing</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.time-slicing"></a>time_slicing</code></em>;</p></td>
 <td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> no time slicing <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> time slicing</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.mpe-fec"></a>mpe_fec</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.mpe-fec"></a>mpe_fec</code></em>;</p></td>
 <td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> no mpe-fec is used <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> mpe-fec is use</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType" title="enum GstMpegTsModulationType"><span class="type">GstMpegTsModulationType</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.constellation"></a>constellation</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType" title="enum GstMpegtsModulationType"><span class="type">GstMpegtsModulationType</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.constellation"></a>constellation</code></em>;</p></td>
 <td class="struct_member_description"><p>the constallation</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialHierarchy" title="enum GstMpegTsTerrestrialHierarchy"><span class="type">GstMpegTsTerrestrialHierarchy</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.hierarchy"></a>hierarchy</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialHierarchy" title="enum GstMpegtsTerrestrialHierarchy"><span class="type">GstMpegtsTerrestrialHierarchy</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.hierarchy"></a>hierarchy</code></em>;</p></td>
 <td class="struct_member_description"><p>the hierarchy</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate"><span class="type">GstMpegTsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.code-rate-hp"></a>code_rate_hp</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate"><span class="type">GstMpegtsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.code-rate-hp"></a>code_rate_hp</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate"><span class="type">GstMpegTsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.code-rate-lp"></a>code_rate_lp</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate"><span class="type">GstMpegtsDVBCodeRate</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.code-rate-lp"></a>code_rate_lp</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialGuardInterval" title="enum GstMpegTsTerrestrialGuardInterval"><span class="type">GstMpegTsTerrestrialGuardInterval</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.guard-interval"></a>guard_interval</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialGuardInterval" title="enum GstMpegtsTerrestrialGuardInterval"><span class="type">GstMpegtsTerrestrialGuardInterval</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.guard-interval"></a>guard_interval</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialTransmissionMode" title="enum GstMpegTsTerrestrialTransmissionMode"><span class="type">GstMpegTsTerrestrialTransmissionMode</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.transmission-mode"></a>transmission_mode</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialTransmissionMode" title="enum GstMpegtsTerrestrialTransmissionMode"><span class="type">GstMpegtsTerrestrialTransmissionMode</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.transmission-mode"></a>transmission_mode</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsTerrestrialDeliverySystemDescriptor.other-frequency"></a>other_frequency</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsTerrestrialDeliverySystemDescriptor.other-frequency"></a>other_frequency</code></em>;</p></td>
 <td class="struct_member_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> more frequency are use, else not</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -2734,7 +2848,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsTerrestrialTransmissionMode"></a><h3>enum GstMpegTsTerrestrialTransmissionMode</h3>
+<a name="GstMpegtsTerrestrialTransmissionMode"></a><h3>enum GstMpegtsTerrestrialTransmissionMode</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.16.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2795,7 +2909,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsTerrestrialGuardInterval"></a><h3>enum GstMpegTsTerrestrialGuardInterval</h3>
+<a name="GstMpegtsTerrestrialGuardInterval"></a><h3>enum GstMpegtsTerrestrialGuardInterval</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.17.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2866,7 +2980,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsTerrestrialHierarchy"></a><h3>enum GstMpegTsTerrestrialHierarchy</h3>
+<a name="GstMpegtsTerrestrialHierarchy"></a><h3>enum GstMpegtsTerrestrialHierarchy</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.18.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -2907,8 +3021,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsT2DeliverySystemCellExtension"></a><h3>struct GstMpegTsT2DeliverySystemCellExtension</h3>
-<pre class="programlisting">struct GstMpegTsT2DeliverySystemCellExtension {
+<a name="GstMpegtsT2DeliverySystemCellExtension"></a><h3>struct GstMpegtsT2DeliverySystemCellExtension</h3>
+<pre class="programlisting">struct GstMpegtsT2DeliverySystemCellExtension {
   guint8  cell_id_extension;
   guint32 transposer_frequency;
 };
@@ -2923,12 +3037,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemCellExtension.cell-id-extension"></a>cell_id_extension</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemCellExtension.cell-id-extension"></a>cell_id_extension</code></em>;</p></td>
 <td class="struct_member_description"><p>id of the sub cell</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemCellExtension.transposer-frequency"></a>transposer_frequency</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemCellExtension.transposer-frequency"></a>transposer_frequency</code></em>;</p></td>
 <td class="struct_member_description"><p>centre frequency of the sub cell in Hz</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -2938,8 +3052,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsT2DeliverySystemCell"></a><h3>struct GstMpegTsT2DeliverySystemCell</h3>
-<pre class="programlisting">struct GstMpegTsT2DeliverySystemCell {
+<a name="GstMpegtsT2DeliverySystemCell"></a><h3>struct GstMpegtsT2DeliverySystemCell</h3>
+<pre class="programlisting">struct GstMpegtsT2DeliverySystemCell {
   guint16      cell_id;
   GArray       *centre_frequencies;
   GPtrArray    *sub_cells;
@@ -2955,19 +3069,19 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemCell.cell-id"></a>cell_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemCell.cell-id"></a>cell_id</code></em>;</p></td>
 <td class="struct_member_description"><p>id of the cell</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> *<em class="structfield"><code><a name="GstMpegTsT2DeliverySystemCell.centre-frequencies"></a>centre_frequencies</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> *<em class="structfield"><code><a name="GstMpegtsT2DeliverySystemCell.centre-frequencies"></a>centre_frequencies</code></em>;</p></td>
 <td class="struct_member_description"><p>centre frequencies in Hz</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsT2DeliverySystemCell.sub-cells"></a>sub_cells</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsT2DeliverySystemCell.sub-cells"></a>sub_cells</code></em>;</p></td>
 <td class="struct_member_description"><p>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsT2DeliverySystemCellExtension]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsT2DeliverySystemCellExtension]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -2975,15 +3089,15 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsT2DeliverySystemDescriptor"></a><h3>struct GstMpegTsT2DeliverySystemDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsT2DeliverySystemDescriptor {
+<a name="GstMpegtsT2DeliverySystemDescriptor"></a><h3>struct GstMpegtsT2DeliverySystemDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsT2DeliverySystemDescriptor {
   guint8                                plp_id;
   guint16                               t2_system_id;
   /* FIXME: */
   guint8                                siso_miso;
   guint32                               bandwidth;
-  GstMpegTsTerrestrialGuardInterval     guard_interval;
-  GstMpegTsTerrestrialTransmissionMode  transmission_mode;
+  GstMpegtsTerrestrialGuardInterval     guard_interval;
+  GstMpegtsTerrestrialTransmissionMode  transmission_mode;
   gboolean                              other_frequency;
   gboolean                              tfs;
   GPtrArray                             *cells;
@@ -3000,49 +3114,49 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.plp-id"></a>plp_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.plp-id"></a>plp_id</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.t2-system-id"></a>t2_system_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.t2-system-id"></a>t2_system_id</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.siso-miso"></a>siso_miso</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.siso-miso"></a>siso_miso</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.bandwidth"></a>bandwidth</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.bandwidth"></a>bandwidth</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialGuardInterval" title="enum GstMpegTsTerrestrialGuardInterval"><span class="type">GstMpegTsTerrestrialGuardInterval</span></a> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.guard-interval"></a>guard_interval</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialGuardInterval" title="enum GstMpegtsTerrestrialGuardInterval"><span class="type">GstMpegtsTerrestrialGuardInterval</span></a> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.guard-interval"></a>guard_interval</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialTransmissionMode" title="enum GstMpegTsTerrestrialTransmissionMode"><span class="type">GstMpegTsTerrestrialTransmissionMode</span></a> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.transmission-mode"></a>transmission_mode</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialTransmissionMode" title="enum GstMpegtsTerrestrialTransmissionMode"><span class="type">GstMpegtsTerrestrialTransmissionMode</span></a> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.transmission-mode"></a>transmission_mode</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.other-frequency"></a>other_frequency</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.other-frequency"></a>other_frequency</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.tfs"></a>tfs</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.tfs"></a>tfs</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsT2DeliverySystemDescriptor.cells"></a>cells</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsT2DeliverySystemDescriptor.cells"></a>cells</code></em>;</p></td>
 <td class="struct_member_description"><p>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsT2DeliverySystemCell]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsT2DeliverySystemCell]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -3050,7 +3164,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBServiceType"></a><h3>enum GstMpegTsDVBServiceType</h3>
+<a name="GstMpegtsDVBServiceType"></a><h3>enum GstMpegtsDVBServiceType</h3>
 <p>The type of service of a channel.</p>
 <p>As specified in Table 87 of ETSI EN 300 468 v1.13.1</p>
 <div class="refsect3">
@@ -3208,7 +3322,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBTeletextType"></a><h3>enum GstMpegTsDVBTeletextType</h3>
+<a name="GstMpegtsDVBTeletextType"></a><h3>enum GstMpegtsDVBTeletextType</h3>
 <p>The type of teletext page.</p>
 <p>As specified in Table 100 of ETSI EN 300 468 v1.13.1</p>
 <div class="refsect3">
@@ -3251,7 +3365,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBLinkageType"></a><h3>enum GstMpegTsDVBLinkageType</h3>
+<a name="GstMpegtsDVBLinkageType"></a><h3>enum GstMpegtsDVBLinkageType</h3>
 <p>Linkage Type (EN 300 468 v.1.13.1)</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.24.4"></a><h4>Members</h4>
@@ -3343,7 +3457,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBLinkageHandOverType"></a><h3>enum GstMpegTsDVBLinkageHandOverType</h3>
+<a name="GstMpegtsDVBLinkageHandOverType"></a><h3>enum GstMpegtsDVBLinkageHandOverType</h3>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.25.3"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3379,9 +3493,9 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBLinkageMobileHandOver"></a><h3>struct GstMpegTsDVBLinkageMobileHandOver</h3>
-<pre class="programlisting">struct GstMpegTsDVBLinkageMobileHandOver {
-  GstMpegTsDVBLinkageHandOverType hand_over_type;
+<a name="GstMpegtsDVBLinkageMobileHandOver"></a><h3>struct GstMpegtsDVBLinkageMobileHandOver</h3>
+<pre class="programlisting">struct GstMpegtsDVBLinkageMobileHandOver {
+  GstMpegtsDVBLinkageHandOverType hand_over_type;
   /* 0 = NIT, 1 = SDT */
   gboolean                        origin_type;
   guint16                         network_id;
@@ -3391,8 +3505,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBLinkageEvent"></a><h3>struct GstMpegTsDVBLinkageEvent</h3>
-<pre class="programlisting">struct GstMpegTsDVBLinkageEvent {
+<a name="GstMpegtsDVBLinkageEvent"></a><h3>struct GstMpegtsDVBLinkageEvent</h3>
+<pre class="programlisting">struct GstMpegtsDVBLinkageEvent {
   guint16  target_event_id;
   gboolean target_listed;
   gboolean event_simulcast;
@@ -3401,8 +3515,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBLinkageExtendedEvent"></a><h3>struct GstMpegTsDVBLinkageExtendedEvent</h3>
-<pre class="programlisting">struct GstMpegTsDVBLinkageExtendedEvent {
+<a name="GstMpegtsDVBLinkageExtendedEvent"></a><h3>struct GstMpegtsDVBLinkageExtendedEvent</h3>
+<pre class="programlisting">struct GstMpegtsDVBLinkageExtendedEvent {
   guint16        target_event_id;
   gboolean       target_listed;
   gboolean       event_simulcast;
@@ -3423,12 +3537,12 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBLinkageDescriptor"></a><h3>struct GstMpegTsDVBLinkageDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsDVBLinkageDescriptor {
+<a name="GstMpegtsDVBLinkageDescriptor"></a><h3>struct GstMpegtsDVBLinkageDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsDVBLinkageDescriptor {
   guint16                           transport_stream_id;
   guint16                           original_network_id;
   guint16                           service_id;
-  GstMpegTsDVBLinkageType           linkage_type;
+  GstMpegtsDVBLinkageType           linkage_type;
   gpointer                          linkage_data;
   guint8                            private_data_length;
   guint8                            *private_data_bytes;
@@ -3444,37 +3558,37 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
 <td class="struct_member_description"><p>the transport id</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.original-network-id"></a>original_network_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.original-network-id"></a>original_network_id</code></em>;</p></td>
 <td class="struct_member_description"><p>the original network id</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.service-id"></a>service_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.service-id"></a>service_id</code></em>;</p></td>
 <td class="struct_member_description"><p>the service id</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageType" title="enum GstMpegTsDVBLinkageType"><span class="type">GstMpegTsDVBLinkageType</span></a> <em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.linkage-type"></a>linkage_type</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageType" title="enum GstMpegtsDVBLinkageType"><span class="type">GstMpegtsDVBLinkageType</span></a> <em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.linkage-type"></a>linkage_type</code></em>;</p></td>
 <td class="struct_member_description"><p>the type which <code class="literal">linkage_data</code> has</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.linkage-data"></a>linkage_data</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.linkage-data"></a>linkage_data</code></em>;</p></td>
 <td class="struct_member_description"><p>the linkage structure depending from <code class="literal">linkage_type</code></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.private-data-length"></a>private_data_length</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.private-data-length"></a>private_data_length</code></em>;</p></td>
 <td class="struct_member_description"><p>the length for <code class="literal">private_data_bytes</code></p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> *<em class="structfield"><code><a name="GstMpegTsDVBLinkageDescriptor.private-data-bytes"></a>private_data_bytes</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> *<em class="structfield"><code><a name="GstMpegtsDVBLinkageDescriptor.private-data-bytes"></a>private_data_bytes</code></em>;</p></td>
 <td class="struct_member_description"><p>additional data bytes</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -3484,12 +3598,13 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDataBroadcastDescriptor"></a><h3>struct GstMpegTsDataBroadcastDescriptor</h3>
-<pre class="programlisting">struct GstMpegTsDataBroadcastDescriptor {
+<a name="GstMpegtsDataBroadcastDescriptor"></a><h3>struct GstMpegtsDataBroadcastDescriptor</h3>
+<pre class="programlisting">struct GstMpegtsDataBroadcastDescriptor {
   guint16     data_broadcast_id;
   guint8      component_tag;
+  guint8      length;
   guint8      *selector_bytes;
-  gchar       language_code[4];
+  gchar       *language_code;
   gchar       *text;
 };
 </pre>
@@ -3503,28 +3618,33 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsDataBroadcastDescriptor.data-broadcast-id"></a>data_broadcast_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsDataBroadcastDescriptor.data-broadcast-id"></a>data_broadcast_id</code></em>;</p></td>
 <td class="struct_member_description"><p>the data broadcast id</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsDataBroadcastDescriptor.component-tag"></a>component_tag</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsDataBroadcastDescriptor.component-tag"></a>component_tag</code></em>;</p></td>
 <td class="struct_member_description"><p>the component tag</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> *<em class="structfield"><code><a name="GstMpegTsDataBroadcastDescriptor.selector-bytes"></a>selector_bytes</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsDataBroadcastDescriptor.length"></a>length</code></em>;</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">guint8</span> *<em class="structfield"><code><a name="GstMpegtsDataBroadcastDescriptor.selector-bytes"></a>selector_bytes</code></em>;</p></td>
 <td class="struct_member_description"><p>the selector byte field</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegTsDataBroadcastDescriptor.language-code"></a>language_code</code></em>[4];</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDataBroadcastDescriptor.language-code"></a>language_code</code></em>;</p></td>
 <td class="struct_member_description"><p>language of <em class="parameter"><code>text</code></em>
 </p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsDataBroadcastDescriptor.text"></a>text</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDataBroadcastDescriptor.text"></a>text</code></em>;</p></td>
 <td class="struct_member_description"><p>description of data broadcast</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -3534,23 +3654,84 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBParentalRatingItem"></a><h3>struct GstMpegTsDVBParentalRatingItem</h3>
-<pre class="programlisting">struct GstMpegTsDVBParentalRatingItem {
-  gchar  country_code[4];
+<a name="GstMpegtsDVBScramblingModeType"></a><h3>enum GstMpegtsDVBScramblingModeType</h3>
+<div class="refsect3">
+<a name="id-1.2.5.9.9.31.3"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-RESERVED:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_RESERVED</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-CSA1:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA1</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-CSA2:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA2</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-CSA3-STANDARD:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_STANDARD</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-CSA3-MINIMAL-ENHANCED:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_MINIMAL_ENHANCED</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-CSA3-FULL-ENHANCED:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_FULL_ENHANCED</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-CISSA:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_CISSA</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-ATIS-0:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_0</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-MPEGTS-DVB-SCRAMBLING-MODE-ATIS-F:CAPS"></a>GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_F</p></td>
+<td> </td>
+<td> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsDVBParentalRatingItem"></a><h3>struct GstMpegtsDVBParentalRatingItem</h3>
+<pre class="programlisting">struct GstMpegtsDVBParentalRatingItem {
+  gchar  *country_code;
   guint8 rating;
 };
 </pre>
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDVBServiceListItem"></a><h3>struct GstMpegTsDVBServiceListItem</h3>
-<pre class="programlisting">struct GstMpegTsDVBServiceListItem {
+<a name="GstMpegtsDVBServiceListItem"></a><h3>struct GstMpegtsDVBServiceListItem</h3>
+<pre class="programlisting">struct GstMpegtsDVBServiceListItem {
   guint16                 service_id;
-  GstMpegTsDVBServiceType type;
+  GstMpegtsDVBServiceType type;
 };
 </pre>
 <div class="refsect3">
-<a name="id-1.2.5.9.9.32.4"></a><h4>Members</h4>
+<a name="id-1.2.5.9.9.33.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -3559,12 +3740,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsDVBServiceListItem.service-id"></a>service_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsDVBServiceListItem.service-id"></a>service_id</code></em>;</p></td>
 <td class="struct_member_description"><p>the id of a service</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType"><span class="type">GstMpegTsDVBServiceType</span></a> <em class="structfield"><code><a name="GstMpegTsDVBServiceListItem.type"></a>type</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType"><span class="type">GstMpegtsDVBServiceType</span></a> <em class="structfield"><code><a name="GstMpegtsDVBServiceListItem.type"></a>type</code></em>;</p></td>
 <td class="struct_member_description"><p>the type of a service</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -3574,46 +3755,14 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDvbMultilingualNetworkNameItem"></a><h3>struct GstMpegTsDvbMultilingualNetworkNameItem</h3>
-<pre class="programlisting">struct GstMpegTsDvbMultilingualNetworkNameItem {
-  gchar language_code[4];
+<a name="GstMpegtsDvbMultilingualNetworkNameItem"></a><h3>struct GstMpegtsDvbMultilingualNetworkNameItem</h3>
+<pre class="programlisting">struct GstMpegtsDvbMultilingualNetworkNameItem {
+  gchar *language_code;
   gchar *network_name;
 };
 </pre>
 <p>a multilingual network name entry</p>
 <div class="refsect3">
-<a name="id-1.2.5.9.9.33.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegTsDvbMultilingualNetworkNameItem.language-code"></a>language_code</code></em>[4];</p></td>
-<td class="struct_member_description"><p>the ISO 639 language code</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsDvbMultilingualNetworkNameItem.network-name"></a>network_name</code></em>;</p></td>
-<td class="struct_member_description"><p>the network name</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GstMpegTsDvbMultilingualBouquetNameItem"></a><h3>struct GstMpegTsDvbMultilingualBouquetNameItem</h3>
-<pre class="programlisting">struct GstMpegTsDvbMultilingualBouquetNameItem {
-  gchar language_code[4];
-  gchar *bouquet_name;
-};
-</pre>
-<p>a multilingual bouquet name entry</p>
-<div class="refsect3">
 <a name="id-1.2.5.9.9.34.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -3623,13 +3772,13 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegTsDvbMultilingualBouquetNameItem.language-code"></a>language_code</code></em>[4];</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualNetworkNameItem.language-code"></a>language_code</code></em>;</p></td>
 <td class="struct_member_description"><p>the ISO 639 language code</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsDvbMultilingualBouquetNameItem.bouquet-name"></a>bouquet_name</code></em>;</p></td>
-<td class="struct_member_description"><p>the bouquet name</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualNetworkNameItem.network-name"></a>network_name</code></em>;</p></td>
+<td class="struct_member_description"><p>the network name</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
@@ -3638,14 +3787,13 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDvbMultilingualServiceNameItem"></a><h3>struct GstMpegTsDvbMultilingualServiceNameItem</h3>
-<pre class="programlisting">struct GstMpegTsDvbMultilingualServiceNameItem {
-  gchar language_code[4];
-  gchar *provider_name;
-  gchar *service_name;
+<a name="GstMpegtsDvbMultilingualBouquetNameItem"></a><h3>struct GstMpegtsDvbMultilingualBouquetNameItem</h3>
+<pre class="programlisting">struct GstMpegtsDvbMultilingualBouquetNameItem {
+  gchar *language_code;
+  gchar *bouquet_name;
 };
 </pre>
-<p>a multilingual service name entry</p>
+<p>a multilingual bouquet name entry</p>
 <div class="refsect3">
 <a name="id-1.2.5.9.9.35.5"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -3656,17 +3804,50 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegTsDvbMultilingualServiceNameItem.language-code"></a>language_code</code></em>[4];</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualBouquetNameItem.language-code"></a>language_code</code></em>;</p></td>
 <td class="struct_member_description"><p>the ISO 639 language code</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsDvbMultilingualServiceNameItem.provider-name"></a>provider_name</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualBouquetNameItem.bouquet-name"></a>bouquet_name</code></em>;</p></td>
+<td class="struct_member_description"><p>the bouquet name</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstMpegtsDvbMultilingualServiceNameItem"></a><h3>struct GstMpegtsDvbMultilingualServiceNameItem</h3>
+<pre class="programlisting">struct GstMpegtsDvbMultilingualServiceNameItem {
+  gchar *language_code;
+  gchar *provider_name;
+  gchar *service_name;
+};
+</pre>
+<p>a multilingual service name entry</p>
+<div class="refsect3">
+<a name="id-1.2.5.9.9.36.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualServiceNameItem.language-code"></a>language_code</code></em>;</p></td>
+<td class="struct_member_description"><p>the ISO 639 language code</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualServiceNameItem.provider-name"></a>provider_name</code></em>;</p></td>
 <td class="struct_member_description"><p>the provider name</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsDvbMultilingualServiceNameItem.service-name"></a>service_name</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualServiceNameItem.service-name"></a>service_name</code></em>;</p></td>
 <td class="struct_member_description"><p>the service name</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
@@ -3676,14 +3857,14 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsDvbMultilingualComponentItem"></a><h3>struct GstMpegTsDvbMultilingualComponentItem</h3>
-<pre class="programlisting">struct GstMpegTsDvbMultilingualComponentItem {
-  gchar language_code[4];
+<a name="GstMpegtsDvbMultilingualComponentItem"></a><h3>struct GstMpegtsDvbMultilingualComponentItem</h3>
+<pre class="programlisting">struct GstMpegtsDvbMultilingualComponentItem {
+  gchar *language_code;
   gchar *description;
 };
 </pre>
 <div class="refsect3">
-<a name="id-1.2.5.9.9.36.4"></a><h4>Members</h4>
+<a name="id-1.2.5.9.9.37.4"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="300px" class="struct_members_name">
@@ -3692,12 +3873,12 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> <em class="structfield"><code><a name="GstMpegTsDvbMultilingualComponentItem.language-code"></a>language_code</code></em>[4];</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualComponentItem.language-code"></a>language_code</code></em>;</p></td>
 <td class="struct_member_description"><p>the ISO 639 language code</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegTsDvbMultilingualComponentItem.description"></a>description</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstMpegtsDvbMultilingualComponentItem.description"></a>description</code></em>;</p></td>
 <td class="struct_member_description"><p>the component description</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
diff --git a/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html b/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html
index f54d794..619f6b9 100644
--- a/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html
+++ b/docs/libs/html/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html
@@ -41,7 +41,7 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="returnvalue">GstMpegTsNIT</span></a> *
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="returnvalue">GstMpegtsNIT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-nit" title="gst_mpegts_section_get_nit ()">gst_mpegts_section_get_nit</a> <span class="c_punctuation">()</span>
@@ -49,7 +49,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="returnvalue">GstMpegTsNIT</span></a> *
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="returnvalue">GstMpegtsNIT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-new" title="gst_mpegts_nit_new ()">gst_mpegts_nit_new</a> <span class="c_punctuation">()</span>
@@ -57,7 +57,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream" title="struct GstMpegTsNITStream"><span class="returnvalue">GstMpegTsNITStream</span></a> *
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream" title="struct GstMpegtsNITStream"><span class="returnvalue">GstMpegtsNITStream</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-stream-new" title="gst_mpegts_nit_stream_new ()">gst_mpegts_nit_stream_new</a> <span class="c_punctuation">()</span>
@@ -65,14 +65,21 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-from-nit" title="gst_mpegts_section_from_nit ()">gst_mpegts_section_from_nit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="returnvalue">GstMpegTsSDT</span></a> *
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT" title="struct GstMpegtsBAT"><span class="returnvalue">GstMpegtsBAT</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-bat" title="gst_mpegts_section_get_bat ()">gst_mpegts_section_get_bat</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="returnvalue">GstMpegtsSDT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-sdt" title="gst_mpegts_section_get_sdt ()">gst_mpegts_section_get_sdt</a> <span class="c_punctuation">()</span>
@@ -80,7 +87,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="returnvalue">GstMpegTsSDT</span></a> *
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="returnvalue">GstMpegtsSDT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-sdt-new" title="gst_mpegts_sdt_new ()">gst_mpegts_sdt_new</a> <span class="c_punctuation">()</span>
@@ -88,7 +95,7 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService" title="struct GstMpegTsSDTService"><span class="returnvalue">GstMpegTsSDTService</span></a> *
+<a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService" title="struct GstMpegtsSDTService"><span class="returnvalue">GstMpegtsSDTService</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-sdt-service-new" title="gst_mpegts_sdt_service_new ()">gst_mpegts_sdt_service_new</a> <span class="c_punctuation">()</span>
@@ -96,14 +103,14 @@
 </tr>
 <tr>
 <td class="function_type">
-<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
+<a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-from-sdt" title="gst_mpegts_section_from_sdt ()">gst_mpegts_section_from_sdt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT" title="struct GstMpegTsEIT"><span class="returnvalue">GstMpegTsEIT</span></a> *
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT" title="struct GstMpegtsEIT"><span class="returnvalue">GstMpegtsEIT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-eit" title="gst_mpegts_section_get_eit ()">gst_mpegts_section_get_eit</a> <span class="c_punctuation">()</span>
@@ -118,7 +125,7 @@
 </td>
 </tr>
 <tr>
-<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT" title="struct GstMpegTsTOT"><span class="returnvalue">GstMpegTsTOT</span></a> *
+<td class="function_type">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT" title="struct GstMpegtsTOT"><span class="returnvalue">GstMpegtsTOT</span></a> *
 </td>
 <td class="function_name">
 <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-tot" title="gst_mpegts_section_get_tot ()">gst_mpegts_section_get_tot</a> <span class="c_punctuation">()</span>
@@ -137,47 +144,47 @@
 <tbody>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSectionDVBTableID" title="enum GstMpegTsSectionDVBTableID">GstMpegTsSectionDVBTableID</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSectionDVBTableID" title="enum GstMpegtsSectionDVBTableID">GstMpegtsSectionDVBTableID</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT">GstMpegTsNIT</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT">GstMpegtsNIT</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream" title="struct GstMpegTsNITStream">GstMpegTsNITStream</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream" title="struct GstMpegtsNITStream">GstMpegtsNITStream</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBAT" title="struct GstMpegTsBAT">GstMpegTsBAT</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT" title="struct GstMpegtsBAT">GstMpegtsBAT</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBATStream" title="struct GstMpegTsBATStream">GstMpegTsBATStream</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBATStream" title="struct GstMpegtsBATStream">GstMpegtsBATStream</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT">GstMpegTsSDT</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT">GstMpegtsSDT</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService" title="struct GstMpegTsSDTService">GstMpegTsSDTService</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService" title="struct GstMpegtsSDTService">GstMpegtsSDTService</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT" title="struct GstMpegTsEIT">GstMpegTsEIT</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT" title="struct GstMpegtsEIT">GstMpegtsEIT</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEITEvent" title="struct GstMpegTsEITEvent">GstMpegTsEITEvent</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEITEvent" title="struct GstMpegtsEITEvent">GstMpegtsEITEvent</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus" title="enum GstMpegTsRunningStatus">GstMpegTsRunningStatus</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus" title="enum GstMpegtsRunningStatus">GstMpegtsRunningStatus</a></td>
 </tr>
 <tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT" title="struct GstMpegTsTOT">GstMpegTsTOT</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT" title="struct GstMpegtsTOT">GstMpegtsTOT</a></td>
 </tr>
 </tbody>
 </table></div>
@@ -185,7 +192,7 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.object-hierarchy"></a><h2>Object Hierarchy</h2>
 <pre class="screen">    GEnum
-    <span class="lineart">╰──</span> GstMpegTsRunningStatus
+    <span class="lineart">╰──</span> GstMpegtsRunningStatus
 </pre>
 </div>
 <div class="refsect1">
@@ -200,9 +207,9 @@
 <a name="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.functions_details"></a><h2>Functions</h2>
 <div class="refsect2">
 <a name="gst-mpegts-section-get-nit"></a><h3>gst_mpegts_section_get_nit ()</h3>
-<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="returnvalue">GstMpegTsNIT</span></a> *
-gst_mpegts_section_get_nit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="type">GstMpegTsNIT</span></a> contained in the <em class="parameter"><code>section</code></em>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="returnvalue">GstMpegtsNIT</span></a> *
+gst_mpegts_section_get_nit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="type">GstMpegtsNIT</span></a> contained in the <em class="parameter"><code>section</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.2.5"></a><h4>Parameters</h4>
@@ -214,14 +221,14 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-NIT:CAPS"><code class="literal">GST_MPEGTS_SECTION_NIT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-NIT:CAPS"><code class="literal">GST_MPEGTS_SECTION_NIT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.2.6"></a><h4>Returns</h4>
-<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="type">GstMpegTsNIT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="type">GstMpegtsNIT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened.</p>
 <p></p>
 </div>
@@ -229,35 +236,35 @@
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-nit-new"></a><h3>gst_mpegts_nit_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="returnvalue">GstMpegTsNIT</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="returnvalue">GstMpegtsNIT</span></a> *
 gst_mpegts_nit_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="type">GstMpegTsNIT</span></a>.</p>
+<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="type">GstMpegtsNIT</span></a>.</p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.3.5"></a><h4>Returns</h4>
-<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="type">GstMpegTsNIT</span></a>. </p>
+<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="type">GstMpegtsNIT</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-nit-stream-new"></a><h3>gst_mpegts_nit_stream_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream" title="struct GstMpegTsNITStream"><span class="returnvalue">GstMpegTsNITStream</span></a> *
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream" title="struct GstMpegtsNITStream"><span class="returnvalue">GstMpegtsNITStream</span></a> *
 gst_mpegts_nit_stream_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream" title="struct GstMpegTsNITStream"><span class="type">GstMpegTsNITStream</span></a></p>
+<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream" title="struct GstMpegtsNITStream"><span class="type">GstMpegtsNITStream</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.4.5"></a><h4>Returns</h4>
-<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream" title="struct GstMpegTsNITStream"><span class="type">GstMpegTsNITStream</span></a>. </p>
+<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream" title="struct GstMpegtsNITStream"><span class="type">GstMpegtsNITStream</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="gst-mpegts-section-from-nit"></a><h3>gst_mpegts_section_from_nit ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
-gst_mpegts_section_from_nit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="type">GstMpegTsNIT</span></a> *nit</code></em>);</pre>
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
+gst_mpegts_section_from_nit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="type">GstMpegtsNIT</span></a> *nit</code></em>);</pre>
 <p>Ownership of <em class="parameter"><code>nit</code></em>
  is taken. The data in <em class="parameter"><code>nit</code></em>
- is managed by the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a></p>
+ is managed by the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.5.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -268,23 +275,23 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>nit</p></td>
-<td class="parameter_description"><p> a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT" title="struct GstMpegTsNIT"><span class="type">GstMpegTsNIT</span></a> to create the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> from. </p></td>
+<td class="parameter_description"><p> a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT" title="struct GstMpegtsNIT"><span class="type">GstMpegtsNIT</span></a> to create the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> from. </p></td>
 <td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.5.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>. </p>
+<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-section-get-sdt"></a><h3>gst_mpegts_section_get_sdt ()</h3>
-<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="returnvalue">GstMpegTsSDT</span></a> *
-gst_mpegts_section_get_sdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="type">GstMpegTsSDT</span></a> contained in the <em class="parameter"><code>section</code></em>
+<a name="gst-mpegts-section-get-bat"></a><h3>gst_mpegts_section_get_bat ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT" title="struct GstMpegtsBAT"><span class="returnvalue">GstMpegtsBAT</span></a> *
+gst_mpegts_section_get_bat (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT" title="struct GstMpegtsBAT"><span class="type">GstMpegtsBAT</span></a> contained in the <em class="parameter"><code>section</code></em>
 .</p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.6.5"></a><h4>Parameters</h4>
@@ -296,52 +303,27 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-SDT:CAPS"><code class="literal">GST_MPEGTS_SECTION_SDT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-BAT:CAPS"><code class="literal">GST_MPEGTS_SECTION_BAT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.6.6"></a><h4>Returns</h4>
-<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="type">GstMpegTsSDT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT" title="struct GstMpegtsBAT"><span class="type">GstMpegtsBAT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-sdt-new"></a><h3>gst_mpegts_sdt_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="returnvalue">GstMpegTsSDT</span></a> *
-gst_mpegts_sdt_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="type">GstMpegTsSDT</span></a>.</p>
+<a name="gst-mpegts-section-get-sdt"></a><h3>gst_mpegts_section_get_sdt ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="returnvalue">GstMpegtsSDT</span></a> *
+gst_mpegts_section_get_sdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="type">GstMpegtsSDT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
 <div class="refsect3">
-<a name="id-1.2.5.7.8.7.5"></a><h4>Returns</h4>
-<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="type">GstMpegTsSDT</span></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-mpegts-sdt-service-new"></a><h3>gst_mpegts_sdt_service_new ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService" title="struct GstMpegTsSDTService"><span class="returnvalue">GstMpegTsSDTService</span></a> *
-gst_mpegts_sdt_service_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService" title="struct GstMpegTsSDTService"><span class="type">GstMpegTsSDTService</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.2.5.7.8.8.5"></a><h4>Returns</h4>
-<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService" title="struct GstMpegTsSDTService"><span class="type">GstMpegTsSDTService</span></a>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gst-mpegts-section-from-sdt"></a><h3>gst_mpegts_section_from_sdt ()</h3>
-<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="returnvalue">GstMpegTsSection</span></a> *
-gst_mpegts_section_from_sdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="type">GstMpegTsSDT</span></a> *sdt</code></em>);</pre>
-<p>Ownership of <em class="parameter"><code>sdt</code></em>
- is taken. The data in <em class="parameter"><code>sdt</code></em>
- is managed by the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a></p>
-<div class="refsect3">
-<a name="id-1.2.5.7.8.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.5.7.8.7.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -349,25 +331,51 @@
 <col width="200px" class="parameters_annotations">
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>sdt</p></td>
-<td class="parameter_description"><p> a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT" title="struct GstMpegTsSDT"><span class="type">GstMpegTsSDT</span></a> to create the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> from. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-SDT:CAPS"><code class="literal">GST_MPEGTS_SECTION_SDT</code></a></p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.5.7.8.9.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a>. </p>
+<a name="id-1.2.5.7.8.7.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="type">GstMpegtsSDT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-sdt-new"></a><h3>gst_mpegts_sdt_new ()</h3>
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="returnvalue">GstMpegtsSDT</span></a> *
+gst_mpegts_sdt_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="type">GstMpegtsSDT</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.2.5.7.8.8.5"></a><h4>Returns</h4>
+<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="type">GstMpegtsSDT</span></a>. </p>
 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-section-get-eit"></a><h3>gst_mpegts_section_get_eit ()</h3>
-<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT" title="struct GstMpegTsEIT"><span class="returnvalue">GstMpegTsEIT</span></a> *
-gst_mpegts_section_get_eit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT" title="struct GstMpegTsEIT"><span class="type">GstMpegTsEIT</span></a> contained in the <em class="parameter"><code>section</code></em>
-.</p>
+<a name="gst-mpegts-sdt-service-new"></a><h3>gst_mpegts_sdt_service_new ()</h3>
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService" title="struct GstMpegtsSDTService"><span class="returnvalue">GstMpegtsSDTService</span></a> *
+gst_mpegts_sdt_service_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Allocates and initializes a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService" title="struct GstMpegtsSDTService"><span class="type">GstMpegtsSDTService</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.2.5.7.8.9.5"></a><h4>Returns</h4>
+<p> A newly allocated <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService" title="struct GstMpegtsSDTService"><span class="type">GstMpegtsSDTService</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-from-sdt"></a><h3>gst_mpegts_section_from_sdt ()</h3>
+<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="returnvalue">GstMpegtsSection</span></a> *
+gst_mpegts_section_from_sdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="type">GstMpegtsSDT</span></a> *sdt</code></em>);</pre>
+<p>Ownership of <em class="parameter"><code>sdt</code></em>
+ is taken. The data in <em class="parameter"><code>sdt</code></em>
+ is managed by the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.10.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -377,25 +385,25 @@
 <col width="200px" class="parameters_annotations">
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-EIT:CAPS"><code class="literal">GST_MPEGTS_SECTION_EIT</code></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_name"><p>sdt</p></td>
+<td class="parameter_description"><p> a <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT" title="struct GstMpegtsSDT"><span class="type">GstMpegtsSDT</span></a> to create the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> from. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.10.6"></a><h4>Returns</h4>
-<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT" title="struct GstMpegTsEIT"><span class="type">GstMpegTsEIT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
-happened.</p>
-<p></p>
+<p> the <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-section-get-tdt"></a><h3>gst_mpegts_section_get_tdt ()</h3>
-<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
-gst_mpegts_section_get_tdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> of the TDT</p>
+<a name="gst-mpegts-section-get-eit"></a><h3>gst_mpegts_section_get_eit ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT" title="struct GstMpegtsEIT"><span class="returnvalue">GstMpegtsEIT</span></a> *
+gst_mpegts_section_get_eit (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT" title="struct GstMpegtsEIT"><span class="type">GstMpegtsEIT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.11.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -406,25 +414,24 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-TDT:CAPS"><code class="literal">GST_MPEGTS_SECTION_TDT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-EIT:CAPS"><code class="literal">GST_MPEGTS_SECTION_EIT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.11.6"></a><h4>Returns</h4>
-<p> The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
-if an error happened. Release with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#gst-date-time-unref"><span class="type">gst_date_time_unref</span></a> when done.</p>
+<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT" title="struct GstMpegtsEIT"><span class="type">GstMpegtsEIT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+happened.</p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="gst-mpegts-section-get-tot"></a><h3>gst_mpegts_section_get_tot ()</h3>
-<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT" title="struct GstMpegTsTOT"><span class="returnvalue">GstMpegTsTOT</span></a> *
-gst_mpegts_section_get_tot (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> *section</code></em>);</pre>
-<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT" title="struct GstMpegTsTOT"><span class="type">GstMpegTsTOT</span></a> contained in the <em class="parameter"><code>section</code></em>
-.</p>
+<a name="gst-mpegts-section-get-tdt"></a><h3>gst_mpegts_section_get_tdt ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="returnvalue">GstDateTime</span></a> *
+gst_mpegts_section_get_tdt (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> of the TDT</p>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.12.5"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -435,14 +442,43 @@
 </colgroup>
 <tbody><tr>
 <td class="parameter_name"><p>section</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-TOT:CAPS"><code class="literal">GST_MPEGTS_SECTION_TOT</code></a></p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-TDT:CAPS"><code class="literal">GST_MPEGTS_SECTION_TDT</code></a></p></td>
 <td class="parameter_annotations"> </td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect3">
 <a name="id-1.2.5.7.8.12.6"></a><h4>Returns</h4>
-<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT" title="struct GstMpegTsTOT"><span class="type">GstMpegTsTOT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
+<p> The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+if an error happened. Release with <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#gst-date-time-unref"><span class="type">gst_date_time_unref</span></a> when done.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-mpegts-section-get-tot"></a><h3>gst_mpegts_section_get_tot ()</h3>
+<pre class="programlisting">const <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT" title="struct GstMpegtsTOT"><span class="returnvalue">GstMpegtsTOT</span></a> *
+gst_mpegts_section_get_tot (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> *section</code></em>);</pre>
+<p>Returns the <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT" title="struct GstMpegtsTOT"><span class="type">GstMpegtsTOT</span></a> contained in the <em class="parameter"><code>section</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.5.7.8.13.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>section</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> of type <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GST-MPEGTS-SECTION-TOT:CAPS"><code class="literal">GST_MPEGTS_SECTION_TOT</code></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.5.7.8.13.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT" title="struct GstMpegtsTOT"><span class="type">GstMpegtsTOT</span></a> contained in the section, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error
 happened.</p>
 <p></p>
 </div>
@@ -451,10 +487,10 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsSectionDVBTableID"></a><h3>enum GstMpegTsSectionDVBTableID</h3>
-<p>Values for a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection"><span class="type">GstMpegTsSection</span></a> table_id.</p>
+<a name="GstMpegtsSectionDVBTableID"></a><h3>enum GstMpegtsSectionDVBTableID</h3>
+<p>Values for a <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection"><span class="type">GstMpegtsSection</span></a> table_id.</p>
 <p>These are the registered DVB table_id variants.</p>
-<p>see also: <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID" title="enum GstMpegTsSectionTableID"><span class="type">GstMpegTsSectionTableID</span></a></p>
+<p>see also: <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID" title="enum GstMpegtsSectionTableID"><span class="type">GstMpegtsSectionTableID</span></a></p>
 <div class="refsect3">
 <a name="id-1.2.5.7.9.2.6"></a><h4>Members</h4>
 <div class="informaltable"><table width="100%" border="0">
@@ -660,8 +696,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsNIT"></a><h3>struct GstMpegTsNIT</h3>
-<pre class="programlisting">struct GstMpegTsNIT {
+<a name="GstMpegtsNIT"></a><h3>struct GstMpegtsNIT</h3>
+<pre class="programlisting">struct GstMpegtsNIT {
   gboolean   actual_network;
   guint16    network_id;
 
@@ -681,24 +717,24 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsNIT.actual-network"></a>actual_network</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsNIT.actual-network"></a>actual_network</code></em>;</p></td>
 <td class="struct_member_description"><p>Whether this NIT corresponds to the actual stream</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsNIT.network-id"></a>network_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsNIT.network-id"></a>network_id</code></em>;</p></td>
 <td class="struct_member_description"><p>ID of the network that this NIT describes</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsNIT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsNIT.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p> the global descriptors. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsNIT.streams"></a>streams</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsNIT.streams"></a>streams</code></em>;</p></td>
 <td class="struct_member_description"><p> the streams. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsNITStream]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsNITStream]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -706,8 +742,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsNITStream"></a><h3>struct GstMpegTsNITStream</h3>
-<pre class="programlisting">struct GstMpegTsNITStream {
+<a name="GstMpegtsNITStream"></a><h3>struct GstMpegtsNITStream</h3>
+<pre class="programlisting">struct GstMpegtsNITStream {
   guint16  transport_stream_id;
   guint16  original_network_id;
 
@@ -724,19 +760,19 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsNITStream.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsNITStream.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsNITStream.original-network-id"></a>original_network_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsNITStream.original-network-id"></a>original_network_id</code></em>;</p></td>
 <td class="struct_member_description"> </td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsNITStream.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsNITStream.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -744,9 +780,9 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsBAT"></a><h3>struct GstMpegTsBAT</h3>
-<pre class="programlisting">struct GstMpegTsBAT {
-  GPtrArray     *descriptors;
+<a name="GstMpegtsBAT"></a><h3>struct GstMpegtsBAT</h3>
+<pre class="programlisting">struct GstMpegtsBAT {
+  GPtrArray  *descriptors;
 
   GPtrArray  *streams;
 };
@@ -762,14 +798,14 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsBAT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsBAT.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsBAT.streams"></a>streams</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsBAT.streams"></a>streams</code></em>;</p></td>
 <td class="struct_member_description"><p>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsBATStream]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsBATStream]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -777,8 +813,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsBATStream"></a><h3>struct GstMpegTsBATStream</h3>
-<pre class="programlisting">struct GstMpegTsBATStream {
+<a name="GstMpegtsBATStream"></a><h3>struct GstMpegtsBATStream</h3>
+<pre class="programlisting">struct GstMpegtsBATStream {
   guint16   transport_stream_id;
   guint16   original_network_id;
 
@@ -788,8 +824,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSDT"></a><h3>struct GstMpegTsSDT</h3>
-<pre class="programlisting">struct GstMpegTsSDT {
+<a name="GstMpegtsSDT"></a><h3>struct GstMpegtsSDT</h3>
+<pre class="programlisting">struct GstMpegtsSDT {
   guint16    original_network_id;
   gboolean   actual_ts;
   guint16    transport_stream_id;
@@ -808,24 +844,24 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsSDT.original-network-id"></a>original_network_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsSDT.original-network-id"></a>original_network_id</code></em>;</p></td>
 <td class="struct_member_description"><p>Network ID of the originating delivery system</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSDT.actual-ts"></a>actual_ts</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSDT.actual-ts"></a>actual_ts</code></em>;</p></td>
 <td class="struct_member_description"><p>True if the table describes this transport stream</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsSDT.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsSDT.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
 <td class="struct_member_description"><p>ID of this transport stream</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsSDT.services"></a>services</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsSDT.services"></a>services</code></em>;</p></td>
 <td class="struct_member_description"><p> List of services. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsSDTService]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsSDTService]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -833,13 +869,13 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsSDTService"></a><h3>struct GstMpegTsSDTService</h3>
-<pre class="programlisting">struct GstMpegTsSDTService {
+<a name="GstMpegtsSDTService"></a><h3>struct GstMpegtsSDTService</h3>
+<pre class="programlisting">struct GstMpegtsSDTService {
   guint16    service_id;
 
   gboolean   EIT_schedule_flag;
   gboolean   EIT_present_following_flag;
-  GstMpegTsRunningStatus running_status;
+  GstMpegtsRunningStatus running_status;
   gboolean   free_CA_mode;
 
   GPtrArray    *descriptors;
@@ -855,34 +891,34 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsSDTService.service-id"></a>service_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsSDTService.service-id"></a>service_id</code></em>;</p></td>
 <td class="struct_member_description"><p>The program number this table belongs to</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSDTService.EIT-schedule-flag"></a>EIT_schedule_flag</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSDTService.EIT-schedule-flag"></a>EIT_schedule_flag</code></em>;</p></td>
 <td class="struct_member_description"><p>EIT schedule information is present in this transport stream</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSDTService.EIT-present-following-flag"></a>EIT_present_following_flag</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSDTService.EIT-present-following-flag"></a>EIT_present_following_flag</code></em>;</p></td>
 <td class="struct_member_description"><p>EIT present/following information is present in this transport stream</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus" title="enum GstMpegTsRunningStatus"><span class="type">GstMpegTsRunningStatus</span></a> <em class="structfield"><code><a name="GstMpegTsSDTService.running-status"></a>running_status</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus" title="enum GstMpegtsRunningStatus"><span class="type">GstMpegtsRunningStatus</span></a> <em class="structfield"><code><a name="GstMpegtsSDTService.running-status"></a>running_status</code></em>;</p></td>
 <td class="struct_member_description"><p>Status of this service</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsSDTService.free-CA-mode"></a>free_CA_mode</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsSDTService.free-CA-mode"></a>free_CA_mode</code></em>;</p></td>
 <td class="struct_member_description"><p>True if one or more streams is controlled by a CA system</p></td>
 <td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsSDTService.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsSDTService.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p> List of descriptors. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -890,8 +926,8 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsEIT"></a><h3>struct GstMpegTsEIT</h3>
-<pre class="programlisting">struct GstMpegTsEIT {
+<a name="GstMpegtsEIT"></a><h3>struct GstMpegtsEIT</h3>
+<pre class="programlisting">struct GstMpegtsEIT {
   guint16        transport_stream_id;
   guint16        original_network_id;
   guint8         segment_last_section_number;
@@ -914,39 +950,39 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsEIT.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsEIT.transport-stream-id"></a>transport_stream_id</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsEIT.original-network-id"></a>original_network_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsEIT.original-network-id"></a>original_network_id</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsEIT.segment-last-section-number"></a>segment_last_section_number</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsEIT.segment-last-section-number"></a>segment_last_section_number</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegTsEIT.last-table-id"></a>last_table_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstMpegtsEIT.last-table-id"></a>last_table_id</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsEIT.actual-stream"></a>actual_stream</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsEIT.actual-stream"></a>actual_stream</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsEIT.present-following"></a>present_following</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsEIT.present-following"></a>present_following</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsEIT.events"></a>events</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsEIT.events"></a>events</code></em>;</p></td>
 <td class="struct_member_description"><p> List of events. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsEITEvent]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsEITEvent]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -954,20 +990,20 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsEITEvent"></a><h3>struct GstMpegTsEITEvent</h3>
-<pre class="programlisting">struct GstMpegTsEITEvent {
+<a name="GstMpegtsEITEvent"></a><h3>struct GstMpegtsEITEvent</h3>
+<pre class="programlisting">struct GstMpegtsEITEvent {
   guint16      event_id;
 
   GstDateTime *start_time;
   guint32      duration;
 
-  GstMpegTsRunningStatus running_status;
+  GstMpegtsRunningStatus running_status;
   gboolean     free_CA_mode;
 
-  GPtrArray      *descriptors;
+  GPtrArray   *descriptors;
 };
 </pre>
-<p>Event from a <em class="parameter"><code>GstMpegTsEIT</code></em>
+<p>Event from a <em class="parameter"><code>GstMpegtsEIT</code></em>
 </p>
 <div class="refsect3">
 <a name="id-1.2.5.7.9.10.5"></a><h4>Members</h4>
@@ -979,34 +1015,34 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegTsEITEvent.event-id"></a>event_id</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstMpegtsEITEvent.event-id"></a>event_id</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> *<em class="structfield"><code><a name="GstMpegTsEITEvent.start-time"></a>start_time</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> *<em class="structfield"><code><a name="GstMpegtsEITEvent.start-time"></a>start_time</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegTsEITEvent.duration"></a>duration</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GstMpegtsEITEvent.duration"></a>duration</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus" title="enum GstMpegTsRunningStatus"><span class="type">GstMpegTsRunningStatus</span></a> <em class="structfield"><code><a name="GstMpegTsEITEvent.running-status"></a>running_status</code></em>;</p></td>
+<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus" title="enum GstMpegtsRunningStatus"><span class="type">GstMpegtsRunningStatus</span></a> <em class="structfield"><code><a name="GstMpegtsEITEvent.running-status"></a>running_status</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegTsEITEvent.free-CA-mode"></a>free_CA_mode</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstMpegtsEITEvent.free-CA-mode"></a>free_CA_mode</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsEITEvent.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsEITEvent.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p> List of descriptors. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 </tbody>
 </table></div>
@@ -1014,7 +1050,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsRunningStatus"></a><h3>enum GstMpegTsRunningStatus</h3>
+<a name="GstMpegtsRunningStatus"></a><h3>enum GstMpegtsRunningStatus</h3>
 <p>Running status of a service.</p>
 <p>Corresponds to table 6 of ETSI EN 300 468 (v1.13.0)</p>
 <div class="refsect3">
@@ -1062,11 +1098,11 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="GstMpegTsTOT"></a><h3>struct GstMpegTsTOT</h3>
-<pre class="programlisting">struct GstMpegTsTOT {
+<a name="GstMpegtsTOT"></a><h3>struct GstMpegtsTOT</h3>
+<pre class="programlisting">struct GstMpegtsTOT {
   GstDateTime   *utc_time;
 
-  GPtrArray        *descriptors;
+  GPtrArray     *descriptors;
 };
 </pre>
 <p>Time Offset Table (EN 300 468)</p>
@@ -1080,14 +1116,14 @@
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> *<em class="structfield"><code><a name="GstMpegTsTOT.utc-time"></a>utc_time</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDateTime.html#GstDateTime"><span class="type">GstDateTime</span></a> *<em class="structfield"><code><a name="GstMpegtsTOT.utc-time"></a>utc_time</code></em>;</p></td>
 <td> </td>
 <td> </td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegTsTOT.descriptors"></a>descriptors</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *<em class="structfield"><code><a name="GstMpegtsTOT.descriptors"></a>descriptors</code></em>;</p></td>
 <td class="struct_member_description"><p> List of descriptors. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegTsDescriptor]</span></td>
+<td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstMpegtsDescriptor]</span></td>
 </tr>
 </tbody>
 </table></div>
diff --git a/docs/libs/html/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html b/docs/libs/html/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html
index 279228d..4e2eba2 100644
--- a/docs/libs/html/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html
+++ b/docs/libs/html/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html
@@ -41,7 +41,7 @@
 </colgroup>
 <tbody><tr>
 <td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegTsISDBDescriptorType" title="enum GstMpegTsISDBDescriptorType">GstMpegTsISDBDescriptorType</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegtsISDBDescriptorType" title="enum GstMpegtsISDBDescriptorType">GstMpegtsISDBDescriptorType</a></td>
 </tr></tbody>
 </table></div>
 </div>
@@ -64,7 +64,7 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstMpegTsISDBDescriptorType"></a><h3>enum GstMpegTsISDBDescriptorType</h3>
+<a name="GstMpegtsISDBDescriptorType"></a><h3>enum GstMpegtsISDBDescriptorType</h3>
 <p>These values correspond to the registered descriptor type from
 the various ISDB specifications.</p>
 <p>Consult the relevant specifications for more details.</p>
diff --git a/docs/libs/html/gst-plugins-bad-libs-h264parser.html b/docs/libs/html/gst-plugins-bad-libs-h264parser.html
index 24833d0..4038938 100644
--- a/docs/libs/html/gst-plugins-bad-libs-h264parser.html
+++ b/docs/libs/html/gst-plugins-bad-libs-h264parser.html
@@ -164,6 +164,14 @@
 <span class="returnvalue">void</span>
 </td>
 <td class="function_name">
+<a class="link" href="gst-plugins-bad-libs-h264parser.html#gst-h264-pps-clear" title="gst_h264_pps_clear ()">gst_h264_pps_clear</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="gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-8x8-get-zigzag-from-raster" title="gst_h264_quant_matrix_8x8_get_zigzag_from_raster ()">gst_h264_quant_matrix_8x8_get_zigzag_from_raster</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
@@ -656,8 +664,12 @@
 <p>Parses <em class="parameter"><code>data</code></em>
 , and fills the <em class="parameter"><code>pps</code></em>
  structure.</p>
+<p>The resulting <em class="parameter"><code>pps</code></em>
+ data structure shall be deallocated with the
+<a class="link" href="gst-plugins-bad-libs-h264parser.html#gst-h264-pps-clear" title="gst_h264_pps_clear ()"><code class="function">gst_h264_pps_clear()</code></a> function when it is no longer needed, or prior
+to parsing a new PPS NAL unit.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.12.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.12.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -684,7 +696,7 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.12.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.3.8.12.7"></a><h4>Returns</h4>
 <p> a <a class="link" href="gst-plugins-bad-libs-h264parser.html#GstH264ParserResult" title="enum GstH264ParserResult"><span class="type">GstH264ParserResult</span></a></p>
 <p></p>
 </div>
@@ -821,8 +833,12 @@
 <p>Parses <em class="parameter"><code>data</code></em>
 , and fills the <em class="parameter"><code>pps</code></em>
  structure.</p>
+<p>The resulting <em class="parameter"><code>pps</code></em>
+ data structure shall be deallocated with the
+<a class="link" href="gst-plugins-bad-libs-h264parser.html#gst-h264-pps-clear" title="gst_h264_pps_clear ()"><code class="function">gst_h264_pps_clear()</code></a> function when it is no longer needed, or prior
+to parsing a new PPS NAL unit.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.17.5"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.17.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -849,13 +865,37 @@
 </table></div>
 </div>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.17.6"></a><h4>Returns</h4>
+<a name="id-1.2.4.3.8.17.7"></a><h4>Returns</h4>
 <p> a <a class="link" href="gst-plugins-bad-libs-h264parser.html#GstH264ParserResult" title="enum GstH264ParserResult"><span class="type">GstH264ParserResult</span></a></p>
 <p></p>
 </div>
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-h264-pps-clear"></a><h3>gst_h264_pps_clear ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_h264_pps_clear (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-h264parser.html#GstH264PPS" title="struct GstH264PPS"><span class="type">GstH264PPS</span></a> *pps</code></em>);</pre>
+<p>Clears all <em class="parameter"><code>pps</code></em>
+ internal resources.</p>
+<div class="refsect3">
+<a name="id-1.2.4.3.8.18.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>pps</p></td>
+<td class="parameter_description"><p>The <a class="link" href="gst-plugins-bad-libs-h264parser.html#GstH264PPS" title="struct GstH264PPS"><span class="type">GstH264PPS</span></a> to free</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-h264-quant-matrix-8x8-get-zigzag-from-raster"></a><h3>gst_h264_quant_matrix_8x8_get_zigzag_from_raster ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>
 gst_h264_quant_matrix_8x8_get_zigzag_from_raster
@@ -870,7 +910,7 @@
 <em class="parameter"><code>out_quant</code></em>
  arguments.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.18.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.19.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -909,7 +949,7 @@
 <em class="parameter"><code>out_quant</code></em>
  arguments.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.19.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.20.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -948,7 +988,7 @@
 <em class="parameter"><code>out_quant</code></em>
  arguments.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.20.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.21.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -987,7 +1027,7 @@
 <em class="parameter"><code>out_quant</code></em>
  arguments.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.21.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.22.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1030,7 +1070,7 @@
 and <em class="parameter"><code>fps_den</code></em>
  to 1.</p>
 <div class="refsect3">
-<a name="id-1.2.4.3.8.22.6"></a><h4>Parameters</h4>
+<a name="id-1.2.4.3.8.23.6"></a><h4>Parameters</h4>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
 <col width="150px" class="parameters_name">
@@ -1308,7 +1348,14 @@
 <tr>
 <td class="enum_member_name"><p><a name="GST-H264-SEI-PIC-TIMING:CAPS"></a>GST_H264_SEI_PIC_TIMING</p></td>
 <td class="enum_member_description">
-<p>Picture Timing SEI Message
+<p>Picture Timing SEI Message</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-H264-SEI-RECOVERY-POINT:CAPS"></a>GST_H264_SEI_RECOVERY_POINT</p></td>
+<td class="enum_member_description">
+<p>Recovery Point SEI Message (D.2.7)
 ...</p>
 </td>
 <td class="enum_member_annotations"> </td>
@@ -2050,7 +2097,7 @@
   GstH264HRDParams nal_hrd_parameters;
 
   guint8 vcl_hrd_parameters_present_flag;
-  /* if nal_hrd_parameters_present_flag */
+  /* if vcl_hrd_parameters_present_flag */
   GstH264HRDParams vcl_hrd_parameters;
 
   guint8 low_delay_hrd_flag;
@@ -2473,6 +2520,7 @@
   union {
     GstH264BufferingPeriod buffering_period;
     GstH264PicTiming pic_timing;
+    GstH264RecoveryPoint recovery_point;
     /* ... could implement more */
   } payload;
 };
diff --git a/docs/libs/html/gstreamer-libs-hierarchy.html b/docs/libs/html/gstreamer-libs-hierarchy.html
index fde61af..e287f18 100644
--- a/docs/libs/html/gstreamer-libs-hierarchy.html
+++ b/docs/libs/html/gstreamer-libs-hierarchy.html
@@ -50,21 +50,21 @@
             <span class="lineart">│</span>   <span class="lineart">╰──</span> <a class="link" href="GstGLBufferPool.html" title="GstGLBufferPool">GstGLBufferPool</a>
             <span class="lineart">╰──</span> <a class="link" href="GstGLWindow.html" title="GstGLWindow">GstGLWindow</a>
     GBoxed
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection">GstMpegTsSection</a>
-    <span class="lineart">╰──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor">GstMpegTsDescriptor</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection">GstMpegtsSection</a>
+    <span class="lineart">╰──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor">GstMpegtsDescriptor</a>
     GEnum
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionType" title="enum GstMpegTsSectionType">GstMpegTsSectionType</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID" title="enum GstMpegTsSectionTableID">GstMpegTsSectionTableID</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableOuterFECScheme" title="enum GstMpegTsCableOuterFECScheme">GstMpegTsCableOuterFECScheme</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType" title="enum GstMpegTsModulationType">GstMpegTsModulationType</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatellitePolarizationType" title="enum GstMpegTsSatellitePolarizationType">GstMpegTsSatellitePolarizationType</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteRolloff" title="enum GstMpegTsSatelliteRolloff">GstMpegTsSatelliteRolloff</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate" title="enum GstMpegTsDVBCodeRate">GstMpegTsDVBCodeRate</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptorType" title="enum GstMpegTsDescriptorType">GstMpegTsDescriptorType</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsIso639AudioType" title="enum GstMpegTsIso639AudioType">GstMpegTsIso639AudioType</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus" title="enum GstMpegTsRunningStatus">GstMpegTsRunningStatus</a>
-    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType" title="enum GstMpegTsDVBServiceType">GstMpegTsDVBServiceType</a>
-    <span class="lineart">╰──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsStreamType" title="enum GstMpegTsStreamType">GstMpegTsStreamType</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionType" title="enum GstMpegtsSectionType">GstMpegtsSectionType</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID" title="enum GstMpegtsSectionTableID">GstMpegtsSectionTableID</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableOuterFECScheme" title="enum GstMpegtsCableOuterFECScheme">GstMpegtsCableOuterFECScheme</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType" title="enum GstMpegtsModulationType">GstMpegtsModulationType</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatellitePolarizationType" title="enum GstMpegtsSatellitePolarizationType">GstMpegtsSatellitePolarizationType</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteRolloff" title="enum GstMpegtsSatelliteRolloff">GstMpegtsSatelliteRolloff</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate" title="enum GstMpegtsDVBCodeRate">GstMpegtsDVBCodeRate</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptorType" title="enum GstMpegtsDescriptorType">GstMpegtsDescriptorType</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType" title="enum GstMpegtsIso639AudioType">GstMpegtsIso639AudioType</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus" title="enum GstMpegtsRunningStatus">GstMpegtsRunningStatus</a>
+    <span class="lineart">├──</span> <a class="link" href="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType" title="enum GstMpegtsDVBServiceType">GstMpegtsDVBServiceType</a>
+    <span class="lineart">╰──</span> <a class="link" href="gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsStreamType" title="enum GstMpegtsStreamType">GstMpegtsStreamType</a>
 </pre>
 </div>
 <div class="footer">
diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html
index b35785b..3e65f8d 100644
--- a/docs/libs/html/index.html
+++ b/docs/libs/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Bad Plugins 1.0 Library Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Bad Library 1.0 (1.3.3)
+      for GStreamer Bad Library 1.0 (1.3.90)
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/</a>.
     </p></div>
 </div>
diff --git a/docs/libs/html/index.sgml b/docs/libs/html/index.sgml
index 523d397..b4491b4 100644
--- a/docs/libs/html/index.sgml
+++ b/docs/libs/html/index.sgml
@@ -23,6 +23,7 @@
 <ANCHOR id="gst-h264-nal-parser-free" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-nal-parser-free">
 <ANCHOR id="gst-h264-parse-sps" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-parse-sps">
 <ANCHOR id="gst-h264-parse-pps" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-parse-pps">
+<ANCHOR id="gst-h264-pps-clear" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-pps-clear">
 <ANCHOR id="gst-h264-quant-matrix-8x8-get-zigzag-from-raster" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-8x8-get-zigzag-from-raster">
 <ANCHOR id="gst-h264-quant-matrix-8x8-get-raster-from-zigzag" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-8x8-get-raster-from-zigzag">
 <ANCHOR id="gst-h264-quant-matrix-4x4-get-zigzag-from-raster" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-h264parser.html#gst-h264-quant-matrix-4x4-get-zigzag-from-raster">
@@ -185,7 +186,7 @@
 <ANCHOR id="gst-plugins-bad-libs-Mpeg-ts-helper-library.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Mpeg-ts-helper-library.html#gst-plugins-bad-libs-Mpeg-ts-helper-library.other_details">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-sections" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-sections.functions" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-plugins-bad-libs-Base-MPEG-TS-sections.functions">
-<ANCHOR id="GstMpegTsSection" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection">
+<ANCHOR id="GstMpegtsSection" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-sections.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-plugins-bad-libs-Base-MPEG-TS-sections.other">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-sections.object-hierarchy" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-plugins-bad-libs-Base-MPEG-TS-sections.object-hierarchy">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-sections.includes" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-plugins-bad-libs-Base-MPEG-TS-sections.includes">
@@ -211,16 +212,16 @@
 <ANCHOR id="gst-mpegts-section-get-tsdt" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-get-tsdt">
 <ANCHOR id="gst-mpegts-section-get-cat" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-mpegts-section-get-cat">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-sections.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#gst-plugins-bad-libs-Base-MPEG-TS-sections.other_details">
-<ANCHOR id="GstMpegTsSection-struct" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSection-struct">
-<ANCHOR id="GstMpegTsSectionTableID" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionTableID">
-<ANCHOR id="GstMpegTsSectionType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsSectionType">
-<ANCHOR id="GstMpegTsPatProgram" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPatProgram">
-<ANCHOR id="GstMpegTsPMT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMT">
-<ANCHOR id="GstMpegTsPMTStream" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsPMTStream">
-<ANCHOR id="GstMpegTsStreamType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegTsStreamType">
+<ANCHOR id="GstMpegtsSection-struct" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSection-struct">
+<ANCHOR id="GstMpegtsSectionTableID" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionTableID">
+<ANCHOR id="GstMpegtsSectionType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsSectionType">
+<ANCHOR id="GstMpegtsPatProgram" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPatProgram">
+<ANCHOR id="GstMpegtsPMT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMT">
+<ANCHOR id="GstMpegtsPMTStream" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsPMTStream">
+<ANCHOR id="GstMpegtsStreamType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-sections.html#GstMpegtsStreamType">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-descriptors" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.functions" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-plugins-bad-libs-Base-MPEG-TS-descriptors.functions">
-<ANCHOR id="GstMpegTsDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor">
+<ANCHOR id="GstMpegtsDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-plugins-bad-libs-Base-MPEG-TS-descriptors.other">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.object-hierarchy" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-plugins-bad-libs-Base-MPEG-TS-descriptors.object-hierarchy">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.includes" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-plugins-bad-libs-Base-MPEG-TS-descriptors.includes">
@@ -231,16 +232,18 @@
 <ANCHOR id="gst-mpegts-descriptor-from-custom" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-custom">
 <ANCHOR id="gst-mpegts-descriptor-from-registration" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-registration">
 <ANCHOR id="gst-mpegts-descriptor-parse-iso-639-language" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language">
-<ANCHOR id="gst-mpegts-descriptor-parse-dvb-stream-identifier" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-stream-identifier">
+<ANCHOR id="gst-mpegts-descriptor-parse-iso-639-language-idx" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-idx">
+<ANCHOR id="gst-mpegts-descriptor-parse-iso-639-language-nb" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-iso-639-language-nb">
+<ANCHOR id="gst-mpegts-iso-639-language-descriptor-free" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-iso-639-language-descriptor-free">
 <ANCHOR id="gst-mpegts-descriptor-parse-logical-channel" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-logical-channel">
 <ANCHOR id="gst-plugins-bad-libs-Base-MPEG-TS-descriptors.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#gst-plugins-bad-libs-Base-MPEG-TS-descriptors.other_details">
-<ANCHOR id="GstMpegTsDescriptor-struct" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptor-struct">
-<ANCHOR id="GstMpegTsDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsDescriptorType">
-<ANCHOR id="GstMpegTsMiscDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsMiscDescriptorType">
-<ANCHOR id="GstMpegTsISO639LanguageDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsISO639LanguageDescriptor">
-<ANCHOR id="GstMpegTsIso639AudioType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsIso639AudioType">
-<ANCHOR id="GstMpegTsLogicalChannel" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannel">
-<ANCHOR id="GstMpegTsLogicalChannelDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegTsLogicalChannelDescriptor">
+<ANCHOR id="GstMpegtsDescriptor-struct" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptor-struct">
+<ANCHOR id="GstMpegtsDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsDescriptorType">
+<ANCHOR id="GstMpegtsMiscDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsMiscDescriptorType">
+<ANCHOR id="GstMpegtsISO639LanguageDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsISO639LanguageDescriptor">
+<ANCHOR id="GstMpegtsIso639AudioType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsIso639AudioType">
+<ANCHOR id="GstMpegtsLogicalChannel" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannel">
+<ANCHOR id="GstMpegtsLogicalChannelDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-Base-MPEG-TS-descriptors.html#GstMpegtsLogicalChannelDescriptor">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.functions" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.functions">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.other">
@@ -249,8 +252,25 @@
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.description" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.description">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.functions_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.functions_details">
 <ANCHOR id="gst-mpegts-section-get-atsc-tvct" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-tvct">
+<ANCHOR id="gst-mpegts-section-get-atsc-cvct" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-cvct">
+<ANCHOR id="gst-mpegts-section-get-atsc-mgt" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-mgt">
+<ANCHOR id="gst-mpegts-atsc-string-segment-get-string" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-string-segment-get-string">
+<ANCHOR id="gst-mpegts-section-get-atsc-eit" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-eit">
+<ANCHOR id="gst-mpegts-section-get-atsc-ett" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-ett">
+<ANCHOR id="gst-mpegts-section-get-atsc-stt" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-atsc-stt">
+<ANCHOR id="gst-mpegts-atsc-stt-get-datetime-utc" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-mpegts-atsc-stt-get-datetime-utc">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.other_details">
-<ANCHOR id="GstMpegTsSectionATSCTableID" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegTsSectionATSCTableID">
+<ANCHOR id="GstMpegtsSectionATSCTableID" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsSectionATSCTableID">
+<ANCHOR id="GstMpegtsAtscVCTSource" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCTSource">
+<ANCHOR id="GstMpegtsAtscVCT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscVCT">
+<ANCHOR id="GstMpegtsAtscMGTTableType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTableType">
+<ANCHOR id="GstMpegtsAtscMGTTable" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGTTable">
+<ANCHOR id="GstMpegtsAtscMGT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMGT">
+<ANCHOR id="GstMpegtsAtscMultString" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscMultString">
+<ANCHOR id="GstMpegtsAtscEITEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEITEvent">
+<ANCHOR id="GstMpegtsAtscEIT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscEIT">
+<ANCHOR id="GstMpegtsAtscETT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscETT">
+<ANCHOR id="GstMpegtsAtscSTT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-sections.html#GstMpegtsAtscSTT">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.functions" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.functions">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.other">
@@ -262,6 +282,7 @@
 <ANCHOR id="gst-mpegts-nit-new" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-new">
 <ANCHOR id="gst-mpegts-nit-stream-new" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-nit-stream-new">
 <ANCHOR id="gst-mpegts-section-from-nit" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-from-nit">
+<ANCHOR id="gst-mpegts-section-get-bat" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-bat">
 <ANCHOR id="gst-mpegts-section-get-sdt" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-sdt">
 <ANCHOR id="gst-mpegts-sdt-new" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-sdt-new">
 <ANCHOR id="gst-mpegts-sdt-service-new" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-sdt-service-new">
@@ -270,17 +291,17 @@
 <ANCHOR id="gst-mpegts-section-get-tdt" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-tdt">
 <ANCHOR id="gst-mpegts-section-get-tot" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-mpegts-section-get-tot">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.other_details">
-<ANCHOR id="GstMpegTsSectionDVBTableID" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSectionDVBTableID">
-<ANCHOR id="GstMpegTsNIT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNIT">
-<ANCHOR id="GstMpegTsNITStream" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsNITStream">
-<ANCHOR id="GstMpegTsBAT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBAT">
-<ANCHOR id="GstMpegTsBATStream" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsBATStream">
-<ANCHOR id="GstMpegTsSDT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDT">
-<ANCHOR id="GstMpegTsSDTService" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsSDTService">
-<ANCHOR id="GstMpegTsEIT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEIT">
-<ANCHOR id="GstMpegTsEITEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsEITEvent">
-<ANCHOR id="GstMpegTsRunningStatus" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsRunningStatus">
-<ANCHOR id="GstMpegTsTOT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegTsTOT">
+<ANCHOR id="GstMpegtsSectionDVBTableID" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSectionDVBTableID">
+<ANCHOR id="GstMpegtsNIT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNIT">
+<ANCHOR id="GstMpegtsNITStream" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsNITStream">
+<ANCHOR id="GstMpegtsBAT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBAT">
+<ANCHOR id="GstMpegtsBATStream" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsBATStream">
+<ANCHOR id="GstMpegtsSDT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDT">
+<ANCHOR id="GstMpegtsSDTService" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsSDTService">
+<ANCHOR id="GstMpegtsEIT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEIT">
+<ANCHOR id="GstMpegtsEITEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsEITEvent">
+<ANCHOR id="GstMpegtsRunningStatus" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsRunningStatus">
+<ANCHOR id="GstMpegtsTOT" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-sections.html#GstMpegtsTOT">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.other">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.object-hierarchy" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.object-hierarchy">
@@ -288,7 +309,7 @@
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.description" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.description">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.functions_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.functions_details">
 <ANCHOR id="gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.other_details">
-<ANCHOR id="GstMpegTsATSCDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegTsATSCDescriptorType">
+<ANCHOR id="GstMpegtsATSCDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ATSC-variants-of-MPEG-TS-descriptors.html#GstMpegtsATSCDescriptorType">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.functions" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.functions">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.other">
@@ -310,6 +331,8 @@
 <ANCHOR id="gst-mpegts-descriptor-from-dvb-service" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-service">
 <ANCHOR id="gst-mpegts-descriptor-parse-dvb-teletext-idx" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-teletext-idx">
 <ANCHOR id="gst-mpegts-descriptor-parse-dvb-teletext-nb" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-teletext-nb">
+<ANCHOR id="gst-mpegts-descriptor-parse-dvb-subtitling-idx" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-idx">
+<ANCHOR id="gst-mpegts-descriptor-parse-dvb-subtitling-nb" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-subtitling-nb">
 <ANCHOR id="gst-mpegts-descriptor-from-dvb-subtitling" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-from-dvb-subtitling">
 <ANCHOR id="gst-mpegts-descriptor-parse-dvb-linkage" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-linkage">
 <ANCHOR id="gst-mpegts-descriptor-parse-dvb-private-data-specifier" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-private-data-specifier">
@@ -328,41 +351,42 @@
 <ANCHOR id="gst-mpegts-descriptor-parse-dvb-multilingual-service-name" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-multilingual-service-name">
 <ANCHOR id="gst-mpegts-descriptor-parse-dvb-multilingual-component" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-mpegts-descriptor-parse-dvb-multilingual-component">
 <ANCHOR id="gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.other_details">
-<ANCHOR id="GstMpegTsDVBDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBDescriptorType">
-<ANCHOR id="GstMpegTsDVBExtendedDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBExtendedDescriptorType">
-<ANCHOR id="GstMpegTsContent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsContent">
-<ANCHOR id="GstMpegTsComponentDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsComponentDescriptor">
-<ANCHOR id="GstMpegTsExtendedEventItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventItem">
-<ANCHOR id="GstMpegTsExtendedEventDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsExtendedEventDescriptor">
-<ANCHOR id="GstMpegTsSatelliteDeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteDeliverySystemDescriptor">
-<ANCHOR id="GstMpegTsDVBCodeRate" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBCodeRate">
-<ANCHOR id="GstMpegTsModulationType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsModulationType">
-<ANCHOR id="GstMpegTsSatellitePolarizationType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatellitePolarizationType">
-<ANCHOR id="GstMpegTsSatelliteRolloff" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsSatelliteRolloff">
-<ANCHOR id="GstMpegTsCableDeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableDeliverySystemDescriptor">
-<ANCHOR id="GstMpegTsCableOuterFECScheme" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsCableOuterFECScheme">
-<ANCHOR id="GstMpegTsTerrestrialDeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialDeliverySystemDescriptor">
-<ANCHOR id="GstMpegTsTerrestrialTransmissionMode" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialTransmissionMode">
-<ANCHOR id="GstMpegTsTerrestrialGuardInterval" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialGuardInterval">
-<ANCHOR id="GstMpegTsTerrestrialHierarchy" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsTerrestrialHierarchy">
-<ANCHOR id="GstMpegTsT2DeliverySystemCellExtension" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCellExtension">
-<ANCHOR id="GstMpegTsT2DeliverySystemCell" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemCell">
-<ANCHOR id="GstMpegTsT2DeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsT2DeliverySystemDescriptor">
-<ANCHOR id="GstMpegTsDVBServiceType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceType">
-<ANCHOR id="GstMpegTsDVBTeletextType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBTeletextType">
-<ANCHOR id="GstMpegTsDVBLinkageType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageType">
-<ANCHOR id="GstMpegTsDVBLinkageHandOverType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageHandOverType">
-<ANCHOR id="GstMpegTsDVBLinkageMobileHandOver" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageMobileHandOver">
-<ANCHOR id="GstMpegTsDVBLinkageEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageEvent">
-<ANCHOR id="GstMpegTsDVBLinkageExtendedEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageExtendedEvent">
-<ANCHOR id="GstMpegTsDVBLinkageDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBLinkageDescriptor">
-<ANCHOR id="GstMpegTsDataBroadcastDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDataBroadcastDescriptor">
-<ANCHOR id="GstMpegTsDVBParentalRatingItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBParentalRatingItem">
-<ANCHOR id="GstMpegTsDVBServiceListItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDVBServiceListItem">
-<ANCHOR id="GstMpegTsDvbMultilingualNetworkNameItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualNetworkNameItem">
-<ANCHOR id="GstMpegTsDvbMultilingualBouquetNameItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualBouquetNameItem">
-<ANCHOR id="GstMpegTsDvbMultilingualServiceNameItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualServiceNameItem">
-<ANCHOR id="GstMpegTsDvbMultilingualComponentItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegTsDvbMultilingualComponentItem">
+<ANCHOR id="GstMpegtsDVBDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBDescriptorType">
+<ANCHOR id="GstMpegtsDVBExtendedDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBExtendedDescriptorType">
+<ANCHOR id="GstMpegtsContent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsContent">
+<ANCHOR id="GstMpegtsComponentDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsComponentDescriptor">
+<ANCHOR id="GstMpegtsExtendedEventItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventItem">
+<ANCHOR id="GstMpegtsExtendedEventDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsExtendedEventDescriptor">
+<ANCHOR id="GstMpegtsSatelliteDeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteDeliverySystemDescriptor">
+<ANCHOR id="GstMpegtsDVBCodeRate" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBCodeRate">
+<ANCHOR id="GstMpegtsModulationType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsModulationType">
+<ANCHOR id="GstMpegtsSatellitePolarizationType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatellitePolarizationType">
+<ANCHOR id="GstMpegtsSatelliteRolloff" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsSatelliteRolloff">
+<ANCHOR id="GstMpegtsCableDeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableDeliverySystemDescriptor">
+<ANCHOR id="GstMpegtsCableOuterFECScheme" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsCableOuterFECScheme">
+<ANCHOR id="GstMpegtsTerrestrialDeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialDeliverySystemDescriptor">
+<ANCHOR id="GstMpegtsTerrestrialTransmissionMode" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialTransmissionMode">
+<ANCHOR id="GstMpegtsTerrestrialGuardInterval" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialGuardInterval">
+<ANCHOR id="GstMpegtsTerrestrialHierarchy" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsTerrestrialHierarchy">
+<ANCHOR id="GstMpegtsT2DeliverySystemCellExtension" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCellExtension">
+<ANCHOR id="GstMpegtsT2DeliverySystemCell" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemCell">
+<ANCHOR id="GstMpegtsT2DeliverySystemDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsT2DeliverySystemDescriptor">
+<ANCHOR id="GstMpegtsDVBServiceType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceType">
+<ANCHOR id="GstMpegtsDVBTeletextType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBTeletextType">
+<ANCHOR id="GstMpegtsDVBLinkageType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageType">
+<ANCHOR id="GstMpegtsDVBLinkageHandOverType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageHandOverType">
+<ANCHOR id="GstMpegtsDVBLinkageMobileHandOver" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageMobileHandOver">
+<ANCHOR id="GstMpegtsDVBLinkageEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageEvent">
+<ANCHOR id="GstMpegtsDVBLinkageExtendedEvent" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageExtendedEvent">
+<ANCHOR id="GstMpegtsDVBLinkageDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBLinkageDescriptor">
+<ANCHOR id="GstMpegtsDataBroadcastDescriptor" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDataBroadcastDescriptor">
+<ANCHOR id="GstMpegtsDVBScramblingModeType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBScramblingModeType">
+<ANCHOR id="GstMpegtsDVBParentalRatingItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBParentalRatingItem">
+<ANCHOR id="GstMpegtsDVBServiceListItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDVBServiceListItem">
+<ANCHOR id="GstMpegtsDvbMultilingualNetworkNameItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualNetworkNameItem">
+<ANCHOR id="GstMpegtsDvbMultilingualBouquetNameItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualBouquetNameItem">
+<ANCHOR id="GstMpegtsDvbMultilingualServiceNameItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualServiceNameItem">
+<ANCHOR id="GstMpegtsDvbMultilingualComponentItem" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-DVB-variants-of-MPEG-TS-descriptors.html#GstMpegtsDvbMultilingualComponentItem">
 <ANCHOR id="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html">
 <ANCHOR id="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.other" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.other">
 <ANCHOR id="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.object-hierarchy" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.object-hierarchy">
@@ -370,7 +394,7 @@
 <ANCHOR id="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.description" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.description">
 <ANCHOR id="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.functions_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.functions_details">
 <ANCHOR id="gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.other_details" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.other_details">
-<ANCHOR id="GstMpegTsISDBDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegTsISDBDescriptorType">
+<ANCHOR id="GstMpegtsISDBDescriptorType" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-ISDB-variants-of-MPEG-TS-descriptors.html#GstMpegtsISDBDescriptorType">
 <ANCHOR id="gst-plugins-bad-libs-GstInsertbin" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-GstInsertbin.html">
 <ANCHOR id="gst-plugins-bad-libs-GstInsertbin.functions" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-GstInsertbin.html#gst-plugins-bad-libs-GstInsertbin.functions">
 <ANCHOR id="gst-plugins-bad-libs-GstInsertbin.signals" href="gst-plugins-bad-libs-1.0/gst-plugins-bad-libs-GstInsertbin.html#gst-plugins-bad-libs-GstInsertbin.signals">
diff --git a/docs/plugins/gst-plugins-bad-plugins.args b/docs/plugins/gst-plugins-bad-plugins.args
index 45be52c..07565cd 100644
--- a/docs/plugins/gst-plugins-bad-plugins.args
+++ b/docs/plugins/gst-plugins-bad-plugins.args
@@ -1644,7 +1644,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>bandwidth-hz</NICK>
-<BLURB>Bandwidth in Hz (DVB-T).</BLURB>
+<BLURB>(DVB-T) Bandwidth in Hz.</BLURB>
 <DEFAULT>8000000</DEFAULT>
 </ARG>
 
@@ -1654,7 +1654,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>bandwidth</NICK>
-<BLURB>Bandwidth (DVB-T) deprecated.</BLURB>
+<BLURB>(DVB-T) Bandwidth. Deprecated.</BLURB>
 <DEFAULT>8</DEFAULT>
 </ARG>
 
@@ -1664,7 +1664,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>code-rate-hp</NICK>
-<BLURB>High Priority Code Rate (DVB-T, DVB-S, DVB-S2 and DVB-C).</BLURB>
+<BLURB>(DVB-T, DVB-S/S2 and DVB-C) High priority code rate.</BLURB>
 <DEFAULT>AUTO</DEFAULT>
 </ARG>
 
@@ -1674,7 +1674,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>code-rate-lp</NICK>
-<BLURB>Low Priority Code Rate (DVB-T).</BLURB>
+<BLURB>(DVB-T) Low priority code rate.</BLURB>
 <DEFAULT>1/2</DEFAULT>
 </ARG>
 
@@ -1714,7 +1714,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>guard</NICK>
-<BLURB>Guard Interval (DVB-T).</BLURB>
+<BLURB>(DVB-T) Guard Interval.</BLURB>
 <DEFAULT>16</DEFAULT>
 </ARG>
 
@@ -1724,7 +1724,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>hierarchy</NICK>
-<BLURB>Hierarchy Information (DVB-T).</BLURB>
+<BLURB>(DVB-T) Hierarchy information.</BLURB>
 <DEFAULT>1</DEFAULT>
 </ARG>
 
@@ -1734,7 +1734,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>inversion</NICK>
-<BLURB>Inversion Information (DVB-T and DVB-C).</BLURB>
+<BLURB>(DVB-T and DVB-C) Inversion information.</BLURB>
 <DEFAULT>ON</DEFAULT>
 </ARG>
 
@@ -1744,7 +1744,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>modulation</NICK>
-<BLURB>Modulation (DVB-T and DVB-C).</BLURB>
+<BLURB>(DVB-T and DVB-C) Modulation type.</BLURB>
 <DEFAULT>QAM 16</DEFAULT>
 </ARG>
 
@@ -1784,7 +1784,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>trans-mode</NICK>
-<BLURB>Transmission Mode (DVB-T).</BLURB>
+<BLURB>(DVB-T) Transmission mode.</BLURB>
 <DEFAULT>8K</DEFAULT>
 </ARG>
 
@@ -1804,7 +1804,7 @@
 <RANGE>[0,16]</RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>The adapter device number</NICK>
-<BLURB>The adapter device number (eg. 0 for adapter0).</BLURB>
+<BLURB>The DVB adapter device number (eg. 0 for adapter0).</BLURB>
 <DEFAULT>0</DEFAULT>
 </ARG>
 
@@ -1814,7 +1814,7 @@
 <RANGE>[G_MAXULONG,7]</RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>diseqc source</NICK>
-<BLURB>DISEqC selected source (-1 disabled) (DVB-S, DVB-S2).</BLURB>
+<BLURB>(DVB-S/S2) Selected DiSEqC source. Only needed if you have a DiSEqC switch. Otherwise leave at -1 (disabled).</BLURB>
 <DEFAULT>-1</DEFAULT>
 </ARG>
 
@@ -1844,7 +1844,7 @@
 <RANGE></RANGE>
 <FLAGS>rwx</FLAGS>
 <NICK>polarity</NICK>
-<BLURB>Polarity [vhHV] (DVB-S, DVB-S2).</BLURB>
+<BLURB>(DVB-S/S2) Polarity [vhHV] (eg. V for Vertical).</BLURB>
 <DEFAULT>"H"</DEFAULT>
 </ARG>
 
@@ -1854,7 +1854,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>symbol rate</NICK>
-<BLURB>Symbol Rate (DVB-S, DVB-S2, DVB-C).</BLURB>
+<BLURB>(DVB-S/S2, DVB-C) Symbol rate in bauds.</BLURB>
 <DEFAULT>0</DEFAULT>
 </ARG>
 
@@ -1924,7 +1924,7 @@
 <RANGE>[G_MAXULONG,65535]</RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>stream-id</NICK>
-<BLURB>Stream ID (-1 disabled, DVB-T2 and DVB-S2 max 255, ISDB max 65535).</BLURB>
+<BLURB>(DVB-T2 and DVB-S2 max 255, ISDB max 65535) Stream ID (-1 = disabled).</BLURB>
 <DEFAULT>-1</DEFAULT>
 </ARG>
 
@@ -17934,7 +17934,7 @@
 <RANGE>[0,16]</RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>The adapter device number</NICK>
-<BLURB>The adapter device number (eg. 0 for adapter0).</BLURB>
+<BLURB>The DVB adapter device number (eg. 0 for adapter0).</BLURB>
 <DEFAULT>0</DEFAULT>
 </ARG>
 
@@ -17944,7 +17944,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>bandwidth</NICK>
-<BLURB>Bandwidth (DVB-T) deprecated.</BLURB>
+<BLURB>(DVB-T) Bandwidth. Deprecated.</BLURB>
 <DEFAULT>8</DEFAULT>
 </ARG>
 
@@ -17954,7 +17954,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>code-rate-hp</NICK>
-<BLURB>High Priority Code Rate (DVB-T, DVB-S, DVB-S2 and DVB-C).</BLURB>
+<BLURB>(DVB-T, DVB-S/S2 and DVB-C) High priority code rate.</BLURB>
 <DEFAULT>AUTO</DEFAULT>
 </ARG>
 
@@ -17964,7 +17964,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>code-rate-lp</NICK>
-<BLURB>Low Priority Code Rate (DVB-T).</BLURB>
+<BLURB>(DVB-T) Low priority code rate.</BLURB>
 <DEFAULT>1/2</DEFAULT>
 </ARG>
 
@@ -17974,7 +17974,7 @@
 <RANGE>[G_MAXULONG,7]</RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>diseqc source</NICK>
-<BLURB>DISEqC selected source (-1 disabled) (DVB-S, DVB-S2).</BLURB>
+<BLURB>(DVB-S/S2) Selected DiSEqC source. Only needed if you have a DiSEqC switch. Otherwise leave at -1 (disabled).</BLURB>
 <DEFAULT>-1</DEFAULT>
 </ARG>
 
@@ -18004,7 +18004,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>guard</NICK>
-<BLURB>Guard Interval (DVB-T).</BLURB>
+<BLURB>(DVB-T) Guard Interval.</BLURB>
 <DEFAULT>16</DEFAULT>
 </ARG>
 
@@ -18014,7 +18014,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>hierarchy</NICK>
-<BLURB>Hierarchy Information (DVB-T).</BLURB>
+<BLURB>(DVB-T) Hierarchy information.</BLURB>
 <DEFAULT>1</DEFAULT>
 </ARG>
 
@@ -18024,7 +18024,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>inversion</NICK>
-<BLURB>Inversion Information (DVB-T and DVB-C).</BLURB>
+<BLURB>(DVB-T and DVB-C) Inversion information.</BLURB>
 <DEFAULT>ON</DEFAULT>
 </ARG>
 
@@ -18034,7 +18034,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>modulation</NICK>
-<BLURB>Modulation (DVB-T and DVB-C).</BLURB>
+<BLURB>(DVB-T and DVB-C) Modulation type.</BLURB>
 <DEFAULT>QAM 16</DEFAULT>
 </ARG>
 
@@ -18044,7 +18044,7 @@
 <RANGE></RANGE>
 <FLAGS>rwx</FLAGS>
 <NICK>polarity</NICK>
-<BLURB>Polarity [vhHV] (DVB-S, DVB-S2).</BLURB>
+<BLURB>(DVB-S/S2) Polarity [vhHV] (eg. V for Vertical).</BLURB>
 <DEFAULT>"H"</DEFAULT>
 </ARG>
 
@@ -18074,7 +18074,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>symbol rate</NICK>
-<BLURB>Symbol Rate (DVB-S, DVB-S2, DVB-C).</BLURB>
+<BLURB>(DVB-S/S2, DVB-C) Symbol rate in bauds.</BLURB>
 <DEFAULT>0</DEFAULT>
 </ARG>
 
@@ -18084,7 +18084,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>trans-mode</NICK>
-<BLURB>Transmission Mode (DVB-T).</BLURB>
+<BLURB>(DVB-T) Transmission mode.</BLURB>
 <DEFAULT>8K</DEFAULT>
 </ARG>
 
@@ -18094,7 +18094,7 @@
 <RANGE></RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>bandwidth-hz</NICK>
-<BLURB>Bandwidth in Hz (DVB-T).</BLURB>
+<BLURB>(DVB-T) Bandwidth in Hz.</BLURB>
 <DEFAULT>8000000</DEFAULT>
 </ARG>
 
@@ -18134,7 +18134,7 @@
 <RANGE>[G_MAXULONG,65535]</RANGE>
 <FLAGS>rw</FLAGS>
 <NICK>stream-id</NICK>
-<BLURB>Stream ID (-1 disabled, DVB-T2 and DVB-S2 max 255, ISDB max 65535).</BLURB>
+<BLURB>(DVB-T2 and DVB-S2 max 255, ISDB max 65535) Stream ID (-1 = disabled).</BLURB>
 <DEFAULT>-1</DEFAULT>
 </ARG>
 
diff --git a/docs/plugins/gst-plugins-bad-plugins.hierarchy b/docs/plugins/gst-plugins-bad-plugins.hierarchy
index eb4da08..c5e5779 100644
--- a/docs/plugins/gst-plugins-bad-plugins.hierarchy
+++ b/docs/plugins/gst-plugins-bad-plugins.hierarchy
@@ -26,7 +26,6 @@
         GstAssRender
         GstAudioDecoder
           ADPCMDec
-          GstCeltDec
           GstDtsDec
           GstFaad
           GstGSMDec
@@ -36,7 +35,6 @@
           GstSirenDec
         GstAudioEncoder
           ADPCMEnc
-          GstCeltEnc
           GstFaac
           GstGSMEnc
           GstOpusEnc
@@ -77,7 +75,6 @@
           GstInterAudioSink
           GstInterSubSink
           GstInterVideoSink
-          GstRTMPSink
           GstShmSink
           GstVideoSink
             GstDfbVideoSink
@@ -85,7 +82,6 @@
             GstGLImageSink
             GstWaylandSink
         GstBaseSrc
-          GstDTMFSrc
           GstDataURISrc
           GstFliteTestSrc
           GstInterAudioSrc
@@ -101,11 +97,8 @@
             GstDvbSrc
             GstGLTestSrc
             GstMMS
-            GstNeonhttpSrc
-            GstRTMPSrc
             GstRfbSrc
             GstShmSrc
-          GstRTPDTMFSrc
         GstBaseTransform
           GstAudioFilter
             GstAccurip
@@ -258,7 +251,6 @@
         GstPyramidSegment
         GstRTPBaseDepayload
           GstRTPOpusDepay
-          GstRtpDTMFDepay
         GstRTPBasePayload
           GstRtpAsfPay
           GstRtpOPUSPay
@@ -309,7 +301,7 @@
       GstPadTemplate
       GstPlugin
       GstPluginFeature
-        GstDeviceMonitorFactory
+        GstDeviceProviderFactory
         GstElementFactory
         GstTypeFindFactory
       GstRegistry
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-1.0.devhelp2 b/docs/plugins/html/gst-plugins-bad-plugins-1.0.devhelp2
index 1f13223..42c71a7 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-1.0.devhelp2
+++ b/docs/plugins/html/gst-plugins-bad-plugins-1.0.devhelp2
@@ -434,9 +434,9 @@
     <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-mpg123audiodec.html#id-1.2.47.6.2.1"/>
     <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-mpg123audiodec.html#id-1.2.47.6.2.2"/>
     <keyword type="struct" name="struct GstMpg123AudioDec" link="gst-plugins-bad-plugins-mpg123audiodec.html#GstMpg123AudioDec-struct"/>
-    <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-neonhttpsrc.html#id-1.2.48.8.2.1"/>
-    <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-neonhttpsrc.html#id-1.2.48.8.2.2"/>
-    <keyword type="struct" name="struct GstNeonhttpSrc" link="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc-struct"/>
+    <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-neonhttpsrc.html#id-1.2.48.7.2.1"/>
+    <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-neonhttpsrc.html#id-1.2.48.7.2.2"/>
+    <keyword type="struct" name="struct GstNeonhttpSrc" link="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc"/>
     <keyword type="property" name="The “location” property" link="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc--location"/>
     <keyword type="property" name="The “proxy” property" link="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc--proxy"/>
     <keyword type="property" name="The “uri” property" link="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc--uri"/>
@@ -493,13 +493,13 @@
     <keyword type="property" name="The “use-copyrect” property" link="gst-plugins-bad-plugins-rfbsrc.html#GstRfbSrc--use-copyrect"/>
     <keyword type="property" name="The “shared” property" link="gst-plugins-bad-plugins-rfbsrc.html#GstRfbSrc--shared"/>
     <keyword type="property" name="The “view-only” property" link="gst-plugins-bad-plugins-rfbsrc.html#GstRfbSrc--view-only"/>
-    <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsink.html#id-1.2.56.8.2.1"/>
-    <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsink.html#id-1.2.56.8.2.2"/>
-    <keyword type="struct" name="struct GstRTMPSink" link="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink-struct"/>
+    <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsink.html#id-1.2.56.7.2.1"/>
+    <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsink.html#id-1.2.56.7.2.2"/>
+    <keyword type="struct" name="struct GstRTMPSink" link="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink"/>
     <keyword type="property" name="The “location” property" link="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink--location"/>
-    <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsrc.html#id-1.2.57.8.2.1"/>
-    <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsrc.html#id-1.2.57.8.2.2"/>
-    <keyword type="struct" name="struct GstRTMPSrc" link="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc-struct"/>
+    <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-rtmpsrc.html#id-1.2.57.7.2.1"/>
+    <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-rtmpsrc.html#id-1.2.57.7.2.2"/>
+    <keyword type="struct" name="struct GstRTMPSrc" link="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc"/>
     <keyword type="property" name="The “location” property" link="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc--location"/>
     <keyword type="" name="Element Information" link="gst-plugins-bad-plugins-shmsink.html#id-1.2.58.8.2.1"/>
     <keyword type="" name="Element Pads" link="gst-plugins-bad-plugins-shmsink.html#id-1.2.58.8.2.2"/>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-compositor.html b/docs/plugins/html/gst-plugins-bad-plugins-compositor.html
index 310b39c..28caf7e 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-compositor.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-compositor.html
@@ -54,12 +54,12 @@
     <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
             <span class="lineart">├──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
-            <span class="lineart">│</span>   <span class="lineart">╰──</span> GstAggregator
-            <span class="lineart">│</span>       <span class="lineart">╰──</span> GstVideoAggregator
+            <span class="lineart">│</span>   <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/GstAggregator.html">GstAggregator</a>
+            <span class="lineart">│</span>       <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/GstVideoAggregator.html">GstVideoAggregator</a>
             <span class="lineart">│</span>           <span class="lineart">╰──</span> GstCompositor
             <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html">GstPad</a>
-                <span class="lineart">╰──</span> GstAggregatorPad
-                    <span class="lineart">╰──</span> GstVideoAggregatorPad
+                <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/GstAggregatorPad.html">GstAggregatorPad</a>
+                    <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/GstVideoAggregatorPad.html">GstVideoAggregatorPad</a>
                         <span class="lineart">╰──</span> GstCompositorPad
 </pre>
 </div>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html
index c142ffc..89b5e92 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-dvbsrc.html
@@ -327,7 +327,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--bandwidth-hz"></a><h3>The <code class="literal">“bandwidth-hz”</code> property</h3>
 <pre class="programlisting">  “bandwidth-hz”             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
-<p>Bandwidth in Hz (DVB-T).</p>
+<p>(DVB-T) Bandwidth in Hz.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 8000000</p>
 </div>
@@ -335,7 +335,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--bandwidth"></a><h3>The <code class="literal">“bandwidth”</code> property</h3>
 <pre class="programlisting">  “bandwidth”                <span class="type">GstDvbSrcBandwidth</span></pre>
-<p>Bandwidth (DVB-T) deprecated.</p>
+<p>(DVB-T) Bandwidth. Deprecated.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 8</p>
 </div>
@@ -343,7 +343,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--code-rate-hp"></a><h3>The <code class="literal">“code-rate-hp”</code> property</h3>
 <pre class="programlisting">  “code-rate-hp”             <span class="type">GstDvbSrcCode_Rate</span></pre>
-<p>High Priority Code Rate (DVB-T, DVB-S, DVB-S2 and DVB-C).</p>
+<p>(DVB-T, DVB-S/S2 and DVB-C) High priority code rate.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: AUTO</p>
 </div>
@@ -351,7 +351,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--code-rate-lp"></a><h3>The <code class="literal">“code-rate-lp”</code> property</h3>
 <pre class="programlisting">  “code-rate-lp”             <span class="type">GstDvbSrcCode_Rate</span></pre>
-<p>Low Priority Code Rate (DVB-T).</p>
+<p>(DVB-T) Low priority code rate.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 1/2</p>
 </div>
@@ -385,7 +385,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--guard"></a><h3>The <code class="literal">“guard”</code> property</h3>
 <pre class="programlisting">  “guard”                    <span class="type">GstDvbSrcGuard</span></pre>
-<p>Guard Interval (DVB-T).</p>
+<p>(DVB-T) Guard Interval.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 16</p>
 </div>
@@ -393,7 +393,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--hierarchy"></a><h3>The <code class="literal">“hierarchy”</code> property</h3>
 <pre class="programlisting">  “hierarchy”                <span class="type">GstDvbSrcHierarchy</span></pre>
-<p>Hierarchy Information (DVB-T).</p>
+<p>(DVB-T) Hierarchy information.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 1</p>
 </div>
@@ -401,7 +401,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--inversion"></a><h3>The <code class="literal">“inversion”</code> property</h3>
 <pre class="programlisting">  “inversion”                <span class="type">GstDvbSrcInversion</span></pre>
-<p>Inversion Information (DVB-T and DVB-C).</p>
+<p>(DVB-T and DVB-C) Inversion information.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: ON</p>
 </div>
@@ -409,7 +409,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--modulation"></a><h3>The <code class="literal">“modulation”</code> property</h3>
 <pre class="programlisting">  “modulation”               <span class="type">GstDvbSrcModulation</span></pre>
-<p>Modulation (DVB-T and DVB-C).</p>
+<p>(DVB-T and DVB-C) Modulation type.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: QAM 16</p>
 </div>
@@ -442,7 +442,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--trans-mode"></a><h3>The <code class="literal">“trans-mode”</code> property</h3>
 <pre class="programlisting">  “trans-mode”               <span class="type">GstDvbSrcTransmission_Mode</span></pre>
-<p>Transmission Mode (DVB-T).</p>
+<p>(DVB-T) Transmission mode.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 8K</p>
 </div>
@@ -457,7 +457,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--adapter"></a><h3>The <code class="literal">“adapter”</code> property</h3>
 <pre class="programlisting">  “adapter”                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
-<p>The adapter device number (eg. 0 for adapter0).</p>
+<p>The DVB adapter device number (eg. 0 for adapter0).</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [0,16]</p>
 <p>Default value: 0</p>
@@ -466,7 +466,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--diseqc-source"></a><h3>The <code class="literal">“diseqc-source”</code> property</h3>
 <pre class="programlisting">  “diseqc-source”            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
-<p>DISEqC selected source (-1 disabled) (DVB-S, DVB-S2).</p>
+<p>(DVB-S/S2) Selected DiSEqC source. Only needed if you have a DiSEqC switch. Otherwise leave at -1 (disabled).</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [G_MAXULONG,7]</p>
 <p>Default value: -1</p>
@@ -492,7 +492,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--polarity"></a><h3>The <code class="literal">“polarity”</code> property</h3>
 <pre class="programlisting">  “polarity”                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
-<p>Polarity [vhHV] (DVB-S, DVB-S2).</p>
+<p>(DVB-S/S2) Polarity [vhHV] (eg. V for Vertical).</p>
 <p>Flags: Read / Write / Construct</p>
 <p>Default value: "H"</p>
 </div>
@@ -500,7 +500,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--symbol-rate"></a><h3>The <code class="literal">“symbol-rate”</code> property</h3>
 <pre class="programlisting">  “symbol-rate”              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
-<p>Symbol Rate (DVB-S, DVB-S2, DVB-C).</p>
+<p>(DVB-S/S2, DVB-C) Symbol rate in bauds.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: 0</p>
 </div>
@@ -556,7 +556,7 @@
 <div class="refsect2">
 <a name="GstDvbSrc--stream-id"></a><h3>The <code class="literal">“stream-id”</code> property</h3>
 <pre class="programlisting">  “stream-id”                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
-<p>Stream ID (-1 disabled, DVB-T2 and DVB-S2 max 255, ISDB max 65535).</p>
+<p>(DVB-T2 and DVB-S2 max 255, ISDB max 65535) Stream ID (-1 = disabled).</p>
 <p>Flags: Read / Write</p>
 <p>Allowed values: [G_MAXULONG,65535]</p>
 <p>Default value: -1</p>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-neonhttpsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-neonhttpsrc.html
index 54e9025..917b2ca 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-neonhttpsrc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-neonhttpsrc.html
@@ -122,7 +122,7 @@
 </tbody>
 </table></div>
 </div>
-<a name="GstNeonhttpSrc"></a><div class="refsect1">
+<div class="refsect1">
 <a name="gst-plugins-bad-plugins-neonhttpsrc.other"></a><h2>Types and Values</h2>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -131,19 +131,13 @@
 </colgroup>
 <tbody><tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc-struct" title="struct GstNeonhttpSrc">GstNeonhttpSrc</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc" title="struct GstNeonhttpSrc">GstNeonhttpSrc</a></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-bad-plugins-neonhttpsrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
-        <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
-            <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
-                <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSrc.html">GstBaseSrc</a>
-                    <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstPushSrc.html">GstPushSrc</a>
-                        <span class="lineart">╰──</span> GstNeonhttpSrc
+<pre class="screen">
 </pre>
 </div>
 <div class="refsect1">
@@ -157,7 +151,7 @@
 <div class="refsynopsisdiv">
 <h2>Synopsis</h2>
 <div class="refsect2">
-<a name="id-1.2.48.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.48.7.2.1"></a><h3>Element Information</h3>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
 <col align="left" valign="top">
@@ -183,7 +177,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="id-1.2.48.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.48.7.2.2"></a><h3>Element Pads</h3>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
 <col align="left" valign="top">
@@ -219,8 +213,44 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-plugins-neonhttpsrc.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstNeonhttpSrc-struct"></a><h3>struct GstNeonhttpSrc</h3>
-<pre class="programlisting">struct GstNeonhttpSrc;</pre>
+<a name="GstNeonhttpSrc"></a><h3>struct GstNeonhttpSrc</h3>
+<pre class="programlisting">struct GstNeonhttpSrc {
+  GstPushSrc element;
+
+  /* socket */
+  ne_session *session;
+  ne_request *request;
+  ne_uri uri;
+  gchar *location;
+  gchar *query_string;
+  ne_uri proxy;
+  gchar *user_agent;
+  gchar **cookies;
+
+  guint64 content_size;
+
+  gboolean eos;
+
+  /* whether to request icecast metadata */
+  gboolean iradio_mode;
+
+  /* enable Neon HTTP redirects (HTTP 302 status code) */
+  gboolean automatic_redirect;
+
+  /* enable Neon HTTP debug messages */
+  gboolean neon_http_debug;
+
+  /* accept self-signed certificates */
+  gboolean accept_self_signed;
+
+  gint64 read_position;
+  gboolean seekable;
+
+  /* seconds before timing out when connecting or reading to/from a socket */
+  guint connect_timeout;
+  guint read_timeout;
+};
+</pre>
 <p>
 </p>
 </div>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html
index 8032f77..f395ded 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-assrender.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html
index 60a7eb7..74e5da0 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-audiovisualizers.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html
index 2aaa375..2cc47fa 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-autoconvert.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html
index f9bcbb4..374ab2f 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bayer.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html
index eb47001..c9a8464 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-bz2.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html
index fddd2d2..61749a6 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-camerabin.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html
index 3484fd7..fc380c7 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-coloreffects.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html
index e383f0a..bf1d71a 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-curl.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html
index 1942003..5b6caa7 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dataurisrc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html
index f298da3..cc3e0e9 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-debugutilsbad.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html
index 94336fe..9872366 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dtsdec.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html
index 3042173..2cc67d4 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvb.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html
index 32ec7e0..985fc40 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-dvdspu.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html
index ab47ee4..4d11fd9 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faac.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html
index 42a6cee..d03a69f 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-faad.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html
index 431d07e..15dcf28 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-festival.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html
index 372ecb3..18461d1 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gaudieffects.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html
index 1bfa38d..3aa996a 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-geometrictransform.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html
index fe8af05..d5c3b44 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-gsm.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html
index f8d4ed5..76b6ecb 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-jpegformat.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html
index 9dedaa6..e0f43c2 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-liveadder.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html
index e015387..718bb15 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mimic.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html
index 1a73551..979e2d6 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mms.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html
index a31d031..5bb7d05 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-modplug.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html
index 52351ad..e2fc9ac 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpeg2enc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html
index 8feed29..4796844 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mpegtsmux.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html
index c03dc6d..8c284a3 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-mplex.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-ofa.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-ofa.html
index 2f9209d..3780dfd 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-ofa.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-ofa.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-openal.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-openal.html
index c47c2fd..a98417a 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-openal.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-openal.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html
index fa6b320..a6616d3 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-opencv.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html
index 59d3a1e..c4e6bda 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-pcapparse.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html
index a6cd439..622ac80 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rawparse.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html
index 3a3d2e0..9243d81 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-rfbsrc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html
index 05c2eae..1ae8253 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-sdp.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html
index 5572842..c0a9191 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-shm.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html
index 98c8234..594b17e 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-soundtouch.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html
index ae17a57..6b16bb1 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-speed.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html
index f09ac95..9f9a6d2 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voaacenc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html
index 16f9496..6bf6aa6 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-voamrwbenc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html b/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html
index c7c974a..31dc209 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-plugin-zbar.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.3.3</td>
+<td>1.3.90</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html
index 897c822..e578057 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsink.html
@@ -50,7 +50,7 @@
 </tr></tbody>
 </table></div>
 </div>
-<a name="GstRTMPSink"></a><div class="refsect1">
+<div class="refsect1">
 <a name="gst-plugins-bad-plugins-rtmpsink.other"></a><h2>Types and Values</h2>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -59,18 +59,13 @@
 </colgroup>
 <tbody><tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink-struct" title="struct GstRTMPSink">GstRTMPSink</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink" title="struct GstRTMPSink">GstRTMPSink</a></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-bad-plugins-rtmpsink.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
-        <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
-            <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
-                <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSink.html">GstBaseSink</a>
-                    <span class="lineart">╰──</span> GstRTMPSink
+<pre class="screen">
 </pre>
 </div>
 <div class="refsect1">
@@ -84,7 +79,7 @@
 <div class="refsynopsisdiv">
 <h2>Synopsis</h2>
 <div class="refsect2">
-<a name="id-1.2.56.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.56.7.2.1"></a><h3>Element Information</h3>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
 <col align="left" valign="top">
@@ -110,7 +105,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="id-1.2.56.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.56.7.2.2"></a><h3>Element Pads</h3>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
 <col align="left" valign="top">
@@ -146,8 +141,11 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-plugins-rtmpsink.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstRTMPSink-struct"></a><h3>struct GstRTMPSink</h3>
-<pre class="programlisting">struct GstRTMPSink;</pre>
+<a name="GstRTMPSink"></a><h3>struct GstRTMPSink</h3>
+<pre class="programlisting">struct GstRTMPSink {
+  GstBaseSink parent;
+};
+</pre>
 <p>
 </p>
 </div>
diff --git a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html
index f1de857..d7ea560 100644
--- a/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html
+++ b/docs/plugins/html/gst-plugins-bad-plugins-rtmpsrc.html
@@ -50,7 +50,7 @@
 </tr></tbody>
 </table></div>
 </div>
-<a name="GstRTMPSrc"></a><div class="refsect1">
+<div class="refsect1">
 <a name="gst-plugins-bad-plugins-rtmpsrc.other"></a><h2>Types and Values</h2>
 <div class="informaltable"><table width="100%" border="0">
 <colgroup>
@@ -59,19 +59,13 @@
 </colgroup>
 <tbody><tr>
 <td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc-struct" title="struct GstRTMPSrc">GstRTMPSrc</a></td>
+<td class="function_name"><a class="link" href="gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc" title="struct GstRTMPSrc">GstRTMPSrc</a></td>
 </tr></tbody>
 </table></div>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-bad-plugins-rtmpsrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
-    <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
-        <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
-            <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
-                <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSrc.html">GstBaseSrc</a>
-                    <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstPushSrc.html">GstPushSrc</a>
-                        <span class="lineart">╰──</span> GstRTMPSrc
+<pre class="screen">
 </pre>
 </div>
 <div class="refsect1">
@@ -85,7 +79,7 @@
 <div class="refsynopsisdiv">
 <h2>Synopsis</h2>
 <div class="refsect2">
-<a name="id-1.2.57.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.57.7.2.1"></a><h3>Element Information</h3>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
 <col align="left" valign="top">
@@ -111,7 +105,7 @@
 </div>
 <hr>
 <div class="refsect2">
-<a name="id-1.2.57.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.57.7.2.2"></a><h3>Element Pads</h3>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
 <col align="left" valign="top">
@@ -147,8 +141,11 @@
 <div class="refsect1">
 <a name="gst-plugins-bad-plugins-rtmpsrc.other_details"></a><h2>Types and Values</h2>
 <div class="refsect2">
-<a name="GstRTMPSrc-struct"></a><h3>struct GstRTMPSrc</h3>
-<pre class="programlisting">struct GstRTMPSrc;</pre>
+<a name="GstRTMPSrc"></a><h3>struct GstRTMPSrc</h3>
+<pre class="programlisting">struct GstRTMPSrc {
+  GstPushSrc parent;
+};
+</pre>
 <p>
 </p>
 </div>
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index 260ec71..980a5e4 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Bad Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Bad Plugins 1.0 (1.3.3)
+      for GStreamer Bad Plugins 1.0 (1.3.90)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad/html/</a>.
     </p></div>
diff --git a/docs/plugins/html/index.sgml b/docs/plugins/html/index.sgml
index f2e8c44..98a6520 100644
--- a/docs/plugins/html/index.sgml
+++ b/docs/plugins/html/index.sgml
@@ -577,14 +577,13 @@
 <ANCHOR id="GstMpg123AudioDec-struct" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-mpg123audiodec.html#GstMpg123AudioDec-struct">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.properties" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.properties">
-<ANCHOR id="GstNeonhttpSrc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.other" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.other">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.object-hierarchy" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.object-hierarchy">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.implemented-interfaces" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.implemented-interfaces">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.description" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.description">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.functions_details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.functions_details">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.other_details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.other_details">
-<ANCHOR id="GstNeonhttpSrc-struct" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc-struct">
+<ANCHOR id="GstNeonhttpSrc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc">
 <ANCHOR id="gst-plugins-bad-plugins-neonhttpsrc.property-details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#gst-plugins-bad-plugins-neonhttpsrc.property-details">
 <ANCHOR id="GstNeonhttpSrc--location" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc--location">
 <ANCHOR id="GstNeonhttpSrc--proxy" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-neonhttpsrc.html#GstNeonhttpSrc--proxy">
@@ -685,26 +684,24 @@
 <ANCHOR id="GstRfbSrc--view-only" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rfbsrc.html#GstRfbSrc--view-only">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.properties" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.properties">
-<ANCHOR id="GstRTMPSink" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.other" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.other">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.object-hierarchy" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.object-hierarchy">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.implemented-interfaces" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.implemented-interfaces">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.description" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.description">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.functions_details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.functions_details">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.other_details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.other_details">
-<ANCHOR id="GstRTMPSink-struct" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink-struct">
+<ANCHOR id="GstRTMPSink" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsink.property-details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#gst-plugins-bad-plugins-rtmpsink.property-details">
 <ANCHOR id="GstRTMPSink--location" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsink.html#GstRTMPSink--location">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.properties" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.properties">
-<ANCHOR id="GstRTMPSrc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.other" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.other">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.object-hierarchy" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.object-hierarchy">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.implemented-interfaces" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.implemented-interfaces">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.description" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.description">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.functions_details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.functions_details">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.other_details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.other_details">
-<ANCHOR id="GstRTMPSrc-struct" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc-struct">
+<ANCHOR id="GstRTMPSrc" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc">
 <ANCHOR id="gst-plugins-bad-plugins-rtmpsrc.property-details" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#gst-plugins-bad-plugins-rtmpsrc.property-details">
 <ANCHOR id="GstRTMPSrc--location" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-rtmpsrc.html#GstRTMPSrc--location">
 <ANCHOR id="gst-plugins-bad-plugins-shmsink" href="gst-plugins-bad-plugins-1.0/gst-plugins-bad-plugins-shmsink.html">
diff --git a/docs/plugins/inspect/plugin-accurip.xml b/docs/plugins/inspect/plugin-accurip.xml
index 00c9e09..bf63187 100644
--- a/docs/plugins/inspect/plugin-accurip.xml
+++ b/docs/plugins/inspect/plugin-accurip.xml
@@ -3,7 +3,7 @@
   <description>Computes an AccurateRip CRC</description>
   <filename>../../gst/accurip/.libs/libgstaccurip.so</filename>
   <basename>libgstaccurip.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-adpcmdec.xml b/docs/plugins/inspect/plugin-adpcmdec.xml
index d3aca6c..f3c50bb 100644
--- a/docs/plugins/inspect/plugin-adpcmdec.xml
+++ b/docs/plugins/inspect/plugin-adpcmdec.xml
@@ -3,7 +3,7 @@
   <description>ADPCM decoder</description>
   <filename>../../gst/adpcmdec/.libs/libgstadpcmdec.so</filename>
   <basename>libgstadpcmdec.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-adpcmenc.xml b/docs/plugins/inspect/plugin-adpcmenc.xml
index dfd75f8..282b88d 100644
--- a/docs/plugins/inspect/plugin-adpcmenc.xml
+++ b/docs/plugins/inspect/plugin-adpcmenc.xml
@@ -3,7 +3,7 @@
   <description>ADPCM encoder</description>
   <filename>../../gst/adpcmenc/.libs/libgstadpcmenc.so</filename>
   <basename>libgstadpcmenc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-aiff.xml b/docs/plugins/inspect/plugin-aiff.xml
index f24f385..f26cd2a 100644
--- a/docs/plugins/inspect/plugin-aiff.xml
+++ b/docs/plugins/inspect/plugin-aiff.xml
@@ -3,7 +3,7 @@
   <description>Create and parse Audio Interchange File Format (AIFF) files</description>
   <filename>../../gst/aiff/.libs/libgstaiff.so</filename>
   <basename>libgstaiff.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-asfmux.xml b/docs/plugins/inspect/plugin-asfmux.xml
index 8def0c1..5a48ddd 100644
--- a/docs/plugins/inspect/plugin-asfmux.xml
+++ b/docs/plugins/inspect/plugin-asfmux.xml
@@ -3,7 +3,7 @@
   <description>ASF Muxer Plugin</description>
   <filename>../../gst/asfmux/.libs/libgstasfmux.so</filename>
   <basename>libgstasfmux.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-assrender.xml b/docs/plugins/inspect/plugin-assrender.xml
index d10f30d..01bcbb2 100644
--- a/docs/plugins/inspect/plugin-assrender.xml
+++ b/docs/plugins/inspect/plugin-assrender.xml
@@ -3,7 +3,7 @@
   <description>ASS/SSA subtitle renderer</description>
   <filename>../../ext/assrender/.libs/libgstassrender.so</filename>
   <basename>libgstassrender.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiochannelmix.xml b/docs/plugins/inspect/plugin-audiochannelmix.xml
deleted file mode 100644
index 3598c8b..0000000
--- a/docs/plugins/inspect/plugin-audiochannelmix.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<plugin>
-  <name>audiochannelmix</name>
-  <description>Audio filters from gst-plugins-bad</description>
-  <filename>../../gst/audiofxbad/.libs/libgstaudiofxbad.so</filename>
-  <basename>libgstaudiofxbad.so</basename>
-  <version>1.1.90</version>
-  <license>LGPL</license>
-  <source>gst-plugins-bad</source>
-  <package>GStreamer Bad Plug-ins</package>
-  <origin>Unknown package origin</origin>
-  <elements>
-    <element>
-      <name>audiochannelmix</name>
-      <longname>Simple stereo audio mixer</longname>
-      <class>Audio/Mixer</class>
-      <description>Mixes left/right channels of stereo audio</description>
-      <author>David Schleef &lt;ds@schleef.org&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>audio/x-raw, format=(string)S16LE, rate=(int)[ 1, 2147483647 ], channels=(int)2, layout=(string)interleaved</details>
-        </caps>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>audio/x-raw, format=(string)S16LE, rate=(int)[ 1, 2147483647 ], channels=(int)2, layout=(string)interleaved</details>
-        </caps>
-      </pads>
-    </element>
-  </elements>
-</plugin>
\ No newline at end of file
diff --git a/docs/plugins/inspect/plugin-audiofxbad.xml b/docs/plugins/inspect/plugin-audiofxbad.xml
index 64eae71..ff763b0 100644
--- a/docs/plugins/inspect/plugin-audiofxbad.xml
+++ b/docs/plugins/inspect/plugin-audiofxbad.xml
@@ -3,7 +3,7 @@
   <description>Audio filters from gst-plugins-bad</description>
   <filename>../../gst/audiofxbad/.libs/libgstaudiofxbad.so</filename>
   <basename>libgstaudiofxbad.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-audiomixer.xml b/docs/plugins/inspect/plugin-audiomixer.xml
index bd29c1b..aaaca62 100644
--- a/docs/plugins/inspect/plugin-audiomixer.xml
+++ b/docs/plugins/inspect/plugin-audiomixer.xml
@@ -3,7 +3,7 @@
   <description>Mixes multiple audio streams</description>
   <filename>../../gst/audiomixer/.libs/libgstaudiomixer.so</filename>
   <basename>libgstaudiomixer.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiovisualizers.xml b/docs/plugins/inspect/plugin-audiovisualizers.xml
index 29e0f46..8bb9cad 100644
--- a/docs/plugins/inspect/plugin-audiovisualizers.xml
+++ b/docs/plugins/inspect/plugin-audiovisualizers.xml
@@ -3,7 +3,7 @@
   <description>Creates video visualizations of audio input</description>
   <filename>../../gst/audiovisualizers/.libs/libgstaudiovisualizers.so</filename>
   <basename>libgstaudiovisualizers.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-autoconvert.xml b/docs/plugins/inspect/plugin-autoconvert.xml
index fc77bc3..d7def2c 100644
--- a/docs/plugins/inspect/plugin-autoconvert.xml
+++ b/docs/plugins/inspect/plugin-autoconvert.xml
@@ -3,7 +3,7 @@
   <description>Selects convertor element based on caps</description>
   <filename>../../gst/autoconvert/.libs/libgstautoconvert.so</filename>
   <basename>libgstautoconvert.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-bayer.xml b/docs/plugins/inspect/plugin-bayer.xml
index a8005bd..4adfcb5 100644
--- a/docs/plugins/inspect/plugin-bayer.xml
+++ b/docs/plugins/inspect/plugin-bayer.xml
@@ -3,7 +3,7 @@
   <description>Elements to convert Bayer images</description>
   <filename>../../gst/bayer/.libs/libgstbayer.so</filename>
   <basename>libgstbayer.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-bluez.xml b/docs/plugins/inspect/plugin-bluez.xml
deleted file mode 100644
index 78c2b8a..0000000
--- a/docs/plugins/inspect/plugin-bluez.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<plugin>
-  <name>bluez</name>
-  <description>Bluez-based bluetooth support</description>
-  <filename>../../sys/bluez/.libs/libgstbluez.so</filename>
-  <basename>libgstbluez.so</basename>
-  <version>1.3.0.1</version>
-  <license>LGPL</license>
-  <source>gst-plugins-bad</source>
-  <package>GStreamer Bad Plug-ins git</package>
-  <origin>Unknown package origin</origin>
-  <elements>
-    <element>
-      <name>a2dpsink</name>
-      <longname>Bluetooth A2DP sink</longname>
-      <class>Sink/Audio</class>
-      <description>Plays audio to an A2DP device</description>
-      <author>Marcel Holtmann &lt;marcel@holtmann.org&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>audio/x-sbc, rate=(int){ 16000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ], channel-mode=(string){ mono, dual, stereo, joint }, blocks=(int){ 4, 8, 12, 16 }, subbands=(int){ 4, 8 }, allocation-method=(string){ snr, loudness }, bitpool=(int)[ 2, 64 ]; audio/mpeg</details>
-        </caps>
-      </pads>
-    </element>
-    <element>
-      <name>avdtpsink</name>
-      <longname>Bluetooth AVDTP sink</longname>
-      <class>Sink/Audio</class>
-      <description>Plays audio to an A2DP device</description>
-      <author>Marcel Holtmann &lt;marcel@holtmann.org&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int){ 16000, 32000, 44100, 48000 }, encoding-name=(string)SBC; application/x-rtp, media=(string)audio, payload=(int)14, clock-rate=(int)90000; application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)90000, encoding-name=(string)MPA</details>
-        </caps>
-      </pads>
-    </element>
-    <element>
-      <name>avdtpsrc</name>
-      <longname>Bluetooth AVDTP Source</longname>
-      <class>Source/Audio/Network/RTP</class>
-      <description>Receives audio from an A2DP device</description>
-      <author>Arun Raghavan &lt;arun.raghavan@collabora.co.uk&gt;</author>
-      <pads>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int){ 16000, 32000, 44100, 48000 }, encoding-name=(string)SBC; application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int){ 8000, 11025, 12000, 16000, 22050, 2400, 32000, 44100, 48000, 64000, 88200, 96000 }, encoding-name=(string)MP4A-LATM</details>
-        </caps>
-      </pads>
-    </element>
-  </elements>
-</plugin>
\ No newline at end of file
diff --git a/docs/plugins/inspect/plugin-bz2.xml b/docs/plugins/inspect/plugin-bz2.xml
index 367c4ad..2c793f6 100644
--- a/docs/plugins/inspect/plugin-bz2.xml
+++ b/docs/plugins/inspect/plugin-bz2.xml
@@ -3,7 +3,7 @@
   <description>Compress or decompress streams</description>
   <filename>../../ext/bz2/.libs/libgstbz2.so</filename>
   <basename>libgstbz2.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-camerabin.xml b/docs/plugins/inspect/plugin-camerabin.xml
index cba052b..a6fb24c 100644
--- a/docs/plugins/inspect/plugin-camerabin.xml
+++ b/docs/plugins/inspect/plugin-camerabin.xml
@@ -3,7 +3,7 @@
   <description>Take image snapshots and record movies from camera</description>
   <filename>../../gst/camerabin2/.libs/libgstcamerabin2.so</filename>
   <basename>libgstcamerabin2.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-celt.xml b/docs/plugins/inspect/plugin-celt.xml
deleted file mode 100644
index abd910b..0000000
--- a/docs/plugins/inspect/plugin-celt.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<plugin>
-  <name>celt</name>
-  <description>CELT plugin library</description>
-  <filename>../../ext/celt/.libs/libgstcelt.so</filename>
-  <basename>libgstcelt.so</basename>
-  <version>1.1.2.1</version>
-  <license>LGPL</license>
-  <source>gst-plugins-bad</source>
-  <package>GStreamer Bad Plug-ins git</package>
-  <origin>Unknown package origin</origin>
-  <elements>
-    <element>
-      <name>celtdec</name>
-      <longname>Celt audio decoder</longname>
-      <class>Codec/Decoder/Audio</class>
-      <description>decode celt streams to audio</description>
-      <author>Sebastian Dröge &lt;sebastian.droege@collabora.co.uk&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>audio/x-celt</details>
-        </caps>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)[ 32000, 64000 ], channels=(int)[ 1, 2 ]</details>
-        </caps>
-      </pads>
-    </element>
-    <element>
-      <name>celtenc</name>
-      <longname>Celt audio encoder</longname>
-      <class>Codec/Encoder/Audio</class>
-      <description>Encodes audio in Celt format</description>
-      <author>Sebastian Dröge &lt;sebastian.droege@collabora.co.uk&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)[ 32000, 64000 ], channels=(int)[ 1, 2 ]</details>
-        </caps>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>audio/x-celt, rate=(int)[ 32000, 64000 ], channels=(int)[ 1, 2 ], frame-size=(int)[ 64, 512 ]</details>
-        </caps>
-      </pads>
-    </element>
-  </elements>
-</plugin>
\ No newline at end of file
diff --git a/docs/plugins/inspect/plugin-chromaprint.xml b/docs/plugins/inspect/plugin-chromaprint.xml
index bb75478..bcdf7f4 100644
--- a/docs/plugins/inspect/plugin-chromaprint.xml
+++ b/docs/plugins/inspect/plugin-chromaprint.xml
@@ -3,7 +3,7 @@
   <description>Calculate Chromaprint fingerprint from audio files</description>
   <filename>../../ext/chromaprint/.libs/libgstchromaprint.so</filename>
   <basename>libgstchromaprint.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-coloreffects.xml b/docs/plugins/inspect/plugin-coloreffects.xml
index 0cddc9d..195bfb4 100644
--- a/docs/plugins/inspect/plugin-coloreffects.xml
+++ b/docs/plugins/inspect/plugin-coloreffects.xml
@@ -3,7 +3,7 @@
   <description>Color Look-up Table filters</description>
   <filename>../../gst/coloreffects/.libs/libgstcoloreffects.so</filename>
   <basename>libgstcoloreffects.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-compositor.xml b/docs/plugins/inspect/plugin-compositor.xml
index 5071793..d7121ff 100644
--- a/docs/plugins/inspect/plugin-compositor.xml
+++ b/docs/plugins/inspect/plugin-compositor.xml
@@ -3,7 +3,7 @@
   <description>Compositor</description>
   <filename>../../gst/compositor/.libs/libgstcompositor.so</filename>
   <basename>libgstcompositor.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-curl.xml b/docs/plugins/inspect/plugin-curl.xml
index 8c91d41..18595f9 100644
--- a/docs/plugins/inspect/plugin-curl.xml
+++ b/docs/plugins/inspect/plugin-curl.xml
@@ -3,7 +3,7 @@
   <description>libcurl-based elements</description>
   <filename>../../ext/curl/.libs/libgstcurl.so</filename>
   <basename>libgstcurl.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-daala.xml b/docs/plugins/inspect/plugin-daala.xml
deleted file mode 100644
index 26dbf09..0000000
--- a/docs/plugins/inspect/plugin-daala.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<plugin>
-  <name>daala</name>
-  <description>Daala plugin</description>
-  <filename>../../ext/daala/.libs/libgstdaala.so</filename>
-  <basename>libgstdaala.so</basename>
-  <version>1.1.1.1</version>
-  <license>LGPL</license>
-  <source>gst-plugins-bad</source>
-  <package>GStreamer Bad Plug-ins git</package>
-  <origin>Unknown package origin</origin>
-  <elements>
-    <element>
-      <name>daaladec</name>
-      <longname>Daala video decoder</longname>
-      <class>Codec/Decoder/Video</class>
-      <description>Decode raw Daala streams to raw YUV video</description>
-      <author>Sebastian Dröge &lt;slomo@circular-chaos.org&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>video/x-daala</details>
-        </caps>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>video/x-raw, format=(string){ I420, Y444 }, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ]</details>
-        </caps>
-      </pads>
-    </element>
-    <element>
-      <name>daalaenc</name>
-      <longname>Daala video encoder</longname>
-      <class>Codec/Encoder/Video</class>
-      <description>Encode raw YUV video to a Daala stream</description>
-      <author>Sebastian Dröge &lt;slomo@circular-chaos.org&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>video/x-raw, format=(string){ I420, Y444 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
-        </caps>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>video/x-daala, framerate=(fraction)[ 1/2147483647, 2147483647/1 ], width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ]</details>
-        </caps>
-      </pads>
-    </element>
-  </elements>
-</plugin>
\ No newline at end of file
diff --git a/docs/plugins/inspect/plugin-dashdemux.xml b/docs/plugins/inspect/plugin-dashdemux.xml
index 42f6a91..2faaf29 100644
--- a/docs/plugins/inspect/plugin-dashdemux.xml
+++ b/docs/plugins/inspect/plugin-dashdemux.xml
@@ -3,7 +3,7 @@
   <description>DASH demuxer plugin</description>
   <filename>../../ext/dash/.libs/libgstdashdemux.so</filename>
   <basename>libgstdashdemux.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-dataurisrc.xml b/docs/plugins/inspect/plugin-dataurisrc.xml
index 4d83a57..f13cb38 100644
--- a/docs/plugins/inspect/plugin-dataurisrc.xml
+++ b/docs/plugins/inspect/plugin-dataurisrc.xml
@@ -3,7 +3,7 @@
   <description>data: URI source</description>
   <filename>../../gst/dataurisrc/.libs/libgstdataurisrc.so</filename>
   <basename>libgstdataurisrc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-debugutilsbad.xml b/docs/plugins/inspect/plugin-debugutilsbad.xml
index 37df6b8..b9649bd 100644
--- a/docs/plugins/inspect/plugin-debugutilsbad.xml
+++ b/docs/plugins/inspect/plugin-debugutilsbad.xml
@@ -3,7 +3,7 @@
   <description>Collection of elements that may or may not be useful for debugging</description>
   <filename>../../gst/debugutils/.libs/libgstdebugutilsbad.so</filename>
   <basename>libgstdebugutilsbad.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-decklink.xml b/docs/plugins/inspect/plugin-decklink.xml
index 1a8a1d4..7ff5521 100644
--- a/docs/plugins/inspect/plugin-decklink.xml
+++ b/docs/plugins/inspect/plugin-decklink.xml
@@ -3,7 +3,7 @@
   <description>Blackmagic Decklink plugin</description>
   <filename>../../sys/decklink/.libs/libgstdecklink.so</filename>
   <basename>libgstdecklink.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-dfbvideosink.xml b/docs/plugins/inspect/plugin-dfbvideosink.xml
index c1f4382..0170e86 100644
--- a/docs/plugins/inspect/plugin-dfbvideosink.xml
+++ b/docs/plugins/inspect/plugin-dfbvideosink.xml
@@ -3,7 +3,7 @@
   <description>DirectFB video output plugin</description>
   <filename>../../ext/directfb/.libs/libgstdfbvideosink.so</filename>
   <basename>libgstdfbvideosink.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dtmf.xml b/docs/plugins/inspect/plugin-dtmf.xml
deleted file mode 100644
index af3aa2c..0000000
--- a/docs/plugins/inspect/plugin-dtmf.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<plugin>
-  <name>dtmf</name>
-  <description>DTMF plugins</description>
-  <filename>../../gst/dtmf/.libs/libgstdtmf.so</filename>
-  <basename>libgstdtmf.so</basename>
-  <version>1.1.0.1</version>
-  <license>LGPL</license>
-  <source>gst-plugins-bad</source>
-  <package>GStreamer Bad Plug-ins git</package>
-  <origin>Unknown package origin</origin>
-  <elements>
-    <element>
-      <name>dtmfsrc</name>
-      <longname>DTMF tone generator</longname>
-      <class>Source/Audio</class>
-      <description>Generates DTMF tones</description>
-      <author>Youness Alaoui &lt;youness.alaoui@collabora.co.uk&gt;</author>
-      <pads>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>audio/x-raw, format=(string)S16LE, rate=(int)[ 1, 2147483647 ], channels=(int)1</details>
-        </caps>
-      </pads>
-    </element>
-    <element>
-      <name>rtpdtmfdepay</name>
-      <longname>RTP DTMF packet depayloader</longname>
-      <class>Codec/Depayloader/Network</class>
-      <description>Generates DTMF Sound from telephone-event RTP packets</description>
-      <author>Youness Alaoui &lt;youness.alaoui@collabora.co.uk&gt;</author>
-      <pads>
-        <caps>
-          <name>sink</name>
-          <direction>sink</direction>
-          <presence>always</presence>
-          <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 0, 2147483647 ], encoding-name=(string)TELEPHONE-EVENT</details>
-        </caps>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>audio/x-raw, format=(string)S16LE, rate=(int)[ 1, 2147483647 ], channels=(int)1</details>
-        </caps>
-      </pads>
-    </element>
-    <element>
-      <name>rtpdtmfsrc</name>
-      <longname>RTP DTMF packet generator</longname>
-      <class>Source/Network</class>
-      <description>Generates RTP DTMF packets</description>
-      <author>Zeeshan Ali &lt;zeeshan.ali@nokia.com&gt;</author>
-      <pads>
-        <caps>
-          <name>src</name>
-          <direction>source</direction>
-          <presence>always</presence>
-          <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 0, 2147483647 ], encoding-name=(string)TELEPHONE-EVENT</details>
-        </caps>
-      </pads>
-    </element>
-  </elements>
-</plugin>
\ No newline at end of file
diff --git a/docs/plugins/inspect/plugin-dtsdec.xml b/docs/plugins/inspect/plugin-dtsdec.xml
index 4f348f3..dacd22f 100644
--- a/docs/plugins/inspect/plugin-dtsdec.xml
+++ b/docs/plugins/inspect/plugin-dtsdec.xml
@@ -3,7 +3,7 @@
   <description>Decodes DTS audio streams</description>
   <filename>../../ext/dts/.libs/libgstdtsdec.so</filename>
   <basename>libgstdtsdec.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dvb.xml b/docs/plugins/inspect/plugin-dvb.xml
index 9c2e659..276cf0a 100644
--- a/docs/plugins/inspect/plugin-dvb.xml
+++ b/docs/plugins/inspect/plugin-dvb.xml
@@ -3,7 +3,7 @@
   <description>DVB elements</description>
   <filename>../../sys/dvb/.libs/libgstdvb.so</filename>
   <basename>libgstdvb.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dvbsuboverlay.xml b/docs/plugins/inspect/plugin-dvbsuboverlay.xml
index bbfb1c5..e8767bc 100644
--- a/docs/plugins/inspect/plugin-dvbsuboverlay.xml
+++ b/docs/plugins/inspect/plugin-dvbsuboverlay.xml
@@ -3,7 +3,7 @@
   <description>DVB subtitle renderer</description>
   <filename>../../gst/dvbsuboverlay/.libs/libgstdvbsuboverlay.so</filename>
   <basename>libgstdvbsuboverlay.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dvdspu.xml b/docs/plugins/inspect/plugin-dvdspu.xml
index eaf6a7f..312815d 100644
--- a/docs/plugins/inspect/plugin-dvdspu.xml
+++ b/docs/plugins/inspect/plugin-dvdspu.xml
@@ -3,7 +3,7 @@
   <description>DVD Sub-picture Overlay element</description>
   <filename>../../gst/dvdspu/.libs/libgstdvdspu.so</filename>
   <basename>libgstdvdspu.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-faac.xml b/docs/plugins/inspect/plugin-faac.xml
index 286880f..3575978 100644
--- a/docs/plugins/inspect/plugin-faac.xml
+++ b/docs/plugins/inspect/plugin-faac.xml
@@ -3,7 +3,7 @@
   <description>Free AAC Encoder (FAAC)</description>
   <filename>../../ext/faac/.libs/libgstfaac.so</filename>
   <basename>libgstfaac.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-faad.xml b/docs/plugins/inspect/plugin-faad.xml
index 93d495d..37ef03f 100644
--- a/docs/plugins/inspect/plugin-faad.xml
+++ b/docs/plugins/inspect/plugin-faad.xml
@@ -3,7 +3,7 @@
   <description>Free AAC Decoder (FAAD)</description>
   <filename>../../ext/faad/.libs/libgstfaad.so</filename>
   <basename>libgstfaad.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-fbdevsink.xml b/docs/plugins/inspect/plugin-fbdevsink.xml
index da07409..d69d723 100644
--- a/docs/plugins/inspect/plugin-fbdevsink.xml
+++ b/docs/plugins/inspect/plugin-fbdevsink.xml
@@ -3,7 +3,7 @@
   <description>Linux framebuffer video sink</description>
   <filename>../../sys/fbdev/.libs/libgstfbdevsink.so</filename>
   <basename>libgstfbdevsink.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-festival.xml b/docs/plugins/inspect/plugin-festival.xml
index da0cb67..68562cc 100644
--- a/docs/plugins/inspect/plugin-festival.xml
+++ b/docs/plugins/inspect/plugin-festival.xml
@@ -3,7 +3,7 @@
   <description>Synthesizes plain text into audio</description>
   <filename>../../gst/festival/.libs/libgstfestival.so</filename>
   <basename>libgstfestival.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-fieldanalysis.xml b/docs/plugins/inspect/plugin-fieldanalysis.xml
index f389889..7db644c 100644
--- a/docs/plugins/inspect/plugin-fieldanalysis.xml
+++ b/docs/plugins/inspect/plugin-fieldanalysis.xml
@@ -3,7 +3,7 @@
   <description>Video field analysis</description>
   <filename>../../gst/fieldanalysis/.libs/libgstfieldanalysis.so</filename>
   <basename>libgstfieldanalysis.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer</package>
diff --git a/docs/plugins/inspect/plugin-flite.xml b/docs/plugins/inspect/plugin-flite.xml
index 6198313..9c736a3 100644
--- a/docs/plugins/inspect/plugin-flite.xml
+++ b/docs/plugins/inspect/plugin-flite.xml
@@ -3,7 +3,7 @@
   <description>Flite speech synthesizer plugin</description>
   <filename>../../ext/flite/.libs/libgstflite.so</filename>
   <basename>libgstflite.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-fluidsynthmidi.xml b/docs/plugins/inspect/plugin-fluidsynthmidi.xml
index d3ccf61..211e15b 100644
--- a/docs/plugins/inspect/plugin-fluidsynthmidi.xml
+++ b/docs/plugins/inspect/plugin-fluidsynthmidi.xml
@@ -3,7 +3,7 @@
   <description>Fluidsynth MIDI Plugin</description>
   <filename>../../ext/fluidsynth/.libs/libgstfluidsynthmidi.so</filename>
   <basename>libgstfluidsynthmidi.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-fragmented.xml b/docs/plugins/inspect/plugin-fragmented.xml
index bf99d78..bfb7b6b 100644
--- a/docs/plugins/inspect/plugin-fragmented.xml
+++ b/docs/plugins/inspect/plugin-fragmented.xml
@@ -3,7 +3,7 @@
   <description>Fragmented streaming plugins</description>
   <filename>../../ext/hls/.libs/libgstfragmented.so</filename>
   <basename>libgstfragmented.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-freeverb.xml b/docs/plugins/inspect/plugin-freeverb.xml
index ab97826..a095bc4 100644
--- a/docs/plugins/inspect/plugin-freeverb.xml
+++ b/docs/plugins/inspect/plugin-freeverb.xml
@@ -3,7 +3,7 @@
   <description>Reverberation/room effect</description>
   <filename>../../gst/freeverb/.libs/libgstfreeverb.so</filename>
   <basename>libgstfreeverb.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-frei0r.xml b/docs/plugins/inspect/plugin-frei0r.xml
index dfaf982..dbbc8ab 100644
--- a/docs/plugins/inspect/plugin-frei0r.xml
+++ b/docs/plugins/inspect/plugin-frei0r.xml
@@ -3,7 +3,7 @@
   <description>frei0r plugin library</description>
   <filename>../../gst/frei0r/.libs/libgstfrei0r.so</filename>
   <basename>libgstfrei0r.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gaudieffects.xml b/docs/plugins/inspect/plugin-gaudieffects.xml
index 8fde698..a893cc2 100644
--- a/docs/plugins/inspect/plugin-gaudieffects.xml
+++ b/docs/plugins/inspect/plugin-gaudieffects.xml
@@ -3,7 +3,7 @@
   <description>Gaudi video effects.</description>
   <filename>../../gst/gaudieffects/.libs/libgstgaudieffects.so</filename>
   <basename>libgstgaudieffects.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer</package>
diff --git a/docs/plugins/inspect/plugin-gdp.xml b/docs/plugins/inspect/plugin-gdp.xml
index b6a02c4..b2e192d 100644
--- a/docs/plugins/inspect/plugin-gdp.xml
+++ b/docs/plugins/inspect/plugin-gdp.xml
@@ -3,7 +3,7 @@
   <description>Payload/depayload GDP packets</description>
   <filename>../../gst/gdp/.libs/libgstgdp.so</filename>
   <basename>libgstgdp.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-geometrictransform.xml b/docs/plugins/inspect/plugin-geometrictransform.xml
index 1f0335c..00cebc8 100644
--- a/docs/plugins/inspect/plugin-geometrictransform.xml
+++ b/docs/plugins/inspect/plugin-geometrictransform.xml
@@ -3,7 +3,7 @@
   <description>Various geometric image transform elements</description>
   <filename>../../gst/geometrictransform/.libs/libgstgeometrictransform.so</filename>
   <basename>libgstgeometrictransform.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gmedec.xml b/docs/plugins/inspect/plugin-gmedec.xml
index aa4eac6..e8c7ef2 100644
--- a/docs/plugins/inspect/plugin-gmedec.xml
+++ b/docs/plugins/inspect/plugin-gmedec.xml
@@ -3,7 +3,7 @@
   <description>GME Audio Decoder</description>
   <filename>../../ext/gme/.libs/libgstgme.so</filename>
   <basename>libgstgme.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gsm.xml b/docs/plugins/inspect/plugin-gsm.xml
index bd1435c..48ac5d5 100644
--- a/docs/plugins/inspect/plugin-gsm.xml
+++ b/docs/plugins/inspect/plugin-gsm.xml
@@ -3,7 +3,7 @@
   <description>GSM encoder/decoder</description>
   <filename>../../ext/gsm/.libs/libgstgsm.so</filename>
   <basename>libgstgsm.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gstsiren.xml b/docs/plugins/inspect/plugin-gstsiren.xml
index 965f197..f45973f 100644
--- a/docs/plugins/inspect/plugin-gstsiren.xml
+++ b/docs/plugins/inspect/plugin-gstsiren.xml
@@ -3,7 +3,7 @@
   <description>Siren encoder/decoder/payloader/depayloader plugins</description>
   <filename>../../gst/siren/.libs/libgstsiren.so</filename>
   <basename>libgstsiren.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-id3tag.xml b/docs/plugins/inspect/plugin-id3tag.xml
index 6e05bf8..aa6e3d2 100644
--- a/docs/plugins/inspect/plugin-id3tag.xml
+++ b/docs/plugins/inspect/plugin-id3tag.xml
@@ -3,7 +3,7 @@
   <description>ID3 v1 and v2 muxing plugin</description>
   <filename>../../gst/id3tag/.libs/libgstid3tag.so</filename>
   <basename>libgstid3tag.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-inter.xml b/docs/plugins/inspect/plugin-inter.xml
index ada37f4..58036e3 100644
--- a/docs/plugins/inspect/plugin-inter.xml
+++ b/docs/plugins/inspect/plugin-inter.xml
@@ -3,7 +3,7 @@
   <description>plugin for inter-pipeline communication</description>
   <filename>../../gst/inter/.libs/libgstinter.so</filename>
   <basename>libgstinter.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-interlace.xml b/docs/plugins/inspect/plugin-interlace.xml
index 5b1a8b7..9e31889 100644
--- a/docs/plugins/inspect/plugin-interlace.xml
+++ b/docs/plugins/inspect/plugin-interlace.xml
@@ -3,7 +3,7 @@
   <description>Create an interlaced video stream</description>
   <filename>../../gst/interlace/.libs/libgstinterlace.so</filename>
   <basename>libgstinterlace.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ivfparse.xml b/docs/plugins/inspect/plugin-ivfparse.xml
index bbe47ff..8e4ca77 100644
--- a/docs/plugins/inspect/plugin-ivfparse.xml
+++ b/docs/plugins/inspect/plugin-ivfparse.xml
@@ -3,7 +3,7 @@
   <description>IVF parser</description>
   <filename>../../gst/ivfparse/.libs/libgstivfparse.so</filename>
   <basename>libgstivfparse.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ivtc.xml b/docs/plugins/inspect/plugin-ivtc.xml
index 5b60738..c8233dd 100644
--- a/docs/plugins/inspect/plugin-ivtc.xml
+++ b/docs/plugins/inspect/plugin-ivtc.xml
@@ -3,7 +3,7 @@
   <description>Inverse Telecine</description>
   <filename>../../gst/ivtc/.libs/libgstivtc.so</filename>
   <basename>libgstivtc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-jp2kdecimator.xml b/docs/plugins/inspect/plugin-jp2kdecimator.xml
index 1af4075..e710fd3 100644
--- a/docs/plugins/inspect/plugin-jp2kdecimator.xml
+++ b/docs/plugins/inspect/plugin-jp2kdecimator.xml
@@ -3,7 +3,7 @@
   <description>JPEG2000 decimator</description>
   <filename>../../gst/jp2kdecimator/.libs/libgstjp2kdecimator.so</filename>
   <basename>libgstjp2kdecimator.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-jpegformat.xml b/docs/plugins/inspect/plugin-jpegformat.xml
index 51743fc..19daa7a 100644
--- a/docs/plugins/inspect/plugin-jpegformat.xml
+++ b/docs/plugins/inspect/plugin-jpegformat.xml
@@ -3,7 +3,7 @@
   <description>JPEG interchange format plugin</description>
   <filename>../../gst/jpegformat/.libs/libgstjpegformat.so</filename>
   <basename>libgstjpegformat.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-kate.xml b/docs/plugins/inspect/plugin-kate.xml
index e9bd435..311fbbc 100644
--- a/docs/plugins/inspect/plugin-kate.xml
+++ b/docs/plugins/inspect/plugin-kate.xml
@@ -3,7 +3,7 @@
   <description>Kate plugin</description>
   <filename>../../ext/kate/.libs/libgstkate.so</filename>
   <basename>libgstkate.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ladspa.xml b/docs/plugins/inspect/plugin-ladspa.xml
index 0a0a525..bda1a74 100644
--- a/docs/plugins/inspect/plugin-ladspa.xml
+++ b/docs/plugins/inspect/plugin-ladspa.xml
@@ -3,7 +3,7 @@
   <description>LADSPA plugin</description>
   <filename>../../ext/ladspa/.libs/libgstladspa.so</filename>
   <basename>libgstladspa.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-liveadder.xml b/docs/plugins/inspect/plugin-liveadder.xml
index 65b8317..c671701 100644
--- a/docs/plugins/inspect/plugin-liveadder.xml
+++ b/docs/plugins/inspect/plugin-liveadder.xml
@@ -3,7 +3,7 @@
   <description>Adds multiple live discontinuous streams</description>
   <filename>../../gst/liveadder/.libs/libgstliveadder.so</filename>
   <basename>libgstliveadder.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mfc.xml b/docs/plugins/inspect/plugin-mfc.xml
deleted file mode 100644
index 97f896f..0000000
--- a/docs/plugins/inspect/plugin-mfc.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<plugin>
-  <name>mfc</name>
-  <description>Samsung Exynos MFC plugin</description>
-  <filename>../../sys/mfc/.libs/libgstmfc.so</filename>
-  <basename>libgstmfc.so</basename>
-  <version>1.3.0.1</version>
-  <license>LGPL</license>
-  <source>gst-plugins-bad</source>
-  <package>GStreamer Bad Plug-ins git</package>
-  <origin>Unknown package origin</origin>
-  <elements>
-  </elements>
-</plugin>
\ No newline at end of file
diff --git a/docs/plugins/inspect/plugin-midi.xml b/docs/plugins/inspect/plugin-midi.xml
index 2b2a9e5..a94096b 100644
--- a/docs/plugins/inspect/plugin-midi.xml
+++ b/docs/plugins/inspect/plugin-midi.xml
@@ -3,7 +3,7 @@
   <description>Parse MIDI files</description>
   <filename>../../gst/midi/.libs/libgstmidi.so</filename>
   <basename>libgstmidi.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mimic.xml b/docs/plugins/inspect/plugin-mimic.xml
index 2eed0b2..ce6d24d 100644
--- a/docs/plugins/inspect/plugin-mimic.xml
+++ b/docs/plugins/inspect/plugin-mimic.xml
@@ -3,7 +3,7 @@
   <description>Mimic codec</description>
   <filename>../../ext/mimic/.libs/libgstmimic.so</filename>
   <basename>libgstmimic.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mms.xml b/docs/plugins/inspect/plugin-mms.xml
index 6d3f2d0..c03d508 100644
--- a/docs/plugins/inspect/plugin-mms.xml
+++ b/docs/plugins/inspect/plugin-mms.xml
@@ -3,7 +3,7 @@
   <description>Microsoft Multi Media Server streaming protocol support</description>
   <filename>../../ext/libmms/.libs/libgstmms.so</filename>
   <basename>libgstmms.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-modplug.xml b/docs/plugins/inspect/plugin-modplug.xml
index 031db4b..543066a 100644
--- a/docs/plugins/inspect/plugin-modplug.xml
+++ b/docs/plugins/inspect/plugin-modplug.xml
@@ -3,7 +3,7 @@
   <description>.MOD audio decoding</description>
   <filename>../../ext/modplug/.libs/libgstmodplug.so</filename>
   <basename>libgstmodplug.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mpeg2enc.xml b/docs/plugins/inspect/plugin-mpeg2enc.xml
index 16e66fa..4bc7ac8 100644
--- a/docs/plugins/inspect/plugin-mpeg2enc.xml
+++ b/docs/plugins/inspect/plugin-mpeg2enc.xml
@@ -3,7 +3,7 @@
   <description>High-quality MPEG-1/2 video encoder</description>
   <filename>../../ext/mpeg2enc/.libs/libgstmpeg2enc.so</filename>
   <basename>libgstmpeg2enc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mpegpsdemux.xml b/docs/plugins/inspect/plugin-mpegpsdemux.xml
index ac299de..8c1dea3 100644
--- a/docs/plugins/inspect/plugin-mpegpsdemux.xml
+++ b/docs/plugins/inspect/plugin-mpegpsdemux.xml
@@ -3,7 +3,7 @@
   <description>MPEG-PS demuxer</description>
   <filename>../../gst/mpegdemux/.libs/libgstmpegpsdemux.so</filename>
   <basename>libgstmpegpsdemux.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>unknown</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mpegpsmux.xml b/docs/plugins/inspect/plugin-mpegpsmux.xml
index 046c173..862bb23 100644
--- a/docs/plugins/inspect/plugin-mpegpsmux.xml
+++ b/docs/plugins/inspect/plugin-mpegpsmux.xml
@@ -3,7 +3,7 @@
   <description>MPEG-PS muxer</description>
   <filename>../../gst/mpegpsmux/.libs/libgstmpegpsmux.so</filename>
   <basename>libgstmpegpsmux.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mpegtsdemux.xml b/docs/plugins/inspect/plugin-mpegtsdemux.xml
index 029acf0..8fee6b1 100644
--- a/docs/plugins/inspect/plugin-mpegtsdemux.xml
+++ b/docs/plugins/inspect/plugin-mpegtsdemux.xml
@@ -3,7 +3,7 @@
   <description>MPEG TS demuxer</description>
   <filename>../../gst/mpegtsdemux/.libs/libgstmpegtsdemux.so</filename>
   <basename>libgstmpegtsdemux.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mpegtsmux.xml b/docs/plugins/inspect/plugin-mpegtsmux.xml
index 4ae76c4..6dbec29 100644
--- a/docs/plugins/inspect/plugin-mpegtsmux.xml
+++ b/docs/plugins/inspect/plugin-mpegtsmux.xml
@@ -3,7 +3,7 @@
   <description>MPEG-TS muxer</description>
   <filename>../../gst/mpegtsmux/.libs/libgstmpegtsmux.so</filename>
   <basename>libgstmpegtsmux.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mpg123.xml b/docs/plugins/inspect/plugin-mpg123.xml
index 50f26e8..d397019 100644
--- a/docs/plugins/inspect/plugin-mpg123.xml
+++ b/docs/plugins/inspect/plugin-mpg123.xml
@@ -3,7 +3,7 @@
   <description>mp3 decoding based on the mpg123 library</description>
   <filename>../../ext/mpg123/.libs/libgstmpg123.so</filename>
   <basename>libgstmpg123.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mplex.xml b/docs/plugins/inspect/plugin-mplex.xml
index a21eb03..5ed2063 100644
--- a/docs/plugins/inspect/plugin-mplex.xml
+++ b/docs/plugins/inspect/plugin-mplex.xml
@@ -3,7 +3,7 @@
   <description>High-quality MPEG/DVD/SVCD/VCD video/audio multiplexer</description>
   <filename>../../ext/mplex/.libs/libgstmplex.so</filename>
   <basename>libgstmplex.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mxf.xml b/docs/plugins/inspect/plugin-mxf.xml
index ad4b1f0..d8662a0 100644
--- a/docs/plugins/inspect/plugin-mxf.xml
+++ b/docs/plugins/inspect/plugin-mxf.xml
@@ -3,7 +3,7 @@
   <description>MXF plugin library</description>
   <filename>../../gst/mxf/.libs/libgstmxf.so</filename>
   <basename>libgstmxf.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ofa.xml b/docs/plugins/inspect/plugin-ofa.xml
index bd54b01..f9ba66e 100644
--- a/docs/plugins/inspect/plugin-ofa.xml
+++ b/docs/plugins/inspect/plugin-ofa.xml
@@ -3,7 +3,7 @@
   <description>Calculate MusicIP fingerprint from audio files</description>
   <filename>../../ext/ofa/.libs/libgstofa.so</filename>
   <basename>libgstofa.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-openal.xml b/docs/plugins/inspect/plugin-openal.xml
index b174847..a88a7d3 100644
--- a/docs/plugins/inspect/plugin-openal.xml
+++ b/docs/plugins/inspect/plugin-openal.xml
@@ -3,7 +3,7 @@
   <description>OpenAL plugin library</description>
   <filename>../../ext/openal/.libs/libgstopenal.so</filename>
   <basename>libgstopenal.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-opencv.xml b/docs/plugins/inspect/plugin-opencv.xml
index fc6b1fe..b1558c0 100644
--- a/docs/plugins/inspect/plugin-opencv.xml
+++ b/docs/plugins/inspect/plugin-opencv.xml
@@ -3,7 +3,7 @@
   <description>GStreamer OpenCV Plugins</description>
   <filename>../../ext/opencv/.libs/libgstopencv.so</filename>
   <basename>libgstopencv.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-openexr.xml b/docs/plugins/inspect/plugin-openexr.xml
index 012a77f..d3c482d 100644
--- a/docs/plugins/inspect/plugin-openexr.xml
+++ b/docs/plugins/inspect/plugin-openexr.xml
@@ -3,7 +3,7 @@
   <description>OpenEXR image plugin</description>
   <filename>../../ext/openexr/.libs/libgstopenexr.so</filename>
   <basename>libgstopenexr.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-opengl.xml b/docs/plugins/inspect/plugin-opengl.xml
index 44a2344..6a4d476 100644
--- a/docs/plugins/inspect/plugin-opengl.xml
+++ b/docs/plugins/inspect/plugin-opengl.xml
@@ -3,7 +3,7 @@
   <description>OpenGL plugin</description>
   <filename>../../ext/gl/.libs/libgstopengl.so</filename>
   <basename>libgstopengl.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-openjpeg.xml b/docs/plugins/inspect/plugin-openjpeg.xml
index 5d20601..43ce926 100644
--- a/docs/plugins/inspect/plugin-openjpeg.xml
+++ b/docs/plugins/inspect/plugin-openjpeg.xml
@@ -3,7 +3,7 @@
   <description>OpenJPEG-based JPEG2000 image decoder/encoder</description>
   <filename>../../ext/openjpeg/.libs/libgstopenjpeg.so</filename>
   <basename>libgstopenjpeg.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-opus.xml b/docs/plugins/inspect/plugin-opus.xml
index ec432af..6d70a39 100644
--- a/docs/plugins/inspect/plugin-opus.xml
+++ b/docs/plugins/inspect/plugin-opus.xml
@@ -3,7 +3,7 @@
   <description>OPUS plugin library</description>
   <filename>../../ext/opus/.libs/libgstopus.so</filename>
   <basename>libgstopus.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-pcapparse.xml b/docs/plugins/inspect/plugin-pcapparse.xml
index 7670b8f..50be172 100644
--- a/docs/plugins/inspect/plugin-pcapparse.xml
+++ b/docs/plugins/inspect/plugin-pcapparse.xml
@@ -3,7 +3,7 @@
   <description>Element parsing raw pcap streams</description>
   <filename>../../gst/pcapparse/.libs/libgstpcapparse.so</filename>
   <basename>libgstpcapparse.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer</package>
diff --git a/docs/plugins/inspect/plugin-pnm.xml b/docs/plugins/inspect/plugin-pnm.xml
index f688679..67a2a77 100644
--- a/docs/plugins/inspect/plugin-pnm.xml
+++ b/docs/plugins/inspect/plugin-pnm.xml
@@ -3,7 +3,7 @@
   <description>PNM plugin</description>
   <filename>../../gst/pnm/.libs/libgstpnm.so</filename>
   <basename>libgstpnm.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rawparse.xml b/docs/plugins/inspect/plugin-rawparse.xml
index 9e8defd..c3bf12a 100644
--- a/docs/plugins/inspect/plugin-rawparse.xml
+++ b/docs/plugins/inspect/plugin-rawparse.xml
@@ -3,7 +3,7 @@
   <description>Parses byte streams into raw frames</description>
   <filename>../../gst/rawparse/.libs/libgstrawparse.so</filename>
   <basename>libgstrawparse.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-removesilence.xml b/docs/plugins/inspect/plugin-removesilence.xml
index 8938732..55f9817 100644
--- a/docs/plugins/inspect/plugin-removesilence.xml
+++ b/docs/plugins/inspect/plugin-removesilence.xml
@@ -3,7 +3,7 @@
   <description>Removes silence from an audio stream</description>
   <filename>../../gst/removesilence/.libs/libgstremovesilence.so</filename>
   <basename>libgstremovesilence.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-resindvd.xml b/docs/plugins/inspect/plugin-resindvd.xml
index 6081e01..dcfd9ba 100644
--- a/docs/plugins/inspect/plugin-resindvd.xml
+++ b/docs/plugins/inspect/plugin-resindvd.xml
@@ -3,7 +3,7 @@
   <description>Resin DVD playback elements</description>
   <filename>../../ext/resindvd/.libs/libgstresindvd.so</filename>
   <basename>libgstresindvd.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer</package>
diff --git a/docs/plugins/inspect/plugin-rfbsrc.xml b/docs/plugins/inspect/plugin-rfbsrc.xml
index 16adacf..fd99358 100644
--- a/docs/plugins/inspect/plugin-rfbsrc.xml
+++ b/docs/plugins/inspect/plugin-rfbsrc.xml
@@ -3,7 +3,7 @@
   <description>Connects to a VNC server and decodes RFB stream</description>
   <filename>../../gst/librfb/.libs/libgstrfbsrc.so</filename>
   <basename>libgstrfbsrc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rsvg.xml b/docs/plugins/inspect/plugin-rsvg.xml
index 7bcaade..1b11d11 100644
--- a/docs/plugins/inspect/plugin-rsvg.xml
+++ b/docs/plugins/inspect/plugin-rsvg.xml
@@ -3,7 +3,7 @@
   <description>RSVG plugin library</description>
   <filename>../../ext/rsvg/.libs/libgstrsvg.so</filename>
   <basename>libgstrsvg.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-sbc.xml b/docs/plugins/inspect/plugin-sbc.xml
index a68eb0a..3d5693a 100644
--- a/docs/plugins/inspect/plugin-sbc.xml
+++ b/docs/plugins/inspect/plugin-sbc.xml
@@ -3,7 +3,7 @@
   <description>SBC bluetooth audio support</description>
   <filename>../../ext/sbc/.libs/libgstsbc.so</filename>
   <basename>libgstsbc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-schro.xml b/docs/plugins/inspect/plugin-schro.xml
index d69ea35..f77b810 100644
--- a/docs/plugins/inspect/plugin-schro.xml
+++ b/docs/plugins/inspect/plugin-schro.xml
@@ -3,7 +3,7 @@
   <description>Schroedinger plugin</description>
   <filename>../../ext/schroedinger/.libs/libgstschro.so</filename>
   <basename>libgstschro.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-sdp.xml b/docs/plugins/inspect/plugin-sdp.xml
index c4183bd..2612b48 100644
--- a/docs/plugins/inspect/plugin-sdp.xml
+++ b/docs/plugins/inspect/plugin-sdp.xml
@@ -3,7 +3,7 @@
   <description>configure streaming sessions using SDP</description>
   <filename>../../gst/sdp/.libs/libgstsdpelem.so</filename>
   <basename>libgstsdpelem.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-segmentclip.xml b/docs/plugins/inspect/plugin-segmentclip.xml
index 03f6ca1..e4566e4 100644
--- a/docs/plugins/inspect/plugin-segmentclip.xml
+++ b/docs/plugins/inspect/plugin-segmentclip.xml
@@ -3,7 +3,7 @@
   <description>Segment clip elements</description>
   <filename>../../gst/segmentclip/.libs/libgstsegmentclip.so</filename>
   <basename>libgstsegmentclip.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-shm.xml b/docs/plugins/inspect/plugin-shm.xml
index c007fc0..5285d14 100644
--- a/docs/plugins/inspect/plugin-shm.xml
+++ b/docs/plugins/inspect/plugin-shm.xml
@@ -3,7 +3,7 @@
   <description>shared memory sink source</description>
   <filename>../../sys/shm/.libs/libgstshm.so</filename>
   <basename>libgstshm.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-smooth.xml b/docs/plugins/inspect/plugin-smooth.xml
index 75cae9a..29107fe 100644
--- a/docs/plugins/inspect/plugin-smooth.xml
+++ b/docs/plugins/inspect/plugin-smooth.xml
@@ -3,7 +3,7 @@
   <description>Apply a smooth filter to an image</description>
   <filename>../../gst/smooth/.libs/libgstsmooth.so</filename>
   <basename>libgstsmooth.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-smoothstreaming.xml b/docs/plugins/inspect/plugin-smoothstreaming.xml
index 6d83eae..cfe6b70 100644
--- a/docs/plugins/inspect/plugin-smoothstreaming.xml
+++ b/docs/plugins/inspect/plugin-smoothstreaming.xml
@@ -3,7 +3,7 @@
   <description>Microsoft&apos;s Smooth Streaming format support </description>
   <filename>../../ext/smoothstreaming/.libs/libgstsmoothstreaming.so</filename>
   <basename>libgstsmoothstreaming.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-sndfile.xml b/docs/plugins/inspect/plugin-sndfile.xml
index af29310..219f827 100644
--- a/docs/plugins/inspect/plugin-sndfile.xml
+++ b/docs/plugins/inspect/plugin-sndfile.xml
@@ -3,7 +3,7 @@
   <description>use libsndfile to read and write various audio formats</description>
   <filename>../../ext/sndfile/.libs/libgstsndfile.so</filename>
   <basename>libgstsndfile.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-soundtouch.xml b/docs/plugins/inspect/plugin-soundtouch.xml
index 08df2bf..57c1bc2 100644
--- a/docs/plugins/inspect/plugin-soundtouch.xml
+++ b/docs/plugins/inspect/plugin-soundtouch.xml
@@ -3,7 +3,7 @@
   <description>Audio Pitch Controller &amp; BPM Detection</description>
   <filename>../../ext/soundtouch/.libs/libgstsoundtouch.so</filename>
   <basename>libgstsoundtouch.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-spandsp.xml b/docs/plugins/inspect/plugin-spandsp.xml
index ff36463..a92a2f8 100644
--- a/docs/plugins/inspect/plugin-spandsp.xml
+++ b/docs/plugins/inspect/plugin-spandsp.xml
@@ -3,7 +3,7 @@
   <description>libspandsp plugin</description>
   <filename>../../ext/spandsp/.libs/libgstspandsp.so</filename>
   <basename>libgstspandsp.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-speed.xml b/docs/plugins/inspect/plugin-speed.xml
index 3609588..d3405c6 100644
--- a/docs/plugins/inspect/plugin-speed.xml
+++ b/docs/plugins/inspect/plugin-speed.xml
@@ -3,7 +3,7 @@
   <description>Set speed/pitch on audio/raw streams (resampler)</description>
   <filename>../../gst/speed/.libs/libgstspeed.so</filename>
   <basename>libgstspeed.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-srtp.xml b/docs/plugins/inspect/plugin-srtp.xml
index f761293..9e8da8d 100644
--- a/docs/plugins/inspect/plugin-srtp.xml
+++ b/docs/plugins/inspect/plugin-srtp.xml
@@ -3,7 +3,7 @@
   <description>GStreamer SRTP</description>
   <filename>../../ext/srtp/.libs/libgstsrtp.so</filename>
   <basename>libgstsrtp.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer</package>
diff --git a/docs/plugins/inspect/plugin-stereo.xml b/docs/plugins/inspect/plugin-stereo.xml
index 78a1a1b..f75d9d1 100644
--- a/docs/plugins/inspect/plugin-stereo.xml
+++ b/docs/plugins/inspect/plugin-stereo.xml
@@ -3,7 +3,7 @@
   <description>Muck with the stereo signal, enhance it&apos;s &apos;stereo-ness&apos;</description>
   <filename>../../gst/stereo/.libs/libgststereo.so</filename>
   <basename>libgststereo.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-subenc.xml b/docs/plugins/inspect/plugin-subenc.xml
index bd25909..b813d20 100644
--- a/docs/plugins/inspect/plugin-subenc.xml
+++ b/docs/plugins/inspect/plugin-subenc.xml
@@ -3,7 +3,7 @@
   <description>subtitle encoders</description>
   <filename>../../gst/subenc/.libs/libgstsubenc.so</filename>
   <basename>libgstsubenc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-uvch264.xml b/docs/plugins/inspect/plugin-uvch264.xml
index 7dcbee5..d3d6eab 100644
--- a/docs/plugins/inspect/plugin-uvch264.xml
+++ b/docs/plugins/inspect/plugin-uvch264.xml
@@ -3,7 +3,7 @@
   <description>UVC compliant H264 encoding cameras plugin</description>
   <filename>../../sys/uvch264/.libs/libgstuvch264.so</filename>
   <basename>libgstuvch264.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-vdpau.xml b/docs/plugins/inspect/plugin-vdpau.xml
index 3d5eb90..6a793de 100644
--- a/docs/plugins/inspect/plugin-vdpau.xml
+++ b/docs/plugins/inspect/plugin-vdpau.xml
@@ -3,7 +3,7 @@
   <description>Various elements utilizing VDPAU</description>
   <filename>../../sys/vdpau/.libs/libgstvdpau.so</filename>
   <basename>libgstvdpau.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer</package>
diff --git a/docs/plugins/inspect/plugin-videofiltersbad.xml b/docs/plugins/inspect/plugin-videofiltersbad.xml
index 8b8fb18..977f81c 100644
--- a/docs/plugins/inspect/plugin-videofiltersbad.xml
+++ b/docs/plugins/inspect/plugin-videofiltersbad.xml
@@ -3,7 +3,7 @@
   <description>Video filters in gst-plugins-bad</description>
   <filename>../../gst/videofilters/.libs/libgstvideofiltersbad.so</filename>
   <basename>libgstvideofiltersbad.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-videoparsersbad.xml b/docs/plugins/inspect/plugin-videoparsersbad.xml
index 9d819d1..2ffaf9d 100644
--- a/docs/plugins/inspect/plugin-videoparsersbad.xml
+++ b/docs/plugins/inspect/plugin-videoparsersbad.xml
@@ -3,7 +3,7 @@
   <description>videoparsers</description>
   <filename>../../gst/videoparsers/.libs/libgstvideoparsersbad.so</filename>
   <basename>libgstvideoparsersbad.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videosignal.xml b/docs/plugins/inspect/plugin-videosignal.xml
index e239223..1f2da66 100644
--- a/docs/plugins/inspect/plugin-videosignal.xml
+++ b/docs/plugins/inspect/plugin-videosignal.xml
@@ -3,7 +3,7 @@
   <description>Various video signal analysers</description>
   <filename>../../gst/videosignal/.libs/libgstvideosignal.so</filename>
   <basename>libgstvideosignal.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-vmnc.xml b/docs/plugins/inspect/plugin-vmnc.xml
index 8b4b977..aa09844 100644
--- a/docs/plugins/inspect/plugin-vmnc.xml
+++ b/docs/plugins/inspect/plugin-vmnc.xml
@@ -3,7 +3,7 @@
   <description>VmWare Video Codec plugins</description>
   <filename>../../gst/vmnc/.libs/libgstvmnc.so</filename>
   <basename>libgstvmnc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-voaacenc.xml b/docs/plugins/inspect/plugin-voaacenc.xml
index 4083841..02ccc34 100644
--- a/docs/plugins/inspect/plugin-voaacenc.xml
+++ b/docs/plugins/inspect/plugin-voaacenc.xml
@@ -3,7 +3,7 @@
   <description>AAC audio encoder</description>
   <filename>../../ext/voaacenc/.libs/libgstvoaacenc.so</filename>
   <basename>libgstvoaacenc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-voamrwbenc.xml b/docs/plugins/inspect/plugin-voamrwbenc.xml
index 0ec9f12..ea70b7a 100644
--- a/docs/plugins/inspect/plugin-voamrwbenc.xml
+++ b/docs/plugins/inspect/plugin-voamrwbenc.xml
@@ -3,7 +3,7 @@
   <description>Adaptive Multi-Rate Wide-Band Encoder</description>
   <filename>../../ext/voamrwbenc/.libs/libgstvoamrwbenc.so</filename>
   <basename>libgstvoamrwbenc.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>unknown</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-waylandsink.xml b/docs/plugins/inspect/plugin-waylandsink.xml
index 9d34c94..4561230 100644
--- a/docs/plugins/inspect/plugin-waylandsink.xml
+++ b/docs/plugins/inspect/plugin-waylandsink.xml
@@ -3,7 +3,7 @@
   <description>Wayland Video Sink</description>
   <filename>../../ext/wayland/.libs/libgstwaylandsink.so</filename>
   <basename>libgstwaylandsink.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-webp.xml b/docs/plugins/inspect/plugin-webp.xml
index 8543e04..0898272 100644
--- a/docs/plugins/inspect/plugin-webp.xml
+++ b/docs/plugins/inspect/plugin-webp.xml
@@ -3,7 +3,7 @@
   <description>WebP plugin</description>
   <filename>../../ext/webp/.libs/libgstwebp.so</filename>
   <basename>libgstwebp.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wildmidi.xml b/docs/plugins/inspect/plugin-wildmidi.xml
index ba61170..53cfef7 100644
--- a/docs/plugins/inspect/plugin-wildmidi.xml
+++ b/docs/plugins/inspect/plugin-wildmidi.xml
@@ -3,7 +3,7 @@
   <description>Wildmidi Plugin</description>
   <filename>../../ext/timidity/.libs/libgstwildmidi.so</filename>
   <basename>libgstwildmidi.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-y4mdec.xml b/docs/plugins/inspect/plugin-y4mdec.xml
index f49fd54..f85b05f 100644
--- a/docs/plugins/inspect/plugin-y4mdec.xml
+++ b/docs/plugins/inspect/plugin-y4mdec.xml
@@ -3,7 +3,7 @@
   <description>Demuxes/decodes YUV4MPEG streams</description>
   <filename>../../gst/y4m/.libs/libgsty4mdec.so</filename>
   <basename>libgsty4mdec.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-yadif.xml b/docs/plugins/inspect/plugin-yadif.xml
index c847663..6f07282 100644
--- a/docs/plugins/inspect/plugin-yadif.xml
+++ b/docs/plugins/inspect/plugin-yadif.xml
@@ -3,7 +3,7 @@
   <description>YADIF deinterlacing filter</description>
   <filename>../../gst/yadif/.libs/libgstyadif.so</filename>
   <basename>libgstyadif.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>GPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins</package>
diff --git a/docs/plugins/inspect/plugin-zbar.xml b/docs/plugins/inspect/plugin-zbar.xml
index 63236c1..99d2446 100644
--- a/docs/plugins/inspect/plugin-zbar.xml
+++ b/docs/plugins/inspect/plugin-zbar.xml
@@ -3,7 +3,7 @@
   <description>zbar barcode scanner</description>
   <filename>../../ext/zbar/.libs/libgstzbar.so</filename>
   <basename>libgstzbar.so</basename>
-  <version>1.3.3</version>
+  <version>1.3.90</version>
   <license>LGPL</license>
   <source>gst-plugins-bad</source>
   <package>GStreamer Bad Plug-ins source release</package>
diff --git a/ext/curl/gstcurlftpsink.c b/ext/curl/gstcurlftpsink.c
index 64ad0bc..995fe38 100644
--- a/ext/curl/gstcurlftpsink.c
+++ b/ext/curl/gstcurlftpsink.c
@@ -185,7 +185,6 @@
     gchar *rename_to = NULL;
     gchar *uploadfile_as = NULL;
     gchar *last_slash = NULL;
-    gchar *dir_name = NULL;
     gchar *tmpfile_name = NULL;
 
     if (sink->headerlist != NULL) {
@@ -204,57 +203,54 @@
 
     last_slash = strrchr (basesink->file_name, '/');
     if (last_slash != NULL) {
-      dir_name =
+      gchar *dir_name =
           g_strndup (basesink->file_name, last_slash - basesink->file_name);
       rename_to = g_strdup_printf ("%s%s", RENAME_TO, last_slash + 1);
       uploadfile_as = g_strdup_printf ("%s/%s", dir_name, tmpfile_name);
+      g_free (dir_name);
     } else {
       rename_to = g_strdup_printf ("%s%s", RENAME_TO, basesink->file_name);
       uploadfile_as = g_strdup_printf ("%s", tmpfile_name);
     }
+    g_free (tmpfile_name);
 
     tmp = g_strdup_printf ("%s%s", basesink->url, uploadfile_as);
+    g_free (uploadfile_as);
+
+    sink->headerlist = curl_slist_append (sink->headerlist, rename_from);
+    sink->headerlist = curl_slist_append (sink->headerlist, rename_to);
+    g_free (rename_from);
+    g_free (rename_to);
 
     res = curl_easy_setopt (basesink->curl, CURLOPT_URL, tmp);
+    g_free (tmp);
     if (res != CURLE_OK) {
-      g_free (tmp);
       basesink->error = g_strdup_printf ("failed to set URL: %s",
           curl_easy_strerror (res));
       return FALSE;
     }
 
-    sink->headerlist = curl_slist_append (sink->headerlist, rename_from);
-    sink->headerlist = curl_slist_append (sink->headerlist, rename_to);
-
     res = curl_easy_setopt (basesink->curl, CURLOPT_POSTQUOTE, sink->headerlist);
     if (res != CURLE_OK) {
-      g_free (tmp);
       basesink->error = g_strdup_printf ("failed to set post quote: %s",
           curl_easy_strerror (res));
       return FALSE;
     }
 
-    g_free (rename_from);
-    g_free (rename_to);
-    g_free (uploadfile_as);
-    g_free (dir_name);
-    g_free (tmpfile_name);
     if (last_slash != NULL) {
       *last_slash = '\0';
     }
   } else {
     tmp = g_strdup_printf ("%s%s", basesink->url, basesink->file_name);
     res = curl_easy_setopt (basesink->curl, CURLOPT_URL, tmp);
+    g_free (tmp);
     if (res != CURLE_OK) {
-      g_free (tmp);
       basesink->error = g_strdup_printf ("failed to set URL: %s",
           curl_easy_strerror (res));
       return FALSE;
     }
   }
 
-  g_free (tmp);
-
   return TRUE;
 }
 
diff --git a/ext/curl/gstcurlsftpsink.c b/ext/curl/gstcurlsftpsink.c
index 831c110..961ad43 100644
--- a/ext/curl/gstcurlsftpsink.c
+++ b/ext/curl/gstcurlsftpsink.c
@@ -140,15 +140,14 @@
   gchar *tmp = g_strdup_printf ("%s%s", basesink->url, basesink->file_name);
   CURLcode curl_err = CURLE_OK;
 
-  if ((curl_err =
-          curl_easy_setopt (basesink->curl, CURLOPT_URL, tmp)) != CURLE_OK) {
+  curl_err = curl_easy_setopt (basesink->curl, CURLOPT_URL, tmp);
+  g_free (tmp);
+  if (curl_err != CURLE_OK) {
     basesink->error = g_strdup_printf ("failed to set URL: %s",
         curl_easy_strerror (curl_err));
     return FALSE;
   }
 
-  g_free (tmp);
-
   return TRUE;
 }
 
diff --git a/ext/gl/Makefile.am b/ext/gl/Makefile.am
index 66537e6..7ec63b3 100644
--- a/ext/gl/Makefile.am
+++ b/ext/gl/Makefile.am
@@ -7,8 +7,6 @@
 # full opengl required
 if USE_OPENGL
 OPENGL_SOURCES =  \
-	gstglfiltershader.c \
-	gstglfiltershader.h \
 	gstglfilterblur.c \
 	gstglfilterblur.h \
 	gstglfiltersobel.c \
@@ -29,8 +27,6 @@
 	gstgltestsrc.h \
 	gstglmosaic.c \
 	gstglmosaic.h \
-	gstglvideomixer.c \
-	gstglvideomixer.h \
 	effects/gstgleffectscurves.h \
 	effects/gstgleffectstretch.c \
 	effects/gstgleffecttunnel.c \
@@ -74,6 +70,10 @@
 	effects/gstgleffectsqueeze.c \
 	gstglcolorscale.c \
 	gstglcolorscale.h \
+	gstglvideomixer.c \
+	gstglvideomixer.h \
+	gstglfiltershader.c \
+	gstglfiltershader.h \
 	$(OPENGL_SOURCES)
 
 if HAVE_GRAPHENE
diff --git a/ext/gl/Makefile.in b/ext/gl/Makefile.in
index f1411fb..316dfcc 100644
--- a/ext/gl/Makefile.in
+++ b/ext/gl/Makefile.in
@@ -178,19 +178,19 @@
 	gstgleffects.c gstgleffects.h effects/gstgleffectssources.c \
 	effects/gstgleffectssources.h effects/gstgleffectidentity.c \
 	effects/gstgleffectmirror.c effects/gstgleffectsqueeze.c \
-	gstglcolorscale.c gstglcolorscale.h gstglfiltershader.c \
-	gstglfiltershader.h gstglfilterblur.c gstglfilterblur.h \
-	gstglfiltersobel.c gstglfiltersobel.h gstglfilterlaplacian.c \
+	gstglcolorscale.c gstglcolorscale.h gstglvideomixer.c \
+	gstglvideomixer.h gstglfiltershader.c gstglfiltershader.h \
+	gstglfilterblur.c gstglfilterblur.h gstglfiltersobel.c \
+	gstglfiltersobel.h gstglfilterlaplacian.c \
 	gstglfilterlaplacian.h gstglfilterglass.c gstglfilterglass.h \
 	gstglfilterapp.c gstglfilterapp.h gstglfilterreflectedscreen.c \
 	gstglfilterreflectedscreen.h gstgldeinterlace.c \
 	gstgldeinterlace.h gltestsrc.c gltestsrc.h gstgltestsrc.c \
-	gstgltestsrc.h gstglmosaic.c gstglmosaic.h gstglvideomixer.c \
-	gstglvideomixer.h effects/gstgleffectscurves.h \
-	effects/gstgleffectstretch.c effects/gstgleffecttunnel.c \
-	effects/gstgleffectfisheye.c effects/gstgleffecttwirl.c \
-	effects/gstgleffectbulge.c effects/gstgleffectsquare.c \
-	effects/gstgleffectlumatocurve.c \
+	gstgltestsrc.h gstglmosaic.c gstglmosaic.h \
+	effects/gstgleffectscurves.h effects/gstgleffectstretch.c \
+	effects/gstgleffecttunnel.c effects/gstgleffectfisheye.c \
+	effects/gstgleffecttwirl.c effects/gstgleffectbulge.c \
+	effects/gstgleffectsquare.c effects/gstgleffectlumatocurve.c \
 	effects/gstgleffectlumatocurve.h \
 	effects/gstgleffectrgbtocurve.c effects/gstgleffectsin.c \
 	effects/gstgleffectglow.c effects/gstgleffectxray.c \
@@ -201,8 +201,7 @@
 @HAVE_PNG_TRUE@@USE_OPENGL_TRUE@am__objects_1 = libgstopengl_la-gstglbumper.lo \
 @HAVE_PNG_TRUE@@USE_OPENGL_TRUE@	libgstopengl_la-gstgldifferencematte.lo
 @HAVE_JPEG_TRUE@@HAVE_PNG_TRUE@@USE_OPENGL_TRUE@am__objects_2 = libgstopengl_la-gstgloverlay.lo
-@USE_OPENGL_TRUE@am__objects_3 = libgstopengl_la-gstglfiltershader.lo \
-@USE_OPENGL_TRUE@	libgstopengl_la-gstglfilterblur.lo \
+@USE_OPENGL_TRUE@am__objects_3 = libgstopengl_la-gstglfilterblur.lo \
 @USE_OPENGL_TRUE@	libgstopengl_la-gstglfiltersobel.lo \
 @USE_OPENGL_TRUE@	libgstopengl_la-gstglfilterlaplacian.lo \
 @USE_OPENGL_TRUE@	libgstopengl_la-gstglfilterglass.lo \
@@ -212,7 +211,6 @@
 @USE_OPENGL_TRUE@	libgstopengl_la-gltestsrc.lo \
 @USE_OPENGL_TRUE@	libgstopengl_la-gstgltestsrc.lo \
 @USE_OPENGL_TRUE@	libgstopengl_la-gstglmosaic.lo \
-@USE_OPENGL_TRUE@	libgstopengl_la-gstglvideomixer.lo \
 @USE_OPENGL_TRUE@	effects/libgstopengl_la-gstgleffectstretch.lo \
 @USE_OPENGL_TRUE@	effects/libgstopengl_la-gstgleffecttunnel.lo \
 @USE_OPENGL_TRUE@	effects/libgstopengl_la-gstgleffectfisheye.lo \
@@ -235,7 +233,9 @@
 	effects/libgstopengl_la-gstgleffectidentity.lo \
 	effects/libgstopengl_la-gstgleffectmirror.lo \
 	effects/libgstopengl_la-gstgleffectsqueeze.lo \
-	libgstopengl_la-gstglcolorscale.lo $(am__objects_3) \
+	libgstopengl_la-gstglcolorscale.lo \
+	libgstopengl_la-gstglvideomixer.lo \
+	libgstopengl_la-gstglfiltershader.lo $(am__objects_3) \
 	$(am__objects_4)
 libgstopengl_la_OBJECTS = $(am_libgstopengl_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
@@ -809,18 +809,16 @@
 AM_LIBS = $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS)
 
 # full opengl required
-@USE_OPENGL_TRUE@OPENGL_SOURCES = gstglfiltershader.c \
-@USE_OPENGL_TRUE@	gstglfiltershader.h gstglfilterblur.c \
-@USE_OPENGL_TRUE@	gstglfilterblur.h gstglfiltersobel.c \
-@USE_OPENGL_TRUE@	gstglfiltersobel.h gstglfilterlaplacian.c \
-@USE_OPENGL_TRUE@	gstglfilterlaplacian.h gstglfilterglass.c \
-@USE_OPENGL_TRUE@	gstglfilterglass.h gstglfilterapp.c \
-@USE_OPENGL_TRUE@	gstglfilterapp.h gstglfilterreflectedscreen.c \
+@USE_OPENGL_TRUE@OPENGL_SOURCES = gstglfilterblur.c gstglfilterblur.h \
+@USE_OPENGL_TRUE@	gstglfiltersobel.c gstglfiltersobel.h \
+@USE_OPENGL_TRUE@	gstglfilterlaplacian.c gstglfilterlaplacian.h \
+@USE_OPENGL_TRUE@	gstglfilterglass.c gstglfilterglass.h \
+@USE_OPENGL_TRUE@	gstglfilterapp.c gstglfilterapp.h \
+@USE_OPENGL_TRUE@	gstglfilterreflectedscreen.c \
 @USE_OPENGL_TRUE@	gstglfilterreflectedscreen.h \
 @USE_OPENGL_TRUE@	gstgldeinterlace.c gstgldeinterlace.h \
 @USE_OPENGL_TRUE@	gltestsrc.c gltestsrc.h gstgltestsrc.c \
 @USE_OPENGL_TRUE@	gstgltestsrc.h gstglmosaic.c gstglmosaic.h \
-@USE_OPENGL_TRUE@	gstglvideomixer.c gstglvideomixer.h \
 @USE_OPENGL_TRUE@	effects/gstgleffectscurves.h \
 @USE_OPENGL_TRUE@	effects/gstgleffectstretch.c \
 @USE_OPENGL_TRUE@	effects/gstgleffecttunnel.c \
@@ -840,8 +838,9 @@
 	gstgleffects.c gstgleffects.h effects/gstgleffectssources.c \
 	effects/gstgleffectssources.h effects/gstgleffectidentity.c \
 	effects/gstgleffectmirror.c effects/gstgleffectsqueeze.c \
-	gstglcolorscale.c gstglcolorscale.h $(OPENGL_SOURCES) \
-	$(am__append_3)
+	gstglcolorscale.c gstglcolorscale.h gstglvideomixer.c \
+	gstglvideomixer.h gstglfiltershader.c gstglfiltershader.h \
+	$(OPENGL_SOURCES) $(am__append_3)
 
 # check order of CFLAGS and LIBS, shouldn't the order be the other way around
 # (like in AM_CFLAGS)?
@@ -1110,6 +1109,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -c -o libgstopengl_la-gstglcolorscale.lo `test -f 'gstglcolorscale.c' || echo '$(srcdir)/'`gstglcolorscale.c
 
+libgstopengl_la-gstglvideomixer.lo: gstglvideomixer.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -MT libgstopengl_la-gstglvideomixer.lo -MD -MP -MF $(DEPDIR)/libgstopengl_la-gstglvideomixer.Tpo -c -o libgstopengl_la-gstglvideomixer.lo `test -f 'gstglvideomixer.c' || echo '$(srcdir)/'`gstglvideomixer.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstopengl_la-gstglvideomixer.Tpo $(DEPDIR)/libgstopengl_la-gstglvideomixer.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstglvideomixer.c' object='libgstopengl_la-gstglvideomixer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -c -o libgstopengl_la-gstglvideomixer.lo `test -f 'gstglvideomixer.c' || echo '$(srcdir)/'`gstglvideomixer.c
+
 libgstopengl_la-gstglfiltershader.lo: gstglfiltershader.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -MT libgstopengl_la-gstglfiltershader.lo -MD -MP -MF $(DEPDIR)/libgstopengl_la-gstglfiltershader.Tpo -c -o libgstopengl_la-gstglfiltershader.lo `test -f 'gstglfiltershader.c' || echo '$(srcdir)/'`gstglfiltershader.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstopengl_la-gstglfiltershader.Tpo $(DEPDIR)/libgstopengl_la-gstglfiltershader.Plo
@@ -1187,13 +1193,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -c -o libgstopengl_la-gstglmosaic.lo `test -f 'gstglmosaic.c' || echo '$(srcdir)/'`gstglmosaic.c
 
-libgstopengl_la-gstglvideomixer.lo: gstglvideomixer.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -MT libgstopengl_la-gstglvideomixer.lo -MD -MP -MF $(DEPDIR)/libgstopengl_la-gstglvideomixer.Tpo -c -o libgstopengl_la-gstglvideomixer.lo `test -f 'gstglvideomixer.c' || echo '$(srcdir)/'`gstglvideomixer.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgstopengl_la-gstglvideomixer.Tpo $(DEPDIR)/libgstopengl_la-gstglvideomixer.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gstglvideomixer.c' object='libgstopengl_la-gstglvideomixer.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -c -o libgstopengl_la-gstglvideomixer.lo `test -f 'gstglvideomixer.c' || echo '$(srcdir)/'`gstglvideomixer.c
-
 effects/libgstopengl_la-gstgleffectstretch.lo: effects/gstgleffectstretch.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(libgstopengl_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgstopengl_la_CFLAGS) $(CFLAGS) -MT effects/libgstopengl_la-gstgleffectstretch.lo -MD -MP -MF effects/$(DEPDIR)/libgstopengl_la-gstgleffectstretch.Tpo -c -o effects/libgstopengl_la-gstgleffectstretch.lo `test -f 'effects/gstgleffectstretch.c' || echo '$(srcdir)/'`effects/gstgleffectstretch.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) effects/$(DEPDIR)/libgstopengl_la-gstgleffectstretch.Tpo effects/$(DEPDIR)/libgstopengl_la-gstgleffectstretch.Plo
diff --git a/ext/gl/gstglcolorscale.c b/ext/gl/gstglcolorscale.c
index bde35c3..e56da5b 100644
--- a/ext/gl/gstglcolorscale.c
+++ b/ext/gl/gstglcolorscale.c
@@ -88,6 +88,7 @@
   GObjectClass *gobject_class;
   GstElementClass *element_class;
   GstGLFilterClass *filter_class;
+  GstBaseTransformClass *basetransform_class = GST_BASE_TRANSFORM_CLASS (klass);
 
   gobject_class = (GObjectClass *) klass;
   element_class = GST_ELEMENT_CLASS (klass);
@@ -107,6 +108,8 @@
 #endif
 
   filter_class->filter_texture = gst_gl_colorscale_filter_texture;
+
+  basetransform_class->passthrough_on_same_caps = TRUE;
 }
 
 static void
diff --git a/ext/gl/gstglfiltershader.c b/ext/gl/gstglfiltershader.c
index 71130e6..5da6ed4 100644
--- a/ext/gl/gstglfiltershader.c
+++ b/ext/gl/gstglfiltershader.c
@@ -36,13 +36,6 @@
 #include "config.h"
 #endif
 
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <sys/types.h>
-#include <unistd.h>
-#include <string.h>
-
 #include <gst/gst.h>
 #include <gst/gl/gstglshadervariables.h>
 
diff --git a/ext/gl/gstglvideomixer.c b/ext/gl/gstglvideomixer.c
index 5a5d7a2..7dcb936 100644
--- a/ext/gl/gstglvideomixer.c
+++ b/ext/gl/gstglvideomixer.c
@@ -60,6 +60,7 @@
 static void gst_gl_video_mixer_get_property (GObject * object, guint prop_id,
     GValue * value, GParamSpec * pspec);
 
+static gboolean _update_info (GstVideoAggregator * vagg, GstVideoInfo * info);
 static void gst_gl_video_mixer_reset (GstGLMixer * mixer);
 static gboolean gst_gl_video_mixer_init_shader (GstGLMixer * mixer,
     GstCaps * outcaps);
@@ -80,6 +81,9 @@
 
 /* fragment source */
 static const gchar *video_mixer_f_src =
+    "#ifdef GL_ES\n"
+    "precision mediump float;\n"
+    "#endif\n"
     "uniform sampler2D texture;                     \n"
     "uniform float alpha;\n"
     "varying vec2 v_texCoord;                            \n"
@@ -249,6 +253,7 @@
   GObjectClass *gobject_class;
   GstElementClass *element_class;
   GstAggregatorClass *agg_class = (GstAggregatorClass *) klass;
+  GstVideoAggregatorClass *vagg_class = (GstVideoAggregatorClass *) klass;
 
   gobject_class = (GObjectClass *) klass;
   element_class = GST_ELEMENT_CLASS (klass);
@@ -265,8 +270,9 @@
   GST_GL_MIXER_CLASS (klass)->process_textures =
       gst_gl_video_mixer_process_textures;
 
-  agg_class->sinkpads_type = GST_TYPE_GL_VIDEO_MIXER_PAD;
+  vagg_class->update_info = _update_info;
 
+  agg_class->sinkpads_type = GST_TYPE_GL_VIDEO_MIXER_PAD;
 }
 
 static void
@@ -298,6 +304,52 @@
   }
 }
 
+static gboolean
+_update_info (GstVideoAggregator * vagg, GstVideoInfo * info)
+{
+  GList *l;
+  gint best_width = -1, best_height = -1;
+  gboolean ret = FALSE;
+
+  GST_OBJECT_LOCK (vagg);
+  for (l = GST_ELEMENT (vagg)->sinkpads; l; l = l->next) {
+    GstVideoAggregatorPad *vaggpad = l->data;
+    GstGLVideoMixerPad *mixer_pad = GST_GL_VIDEO_MIXER_PAD (vaggpad);
+    gint this_width, this_height;
+    gint width, height;
+
+    if (mixer_pad->width > 0)
+      width = mixer_pad->width;
+    else
+      width = GST_VIDEO_INFO_WIDTH (&vaggpad->info);
+
+    if (mixer_pad->height > 0)
+      height = mixer_pad->height;
+    else
+      height = GST_VIDEO_INFO_HEIGHT (&vaggpad->info);
+
+    if (width == 0 || height == 0)
+      continue;
+
+    this_width = width + MAX (mixer_pad->xpos, 0);
+    this_height = height + MAX (mixer_pad->ypos, 0);
+
+    if (best_width < this_width)
+      best_width = this_width;
+    if (best_height < this_height)
+      best_height = this_height;
+  }
+  GST_OBJECT_UNLOCK (vagg);
+
+  if (best_width > 0 && best_height > 0) {
+    gst_video_info_set_format (info, GST_VIDEO_INFO_FORMAT (info),
+        best_width, best_height);
+    ret = TRUE;
+  }
+
+  return ret;
+}
+
 static void
 gst_gl_video_mixer_reset (GstGLMixer * mixer)
 {
@@ -315,6 +367,9 @@
 {
   GstGLVideoMixer *video_mixer = GST_GL_VIDEO_MIXER (mixer);
 
+  if (video_mixer->shader)
+    gst_gl_context_del_shader (mixer->context, video_mixer->shader);
+
   return gst_gl_context_gen_shader (mixer->context, video_mixer_v_src,
       video_mixer_f_src, &video_mixer->shader);
 }
diff --git a/ext/gl/gstopengl.c b/ext/gl/gstopengl.c
index bb692d7..a4b2540 100644
--- a/ext/gl/gstopengl.c
+++ b/ext/gl/gstopengl.c
@@ -48,6 +48,8 @@
 #include "gstglfiltercube.h"
 #include "gstgleffects.h"
 #include "gstglcolorscale.h"
+#include "gstglvideomixer.h"
+#include "gstglfiltershader.h"
 #if HAVE_GRAPHENE
 #include "gstgltransformation.h"
 #endif
@@ -59,11 +61,9 @@
 #include "gstglfilterapp.h"
 #include "gstglfilterblur.h"
 #include "gstglfilterreflectedscreen.h"
-#include "gstglfiltershader.h"
 #include "gstglfiltersobel.h"
 #include "gstgldeinterlace.h"
 #include "gstglmosaic.h"
-#include "gstglvideomixer.h"
 #if HAVE_PNG
 #include "gstgldifferencematte.h"
 #include "gstglbumper.h"
@@ -77,6 +77,10 @@
 #include <bcm_host.h>
 #endif
 
+#if GST_GL_HAVE_WINDOW_X11
+#include <X11/Xlib.h>
+#endif
+
 #define GST_CAT_DEFAULT gst_gl_gstgl_debug
 GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT);
 
@@ -91,6 +95,11 @@
   bcm_host_init ();
 #endif
 
+#if GST_GL_HAVE_WINDOW_X11
+  if (g_getenv ("GST_GL_XINITTHREADS"))
+    XInitThreads ();
+#endif
+
   if (!gst_element_register (plugin, "glimagesink",
           GST_RANK_SECONDARY, GST_TYPE_GLIMAGE_SINK)) {
     return FALSE;
@@ -115,6 +124,15 @@
           GST_RANK_NONE, GST_TYPE_GL_COLORSCALE)) {
     return FALSE;
   }
+
+  if (!gst_element_register (plugin, "glvideomixer",
+          GST_RANK_NONE, GST_TYPE_GL_VIDEO_MIXER)) {
+    return FALSE;
+  }
+  if (!gst_element_register (plugin, "glshader",
+          GST_RANK_NONE, gst_gl_filtershader_get_type ())) {
+    return FALSE;
+  }
 #if GST_GL_HAVE_OPENGL
   if (!gst_element_register (plugin, "gltestsrc",
           GST_RANK_NONE, GST_TYPE_GL_TEST_SRC)) {
@@ -126,11 +144,6 @@
     return FALSE;
   }
 
-  if (!gst_element_register (plugin, "glshader",
-          GST_RANK_NONE, gst_gl_filtershader_get_type ())) {
-    return FALSE;
-  }
-
   if (!gst_element_register (plugin, "glfiltersobel",
           GST_RANK_NONE, gst_gl_filtersobel_get_type ())) {
     return FALSE;
@@ -165,11 +178,6 @@
           GST_RANK_NONE, GST_TYPE_GL_MOSAIC)) {
     return FALSE;
   }
-
-  if (!gst_element_register (plugin, "glvideomixer",
-          GST_RANK_NONE, GST_TYPE_GL_VIDEO_MIXER)) {
-    return FALSE;
-  }
 #if HAVE_PNG
   if (!gst_element_register (plugin, "gldifferencematte",
           GST_RANK_NONE, gst_gl_differencematte_get_type ())) {
diff --git a/ext/kate/gstkateenc.c b/ext/kate/gstkateenc.c
index 2e53b09..89f5f85 100644
--- a/ext/kate/gstkateenc.c
+++ b/ext/kate/gstkateenc.c
@@ -1227,7 +1227,7 @@
       gst_event_unref (event);
       break;
     }
-    case GST_EVENT_SEGMENT: {
+    case GST_EVENT_SEGMENT:{
       GstSegment seg;
 
       GST_LOG_OBJECT (ke, "Got newsegment event");
@@ -1235,7 +1235,9 @@
       gst_event_copy_segment (event, &seg);
 
       if (!ke->headers_sent) {
-        gst_event_replace (&ke->pending_segment, event);
+        if (ke->pending_segment)
+          gst_event_unref (ke->pending_segment);
+        ke->pending_segment = event;
         event = NULL;
       }
 
diff --git a/ext/kate/gstkateutil.c b/ext/kate/gstkateutil.c
index 6e96c9d..bd0a3e5 100644
--- a/ext/kate/gstkateutil.c
+++ b/ext/kate/gstkateutil.c
@@ -186,6 +186,7 @@
   while (decoder->event_queue->length) {
     GstKateDecoderBaseQueuedEvent *item = (GstKateDecoderBaseQueuedEvent *)
         g_queue_pop_head (decoder->event_queue);
+    gst_event_unref (item->event);
     g_slice_free (GstKateDecoderBaseQueuedEvent, item);
   }
   g_queue_free (decoder->event_queue);
diff --git a/ext/modplug/Makefile.am b/ext/modplug/Makefile.am
index a41e1d9..07b4d1d 100644
--- a/ext/modplug/Makefile.am
+++ b/ext/modplug/Makefile.am
@@ -2,7 +2,7 @@
 
 libgstmodplug_la_SOURCES = gstmodplug.cc
 libgstmodplug_la_CXXFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CXXFLAGS) $(MODPLUG_CFLAGS)
-libgstmodplug_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) -lstdc++ $(LIBM) $(MODPLUG_LIBS)
+libgstmodplug_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) $(LIBM) $(MODPLUG_LIBS)
 libgstmodplug_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
 libgstmodplug_la_LIBTOOLFLAGS = $(GST_PLUGIN_LIBTOOLFLAGS)
 
diff --git a/ext/modplug/Makefile.in b/ext/modplug/Makefile.in
index 8f3b7ca..552a799 100644
--- a/ext/modplug/Makefile.in
+++ b/ext/modplug/Makefile.in
@@ -728,7 +728,7 @@
 plugin_LTLIBRARIES = libgstmodplug.la
 libgstmodplug_la_SOURCES = gstmodplug.cc
 libgstmodplug_la_CXXFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CXXFLAGS) $(MODPLUG_CFLAGS)
-libgstmodplug_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) -lstdc++ $(LIBM) $(MODPLUG_LIBS)
+libgstmodplug_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) $(LIBM) $(MODPLUG_LIBS)
 libgstmodplug_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
 libgstmodplug_la_LIBTOOLFLAGS = $(GST_PLUGIN_LIBTOOLFLAGS)
 noinst_HEADERS = gstmodplug.h
diff --git a/gst-libs/gst/base/Makefile.am b/gst-libs/gst/base/Makefile.am
index 5f3dc1f..c4e8588 100644
--- a/gst-libs/gst/base/Makefile.am
+++ b/gst-libs/gst/base/Makefile.am
@@ -7,7 +7,7 @@
 	-DGST_USE_UNSTABLE_API
 
 libgstbadbase_@GST_API_VERSION@_la_LIBADD = $(GST_LIBS)
-libgstbadbase_@GST_API_VERSION@_la_LDFLAGS = $(GST_LDFLAGS)
+libgstbadbase_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
 
 libgstbadbase_@GST_API_VERSION@includedir =		\
 	$(includedir)/gstreamer-@GST_API_VERSION@/gst/base
diff --git a/gst-libs/gst/base/Makefile.in b/gst-libs/gst/base/Makefile.in
index 8fc0391..c9f14be 100644
--- a/gst-libs/gst/base/Makefile.in
+++ b/gst-libs/gst/base/Makefile.in
@@ -719,7 +719,7 @@
 	-DGST_USE_UNSTABLE_API
 
 libgstbadbase_@GST_API_VERSION@_la_LIBADD = $(GST_LIBS)
-libgstbadbase_@GST_API_VERSION@_la_LDFLAGS = $(GST_LDFLAGS)
+libgstbadbase_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
 libgstbadbase_@GST_API_VERSION@includedir = \
 	$(includedir)/gstreamer-@GST_API_VERSION@/gst/base
 
diff --git a/gst-libs/gst/base/gstaggregator.c b/gst-libs/gst/base/gstaggregator.c
index 5006ea5..3b64479 100644
--- a/gst-libs/gst/base/gstaggregator.c
+++ b/gst-libs/gst/base/gstaggregator.c
@@ -321,6 +321,7 @@
             gst_event_new_caps (self->priv->srccaps))) {
       GST_WARNING_OBJECT (self->srcpad, "Sending caps event failed");
     }
+    gst_caps_unref (self->priv->srccaps);
     self->priv->srccaps = NULL;
   }
 
diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c
index 41489b8..e504722 100644
--- a/gst-libs/gst/codecparsers/gsth264parser.c
+++ b/gst-libs/gst/codecparsers/gsth264parser.c
@@ -216,6 +216,32 @@
   return TRUE;
 }
 
+/*
+ * gst_h264_pps_copy:
+ * @dst_pps: The destination #GstH264PPS to copy into
+ * @src_pps: The source #GstH264PPS to copy from
+ *
+ * Copies @src_pps into @dst_pps.
+ *
+ * Returns: %TRUE if everything went fine, %FALSE otherwise
+ */
+static gboolean
+gst_h264_pps_copy (GstH264PPS * dst_pps, const GstH264PPS * src_pps)
+{
+  g_return_val_if_fail (dst_pps != NULL, FALSE);
+  g_return_val_if_fail (src_pps != NULL, FALSE);
+
+  gst_h264_pps_clear (dst_pps);
+
+  *dst_pps = *src_pps;
+
+  if (src_pps->slice_group_id)
+    dst_pps->slice_group_id = g_memdup (src_pps->slice_group_id,
+        src_pps->pic_size_in_map_units_minus1 + 1);
+
+  return TRUE;
+}
+
 /****** Parsing functions *****/
 
 static gboolean
@@ -853,6 +879,31 @@
 }
 
 static GstH264ParserResult
+gst_h264_parser_parse_recovery_point (GstH264NalParser * nalparser,
+    GstH264RecoveryPoint * rp, NalReader * nr)
+{
+  GstH264SPS *const sps = nalparser->last_sps;
+
+  GST_DEBUG ("parsing \"Recovery point\"");
+  if (!sps || !sps->valid) {
+    GST_WARNING ("didn't get the associated sequence paramater set for the "
+        "current access unit");
+    goto error;
+  }
+
+  READ_UE_ALLOWED (nr, rp->recovery_frame_cnt, 0, sps->max_frame_num - 1);
+  READ_UINT8 (nr, rp->exact_match_flag, 1);
+  READ_UINT8 (nr, rp->broken_link_flag, 1);
+  READ_UINT8 (nr, rp->changing_slice_group_idc, 2);
+
+  return GST_H264_PARSER_OK;
+
+error:
+  GST_WARNING ("error parsing \"Recovery point\"");
+  return GST_H264_PARSER_ERROR;
+}
+
+static GstH264ParserResult
 gst_h264_parser_parse_sei_message (GstH264NalParser * nalparser,
     NalReader * nr, GstH264SEIMessage * sei)
 {
@@ -893,18 +944,17 @@
       res = gst_h264_parser_parse_pic_timing (nalparser,
           &sei->payload.pic_timing, nr);
       break;
-    default:{
+    case GST_H264_SEI_RECOVERY_POINT:
+      res = gst_h264_parser_parse_recovery_point (nalparser,
+          &sei->payload.recovery_point, nr);
+      break;
+    default:
       /* Just consume payloadSize bytes, which does not account for
          emulation prevention bytes */
-      guint nbits = payload_size % 8;
-      while (payload_size > 0) {
-        nal_reader_skip (nr, nbits);
-        payload_size -= nbits;
-        nbits = 8;
-      }
+      if (!nal_reader_skip_long (nr, payload_size))
+        goto error;
       res = GST_H264_PARSER_OK;
       break;
-    }
   }
 
   /* When SEI message doesn't end at byte boundary,
@@ -961,6 +1011,10 @@
 void
 gst_h264_nal_parser_free (GstH264NalParser * nalparser)
 {
+  guint i;
+
+  for (i = 0; i < GST_H264_MAX_PPS_COUNT; i++)
+    gst_h264_pps_clear (&nalparser->pps[i]);
   g_slice_free (GstH264NalParser, nalparser);
 
   nalparser = NULL;
@@ -1415,6 +1469,10 @@
  *
  * Parses @data, and fills the @pps structure.
  *
+ * The resulting @pps data structure shall be deallocated with the
+ * gst_h264_pps_clear() function when it is no longer needed, or prior
+ * to parsing a new PPS NAL unit.
+ *
  * Returns: a #GstH264ParserResult
  */
 GstH264ParserResult
@@ -1535,6 +1593,7 @@
 error:
   GST_WARNING ("error parsing \"Picture parameter set\"");
   pps->valid = FALSE;
+  gst_h264_pps_clear (pps);
   return GST_H264_PARSER_ERROR;
 }
 
@@ -1546,6 +1605,10 @@
  *
  * Parses @data, and fills the @pps structure.
  *
+ * The resulting @pps data structure shall be deallocated with the
+ * gst_h264_pps_clear() function when it is no longer needed, or prior
+ * to parsing a new PPS NAL unit.
+ *
  * Returns: a #GstH264ParserResult
  */
 GstH264ParserResult
@@ -1557,7 +1620,8 @@
   if (res == GST_H264_PARSER_OK) {
     GST_DEBUG ("adding picture parameter set with id: %d to array", pps->id);
 
-    nalparser->pps[pps->id] = *pps;
+    if (!gst_h264_pps_copy (&nalparser->pps[pps->id], pps))
+      return GST_H264_PARSER_ERROR;
     nalparser->last_pps = &nalparser->pps[pps->id];
   }
 
@@ -1565,6 +1629,23 @@
 }
 
 /**
+ * gst_h264_pps_clear:
+ * @pps: The #GstH264PPS to free
+ *
+ * Clears all @pps internal resources.
+ *
+ * Since: 1.4
+ */
+void
+gst_h264_pps_clear (GstH264PPS * pps)
+{
+  g_return_if_fail (pps != NULL);
+
+  g_free (pps->slice_group_id);
+  pps->slice_group_id = NULL;
+}
+
+/**
  * gst_h264_parser_parse_slice_hdr:
  * @nalparser: a #GstH264NalParser
  * @nalu: The #GST_H264_NAL_SLICE #GstH264NalUnit to parse
diff --git a/gst-libs/gst/codecparsers/gsth264parser.h b/gst-libs/gst/codecparsers/gsth264parser.h
index f9e5083..35dd558 100644
--- a/gst-libs/gst/codecparsers/gsth264parser.h
+++ b/gst-libs/gst/codecparsers/gsth264parser.h
@@ -156,6 +156,7 @@
  * GstH264SEIPayloadType:
  * @GST_H264_SEI_BUF_PERIOD: Buffering Period SEI Message
  * @GST_H264_SEI_PIC_TIMING: Picture Timing SEI Message
+ * @GST_H264_SEI_RECOVERY_POINT: Recovery Point SEI Message (D.2.7)
  * ...
  *
  * The type of SEI message.
@@ -163,7 +164,8 @@
 typedef enum
 {
   GST_H264_SEI_BUF_PERIOD = 0,
-  GST_H264_SEI_PIC_TIMING = 1
+  GST_H264_SEI_PIC_TIMING = 1,
+  GST_H264_SEI_RECOVERY_POINT = 6,
       /* and more...  */
 } GstH264SEIPayloadType;
 
@@ -234,6 +236,7 @@
 typedef struct _GstH264ClockTimestamp         GstH264ClockTimestamp;
 typedef struct _GstH264PicTiming              GstH264PicTiming;
 typedef struct _GstH264BufferingPeriod        GstH264BufferingPeriod;
+typedef struct _GstH264RecoveryPoint          GstH264RecoveryPoint;
 typedef struct _GstH264SEIMessage             GstH264SEIMessage;
 
 /**
@@ -395,7 +398,7 @@
   GstH264HRDParams nal_hrd_parameters;
 
   guint8 vcl_hrd_parameters_present_flag;
-  /* if nal_hrd_parameters_present_flag */
+  /* if vcl_hrd_parameters_present_flag */
   GstH264HRDParams vcl_hrd_parameters;
 
   guint8 low_delay_hrd_flag;
@@ -706,6 +709,14 @@
   guint8 vcl_initial_cpb_removal_delay_offset[32];
 };
 
+struct _GstH264RecoveryPoint
+{
+  guint32 recovery_frame_cnt;
+  guint8 exact_match_flag;
+  guint8 broken_link_flag;
+  guint8 changing_slice_group_idc;
+};
+
 struct _GstH264SEIMessage
 {
   GstH264SEIPayloadType payloadType;
@@ -713,6 +724,7 @@
   union {
     GstH264BufferingPeriod buffering_period;
     GstH264PicTiming pic_timing;
+    GstH264RecoveryPoint recovery_point;
     /* ... could implement more */
   } payload;
 };
@@ -769,6 +781,8 @@
 GstH264ParserResult gst_h264_parse_pps                (GstH264NalParser *nalparser,
                                                        GstH264NalUnit *nalu, GstH264PPS *pps);
 
+void                gst_h264_pps_clear                (GstH264PPS *pps);
+
 void    gst_h264_quant_matrix_8x8_get_zigzag_from_raster (guint8 out_quant[64],
                                                           const guint8 quant[64]);
 
diff --git a/gst-libs/gst/codecparsers/gstvp8rangedecoder.c b/gst-libs/gst/codecparsers/gstvp8rangedecoder.c
index b0ab2d0..4d381c5 100644
--- a/gst-libs/gst/codecparsers/gstvp8rangedecoder.c
+++ b/gst-libs/gst/codecparsers/gstvp8rangedecoder.c
@@ -12,7 +12,7 @@
 #include "dboolhuff.h"
 
 #define BOOL_DECODER_CAST(rd) \
-  ((BOOL_DECODER *)(&(rd)->_gst_reserved[1]))
+  ((BOOL_DECODER *)(&(rd)->_gst_reserved[0]))
 
 gboolean
 gst_vp8_range_decoder_init (GstVp8RangeDecoder * rd, const guchar * buf,
diff --git a/gst-libs/gst/codecparsers/nalutils.c b/gst-libs/gst/codecparsers/nalutils.c
index 694066d..5d20e81 100644
--- a/gst-libs/gst/codecparsers/nalutils.c
+++ b/gst-libs/gst/codecparsers/nalutils.c
@@ -113,9 +113,13 @@
   return TRUE;
 }
 
+/* Skips the specified amount of bits. This is only suitable to a
+   cacheable number of bits */
 inline gboolean
 nal_reader_skip (NalReader * nr, guint nbits)
 {
+  g_assert (nbits <= 8 * sizeof (nr->cache));
+
   if (G_UNLIKELY (!nal_reader_read (nr, nbits)))
     return FALSE;
 
@@ -124,6 +128,24 @@
   return TRUE;
 }
 
+/* Generic version to skip any number of bits */
+gboolean
+nal_reader_skip_long (NalReader * nr, guint nbits)
+{
+  /* Leave out enough bits in the cache once we are finished */
+  const guint skip_size = 4 * sizeof (nr->cache);
+  guint remaining = nbits;
+
+  nbits %= skip_size;
+  while (remaining > 0) {
+    if (!nal_reader_skip (nr, nbits))
+      return FALSE;
+    remaining -= nbits;
+    nbits = skip_size;
+  }
+  return TRUE;
+}
+
 inline guint
 nal_reader_get_pos (const NalReader * nr)
 {
diff --git a/gst-libs/gst/codecparsers/nalutils.h b/gst-libs/gst/codecparsers/nalutils.h
index 5d231f2..87a4b33 100644
--- a/gst-libs/gst/codecparsers/nalutils.h
+++ b/gst-libs/gst/codecparsers/nalutils.h
@@ -57,6 +57,7 @@
 
 gboolean nal_reader_read (NalReader * nr, guint nbits);
 gboolean nal_reader_skip (NalReader * nr, guint nbits);
+gboolean nal_reader_skip_long (NalReader * nr, guint nbits);
 guint nal_reader_get_pos (const NalReader * nr);
 guint nal_reader_get_remaining (const NalReader * nr);
 guint nal_reader_get_epb_count (const NalReader * nr);
diff --git a/gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h b/gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h
index 5465961..b185e6a 100644
--- a/gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h
+++ b/gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h
@@ -28,30 +28,14 @@
 G_BEGIN_DECLS
 
 /* SUPPORTED */
-/* FIXME: On iOS this exists but maps to an actual BGRA extension */
-#ifdef __APPLE__
-#ifdef GL_BGRA
-#undef GL_BGRA
-#endif
-#endif
-
 //FIXME:
 #define GL_RGB16 GL_RGB565
 #define GL_RGB8 GL_RGB
 #define GL_RGBA8 GL_RGBA
-#define GL_BGRA GL_RGBA
-#define GL_BGR GL_RGB
-#define GL_UNSIGNED_INT_8_8_8_8 GL_UNSIGNED_BYTE
-#define GL_UNSIGNED_INT_8_8_8_8_REV GL_UNSIGNED_BYTE
 //END FIXME
 
 /* UNSUPPORTED */
 
-#define GL_YCBCR_MESA 0
-#define GL_UNSIGNED_SHORT_8_8_MESA 0
-#define GL_UNSIGNED_SHORT_8_8_MESA 0
-#define GL_UNSIGNED_SHORT_8_8_REV_MESA 0
-
 #define GL_COLOR_ATTACHMENT1 0
 #define GL_COLOR_ATTACHMENT2 0
 #ifndef GL_TEXTURE_ENV
diff --git a/gst-libs/gst/gl/gstglcolorconvert.c b/gst-libs/gst/gl/gstglcolorconvert.c
index 54d8ef7..e056523 100644
--- a/gst-libs/gst/gl/gstglcolorconvert.c
+++ b/gst-libs/gst/gl/gstglcolorconvert.c
@@ -680,6 +680,7 @@
   info->shader_tex_names[0] = "tex";
 
   g_free (alpha);
+  g_free (pixel_order);
 }
 
 static void
@@ -874,6 +875,7 @@
   }
 
   g_free (alpha);
+  g_free (pixel_order);
 }
 
 static void
@@ -913,6 +915,8 @@
     default:
       break;
   }
+
+  g_free (pixel_order);
 }
 
 /* Called in the gl thread */
diff --git a/gst-libs/gst/gl/gstgldisplay.c b/gst-libs/gst/gl/gstgldisplay.c
index be596b4..c3005f7 100644
--- a/gst-libs/gst/gl/gstgldisplay.c
+++ b/gst-libs/gst/gl/gstgldisplay.c
@@ -30,6 +30,14 @@
  * #GstGLDisplay represents a connection to the underlying windowing system. 
  * Elements are required to make use of #GstContext to share and propogate
  * a #GstGLDisplay.
+ *
+ * <note>Certain window systems require a special function to be called to
+ * initialize threading support.  As this GStreamer GL library does not preclude
+ * concurrent access to the windowing system, it is strongly advised that
+ * applications ensure that threading support has been initialized before any
+ * other toolkit/library functionality is accessed.  Failure to do so could
+ * result in sudden application abortion during execution.  The most notably
+ * example of such a function is X11's XInitThreads().</note>
  */
 
 #ifdef HAVE_CONFIG_H
diff --git a/gst-libs/gst/gl/gstglfilter.c b/gst-libs/gst/gl/gstglfilter.c
index 250ae39..1f8ccd9 100644
--- a/gst-libs/gst/gl/gstglfilter.c
+++ b/gst-libs/gst/gl/gstglfilter.c
@@ -215,25 +215,29 @@
     GstQuery * query)
 {
   GstGLFilter *filter;
-  gboolean res;
 
   filter = GST_GL_FILTER (trans);
 
   switch (GST_QUERY_TYPE (query)) {
+    case GST_QUERY_ALLOCATION:
+    {
+      if (direction == GST_PAD_SINK
+          && gst_base_transform_is_passthrough (trans))
+        return gst_pad_peer_query (GST_BASE_TRANSFORM_SRC_PAD (trans), query);
+      break;
+    }
     case GST_QUERY_CONTEXT:
     {
-      res = gst_gl_handle_context_query ((GstElement *) filter, query,
+      return gst_gl_handle_context_query ((GstElement *) filter, query,
           &filter->display);
       break;
     }
     default:
-      res =
-          GST_BASE_TRANSFORM_CLASS (parent_class)->query (trans, direction,
-          query);
       break;
   }
 
-  return res;
+  return GST_BASE_TRANSFORM_CLASS (parent_class)->query (trans, direction,
+      query);;
 }
 
 static void
@@ -728,25 +732,26 @@
 {
   GstCaps *tmp = NULL;
   GstCaps *result = NULL;
+  GstCaps *glcaps = gst_gl_filter_set_caps_features (caps,
+      GST_CAPS_FEATURE_MEMORY_GL_MEMORY);
+#if GST_GL_HAVE_PLATFORM_EGL
+  GstCaps *eglcaps = gst_gl_filter_set_caps_features (caps,
+      GST_CAPS_FEATURE_MEMORY_EGL_IMAGE);
+#endif
+  GstCaps *uploadcaps = gst_gl_filter_set_caps_features (caps,
+      GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META);
+  GstCaps *raw_caps =
+      gst_caps_from_string (GST_VIDEO_CAPS_MAKE (GST_GL_COLOR_CONVERT_FORMATS));
+  GstCapsFeatures *f;
 
   tmp = gst_caps_new_empty ();
 
-  if (direction == GST_PAD_SINK) {
-    GstCaps *glcaps = gst_gl_filter_set_caps_features (caps,
-        GST_CAPS_FEATURE_MEMORY_GL_MEMORY);
+  tmp = gst_caps_merge (tmp, glcaps);
 #if GST_GL_HAVE_PLATFORM_EGL
-    GstCaps *eglcaps = gst_gl_filter_set_caps_features (caps,
-        GST_CAPS_FEATURE_MEMORY_EGL_IMAGE);
+  tmp = gst_caps_merge (tmp, eglcaps);
 #endif
-    GstCaps *uploadcaps = gst_gl_filter_set_caps_features (caps,
-        GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META);
-
-    tmp = gst_caps_merge (tmp, glcaps);
-#if GST_GL_HAVE_PLATFORM_EGL
-    tmp = gst_caps_merge (tmp, eglcaps);
-#endif
-    tmp = gst_caps_merge (tmp, uploadcaps);
-  }
+  tmp = gst_caps_merge (tmp, uploadcaps);
+  tmp = gst_caps_merge (tmp, raw_caps);
 
   tmp = gst_caps_merge (tmp, gst_gl_filter_caps_remove_format_info (caps));
 
@@ -757,6 +762,16 @@
     result = tmp;
   }
 
+  /* if output still intersects input then prefer the intersection */
+  f = gst_caps_get_features (caps, 0);
+
+  if (!gst_caps_features_is_any (f)
+      && !gst_caps_features_is_equal (f,
+          GST_CAPS_FEATURES_MEMORY_SYSTEM_MEMORY)) {
+    tmp = gst_caps_intersect_full (result, caps, GST_CAPS_INTERSECT_FIRST);
+    result = gst_caps_merge (tmp, result);
+  }
+
   GST_DEBUG_OBJECT (bt, "returning caps: %" GST_PTR_FORMAT, result);
 
   return result;
@@ -867,19 +882,23 @@
 
   if (pool == NULL && need_pool) {
     GstVideoInfo info;
-    GstBufferPool *decide_pool;
+    GstBufferPool *decide_pool = NULL;
 
     if (!gst_video_info_from_caps (&info, caps))
       goto invalid_caps;
 
-    gst_query_parse_allocation (decide_query, &decide_caps, NULL);
-    decide_pool = gst_base_transform_get_buffer_pool (trans);
-    if (GST_IS_GL_BUFFER_POOL (decide_pool)
+    if (decide_query) {
+      gst_query_parse_allocation (decide_query, &decide_caps, NULL);
+      decide_pool = gst_base_transform_get_buffer_pool (trans);
+    }
+
+    if (decide_pool && GST_IS_GL_BUFFER_POOL (decide_pool)
         && gst_caps_is_equal_fixed (decide_caps, caps)) {
       pool = decide_pool;
     } else {
       GST_DEBUG_OBJECT (filter, "create new pool");
-      gst_object_unref (decide_pool);
+      if (decide_pool)
+        gst_object_unref (decide_pool);
       pool = gst_gl_buffer_pool_new (filter->context);
 
       /* the normal size of a frame */
diff --git a/gst-libs/gst/gl/gstglmixer.c b/gst-libs/gst/gl/gstglmixer.c
index 94ca44f..626eb96 100644
--- a/gst-libs/gst/gl/gstglmixer.c
+++ b/gst-libs/gst/gl/gstglmixer.c
@@ -45,13 +45,6 @@
 #define GST_CAT_DEFAULT gst_gl_mixer_debug
 GST_DEBUG_CATEGORY (gst_gl_mixer_debug);
 
-#define GST_GL_MIXER_GET_LOCK(mix) \
-  (GST_GL_MIXER(mix)->lock)
-#define GST_GL_MIXER_LOCK(mix) \
-  (g_mutex_lock(&GST_GL_MIXER_GET_LOCK (mix)))
-#define GST_GL_MIXER_UNLOCK(mix) \
-  (g_mutex_unlock(&GST_GL_MIXER_GET_LOCK (mix)))
-
 static void gst_gl_mixer_pad_get_property (GObject * object, guint prop_id,
     GValue * value, GParamSpec * pspec);
 static void gst_gl_mixer_pad_set_property (GObject * object, guint prop_id,
@@ -426,24 +419,14 @@
 }
 
 static void
-_free_pad_frame_data (gpointer data)
-{
-  g_slice_free1 (sizeof (GstGLMixerFrameData), data);
-}
-
-static void
 gst_gl_mixer_init (GstGLMixer * mix)
 {
   mix->priv = GST_GL_MIXER_GET_PRIVATE (mix);
-  g_mutex_init (&mix->lock);
   mix->array_buffers = 0;
   mix->display = NULL;
   mix->fbo = 0;
   mix->depthbuffer = 0;
 
-  mix->frames = g_ptr_array_new_full (4, _free_pad_frame_data);
-  mix->array_buffers = g_ptr_array_new_full (4, NULL);
-
   /* initialize variables */
   gst_gl_mixer_reset (mix);
 }
@@ -451,17 +434,9 @@
 static void
 gst_gl_mixer_finalize (GObject * object)
 {
-  GstGLMixer *mix = GST_GL_MIXER (object);
-
-  g_mutex_clear (&mix->lock);
-
-  g_ptr_array_free (mix->frames, TRUE);
-  g_ptr_array_free (mix->array_buffers, TRUE);
-
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
 
-
 static void
 gst_gl_mixer_set_context (GstElement * element, GstContext * context)
 {
@@ -533,7 +508,12 @@
           "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL);
     }
   }
+
+  if (filter)
+    caps = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+
   gst_query_set_caps_result (query, caps);
+  gst_caps_unref (caps);
 
   return TRUE;
 }
@@ -1023,7 +1003,6 @@
 static gboolean
 gst_gl_mixer_stop (GstAggregator * agg)
 {
-  guint i;
   GstGLMixer *mix = GST_GL_MIXER (agg);
   GstGLMixerClass *mixer_class = GST_GL_MIXER_GET_CLASS (mix);
 
@@ -1031,9 +1010,10 @@
     return FALSE;
 
   GST_OBJECT_LOCK (agg);
-  for (i = 0; i < GST_ELEMENT (agg)->numsinkpads; i++) {
-    g_slice_free1 (sizeof (GstGLMixerFrameData), mix->frames->pdata[i]);
-  }
+  g_ptr_array_free (mix->frames, TRUE);
+  mix->frames = NULL;
+  g_ptr_array_free (mix->array_buffers, TRUE);
+  mix->array_buffers = NULL;
   GST_OBJECT_UNLOCK (agg);
 
   if (mixer_class->reset)
diff --git a/gst-libs/gst/gl/gstglmixer.h b/gst-libs/gst/gl/gstglmixer.h
index c056e6a..7e66acc 100644
--- a/gst-libs/gst/gl/gstglmixer.h
+++ b/gst-libs/gst/gl/gstglmixer.h
@@ -59,9 +59,6 @@
 
   GstGLMixerPrivate *priv;
 
-  /* Lock to prevent the state to change while blending */
-  GMutex lock;
-
   GPtrArray *array_buffers;
   GPtrArray *frames;
 
diff --git a/gst-libs/gst/gl/gstgluploadmeta.c b/gst-libs/gst/gl/gstgluploadmeta.c
index fd71103..fe70d28 100644
--- a/gst-libs/gst/gl/gstgluploadmeta.c
+++ b/gst-libs/gst/gl/gstgluploadmeta.c
@@ -269,9 +269,9 @@
 {
   GstGLUploadMeta *upload;
   GstVideoFrame frame;
-//  GstMemory *mem;
+  GstMemory *mem;
   gboolean ret;
-//  guint i, n;
+  guint i, n;
 
   g_return_val_if_fail (meta != NULL, FALSE);
   g_return_val_if_fail (texture_id != NULL, FALSE);
@@ -304,7 +304,7 @@
 
   GST_LOG ("Uploading for meta with textures %i,%i,%i,%i", texture_id[0],
       texture_id[1], texture_id[2], texture_id[3]);
-#if 0
+
   /* GstGLMemory */
   n = gst_buffer_n_memory (upload->priv->buffer);
   mem = gst_buffer_peek_memory (upload->priv->buffer, 0);
@@ -321,7 +321,7 @@
     if (ret)
       goto out;
   }
-#endif
+
   if (!(ret = gst_video_frame_map (&frame, &upload->info, upload->priv->buffer,
           GST_MAP_READ))) {
     GST_ERROR ("failed to map video frame");
diff --git a/gst-libs/gst/mpegts/Makefile.am b/gst-libs/gst/mpegts/Makefile.am
index cfedd15..0cee304 100644
--- a/gst-libs/gst/mpegts/Makefile.am
+++ b/gst-libs/gst/mpegts/Makefile.am
@@ -67,7 +67,7 @@
 		GST_PLUGIN_SYSTEM_PATH_1_0="" GST_PLUGIN_PATH_1_0="" GST_REGISTRY_UPDATE=no \
 		$(INTROSPECTION_SCANNER) -v --namespace GstMpegts \
 		--nsversion=@GST_API_VERSION@ \
-		--identifier-prefix=GstMpegTs \
+		--identifier-prefix=GstMpegts \
 		--symbol-prefix=gst_mpegts \
 		--symbol-prefix=gst \
 		--warn-all -v \
diff --git a/gst-libs/gst/mpegts/Makefile.in b/gst-libs/gst/mpegts/Makefile.in
index 967ac56..af134f1 100644
--- a/gst-libs/gst/mpegts/Makefile.in
+++ b/gst-libs/gst/mpegts/Makefile.in
@@ -1296,7 +1296,7 @@
 @HAVE_INTROSPECTION_TRUE@		GST_PLUGIN_SYSTEM_PATH_1_0="" GST_PLUGIN_PATH_1_0="" GST_REGISTRY_UPDATE=no \
 @HAVE_INTROSPECTION_TRUE@		$(INTROSPECTION_SCANNER) -v --namespace GstMpegts \
 @HAVE_INTROSPECTION_TRUE@		--nsversion=@GST_API_VERSION@ \
-@HAVE_INTROSPECTION_TRUE@		--identifier-prefix=GstMpegTs \
+@HAVE_INTROSPECTION_TRUE@		--identifier-prefix=GstMpegts \
 @HAVE_INTROSPECTION_TRUE@		--symbol-prefix=gst_mpegts \
 @HAVE_INTROSPECTION_TRUE@		--symbol-prefix=gst \
 @HAVE_INTROSPECTION_TRUE@		--warn-all -v \
diff --git a/gst-libs/gst/mpegts/gst-atsc-section.c b/gst-libs/gst/mpegts/gst-atsc-section.c
index 8756547..cff1d18 100644
--- a/gst-libs/gst/mpegts/gst-atsc-section.c
+++ b/gst-libs/gst/mpegts/gst-atsc-section.c
@@ -35,35 +35,35 @@
  */
 
 /* Terrestrial/Cable Virtual Channel Table TVCT/CVCT */
-static GstMpegTsAtscVCTSource *
-_gst_mpegts_atsc_vct_source_copy (GstMpegTsAtscVCTSource * source)
+static GstMpegtsAtscVCTSource *
+_gst_mpegts_atsc_vct_source_copy (GstMpegtsAtscVCTSource * source)
 {
-  GstMpegTsAtscVCTSource *copy;
+  GstMpegtsAtscVCTSource *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscVCTSource, source);
+  copy = g_slice_dup (GstMpegtsAtscVCTSource, source);
   copy->descriptors = g_ptr_array_ref (source->descriptors);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_vct_source_free (GstMpegTsAtscVCTSource * source)
+_gst_mpegts_atsc_vct_source_free (GstMpegtsAtscVCTSource * source)
 {
   if (source->descriptors)
     g_ptr_array_unref (source->descriptors);
-  g_slice_free (GstMpegTsAtscVCTSource, source);
+  g_slice_free (GstMpegtsAtscVCTSource, source);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscVCTSource, gst_mpegts_atsc_vct_source,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscVCTSource, gst_mpegts_atsc_vct_source,
     (GBoxedCopyFunc) _gst_mpegts_atsc_vct_source_copy,
     (GFreeFunc) _gst_mpegts_atsc_vct_source_free);
 
-static GstMpegTsAtscVCT *
-_gst_mpegts_atsc_vct_copy (GstMpegTsAtscVCT * vct)
+static GstMpegtsAtscVCT *
+_gst_mpegts_atsc_vct_copy (GstMpegtsAtscVCT * vct)
 {
-  GstMpegTsAtscVCT *copy;
+  GstMpegtsAtscVCT *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscVCT, vct);
+  copy = g_slice_dup (GstMpegtsAtscVCT, vct);
   copy->sources = g_ptr_array_ref (vct->sources);
   copy->descriptors = g_ptr_array_ref (vct->descriptors);
 
@@ -71,30 +71,30 @@
 }
 
 static void
-_gst_mpegts_atsc_vct_free (GstMpegTsAtscVCT * vct)
+_gst_mpegts_atsc_vct_free (GstMpegtsAtscVCT * vct)
 {
   if (vct->sources)
     g_ptr_array_unref (vct->sources);
   if (vct->descriptors)
     g_ptr_array_unref (vct->descriptors);
-  g_slice_free (GstMpegTsAtscVCT, vct);
+  g_slice_free (GstMpegtsAtscVCT, vct);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscVCT, gst_mpegts_atsc_vct,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscVCT, gst_mpegts_atsc_vct,
     (GBoxedCopyFunc) _gst_mpegts_atsc_vct_copy,
     (GFreeFunc) _gst_mpegts_atsc_vct_free);
 
 static gpointer
-_parse_atsc_vct (GstMpegTsSection * section)
+_parse_atsc_vct (GstMpegtsSection * section)
 {
-  GstMpegTsAtscVCT *vct = NULL;
+  GstMpegtsAtscVCT *vct = NULL;
   guint8 *data, *end, source_nb;
   guint32 tmp32;
   guint16 descriptors_loop_length, tmp16;
   guint i;
   GError *err = NULL;
 
-  vct = g_slice_new0 (GstMpegTsAtscVCT);
+  vct = g_slice_new0 (GstMpegtsAtscVCT);
 
   data = section->data;
   end = data + section->section_length;
@@ -118,14 +118,14 @@
       (GDestroyNotify) _gst_mpegts_atsc_vct_source_free);
 
   for (i = 0; i < source_nb; i++) {
-    GstMpegTsAtscVCTSource *source;
+    GstMpegtsAtscVCTSource *source;
 
     /* minimum 32 bytes for a entry, 2 bytes second descriptor
        loop-length, 4 bytes crc */
     if (end - data < 32 + 2 + 4)
       goto error;
 
-    source = g_slice_new0 (GstMpegTsAtscVCTSource);
+    source = g_slice_new0 (GstMpegtsAtscVCTSource);
     g_ptr_array_add (vct->sources, source);
 
     source->short_name =
@@ -204,15 +204,15 @@
 
 /**
  * gst_mpegts_section_get_atsc_tvct:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_ATSC_TVCT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_TVCT
  *
- * Returns the #GstMpegTsAtscVCT contained in the @section
+ * Returns the #GstMpegtsAtscVCT contained in the @section
  *
- * Returns: The #GstMpegTsAtscVCT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsAtscVCT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsAtscVCT *
-gst_mpegts_section_get_atsc_tvct (GstMpegTsSection * section)
+const GstMpegtsAtscVCT *
+gst_mpegts_section_get_atsc_tvct (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_ATSC_TVCT,
       NULL);
@@ -223,20 +223,20 @@
         __common_section_checks (section, 16, _parse_atsc_vct,
         (GDestroyNotify) _gst_mpegts_atsc_vct_free);
 
-  return (const GstMpegTsAtscVCT *) section->cached_parsed;
+  return (const GstMpegtsAtscVCT *) section->cached_parsed;
 }
 
 /**
  * gst_mpegts_section_get_atsc_cvct:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_ATSC_CVCT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_CVCT
  *
- * Returns the #GstMpegTsAtscVCT contained in the @section
+ * Returns the #GstMpegtsAtscVCT contained in the @section
  *
- * Returns: The #GstMpegTsAtscVCT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsAtscVCT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsAtscVCT *
-gst_mpegts_section_get_atsc_cvct (GstMpegTsSection * section)
+const GstMpegtsAtscVCT *
+gst_mpegts_section_get_atsc_cvct (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_ATSC_CVCT,
       NULL);
@@ -247,39 +247,39 @@
         __common_section_checks (section, 16, _parse_atsc_vct,
         (GDestroyNotify) _gst_mpegts_atsc_vct_free);
 
-  return (const GstMpegTsAtscVCT *) section->cached_parsed;
+  return (const GstMpegtsAtscVCT *) section->cached_parsed;
 }
 
 /* MGT */
 
-static GstMpegTsAtscMGTTable *
-_gst_mpegts_atsc_mgt_table_copy (GstMpegTsAtscMGTTable * mgt_table)
+static GstMpegtsAtscMGTTable *
+_gst_mpegts_atsc_mgt_table_copy (GstMpegtsAtscMGTTable * mgt_table)
 {
-  GstMpegTsAtscMGTTable *copy;
+  GstMpegtsAtscMGTTable *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscMGTTable, mgt_table);
+  copy = g_slice_dup (GstMpegtsAtscMGTTable, mgt_table);
   copy->descriptors = g_ptr_array_ref (mgt_table->descriptors);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_mgt_table_free (GstMpegTsAtscMGTTable * mgt_table)
+_gst_mpegts_atsc_mgt_table_free (GstMpegtsAtscMGTTable * mgt_table)
 {
   g_ptr_array_unref (mgt_table->descriptors);
-  g_slice_free (GstMpegTsAtscMGTTable, mgt_table);
+  g_slice_free (GstMpegtsAtscMGTTable, mgt_table);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscMGTTable, gst_mpegts_atsc_mgt_table,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscMGTTable, gst_mpegts_atsc_mgt_table,
     (GBoxedCopyFunc) _gst_mpegts_atsc_mgt_table_copy,
     (GFreeFunc) _gst_mpegts_atsc_mgt_table_free);
 
-static GstMpegTsAtscMGT *
-_gst_mpegts_atsc_mgt_copy (GstMpegTsAtscMGT * mgt)
+static GstMpegtsAtscMGT *
+_gst_mpegts_atsc_mgt_copy (GstMpegtsAtscMGT * mgt)
 {
-  GstMpegTsAtscMGT *copy;
+  GstMpegtsAtscMGT *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscMGT, mgt);
+  copy = g_slice_dup (GstMpegtsAtscMGT, mgt);
   copy->tables = g_ptr_array_ref (mgt->tables);
   copy->descriptors = g_ptr_array_ref (mgt->descriptors);
 
@@ -287,26 +287,26 @@
 }
 
 static void
-_gst_mpegts_atsc_mgt_free (GstMpegTsAtscMGT * mgt)
+_gst_mpegts_atsc_mgt_free (GstMpegtsAtscMGT * mgt)
 {
   g_ptr_array_unref (mgt->tables);
   g_ptr_array_unref (mgt->descriptors);
-  g_slice_free (GstMpegTsAtscMGT, mgt);
+  g_slice_free (GstMpegtsAtscMGT, mgt);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscMGT, gst_mpegts_atsc_mgt,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscMGT, gst_mpegts_atsc_mgt,
     (GBoxedCopyFunc) _gst_mpegts_atsc_mgt_copy,
     (GFreeFunc) _gst_mpegts_atsc_mgt_free);
 
 static gpointer
-_parse_atsc_mgt (GstMpegTsSection * section)
+_parse_atsc_mgt (GstMpegtsSection * section)
 {
-  GstMpegTsAtscMGT *mgt = NULL;
+  GstMpegtsAtscMGT *mgt = NULL;
   guint i = 0;
   guint8 *data, *end;
   guint16 descriptors_loop_length;
 
-  mgt = g_slice_new0 (GstMpegTsAtscMGT);
+  mgt = g_slice_new0 (GstMpegtsAtscMGT);
 
   data = section->data;
   end = data + section->section_length;
@@ -321,14 +321,14 @@
   mgt->tables = g_ptr_array_new_full (mgt->tables_defined,
       (GDestroyNotify) _gst_mpegts_atsc_mgt_table_free);
   for (i = 0; i < mgt->tables_defined && data + 11 < end; i++) {
-    GstMpegTsAtscMGTTable *mgt_table;
+    GstMpegtsAtscMGTTable *mgt_table;
 
     if (data + 11 >= end) {
       GST_WARNING ("MGT data too short to parse inner table num %d", i);
       goto error;
     }
 
-    mgt_table = g_slice_new0 (GstMpegTsAtscMGTTable);
+    mgt_table = g_slice_new0 (GstMpegtsAtscMGTTable);
     g_ptr_array_add (mgt->tables, mgt_table);
 
     mgt_table->table_type = GST_READ_UINT16_BE (data);
@@ -373,15 +373,15 @@
 
 /**
  * gst_mpegts_section_get_atsc_mgt:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_ATSC_MGT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_MGT
  *
- * Returns the #GstMpegTsAtscMGT contained in the @section.
+ * Returns the #GstMpegtsAtscMGT contained in the @section.
  *
- * Returns: The #GstMpegTsAtscMGT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsAtscMGT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsAtscMGT *
-gst_mpegts_section_get_atsc_mgt (GstMpegTsSection * section)
+const GstMpegtsAtscMGT *
+gst_mpegts_section_get_atsc_mgt (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_ATSC_MGT,
       NULL);
@@ -392,31 +392,31 @@
         __common_section_checks (section, 17, _parse_atsc_mgt,
         (GDestroyNotify) _gst_mpegts_atsc_mgt_free);
 
-  return (const GstMpegTsAtscMGT *) section->cached_parsed;
+  return (const GstMpegtsAtscMGT *) section->cached_parsed;
 }
 
 /* Multi string structure */
 
-static GstMpegTsAtscStringSegment *
-_gst_mpegts_atsc_string_segment_copy (GstMpegTsAtscStringSegment * seg)
+static GstMpegtsAtscStringSegment *
+_gst_mpegts_atsc_string_segment_copy (GstMpegtsAtscStringSegment * seg)
 {
-  GstMpegTsAtscStringSegment *copy;
+  GstMpegtsAtscStringSegment *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscStringSegment, seg);
+  copy = g_slice_dup (GstMpegtsAtscStringSegment, seg);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_string_segment_free (GstMpegTsAtscStringSegment * seg)
+_gst_mpegts_atsc_string_segment_free (GstMpegtsAtscStringSegment * seg)
 {
   if (seg->cached_string)
     g_free (seg->cached_string);
-  g_slice_free (GstMpegTsAtscStringSegment, seg);
+  g_slice_free (GstMpegtsAtscStringSegment, seg);
 }
 
 static void
-_gst_mpegts_atsc_string_segment_decode_string (GstMpegTsAtscStringSegment * seg)
+_gst_mpegts_atsc_string_segment_decode_string (GstMpegtsAtscStringSegment * seg)
 {
   const gchar *from_encoding;
 
@@ -437,7 +437,7 @@
       break;
   }
 
-  if (from_encoding != NULL) {
+  if (from_encoding != NULL && seg->compressed_data_size > 0) {
     GError *err = NULL;
 
     seg->cached_string =
@@ -457,7 +457,7 @@
 }
 
 const gchar *
-gst_mpegts_atsc_string_segment_get_string (GstMpegTsAtscStringSegment * seg)
+gst_mpegts_atsc_string_segment_get_string (GstMpegtsAtscStringSegment * seg)
 {
   if (!seg->cached_string)
     _gst_mpegts_atsc_string_segment_decode_string (seg);
@@ -465,29 +465,29 @@
   return seg->cached_string;
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscStringSegment, gst_mpegts_atsc_string_segment,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscStringSegment, gst_mpegts_atsc_string_segment,
     (GBoxedCopyFunc) _gst_mpegts_atsc_string_segment_copy,
     (GFreeFunc) _gst_mpegts_atsc_string_segment_free);
 
-static GstMpegTsAtscMultString *
-_gst_mpegts_atsc_mult_string_copy (GstMpegTsAtscMultString * mstring)
+static GstMpegtsAtscMultString *
+_gst_mpegts_atsc_mult_string_copy (GstMpegtsAtscMultString * mstring)
 {
-  GstMpegTsAtscMultString *copy;
+  GstMpegtsAtscMultString *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscMultString, mstring);
+  copy = g_slice_dup (GstMpegtsAtscMultString, mstring);
   copy->segments = g_ptr_array_ref (mstring->segments);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_mult_string_free (GstMpegTsAtscMultString * mstring)
+_gst_mpegts_atsc_mult_string_free (GstMpegtsAtscMultString * mstring)
 {
   g_ptr_array_unref (mstring->segments);
-  g_slice_free (GstMpegTsAtscMultString, mstring);
+  g_slice_free (GstMpegtsAtscMultString, mstring);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscMultString, gst_mpegts_atsc_mult_string,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscMultString, gst_mpegts_atsc_mult_string,
     (GBoxedCopyFunc) _gst_mpegts_atsc_mult_string_copy,
     (GFreeFunc) _gst_mpegts_atsc_mult_string_free);
 
@@ -509,11 +509,11 @@
         (GDestroyNotify) _gst_mpegts_atsc_mult_string_free);
 
     for (i = 0; i < num_strings; i++) {
-      GstMpegTsAtscMultString *mstring;
+      GstMpegtsAtscMultString *mstring;
       guint8 num_segments;
       gint j;
 
-      mstring = g_slice_new0 (GstMpegTsAtscMultString);
+      mstring = g_slice_new0 (GstMpegtsAtscMultString);
       g_ptr_array_add (res, mstring);
       mstring->segments =
           g_ptr_array_new_full (num_strings,
@@ -536,9 +536,9 @@
       data += 1;
 
       for (j = 0; j < num_segments; j++) {
-        GstMpegTsAtscStringSegment *seg;
+        GstMpegtsAtscStringSegment *seg;
 
-        seg = g_slice_new0 (GstMpegTsAtscStringSegment);
+        seg = g_slice_new0 (GstMpegtsAtscStringSegment);
         g_ptr_array_add (mstring->segments, seg);
 
         /* each entry needs at least 3 bytes */
@@ -576,12 +576,12 @@
 
 /* EIT */
 
-static GstMpegTsAtscEITEvent *
-_gst_mpegts_atsc_eit_event_copy (GstMpegTsAtscEITEvent * event)
+static GstMpegtsAtscEITEvent *
+_gst_mpegts_atsc_eit_event_copy (GstMpegtsAtscEITEvent * event)
 {
-  GstMpegTsAtscEITEvent *copy;
+  GstMpegtsAtscEITEvent *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscEITEvent, event);
+  copy = g_slice_dup (GstMpegtsAtscEITEvent, event);
   copy->titles = g_ptr_array_ref (event->titles);
   copy->descriptors = g_ptr_array_ref (event->descriptors);
 
@@ -589,51 +589,51 @@
 }
 
 static void
-_gst_mpegts_atsc_eit_event_free (GstMpegTsAtscEITEvent * event)
+_gst_mpegts_atsc_eit_event_free (GstMpegtsAtscEITEvent * event)
 {
   if (event->titles)
     g_ptr_array_unref (event->titles);
   if (event->descriptors)
     g_ptr_array_unref (event->descriptors);
-  g_slice_free (GstMpegTsAtscEITEvent, event);
+  g_slice_free (GstMpegtsAtscEITEvent, event);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscEITEvent, gst_mpegts_atsc_eit_event,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscEITEvent, gst_mpegts_atsc_eit_event,
     (GBoxedCopyFunc) _gst_mpegts_atsc_eit_event_copy,
     (GFreeFunc) _gst_mpegts_atsc_eit_event_free);
 
-static GstMpegTsAtscEIT *
-_gst_mpegts_atsc_eit_copy (GstMpegTsAtscEIT * eit)
+static GstMpegtsAtscEIT *
+_gst_mpegts_atsc_eit_copy (GstMpegtsAtscEIT * eit)
 {
-  GstMpegTsAtscEIT *copy;
+  GstMpegtsAtscEIT *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscEIT, eit);
+  copy = g_slice_dup (GstMpegtsAtscEIT, eit);
   copy->events = g_ptr_array_ref (eit->events);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_eit_free (GstMpegTsAtscEIT * eit)
+_gst_mpegts_atsc_eit_free (GstMpegtsAtscEIT * eit)
 {
   if (eit->events)
     g_ptr_array_unref (eit->events);
-  g_slice_free (GstMpegTsAtscEIT, eit);
+  g_slice_free (GstMpegtsAtscEIT, eit);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscEIT, gst_mpegts_atsc_eit,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscEIT, gst_mpegts_atsc_eit,
     (GBoxedCopyFunc) _gst_mpegts_atsc_eit_copy,
     (GFreeFunc) _gst_mpegts_atsc_eit_free);
 
 static gpointer
-_parse_atsc_eit (GstMpegTsSection * section)
+_parse_atsc_eit (GstMpegtsSection * section)
 {
-  GstMpegTsAtscEIT *eit = NULL;
+  GstMpegtsAtscEIT *eit = NULL;
   guint i = 0;
   guint8 *data, *end;
   guint8 num_events;
 
-  eit = g_slice_new0 (GstMpegTsAtscEIT);
+  eit = g_slice_new0 (GstMpegtsAtscEIT);
 
   data = section->data;
   end = data + section->section_length;
@@ -652,7 +652,7 @@
       _gst_mpegts_atsc_eit_event_free);
 
   for (i = 0; i < num_events; i++) {
-    GstMpegTsAtscEITEvent *event;
+    GstMpegtsAtscEITEvent *event;
     guint32 tmp;
     guint8 text_length;
     guint16 descriptors_loop_length;
@@ -663,7 +663,7 @@
       goto error;
     }
 
-    event = g_slice_new0 (GstMpegTsAtscEITEvent);
+    event = g_slice_new0 (GstMpegtsAtscEITEvent);
     g_ptr_array_add (eit->events, event);
 
     event->event_id = GST_READ_UINT16_BE (data) & 0x3FFF;
@@ -716,15 +716,15 @@
 
 /**
  * gst_mpegts_section_get_atsc_eit:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_ATSC_EIT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_EIT
  *
- * Returns the #GstMpegTsAtscEIT contained in the @section.
+ * Returns the #GstMpegtsAtscEIT contained in the @section.
  *
- * Returns: The #GstMpegTsAtscEIT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsAtscEIT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsAtscEIT *
-gst_mpegts_section_get_atsc_eit (GstMpegTsSection * section)
+const GstMpegtsAtscEIT *
+gst_mpegts_section_get_atsc_eit (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_ATSC_EIT,
       NULL);
@@ -735,40 +735,40 @@
         __common_section_checks (section, 14, _parse_atsc_eit,
         (GDestroyNotify) _gst_mpegts_atsc_eit_free);
 
-  return (const GstMpegTsAtscEIT *) section->cached_parsed;
+  return (const GstMpegtsAtscEIT *) section->cached_parsed;
 }
 
 
-static GstMpegTsAtscETT *
-_gst_mpegts_atsc_ett_copy (GstMpegTsAtscETT * ett)
+static GstMpegtsAtscETT *
+_gst_mpegts_atsc_ett_copy (GstMpegtsAtscETT * ett)
 {
-  GstMpegTsAtscETT *copy;
+  GstMpegtsAtscETT *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscETT, ett);
+  copy = g_slice_dup (GstMpegtsAtscETT, ett);
   copy->messages = g_ptr_array_ref (ett->messages);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_ett_free (GstMpegTsAtscETT * ett)
+_gst_mpegts_atsc_ett_free (GstMpegtsAtscETT * ett)
 {
   if (ett->messages)
     g_ptr_array_unref (ett->messages);
-  g_slice_free (GstMpegTsAtscETT, ett);
+  g_slice_free (GstMpegtsAtscETT, ett);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscETT, gst_mpegts_atsc_ett,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscETT, gst_mpegts_atsc_ett,
     (GBoxedCopyFunc) _gst_mpegts_atsc_ett_copy,
     (GFreeFunc) _gst_mpegts_atsc_ett_free);
 
 static gpointer
-_parse_ett (GstMpegTsSection * section)
+_parse_ett (GstMpegtsSection * section)
 {
-  GstMpegTsAtscETT *ett = NULL;
+  GstMpegtsAtscETT *ett = NULL;
   guint8 *data, *end;
 
-  ett = g_slice_new0 (GstMpegTsAtscETT);
+  ett = g_slice_new0 (GstMpegtsAtscETT);
 
   data = section->data;
   end = data + section->section_length;
@@ -803,15 +803,15 @@
 
 /**
  * gst_mpegts_section_get_atsc_ett:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_ATSC_ETT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_ETT
  *
- * Returns the #GstMpegTsAtscETT contained in the @section.
+ * Returns the #GstMpegtsAtscETT contained in the @section.
  *
- * Returns: The #GstMpegTsAtscETT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsAtscETT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsAtscETT *
-gst_mpegts_section_get_atsc_ett (GstMpegTsSection * section)
+const GstMpegtsAtscETT *
+gst_mpegts_section_get_atsc_ett (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_ATSC_ETT,
       NULL);
@@ -821,42 +821,42 @@
     section->cached_parsed = __common_section_checks (section, 17, _parse_ett,
         (GDestroyNotify) _gst_mpegts_atsc_ett_free);
 
-  return (const GstMpegTsAtscETT *) section->cached_parsed;
+  return (const GstMpegtsAtscETT *) section->cached_parsed;
 }
 
 /* STT */
 
-static GstMpegTsAtscSTT *
-_gst_mpegts_atsc_stt_copy (GstMpegTsAtscSTT * stt)
+static GstMpegtsAtscSTT *
+_gst_mpegts_atsc_stt_copy (GstMpegtsAtscSTT * stt)
 {
-  GstMpegTsAtscSTT *copy;
+  GstMpegtsAtscSTT *copy;
 
-  copy = g_slice_dup (GstMpegTsAtscSTT, stt);
+  copy = g_slice_dup (GstMpegtsAtscSTT, stt);
   copy->descriptors = g_ptr_array_ref (stt->descriptors);
 
   return copy;
 }
 
 static void
-_gst_mpegts_atsc_stt_free (GstMpegTsAtscSTT * stt)
+_gst_mpegts_atsc_stt_free (GstMpegtsAtscSTT * stt)
 {
   if (stt->descriptors)
     g_ptr_array_unref (stt->descriptors);
-  g_slice_free (GstMpegTsAtscSTT, stt);
+  g_slice_free (GstMpegtsAtscSTT, stt);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsAtscSTT, gst_mpegts_atsc_stt,
+G_DEFINE_BOXED_TYPE (GstMpegtsAtscSTT, gst_mpegts_atsc_stt,
     (GBoxedCopyFunc) _gst_mpegts_atsc_stt_copy,
     (GFreeFunc) _gst_mpegts_atsc_stt_free);
 
 static gpointer
-_parse_atsc_stt (GstMpegTsSection * section)
+_parse_atsc_stt (GstMpegtsSection * section)
 {
-  GstMpegTsAtscSTT *stt = NULL;
+  GstMpegtsAtscSTT *stt = NULL;
   guint8 *data, *end;
   guint16 daylight_saving;
 
-  stt = g_slice_new0 (GstMpegTsAtscSTT);
+  stt = g_slice_new0 (GstMpegtsAtscSTT);
 
   data = section->data;
   end = data + section->section_length;
@@ -892,15 +892,15 @@
 
 /**
  * gst_mpegts_section_get_atsc_stt:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_ATSC_STT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_STT
  *
- * Returns the #GstMpegTsAtscSTT contained in the @section.
+ * Returns the #GstMpegtsAtscSTT contained in the @section.
  *
- * Returns: The #GstMpegTsAtscSTT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsAtscSTT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsAtscSTT *
-gst_mpegts_section_get_atsc_stt (GstMpegTsSection * section)
+const GstMpegtsAtscSTT *
+gst_mpegts_section_get_atsc_stt (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_ATSC_STT,
       NULL);
@@ -911,7 +911,7 @@
         __common_section_checks (section, 20, _parse_atsc_stt,
         (GDestroyNotify) _gst_mpegts_atsc_stt_free);
 
-  return (const GstMpegTsAtscSTT *) section->cached_parsed;
+  return (const GstMpegtsAtscSTT *) section->cached_parsed;
 }
 
 #define GPS_TO_UTC_TICKS G_GINT64_CONSTANT(315964800)
@@ -923,7 +923,7 @@
 }
 
 GstDateTime *
-gst_mpegts_atsc_stt_get_datetime_utc (GstMpegTsAtscSTT * stt)
+gst_mpegts_atsc_stt_get_datetime_utc (GstMpegtsAtscSTT * stt)
 {
   if (stt->utc_datetime == NULL)
     stt->utc_datetime = _gst_mpegts_atsc_gps_time_to_datetime (stt->system_time,
diff --git a/gst-libs/gst/mpegts/gst-atsc-section.h b/gst-libs/gst/mpegts/gst-atsc-section.h
index 7851d01..372c68f 100644
--- a/gst-libs/gst/mpegts/gst-atsc-section.h
+++ b/gst-libs/gst/mpegts/gst-atsc-section.h
@@ -31,13 +31,13 @@
 G_BEGIN_DECLS
 
 /**
- * GstMpegTsSectionATSCTableID:
+ * GstMpegtsSectionATSCTableID:
  *
- * Values for a #GstMpegTsSection table_id.
+ * Values for a #GstMpegtsSection table_id.
  *
  * These are the registered ATSC table_id variants.
  *
- * see also: #GstMpegTsSectionTableID
+ * see also: #GstMpegtsSectionTableID
  */
 typedef enum {
 
@@ -64,21 +64,22 @@
   /* 0xD8 ?? */
   GST_MTS_TABLE_ID_ATSC_AGGREGATE_DATA_EVENT            = 0xD9,
   GST_MTS_TABLE_ID_ATSC_SATELLITE_VIRTUAL_CHANNEL       = 0xDA,
-} GstMpegTsSectionATSCTableID;
+} GstMpegtsSectionATSCTableID;
 
 /* TVCT/CVCT */
 #define GST_TYPE_MPEGTS_ATSC_VCT (gst_mpegts_atsc_vct_get_type ())
 #define GST_TYPE_MPEGTS_ATSC_VCT_SOURCE (gst_mpegts_atsc_vct_source_get_type ())
 
-typedef struct _GstMpegTsAtscVCTSource GstMpegTsAtscVCTSource;
-typedef struct _GstMpegTsAtscVCT GstMpegTsAtscVCT;
+typedef struct _GstMpegtsAtscVCTSource GstMpegtsAtscVCTSource;
+typedef struct _GstMpegtsAtscVCT GstMpegtsAtscVCT;
 
 /**
- * GstMpegTsAtscVCTSource:
+ * GstMpegtsAtscVCTSource:
+ * @descriptors: (element-type GstMpegtsDescriptor): descriptors
  *
- * Source from a @GstMpegTsAtscVCT, can be used both for TVCT and CVCT tables
+ * Source from a @GstMpegtsAtscVCT, can be used both for TVCT and CVCT tables
  */
-struct _GstMpegTsAtscVCTSource
+struct _GstMpegtsAtscVCTSource
 {
   gchar    *short_name;
   guint16   major_channel_number;
@@ -101,14 +102,16 @@
 };
 
 /**
- * GstMpegTsAtscVCT:
+ * GstMpegtsAtscVCT:
+ * @sources: (element-type GstMpegtsAtscVCTSource): sources
+ * @descriptors: (element-type GstMpegtsDescriptor): descriptors
  *
  * Represents both:
  *   Terrestrial Virtual Channel Table (A65)
  *   Cable Virtual Channel Table (A65)
  *
  */
-struct _GstMpegTsAtscVCT
+struct _GstMpegtsAtscVCT
 {
   guint16   transport_stream_id;
   guint8    protocol_version;
@@ -119,29 +122,30 @@
 GType gst_mpegts_atsc_vct_get_type (void);
 GType gst_mpegts_atsc_vct_source_get_type (void);
 
-const GstMpegTsAtscVCT * gst_mpegts_section_get_atsc_tvct (GstMpegTsSection * section);
-const GstMpegTsAtscVCT * gst_mpegts_section_get_atsc_cvct (GstMpegTsSection * section);
+const GstMpegtsAtscVCT * gst_mpegts_section_get_atsc_tvct (GstMpegtsSection * section);
+const GstMpegtsAtscVCT * gst_mpegts_section_get_atsc_cvct (GstMpegtsSection * section);
 
 /* MGT */
 #define GST_TYPE_MPEGTS_ATSC_MGT (gst_mpegts_atsc_mgt_get_type ())
 #define GST_TYPE_MPEGTS_ATSC_MGT_TABLE (gst_mpegts_atsc_mgt_table_get_type ())
 
-typedef struct _GstMpegTsAtscMGTTable GstMpegTsAtscMGTTable;
-typedef struct _GstMpegTsAtscMGT GstMpegTsAtscMGT;
+typedef struct _GstMpegtsAtscMGTTable GstMpegtsAtscMGTTable;
+typedef struct _GstMpegtsAtscMGT GstMpegtsAtscMGT;
 
 typedef enum {
-  GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_EIT0 = 0x0100,
-  GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_EIT127 = 0x017F,
-  GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_ETT0 = 0x0200,
-  GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_ETT127 = 0x027F
-} GstMpegTsAtscMGTTableType;
+  GST_MPEGTS_ATSC_MGT_TABLE_TYPE_EIT0 = 0x0100,
+  GST_MPEGTS_ATSC_MGT_TABLE_TYPE_EIT127 = 0x017F,
+  GST_MPEGTS_ATSC_MGT_TABLE_TYPE_ETT0 = 0x0200,
+  GST_MPEGTS_ATSC_MGT_TABLE_TYPE_ETT127 = 0x027F
+} GstMpegtsAtscMGTTableType;
 
 /**
- * GstMpegTsAtscMGTTable:
+ * GstMpegtsAtscMGTTable:
+ * @descriptors: (element-type GstMpegtsDescriptor): descriptors
  *
- * Source from a @GstMpegTsAtscMGT
+ * Source from a @GstMpegtsAtscMGT
  */
-struct _GstMpegTsAtscMGTTable
+struct _GstMpegtsAtscMGTTable
 {
   guint16 table_type;
   guint16 pid;
@@ -151,12 +155,14 @@
 };
 
 /**
- * GstMpegTsAtscMGT:
+ * GstMpegtsAtscMGT:
+ * @tables: (element-type GstMpegtsAtscMGTTable): the tables
+ * @descriptors: (element-type GstMpegtsDescriptor): descriptors
  *
- * Terrestrial Virtual Channel Table (A65)
+ * Master Guide Table (A65)
  *
  */
-struct _GstMpegTsAtscMGT
+struct _GstMpegtsAtscMGT
 {
   guint8  protocol_version;
   guint16 tables_defined;
@@ -167,17 +173,17 @@
 GType gst_mpegts_atsc_mgt_get_type (void);
 GType gst_mpegts_atsc_mgt_table_get_type (void);
 
-const GstMpegTsAtscMGT * gst_mpegts_section_get_atsc_mgt (GstMpegTsSection * section);
+const GstMpegtsAtscMGT * gst_mpegts_section_get_atsc_mgt (GstMpegtsSection * section);
 
 /* Multiple string structure (used in ETT and EIT */
 
 #define GST_TYPE_MPEGTS_ATSC_STRING_SEGMENT (gst_mpegts_atsc_string_segment_get_type())
 #define GST_TYPE_MPEGTS_ATSC_MULT_STRING (gst_mpegts_atsc_mult_string_get_type())
 
-typedef struct _GstMpegTsAtscStringSegment GstMpegTsAtscStringSegment;
-typedef struct _GstMpegTsAtscMultString GstMpegTsAtscMultString;
+typedef struct _GstMpegtsAtscStringSegment GstMpegtsAtscStringSegment;
+typedef struct _GstMpegtsAtscMultString GstMpegtsAtscMultString;
 
-struct _GstMpegTsAtscStringSegment {
+struct _GstMpegtsAtscStringSegment {
   guint8 compression_type;
   guint8 mode;
   guint8 compressed_data_size;
@@ -186,9 +192,14 @@
   gchar *cached_string;
 };
 
-const gchar * gst_mpegts_atsc_string_segment_get_string (GstMpegTsAtscStringSegment * seg);
+const gchar * gst_mpegts_atsc_string_segment_get_string (GstMpegtsAtscStringSegment * seg);
 
-struct _GstMpegTsAtscMultString {
+/**
+ * GstMpegtsAtscMultString:
+ * @segments: (element-type GstMpegtsAtscStringSegment)
+ *
+ */
+struct _GstMpegtsAtscMultString {
   gchar      iso_639_langcode[4];
   GPtrArray *segments;
 };
@@ -201,10 +212,17 @@
 #define GST_TYPE_MPEGTS_ATSC_EIT_EVENT (gst_mpegts_atsc_eit_event_get_type())
 #define GST_TYPE_MPEGTS_ATSC_EIT (gst_mpegts_atsc_eit_get_type())
 
-typedef struct _GstMpegTsAtscEITEvent GstMpegTsAtscEITEvent;
-typedef struct _GstMpegTsAtscEIT GstMpegTsAtscEIT;
+typedef struct _GstMpegtsAtscEITEvent GstMpegtsAtscEITEvent;
+typedef struct _GstMpegtsAtscEIT GstMpegtsAtscEIT;
 
-struct _GstMpegTsAtscEITEvent {
+/**
+ * GstMpegtsAtscEITEvent:
+ * @titles: (element-type GstMpegtsAtscMultString): the titles
+ * @descriptors: (element-type GstMpegtsDescriptor): descriptors
+ *
+ * An ATSC EIT Event
+ */
+struct _GstMpegtsAtscEITEvent {
   guint16        event_id;
   guint32        start_time;
   guint8         etm_location;
@@ -215,13 +233,13 @@
 };
 
 /**
- * GstMpegTsAtscEIT:
- * @events: (element-type GstMpegTsAtscEITEvent): Events
+ * GstMpegtsAtscEIT:
+ * @events: (element-type GstMpegtsAtscEITEvent): Events
  *
  * Event Information Table (ATSC)
  *
  */
-struct _GstMpegTsAtscEIT
+struct _GstMpegtsAtscEIT
 {
   guint16        source_id;
   guint8         protocol_version;
@@ -232,22 +250,22 @@
 GType gst_mpegts_atsc_eit_event_get_type (void);
 GType gst_mpegts_atsc_eit_get_type (void);
 
-const GstMpegTsAtscEIT *gst_mpegts_section_get_atsc_eit (GstMpegTsSection *section);
+const GstMpegtsAtscEIT *gst_mpegts_section_get_atsc_eit (GstMpegtsSection *section);
 
 /* ETT */
 
 #define GST_TYPE_MPEGTS_ATSC_ETT (gst_mpegts_atsc_ett_get_type())
 
-typedef struct _GstMpegTsAtscETT GstMpegTsAtscETT;
+typedef struct _GstMpegtsAtscETT GstMpegtsAtscETT;
 
 /**
- * GstMpegTsAtscETT:
- * @messages: (element-type GstMpegTsAtscMultString): List of texts
+ * GstMpegtsAtscETT:
+ * @messages: (element-type GstMpegtsAtscMultString): List of texts
  *
  * Extended Text Table (ATSC)
  *
  */
-struct _GstMpegTsAtscETT
+struct _GstMpegtsAtscETT
 {
   guint16        ett_table_id_extension;
   guint16        protocol_version;
@@ -258,20 +276,21 @@
 
 GType gst_mpegts_atsc_ett_get_type (void);
 
-const GstMpegTsAtscETT *gst_mpegts_section_get_atsc_ett (GstMpegTsSection *section);
+const GstMpegtsAtscETT *gst_mpegts_section_get_atsc_ett (GstMpegtsSection *section);
 
 /* STT */
 #define GST_TYPE_MPEGTS_ATSC_STT (gst_mpegts_atsc_stt_get_type ())
 
-typedef struct _GstMpegTsAtscSTT GstMpegTsAtscSTT;
+typedef struct _GstMpegtsAtscSTT GstMpegtsAtscSTT;
 
 /**
- * GstMpegTsAtscSTT:
+ * GstMpegtsAtscSTT:
+ * @descriptors: (element-type GstMpegtsDescriptor): descriptors
  *
  * System Time Table (A65)
  *
  */
-struct _GstMpegTsAtscSTT
+struct _GstMpegtsAtscSTT
 {
   guint8     protocol_version;
   guint32    system_time;
@@ -286,9 +305,9 @@
 
 GType gst_mpegts_atsc_stt_get_type (void);
 
-const GstMpegTsAtscSTT * gst_mpegts_section_get_atsc_stt (GstMpegTsSection * section);
+const GstMpegtsAtscSTT * gst_mpegts_section_get_atsc_stt (GstMpegtsSection * section);
 /* FIXME receive a non-const parameter but we only provide a const getter */
-GstDateTime * gst_mpegts_atsc_stt_get_datetime_utc (GstMpegTsAtscSTT * stt);
+GstDateTime * gst_mpegts_atsc_stt_get_datetime_utc (GstMpegtsAtscSTT * stt);
 
 G_END_DECLS
 
diff --git a/gst-libs/gst/mpegts/gst-dvb-descriptor.c b/gst-libs/gst/mpegts/gst-dvb-descriptor.c
index 2376b2e..9793de5 100644
--- a/gst-libs/gst/mpegts/gst-dvb-descriptor.c
+++ b/gst-libs/gst/mpegts/gst-dvb-descriptor.c
@@ -56,7 +56,7 @@
 /* GST_MTS_DESC_DVB_NETWORK_NAME (0x40) */
 /**
  * gst_mpegts_descriptor_parse_dvb_network_name:
- * @descriptor: a %GST_MTS_DESC_DVB_NETWORK_NAME #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_NETWORK_NAME #GstMpegtsDescriptor
  * @name: (out) (transfer full): the extracted name
  *
  * Parses out the dvb network name from the @descriptor:
@@ -64,7 +64,7 @@
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_network_name (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_network_name (const GstMpegtsDescriptor *
     descriptor, gchar ** name)
 {
   g_return_val_if_fail (descriptor != NULL && name != NULL, FALSE);
@@ -80,16 +80,16 @@
  * gst_mpegts_descriptor_from_dvb_network_name:
  * @name: the network name to set
  *
- * Fills a #GstMpegTsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME,
- * with the network name @name. The data field of the #GstMpegTsDescriptor
+ * Creates a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME,
+ * with the network name @name. The data field of the #GstMpegtsDescriptor
  * will be allocated, and transferred to the caller.
  *
- * Returns: (transfer full): the #GstMpegTsDescriptor or %NULL on fail
+ * Returns: (transfer full): the #GstMpegtsDescriptor or %NULL on fail
  */
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 gst_mpegts_descriptor_from_dvb_network_name (const gchar * name)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
   guint8 *converted_name;
   gsize size;
 
@@ -113,15 +113,15 @@
 
 /* GST_MTS_DESC_DVB_SERVICE_LIST (0x41) */
 static void
-_gst_mpegts_dvb_service_list_item_free (GstMpegTsDVBServiceListItem * item)
+_gst_mpegts_dvb_service_list_item_free (GstMpegtsDVBServiceListItem * item)
 {
-  g_slice_free (GstMpegTsDVBServiceListItem, item);
+  g_slice_free (GstMpegtsDVBServiceListItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_service_list:
- * @descriptor: a %GST_MTS_DESC_DVB_SERVICE_LIST #GstMpegTsDescriptor
- * @list: (out) (transfer full) (element-type GstMpegTsDVBServiceListItem):
+ * @descriptor: a %GST_MTS_DESC_DVB_SERVICE_LIST #GstMpegtsDescriptor
+ * @list: (out) (transfer full) (element-type GstMpegtsDVBServiceListItem):
  * the list of services
  *
  * Parses out a list of services from the @descriptor:
@@ -129,7 +129,7 @@
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_service_list (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_service_list (const GstMpegtsDescriptor *
     descriptor, GPtrArray ** list)
 {
   guint8 *data, i;
@@ -144,8 +144,8 @@
       _gst_mpegts_dvb_service_list_item_free);
 
   for (i = 0; i < descriptor->length - 2; i += 3) {
-    GstMpegTsDVBServiceListItem *item =
-        g_slice_new0 (GstMpegTsDVBServiceListItem);
+    GstMpegtsDVBServiceListItem *item =
+        g_slice_new0 (GstMpegtsDVBServiceListItem);
 
     g_ptr_array_add (*list, item);
     item->service_id = GST_READ_UINT16_BE (data);
@@ -161,15 +161,15 @@
 /* GST_MTS_DESC_DVB_STUFFING (0x42) */
 /**
  * gst_mpegts_descriptor_parse_dvb_stuffing:
- * @descriptor: a %GST_MTS_DESC_DVB_STUFFING #GstMpegTsDescriptor
- * @stuffing_bytes: (out): the stuffing bytes
+ * @descriptor: a %GST_MTS_DESC_DVB_STUFFING #GstMpegtsDescriptor
+ * @stuffing_bytes: (out) (transfer full): the stuffing bytes
  *
  * Parses out the stuffing bytes from the @descriptor.
  *
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_stuffing (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_stuffing (const GstMpegtsDescriptor *
     descriptor, guint8 ** stuffing_bytes)
 {
   guint8 *data;
@@ -187,16 +187,16 @@
 /* GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM (0x43) */
 /**
  * gst_mpegts_descriptor_parse_satellite_delivery_system:
- * @descriptor: a %GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsSatelliteDeliverySystemDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM #GstMpegtsDescriptor
+ * @res: (out) (transfer none): the #GstMpegtsSatelliteDeliverySystemDescriptor to fill
  *
  * Extracts the satellite delivery system information from @descriptor.
  *
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_satellite_delivery_system (const GstMpegTsDescriptor
-    * descriptor, GstMpegTsSatelliteDeliverySystemDescriptor * res)
+gst_mpegts_descriptor_parse_satellite_delivery_system (const GstMpegtsDescriptor
+    * descriptor, GstMpegtsSatelliteDeliverySystemDescriptor * res)
 {
   guint8 *data;
   guint8 tmp;
@@ -283,7 +283,6 @@
       break;
   }
 
-
   return TRUE;
 }
 
@@ -291,16 +290,16 @@
 /* GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM (0x44) */
 /**
  * gst_mpegts_descriptor_parse_cable_delivery_system:
- * @descriptor: a %GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsCableDeliverySystemDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM #GstMpegtsDescriptor
+ * @res: (out) (transfer none): the #GstMpegtsCableDeliverySystemDescriptor to fill
  *
  * Extracts the cable delivery system information from @descriptor.
  *
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_cable_delivery_system (const GstMpegTsDescriptor *
-    descriptor, GstMpegTsCableDeliverySystemDescriptor * res)
+gst_mpegts_descriptor_parse_cable_delivery_system (const GstMpegtsDescriptor *
+    descriptor, GstMpegtsCableDeliverySystemDescriptor * res)
 {
   guint8 *data;
 
@@ -398,7 +397,7 @@
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_bouquet_name (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_bouquet_name (const GstMpegtsDescriptor *
     descriptor, gchar ** bouquet_name)
 {
   guint8 *data;
@@ -417,7 +416,7 @@
 /* GST_MTS_DESC_DVB_SERVICE (0x48) */
 /**
  * gst_mpegts_descriptor_parse_dvb_service:
- * @descriptor: a %GST_MTS_DESC_DVB_SERVICE #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_SERVICE #GstMpegtsDescriptor
  * @service_type: (out) (allow-none): the service type
  * @service_name: (out) (transfer full) (allow-none): the service name
  * @provider_name: (out) (transfer full) (allow-none): the provider name
@@ -427,8 +426,8 @@
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_service (const GstMpegTsDescriptor *
-    descriptor, GstMpegTsDVBServiceType * service_type, gchar ** service_name,
+gst_mpegts_descriptor_parse_dvb_service (const GstMpegtsDescriptor *
+    descriptor, GstMpegtsDVBServiceType * service_type, gchar ** service_name,
     gchar ** provider_name)
 {
   guint8 *data;
@@ -453,21 +452,21 @@
 
 /**
  * gst_mpegts_descriptor_from_dvb_service:
- * @service_type: Service type defined as a #GstMpegTsDVBServiceType
+ * @service_type: Service type defined as a #GstMpegtsDVBServiceType
  * @service_name: (allow-none): Name of the service
  * @service_provider: (allow-none): Name of the service provider
  *
- * Fills a #GstMpegTsDescriptor to be a %GST_MTS_DESC_DVB_SERVICE.
- * The data field of the #GstMpegTsDescriptor will be allocated,
+ * Fills a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_SERVICE.
+ * The data field of the #GstMpegtsDescriptor will be allocated,
  * and transferred to the caller.
  *
- * Returns: (transfer full): the #GstMpgTsDescriptor or %NULL on fail
+ * Returns: (transfer full): the #GstMpegtsDescriptor or %NULL on fail
  */
-GstMpegTsDescriptor *
-gst_mpegts_descriptor_from_dvb_service (GstMpegTsDVBServiceType service_type,
+GstMpegtsDescriptor *
+gst_mpegts_descriptor_from_dvb_service (GstMpegtsDVBServiceType service_type,
     const gchar * service_name, const gchar * service_provider)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor = NULL;
   guint8 *conv_provider_name = NULL, *conv_service_name = NULL;
   gsize provider_size = 0, service_size = 0;
   guint8 *data;
@@ -478,13 +477,14 @@
     if (!conv_provider_name) {
       GST_WARNING ("Could not find proper encoding for string `%s`",
           service_provider);
-      return NULL;
+      goto beach;
     }
   }
 
   if (provider_size >= 256) {
-    g_free (conv_provider_name);
-    g_return_val_if_reached (NULL);
+    GST_WARNING ("Service provider string too big (%" G_GSIZE_FORMAT " > 256)",
+        provider_size);
+    goto beach;
   }
 
   if (service_name) {
@@ -493,14 +493,14 @@
     if (!conv_service_name) {
       GST_WARNING ("Could not find proper encoding for string `%s`",
           service_name);
-      return NULL;
+      goto beach;
     }
   }
 
   if (service_size >= 256) {
-    g_free (conv_provider_name);
-    g_free (conv_service_name);
-    g_return_val_if_reached (NULL);
+    GST_WARNING ("Service name string too big (%" G_GSIZE_FORMAT " > 256)",
+        service_size);
+    goto beach;
   }
 
   descriptor =
@@ -510,46 +510,111 @@
   data = descriptor->data + 2;
   *data++ = service_type;
   *data++ = provider_size;
-  memcpy (data, conv_provider_name, provider_size);
+  if (conv_provider_name)
+    memcpy (data, conv_provider_name, provider_size);
+
   data += provider_size;
   *data++ = service_size;
-  memcpy (data, conv_service_name, service_size);
+  if (conv_service_name)
+    memcpy (data, conv_service_name, service_size);
 
-  g_free (conv_provider_name);
-  g_free (conv_service_name);
+beach:
+  if (conv_service_name)
+    g_free (conv_service_name);
+  if (conv_provider_name)
+    g_free (conv_provider_name);
 
   return descriptor;
 }
 
 /* GST_MTS_DESC_DVB_LINKAGE (0x4A) */
+static GstMpegtsDVBLinkageDescriptor *
+_gst_mpegts_dvb_linkage_descriptor_copy (GstMpegtsDVBLinkageDescriptor * source)
+{
+  GstMpegtsDVBLinkageDescriptor *copy;
+
+  copy = g_slice_dup (GstMpegtsDVBLinkageDescriptor, source);
+
+  switch (source->linkage_type) {
+    case GST_MPEGTS_DVB_LINKAGE_MOBILE_HAND_OVER:
+      copy->linkage_data = g_slice_dup (GstMpegtsDVBLinkageMobileHandOver,
+          source->linkage_data);
+      break;
+    case GST_MPEGTS_DVB_LINKAGE_EVENT:
+      copy->linkage_data = g_slice_dup (GstMpegtsDVBLinkageEvent,
+          source->linkage_data);
+      break;
+    case GST_MPEGTS_DVB_LINKAGE_EXTENDED_EVENT:
+      copy->linkage_data = g_ptr_array_ref (source->linkage_data);
+      break;
+    default:
+      break;
+  }
+
+  copy->private_data_bytes = g_slice_copy (source->private_data_length,
+      source->private_data_bytes);
+
+  return copy;
+}
+
+void
+gst_mpegts_dvb_linkage_descriptor_free (GstMpegtsDVBLinkageDescriptor * source)
+{
+  switch (source->linkage_type) {
+    case GST_MPEGTS_DVB_LINKAGE_MOBILE_HAND_OVER:
+      g_slice_free (GstMpegtsDVBLinkageMobileHandOver, source->linkage_data);
+      break;
+    case GST_MPEGTS_DVB_LINKAGE_EVENT:
+      g_slice_free (GstMpegtsDVBLinkageEvent, source->linkage_data);
+      break;
+    case GST_MPEGTS_DVB_LINKAGE_EXTENDED_EVENT:
+      g_ptr_array_unref (source->linkage_data);
+      break;
+    default:
+      break;
+  }
+
+  g_slice_free1 (source->private_data_length, source->private_data_bytes);
+  g_slice_free (GstMpegtsDVBLinkageDescriptor, source);
+}
+
+G_DEFINE_BOXED_TYPE (GstMpegtsDVBLinkageDescriptor,
+    gst_mpegts_dvb_linkage_descriptor,
+    (GBoxedCopyFunc) _gst_mpegts_dvb_linkage_descriptor_copy,
+    (GFreeFunc) gst_mpegts_dvb_linkage_descriptor_free);
+
 static void
-_gst_mpegts_dvb_linkage_extened_event_free (GstMpegTsDVBLinkageExtendedEvent *
+_gst_mpegts_dvb_linkage_extened_event_free (GstMpegtsDVBLinkageExtendedEvent *
     item)
 {
-  g_slice_free (GstMpegTsDVBLinkageExtendedEvent, item);
+  g_slice_free (GstMpegtsDVBLinkageExtendedEvent, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_linkage:
- * @descriptor: a %GST_MTS_DESC_DVB_LINKAGE #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsDVBLinkageDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_DVB_LINKAGE #GstMpegtsDescriptor
+ * @res: (out) (transfer full): the #GstMpegtsDVBLinkageDescriptor to fill
  *
  * Extracts the DVB linkage information from @descriptor.
  *
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_linkage (const GstMpegTsDescriptor * descriptor,
-    GstMpegTsDVBLinkageDescriptor * res)
+gst_mpegts_descriptor_parse_dvb_linkage (const GstMpegtsDescriptor * descriptor,
+    GstMpegtsDVBLinkageDescriptor ** desc)
 {
+  guint i;
   guint8 *data, *end;
+  GstMpegtsDVBLinkageDescriptor *res;
 
-  g_return_val_if_fail (descriptor != NULL && res != NULL, FALSE);
+  g_return_val_if_fail (descriptor != NULL && desc != NULL, FALSE);
   __common_desc_checks (descriptor, GST_MTS_DESC_DVB_LINKAGE, 7, FALSE);
 
   data = (guint8 *) descriptor->data + 2;
   end = data + descriptor->length;
 
+  res = g_slice_new0 (GstMpegtsDVBLinkageDescriptor);
+
   res->transport_stream_id = GST_READ_UINT16_BE (data);
   data += 2;
 
@@ -564,12 +629,12 @@
 
   switch (res->linkage_type) {
     case GST_MPEGTS_DVB_LINKAGE_MOBILE_HAND_OVER:{
-      GstMpegTsDVBLinkageMobileHandOver *hand_over;
+      GstMpegtsDVBLinkageMobileHandOver *hand_over;
 
       if (end - data < 1)
         return FALSE;
 
-      hand_over = g_slice_new0 (GstMpegTsDVBLinkageMobileHandOver);
+      hand_over = g_slice_new0 (GstMpegtsDVBLinkageMobileHandOver);
       res->linkage_data = (gpointer) hand_over;
 
       hand_over->origin_type = (*data) & 0x01;
@@ -583,7 +648,7 @@
           || hand_over->hand_over_type ==
           GST_MPEGTS_DVB_LINKAGE_HAND_OVER_ASSOCIATED) {
         if (end - data < 2) {
-          g_slice_free (GstMpegTsDVBLinkageMobileHandOver, hand_over);
+          g_slice_free (GstMpegtsDVBLinkageMobileHandOver, hand_over);
           res->linkage_data = NULL;
           return FALSE;
         }
@@ -594,7 +659,7 @@
 
       if (hand_over->origin_type == 0) {
         if (end - data < 2) {
-          g_slice_free (GstMpegTsDVBLinkageMobileHandOver, hand_over);
+          g_slice_free (GstMpegtsDVBLinkageMobileHandOver, hand_over);
           res->linkage_data = NULL;
           return FALSE;
         }
@@ -605,12 +670,12 @@
       break;
     }
     case GST_MPEGTS_DVB_LINKAGE_EVENT:{
-      GstMpegTsDVBLinkageEvent *event;
+      GstMpegtsDVBLinkageEvent *event;
 
       if (end - data < 3)
         return FALSE;
 
-      event = g_slice_new0 (GstMpegTsDVBLinkageEvent);
+      event = g_slice_new0 (GstMpegtsDVBLinkageEvent);
       res->linkage_data = (gpointer) event;
 
       event->target_event_id = GST_READ_UINT16_BE (data);
@@ -627,13 +692,13 @@
 
       res->linkage_data = (gpointer) ext_events;
 
-      for (guint8 i = 0; i < *data++;) {
-        GstMpegTsDVBLinkageExtendedEvent *ext_event;
+      for (i = 0; i < *data++;) {
+        GstMpegtsDVBLinkageExtendedEvent *ext_event;
 
         if (end - data < 3)
           goto fail;
 
-        ext_event = g_slice_new0 (GstMpegTsDVBLinkageExtendedEvent);
+        ext_event = g_slice_new0 (GstMpegtsDVBLinkageExtendedEvent);
         g_ptr_array_add (res->linkage_data, ext_event);
 
         ext_event->target_event_id = GST_READ_UINT16_BE (data);
@@ -692,6 +757,8 @@
   res->private_data_length = end - data;
   res->private_data_bytes = g_memdup (data, res->private_data_length);
 
+  *desc = res;
+
   return TRUE;
 
 fail:
@@ -703,7 +770,7 @@
 /* GST_MTS_DESC_DVB_SHORT_EVENT (0x4D) */
 /**
  * gst_mpegts_descriptor_parse_dvb_short_event:
- * @descriptor: a %GST_MTS_DESC_DVB_SHORT_EVENT #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_SHORT_EVENT #GstMpegtsDescriptor
  * @language_code: (out) (transfer full) (allow-none): the language code
  * @event_name: (out) (transfer full) (allow-none): the event name
  * @text: (out) (transfer full) (allow-none): the event text
@@ -713,7 +780,7 @@
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_short_event (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_short_event (const GstMpegtsDescriptor *
     descriptor, gchar ** language_code, gchar ** event_name, gchar ** text)
 {
   guint8 *data;
@@ -724,10 +791,9 @@
 
   data = (guint8 *) descriptor->data + 2;
 
-  if (language_code) {
-    *language_code = g_malloc0 (4);
-    memcpy (*language_code, data, 3);
-  }
+  if (language_code)
+    *language_code = convert_lang_code (data);
+
   data += 3;
   if (event_name)
     *event_name = get_encoding_and_convert ((const gchar *) data + 1, *data);
@@ -740,10 +806,10 @@
 /* GST_MTS_DESC_DVB_TELETEXT (0x56) */
 /**
  * gst_mpegts_descriptor_parse_dvb_teletext_idx:
- * @descriptor: a %GST_MTS_DESC_DVB_TELETEXT #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_TELETEXT #GstMpegtsDescriptor
  * @idx: The id of the teletext to get
- * @language_code: (out) (allow-none): a 4-byte gchar array to hold language
- * @teletext_type: (out) (allow-none): #GstMpegTsDVBTeletextType
+ * @language_code: (out) (transfer full) (allow-none): a null-terminated string
+ * @teletext_type: (out) (allow-none): #GstMpegtsDVBTeletextType
  * @magazine_number: (out) (allow-none):
  * @page_number: (out) (allow-none):
  *
@@ -752,9 +818,9 @@
  * Returns: FALSE on out-of-bounds and errors
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_teletext_idx (const GstMpegTsDescriptor *
-    descriptor, guint idx, gchar (*language_code)[4],
-    GstMpegTsDVBTeletextType * teletext_type, guint8 * magazine_number,
+gst_mpegts_descriptor_parse_dvb_teletext_idx (const GstMpegtsDescriptor *
+    descriptor, guint idx, gchar ** language_code,
+    GstMpegtsDVBTeletextType * teletext_type, guint8 * magazine_number,
     guint8 * page_number)
 {
   guint8 *data;
@@ -767,10 +833,8 @@
 
   data = (guint8 *) descriptor->data + 2 + idx * 5;
 
-  if (language_code) {
-    memcpy (language_code, data, 3);
-    (*language_code)[3] = 0;
-  }
+  if (language_code)
+    *language_code = convert_lang_code (data);
 
   if (teletext_type)
     *teletext_type = data[3] >> 3;
@@ -786,14 +850,14 @@
 
 /**
  * gst_mpegts_descriptor_parse_dvb_teletext_nb:
- * @descriptor: a %GST_MTS_DESC_DVB_TELETEXT #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_TELETEXT #GstMpegtsDescriptor
  *
  * Find the number of teletext entries in @descriptor
  *
  * Returns: Number of teletext entries
  */
 guint
-gst_mpegts_descriptor_parse_dvb_teletext_nb (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_teletext_nb (const GstMpegtsDescriptor *
     descriptor)
 {
   g_return_val_if_fail (descriptor != NULL, 0);
@@ -806,9 +870,9 @@
 
 /**
  * gst_mpegts_descriptor_parse_dvb_subtitling_idx:
- * @descriptor: a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegtsDescriptor
  * @idx: Table id of the entry to parse
- * @lang: (out) (transfer none): 4-byte gchar array to hold the language code
+ * @lang: (out) (transfer full): the language code
  * @type: (out) (transfer none) (allow-none): the type of subtitling
  * @composition_page_id: (out) (transfer none) (allow-none): the composition page id
  * @ancillary_page_id: (out) (transfer none) (allow-none): the ancillary page id
@@ -821,8 +885,8 @@
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_subtitling_idx (const GstMpegTsDescriptor *
-    descriptor, guint idx, gchar (*lang)[4], guint8 * type,
+gst_mpegts_descriptor_parse_dvb_subtitling_idx (const GstMpegtsDescriptor *
+    descriptor, guint idx, gchar ** lang, guint8 * type,
     guint16 * composition_page_id, guint16 * ancillary_page_id)
 {
   guint8 *data;
@@ -836,8 +900,7 @@
 
   data = (guint8 *) descriptor->data + 2 + idx * 8;
 
-  memcpy (lang, data, 3);
-  (*lang)[3] = 0;
+  *lang = convert_lang_code (data);
 
   data += 3;
 
@@ -855,12 +918,12 @@
 
 /**
  * gst_mpegts_descriptor_parse_dvb_subtitling_nb:
- * @descriptor: a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegtsDescriptor
  *
  * Returns: The number of entries in @descriptor
  */
 guint
-gst_mpegts_descriptor_parse_dvb_subtitling_nb (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_subtitling_nb (const GstMpegtsDescriptor *
     descriptor)
 {
   g_return_val_if_fail (descriptor != NULL, FALSE);
@@ -876,11 +939,11 @@
  * @composition: composition page id
  * @ancillary: ancillary page id
  */
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 gst_mpegts_descriptor_from_dvb_subtitling (const gchar * lang,
     guint8 type, guint16 composition, guint16 ancillary)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
   guint8 *data;
 
   g_return_val_if_fail (lang != NULL, NULL);
@@ -903,34 +966,65 @@
 }
 
 /* GST_MTS_DESC_DVB_EXTENDED_EVENT (0x4E) */
+static GstMpegtsExtendedEventDescriptor *
+_gst_mpegts_extended_event_descriptor_copy (GstMpegtsExtendedEventDescriptor *
+    source)
+{
+  GstMpegtsExtendedEventDescriptor *copy;
+
+  copy = g_slice_dup (GstMpegtsExtendedEventDescriptor, source);
+  copy->items = g_ptr_array_ref (source->items);
+  copy->text = g_slice_copy (sizeof (source->text), source->text);
+
+  return copy;
+}
+
+void
+gst_mpegts_extended_event_descriptor_free (GstMpegtsExtendedEventDescriptor *
+    source)
+{
+  g_free (source->text);
+  g_ptr_array_unref (source->items);
+  g_slice_free (GstMpegtsExtendedEventDescriptor, source);
+}
+
+G_DEFINE_BOXED_TYPE (GstMpegtsExtendedEventDescriptor,
+    gst_mpegts_extended_event_descriptor,
+    (GBoxedCopyFunc) _gst_mpegts_extended_event_descriptor_copy,
+    (GFreeFunc) gst_mpegts_extended_event_descriptor_free);
 
 static void
-_gst_mpegts_extended_event_item_free (GstMpegTsExtendedEventItem * item)
+_gst_mpegts_extended_event_item_free (GstMpegtsExtendedEventItem * item)
 {
-  g_slice_free (GstMpegTsExtendedEventItem, item);
+  g_free (item->item);
+  g_free (item->item_description);
+  g_slice_free (GstMpegtsExtendedEventItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_extended_event:
- * @descriptor: a %GST_MTS_DESC_DVB_EXTENDED_EVENT #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsExtendedEventDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_DVB_EXTENDED_EVENT #GstMpegtsDescriptor
+ * @res: (out) (transfer full): the #GstMpegtsExtendedEventDescriptor to fill
  *
  * Extracts the DVB extended event information from @descriptor.
  *
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_extended_event (const GstMpegTsDescriptor
-    * descriptor, GstMpegTsExtendedEventDescriptor * res)
+gst_mpegts_descriptor_parse_dvb_extended_event (const GstMpegtsDescriptor
+    * descriptor, GstMpegtsExtendedEventDescriptor ** desc)
 {
   guint8 *data, *pdata;
   guint8 tmp, len_item;
-  GstMpegTsExtendedEventItem *item;
+  GstMpegtsExtendedEventItem *item;
+  GstMpegtsExtendedEventDescriptor *res;
 
-  g_return_val_if_fail (descriptor != NULL && res != NULL, FALSE);
+  g_return_val_if_fail (descriptor != NULL && desc != NULL, FALSE);
   /* Need at least 6 bytes (1 for desc number, 3 for language code, 2 for the loop length) */
   __common_desc_checks (descriptor, GST_MTS_DESC_DVB_EXTENDED_EVENT, 6, FALSE);
 
+  res = g_slice_new0 (GstMpegtsExtendedEventDescriptor);
+
   data = (guint8 *) descriptor->data + 2;
 
   tmp = *data;
@@ -939,14 +1033,14 @@
 
   data += 1;
 
-  memcpy (res->language_code, data, 3);
-  res->language_code[3] = 0;
-
+  res->language_code = convert_lang_code (data);
   data += 3;
 
   len_item = *data;
-  if (len_item > descriptor->length - 5)
+  if (len_item > descriptor->length - 5) {
+    gst_mpegts_extended_event_descriptor_free (res);
     return FALSE;
+  }
 
   data += 1;
 
@@ -955,7 +1049,7 @@
 
   pdata = data + len_item;
   while (data < pdata) {
-    item = g_slice_new0 (GstMpegTsExtendedEventItem);
+    item = g_slice_new0 (GstMpegtsExtendedEventItem);
     item->item_description =
         get_encoding_and_convert ((const gchar *) data + 1, *data);
 
@@ -967,30 +1061,64 @@
 
     g_ptr_array_add (res->items, item);
   }
-  if (pdata != data)
+  if (pdata != data) {
+    gst_mpegts_extended_event_descriptor_free (res);
     return FALSE;
+  }
   res->text = get_encoding_and_convert ((const gchar *) data + 1, *data);
 
+  *desc = res;
+
   return TRUE;
 }
 
 /* GST_MTS_DESC_DVB_COMPONENT (0x50) */
+static GstMpegtsComponentDescriptor *
+_gst_mpegts_dvb_component_descriptor_copy (GstMpegtsComponentDescriptor *
+    source)
+{
+  GstMpegtsComponentDescriptor *copy;
+
+  copy = g_slice_dup (GstMpegtsComponentDescriptor, source);
+  copy->language_code = g_strdup (source->language_code);
+  copy->text = g_strdup (source->text);
+
+  return copy;
+}
+
+void
+gst_mpegts_dvb_component_descriptor_free (GstMpegtsComponentDescriptor * source)
+{
+  if (source->language_code)
+    g_free (source->language_code);
+
+  if (source->text)
+    g_free (source->text);
+
+  g_slice_free (GstMpegtsComponentDescriptor, source);
+}
+
+G_DEFINE_BOXED_TYPE (GstMpegtsComponentDescriptor,
+    gst_mpegts_component_descriptor,
+    (GBoxedCopyFunc) _gst_mpegts_dvb_component_descriptor_copy,
+    (GFreeFunc) gst_mpegts_dvb_component_descriptor_free);
+
 /**
  * gst_mpegts_descriptor_parse_dvb_component:
- * @descriptor: a %GST_MTS_DESC_DVB_COMPONENT #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsComponentDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_DVB_COMPONENT #GstMpegtsDescriptor
+ * @res: (out) (transfer full): the #GstMpegtsComponentDescriptor to fill
  *
  * Extracts the DVB component information from @descriptor.
  *
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
-
 gboolean
-gst_mpegts_descriptor_parse_dvb_component (const GstMpegTsDescriptor
-    * descriptor, GstMpegTsComponentDescriptor * res)
+gst_mpegts_descriptor_parse_dvb_component (const GstMpegtsDescriptor
+    * descriptor, GstMpegtsComponentDescriptor ** res)
 {
   guint8 *data;
   guint8 len;
+  GstMpegtsComponentDescriptor *desc;
 
   g_return_val_if_fail (descriptor != NULL && res != NULL, FALSE);
   /* Need 6 bytes at least (1 for content, 1 for type, 1 for tag, 3 for language code) */
@@ -998,22 +1126,25 @@
 
   data = (guint8 *) descriptor->data + 2;
 
-  res->stream_content = *data & 0x0f;
+  desc = g_slice_new0 (GstMpegtsComponentDescriptor);
+
+  desc->stream_content = *data & 0x0f;
   data += 1;
 
-  res->component_type = *data;
+  desc->component_type = *data;
   data += 1;
 
-  res->component_tag = *data;
+  desc->component_tag = *data;
   data += 1;
 
-  memcpy (res->language_code, data, 3);
-  res->language_code[3] = 0;
+  desc->language_code = convert_lang_code (data);
   data += 3;
 
   len = descriptor->length - 6;
   if (len)
-    res->text = get_encoding_and_convert ((const gchar *) data, len);
+    desc->text = get_encoding_and_convert ((const gchar *) data, len);
+
+  *res = desc;
 
   return TRUE;
 }
@@ -1021,7 +1152,7 @@
 /* GST_MTS_DESC_DVB_STREAM_IDENTIFIER (0x52) */
 /**
  * gst_mpegts_descriptor_parse_dvb_stream_identifier:
- * @descriptor: a %GST_MTS_DESC_DVB_CONTENT #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_CONTENT #GstMpegtsDescriptor
  * @component_tag: (out) (transfer none): the component tag
  *
  * Extracts the component tag from @descriptor.
@@ -1029,7 +1160,7 @@
  * Returns: %TRUE if the parsing happended correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_stream_identifier (const GstMpegTsDescriptor
+gst_mpegts_descriptor_parse_dvb_stream_identifier (const GstMpegtsDescriptor
     * descriptor, guint8 * component_tag)
 {
   guint8 *data;
@@ -1048,21 +1179,22 @@
 /* GST_MTS_DESC_DVB_CA_IDENTIFIER (0x53) */
 /**
  * gst_mpegts_descriptor_parse_dvb_ca_identifier:
- * @descriptor: a %GST_MTS_DESC_DVB_CA_IDENTIFIER #GstMpegTsDescriptor
- * @list: (out) (transfer none) (element-type guint16): This 16-bit field
- * identifies the CA system. Allocations of the value of this field are found
- * in http://www.dvbservices.com
+ * @descriptor: a %GST_MTS_DESC_DVB_CA_IDENTIFIER #GstMpegtsDescriptor
+ * @list: (out) (transfer full) (element-type guint16): a list of ca identifier.
+ * Edge entry identifies the CA system. Allocations of the value of this field
+ * are found in http://www.dvbservices.com
  *
  * Extracts ca id's from @descriptor.
  *
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_ca_identifier (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_dvb_ca_identifier (const GstMpegtsDescriptor *
     descriptor, GArray ** list)
 {
   guint8 *data;
   guint16 tmp;
+  guint i;
 
   g_return_val_if_fail (descriptor != NULL && list != NULL, FALSE);
   /* 2 bytes = one entry */
@@ -1072,7 +1204,7 @@
 
   *list = g_array_new (FALSE, FALSE, sizeof (guint16));
 
-  for (guint i = 0; i < descriptor->length - 1; i += 2) {
+  for (i = 0; i < descriptor->length - 1; i += 2) {
     tmp = GST_READ_UINT16_BE (data);
     g_array_append_val (*list, tmp);
     data += 2;
@@ -1083,22 +1215,22 @@
 
 /* GST_MTS_DESC_DVB_CONTENT (0x54) */
 static void
-_gst_mpegts_content_free (GstMpegTsContent * content)
+_gst_mpegts_content_free (GstMpegtsContent * content)
 {
-  g_slice_free (GstMpegTsContent, content);
+  g_slice_free (GstMpegtsContent, content);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_content:
- * @descriptor: a %GST_MTS_DESC_DVB_CONTENT #GstMpegTsDescriptor
- * @content: (out) (transfer none) (element-type GstMpegTsContent): #GstMpegTsContent
+ * @descriptor: a %GST_MTS_DESC_DVB_CONTENT #GstMpegtsDescriptor
+ * @content: (out) (transfer full) (element-type GstMpegtsContent): #GstMpegtsContent
  *
  * Extracts the DVB content information from @descriptor.
  *
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_content (const GstMpegTsDescriptor
+gst_mpegts_descriptor_parse_dvb_content (const GstMpegtsDescriptor
     * descriptor, GPtrArray ** content)
 {
   guint8 *data;
@@ -1114,7 +1246,7 @@
   *content = g_ptr_array_new_with_free_func ((GDestroyNotify)
       _gst_mpegts_content_free);
   for (i = 0; i < len;) {
-    GstMpegTsContent *cont = g_slice_new0 (GstMpegTsContent);
+    GstMpegtsContent *cont = g_slice_new0 (GstMpegtsContent);
     tmp = *data;
     cont->content_nibble_1 = (tmp & 0xf0) >> 4;
     cont->content_nibble_2 = tmp & 0x0f;
@@ -1130,27 +1262,29 @@
 
 /* GST_MTS_DESC_DVB_PARENTAL_RATING (0x55) */
 static void
-_gst_mpegts_dvb_parental_rating_item_free (GstMpegTsDVBParentalRatingItem *
+_gst_mpegts_dvb_parental_rating_item_free (GstMpegtsDVBParentalRatingItem *
     item)
 {
-  g_slice_free (GstMpegTsDVBParentalRatingItem, item);
+  g_free (item->country_code);
+  g_slice_free (GstMpegtsDVBParentalRatingItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_parental_rating:
- * @descriptor: a %GST_MTS_DESC_DVB_PARENTAL_RATING #GstMpegTsDescriptor
- * @rating: (out) (transfer none) (element-type GstMpegTsDVBParentalRatingItem):
- * #GstMpegTsDVBParentalRatingItem
+ * @descriptor: a %GST_MTS_DESC_DVB_PARENTAL_RATING #GstMpegtsDescriptor
+ * @rating: (out) (transfer full) (element-type GstMpegtsDVBParentalRatingItem):
+ * #GstMpegtsDVBParentalRatingItem
  *
  * Extracts the DVB parental rating information from @descriptor.
  *
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_parental_rating (const GstMpegTsDescriptor
+gst_mpegts_descriptor_parse_dvb_parental_rating (const GstMpegtsDescriptor
     * descriptor, GPtrArray ** rating)
 {
   guint8 *data;
+  guint i;
 
   g_return_val_if_fail (descriptor != NULL && rating != NULL, FALSE);
   __common_desc_checks (descriptor, GST_MTS_DESC_DVB_PARENTAL_RATING, 0, FALSE);
@@ -1160,13 +1294,12 @@
   *rating = g_ptr_array_new_with_free_func ((GDestroyNotify)
       _gst_mpegts_dvb_parental_rating_item_free);
 
-  for (guint8 i = 0; i < descriptor->length - 3; i += 4) {
-    GstMpegTsDVBParentalRatingItem *item =
-        g_slice_new0 (GstMpegTsDVBParentalRatingItem);
+  for (i = 0; i < descriptor->length - 3; i += 4) {
+    GstMpegtsDVBParentalRatingItem *item =
+        g_slice_new0 (GstMpegtsDVBParentalRatingItem);
     g_ptr_array_add (*rating, item);
 
-    memcpy (item->country_code, data, 3);
-    item->country_code[3] = 0;
+    item->country_code = convert_lang_code (data);
     data += 3;
 
     if (g_strcmp0 (item->country_code, "BRA") == 0) {
@@ -1207,8 +1340,8 @@
 /* GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM (0x5A) */
 /**
  * gst_mpegts_descriptor_parse_terrestrial_delivery_system:
- * @descriptor: a %GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM #GstMpegTsDescriptor
- * @res: (out) (transfer none): #GstMpegTsTerrestrialDeliverySystemDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM #GstMpegtsDescriptor
+ * @res: (out) (transfer none): #GstMpegtsTerrestrialDeliverySystemDescriptor
  *
  * Parses out the terrestrial delivery system from the @descriptor.
  *
@@ -1216,8 +1349,8 @@
  */
 gboolean
 gst_mpegts_descriptor_parse_terrestrial_delivery_system (const
-    GstMpegTsDescriptor * descriptor,
-    GstMpegTsTerrestrialDeliverySystemDescriptor * res)
+    GstMpegtsDescriptor * descriptor,
+    GstMpegtsTerrestrialDeliverySystemDescriptor * res)
 {
   guint8 *data;
   guint8 tmp;
@@ -1383,17 +1516,19 @@
 /* GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME (0x5B) */
 static void
     _gst_mpegts_dvb_multilingual_network_name_item_free
-    (GstMpegTsDvbMultilingualNetworkNameItem * item)
+    (GstMpegtsDvbMultilingualNetworkNameItem * item)
 {
-  g_slice_free (GstMpegTsDvbMultilingualNetworkNameItem, item);
+  g_free (item->network_name);
+  g_free (item->language_code);
+  g_slice_free (GstMpegtsDvbMultilingualNetworkNameItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_multilingual_network_name:
  * @descriptor: a %GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME
- * #GstMpegTsDescriptor
- * @network_name_items: (out) (element-type GstMpegTsDvbMultilingualNetworkNameItem):
- * a #GstMpegTsDvbMultilingualNetworkNameItem
+ * #GstMpegtsDescriptor
+ * @network_name_items: (out) (transfer full) (element-type GstMpegtsDvbMultilingualNetworkNameItem):
+ * a #GstMpegtsDvbMultilingualNetworkNameItem
  *
  * Parses out the multilingual network name from the @descriptor.
  *
@@ -1401,10 +1536,10 @@
  */
 gboolean
 gst_mpegts_descriptor_parse_dvb_multilingual_network_name (const
-    GstMpegTsDescriptor * descriptor, GPtrArray ** network_name_items)
+    GstMpegtsDescriptor * descriptor, GPtrArray ** network_name_items)
 {
   guint8 *data, i, len;
-  GstMpegTsDvbMultilingualNetworkNameItem *item;
+  GstMpegtsDvbMultilingualNetworkNameItem *item;
 
   g_return_val_if_fail (descriptor != NULL && network_name_items != NULL,
       FALSE);
@@ -1417,9 +1552,9 @@
       _gst_mpegts_dvb_multilingual_network_name_item_free);
 
   for (i = 0; i < descriptor->length - 3;) {
-    item = g_slice_new0 (GstMpegTsDvbMultilingualNetworkNameItem);
+    item = g_slice_new0 (GstMpegtsDvbMultilingualNetworkNameItem);
     g_ptr_array_add (*network_name_items, item);
-    memcpy (item->language_code, data, 3);
+    item->language_code = convert_lang_code (data);
     data += 3;
     i += 3;
 
@@ -1436,17 +1571,19 @@
 /* GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME (0x5C) */
 static void
     _gst_mpegts_dvb_multilingual_bouquet_name_item_free
-    (GstMpegTsDvbMultilingualBouquetNameItem * item)
+    (GstMpegtsDvbMultilingualBouquetNameItem * item)
 {
-  g_slice_free (GstMpegTsDvbMultilingualBouquetNameItem, item);
+  g_free (item->language_code);
+  g_free (item->bouquet_name);
+  g_slice_free (GstMpegtsDvbMultilingualBouquetNameItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name:
  * @descriptor: a %GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME
- * #GstMpegTsDescriptor
- * @bouquet_name_items: (out) (element-type GstMpegTsDvbMultilingualBouquetNameItem):
- * a #GstMpegTsDvbMultilingualBouquetNameItem
+ * #GstMpegtsDescriptor
+ * @bouquet_name_items: (out) (transfer full) (element-type GstMpegtsDvbMultilingualBouquetNameItem):
+ * a #GstMpegtsDvbMultilingualBouquetNameItem
  *
  * Parses out the multilingual bouquet name from the @descriptor.
  *
@@ -1454,10 +1591,10 @@
  */
 gboolean
 gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name (const
-    GstMpegTsDescriptor * descriptor, GPtrArray ** bouquet_name_items)
+    GstMpegtsDescriptor * descriptor, GPtrArray ** bouquet_name_items)
 {
   guint8 *data, i, len;
-  GstMpegTsDvbMultilingualBouquetNameItem *item;
+  GstMpegtsDvbMultilingualBouquetNameItem *item;
 
   g_return_val_if_fail (descriptor != NULL && bouquet_name_items != NULL,
       FALSE);
@@ -1470,9 +1607,9 @@
       _gst_mpegts_dvb_multilingual_bouquet_name_item_free);
 
   for (i = 0; i < descriptor->length - 3;) {
-    item = g_slice_new0 (GstMpegTsDvbMultilingualBouquetNameItem);
+    item = g_slice_new0 (GstMpegtsDvbMultilingualBouquetNameItem);
     g_ptr_array_add (*bouquet_name_items, item);
-    memcpy (item->language_code, data, 3);
+    item->language_code = convert_lang_code (data);
     data += 3;
     i += 3;
 
@@ -1489,17 +1626,20 @@
 /* GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME (0x5D) */
 static void
     _gst_mpegts_dvb_multilingual_service_name_item_free
-    (GstMpegTsDvbMultilingualServiceNameItem * item)
+    (GstMpegtsDvbMultilingualServiceNameItem * item)
 {
-  g_slice_free (GstMpegTsDvbMultilingualServiceNameItem, item);
+  g_free (item->provider_name);
+  g_free (item->service_name);
+  g_free (item->language_code);
+  g_slice_free (GstMpegtsDvbMultilingualServiceNameItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_multilingual_service_name:
  * @descriptor: a %GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME
- * #GstMpegTsDescriptor
- * @service_name_items: (out) (element-type GstMpegTsDvbMultilingualServiceNameItem):
- * a #GstMpegTsDvbMultilingualServiceNameItem
+ * #GstMpegtsDescriptor
+ * @service_name_items: (out) (transfer full) (element-type GstMpegtsDvbMultilingualServiceNameItem):
+ * a #GstMpegtsDvbMultilingualServiceNameItem
  *
  * Parses out the multilingual service name from the @descriptor.
  *
@@ -1507,10 +1647,10 @@
  */
 gboolean
 gst_mpegts_descriptor_parse_dvb_multilingual_service_name (const
-    GstMpegTsDescriptor * descriptor, GPtrArray ** service_name_items)
+    GstMpegtsDescriptor * descriptor, GPtrArray ** service_name_items)
 {
   guint8 *data, i, len;
-  GstMpegTsDvbMultilingualServiceNameItem *item;
+  GstMpegtsDvbMultilingualServiceNameItem *item;
 
   g_return_val_if_fail (descriptor != NULL && service_name_items != NULL,
       FALSE);
@@ -1523,9 +1663,9 @@
       _gst_mpegts_dvb_multilingual_service_name_item_free);
 
   for (i = 0; i < descriptor->length - 3;) {
-    item = g_slice_new0 (GstMpegTsDvbMultilingualServiceNameItem);
+    item = g_slice_new0 (GstMpegtsDvbMultilingualServiceNameItem);
     g_ptr_array_add (*service_name_items, item);
-    memcpy (item->language_code, data, 3);
+    item->language_code = convert_lang_code (data);
     data += 3;
     i += 3;
 
@@ -1548,18 +1688,20 @@
 /* GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT (0x5E) */
 static void
     _gst_mpegts_dvb_multilingual_component_item_free
-    (GstMpegTsDvbMultilingualComponentItem * item)
+    (GstMpegtsDvbMultilingualComponentItem * item)
 {
-  g_slice_free (GstMpegTsDvbMultilingualComponentItem, item);
+  g_free (item->language_code);
+  g_free (item->description);
+  g_slice_free (GstMpegtsDvbMultilingualComponentItem, item);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_multilingual_component:
  * @descriptor: a %GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT
- * #GstMpegTsDescriptor
+ * #GstMpegtsDescriptor
  * @component_tag: the component tag
- * @component_description_items: (out) (element-type GstMpegTsDvbMultilingualComponentItem):
- * a #GstMpegTsDvbMultilingualComponentItem
+ * @component_description_items: (out) (transfer full) (element-type GstMpegtsDvbMultilingualComponentItem):
+ * a #GstMpegtsDvbMultilingualComponentItem
  *
  * Parses out the multilingual component from the @descriptor.
  *
@@ -1567,11 +1709,11 @@
  */
 gboolean
 gst_mpegts_descriptor_parse_dvb_multilingual_component (const
-    GstMpegTsDescriptor * descriptor, guint8 * component_tag,
+    GstMpegtsDescriptor * descriptor, guint8 * component_tag,
     GPtrArray ** component_description_items)
 {
   guint8 *data, i, len;
-  GstMpegTsDvbMultilingualComponentItem *item;
+  GstMpegtsDvbMultilingualComponentItem *item;
 
   g_return_val_if_fail (descriptor != NULL
       && component_description_items != NULL && component_tag != NULL, FALSE);
@@ -1588,9 +1730,9 @@
       _gst_mpegts_dvb_multilingual_component_item_free);
 
   for (i = 0; i < descriptor->length - 3;) {
-    item = g_slice_new0 (GstMpegTsDvbMultilingualComponentItem);
+    item = g_slice_new0 (GstMpegtsDvbMultilingualComponentItem);
     g_ptr_array_add (*component_description_items, item);
-    memcpy (item->language_code, data, 3);
+    item->language_code = convert_lang_code (data);
     data += 3;
     i += 3;
 
@@ -1607,10 +1749,10 @@
 /* GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER (0x5F) */
 /**
  * gst_mpegts_descriptor_parse_dvb_private_data_specifier:
- * @descriptor: a %GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER #GstMpegtsDescriptor
  * @private_data_specifier: (out): the private data specifier id
  * registered by http://www.dvbservices.com/
- * @private_data: (out) (allow-none): additional data or NULL
+ * @private_data: (out) (transfer full)(allow-none): additional data or NULL
  * @length: (out) (allow-none): length of %private_data
  *
  * Parses out the private data specifier from the @descriptor.
@@ -1619,7 +1761,7 @@
  */
 gboolean
 gst_mpegts_descriptor_parse_dvb_private_data_specifier (const
-    GstMpegTsDescriptor * descriptor, guint32 * private_data_specifier,
+    GstMpegtsDescriptor * descriptor, guint32 * private_data_specifier,
     guint8 ** private_data, guint8 * length)
 {
   guint8 *data;
@@ -1644,9 +1786,9 @@
 /* GST_MTS_DESC_DVB_FREQUENCY_LIST (0x62) */
 /**
  * gst_mpegts_descriptor_parse_dvb_frequency_list:
- * @descriptor: a %GST_MTS_DESC_DVB_FREQUENCY_LIST #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_FREQUENCY_LIST #GstMpegtsDescriptor
  * @offset: (out): %FALSE in Hz, %TRUE in kHz
- * @list: (out) (element-type guint32): a list of all frequencies in Hz/kHz
+ * @list: (out) (transfer full) (element-type guint32): a list of all frequencies in Hz/kHz
  * depending on %offset
  *
  * Parses out a list of frequencies from the @descriptor.
@@ -1654,11 +1796,12 @@
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_frequency_list (const GstMpegTsDescriptor
+gst_mpegts_descriptor_parse_dvb_frequency_list (const GstMpegtsDescriptor
     * descriptor, gboolean * offset, GArray ** list)
 {
   guint8 *data, type, len;
   guint32 freq;
+  guint i;
 
   g_return_val_if_fail (descriptor != NULL && offset != NULL &&
       list != NULL, FALSE);
@@ -1682,7 +1825,7 @@
 
   len = descriptor->length - 1;
 
-  for (guint8 i = 0; i < len - 3; i += 4) {
+  for (i = 0; i < len - 3; i += 4) {
     switch (type) {
       case 1:
         freq = BCD_32 (data) * 10;
@@ -1705,53 +1848,87 @@
 }
 
 /* GST_MTS_DESC_DVB_DATA_BROADCAST (0x64) */
+static GstMpegtsDataBroadcastDescriptor *
+_gst_mpegts_dvb_data_broadcast_descriptor_copy (GstMpegtsDataBroadcastDescriptor
+    * source)
+{
+  GstMpegtsDataBroadcastDescriptor *copy;
+
+  copy = g_slice_dup (GstMpegtsDataBroadcastDescriptor, source);
+
+  copy->selector_bytes = g_slice_copy (source->length, source->selector_bytes);
+  copy->language_code = g_strdup (source->language_code);
+  copy->text = g_strdup (source->text);
+
+  return copy;
+}
+
+void
+gst_mpegts_dvb_data_broadcast_descriptor_free (GstMpegtsDataBroadcastDescriptor
+    * source)
+{
+  g_free (source->selector_bytes);
+  g_free (source->language_code);
+  g_free (source->text);
+  g_slice_free (GstMpegtsDataBroadcastDescriptor, source);
+}
+
+G_DEFINE_BOXED_TYPE (GstMpegtsDataBroadcastDescriptor,
+    gst_mpegts_dvb_data_broadcast_descriptor,
+    (GBoxedCopyFunc) _gst_mpegts_dvb_data_broadcast_descriptor_copy,
+    (GFreeFunc) gst_mpegts_dvb_data_broadcast_descriptor_free);
+
 /**
  * gst_mpegts_descriptor_parse_dvb_data_broadcast:
- * @descriptor: a %GST_MTS_DESC_DVB_DATA_BROADCAST #GstMpegTsDescriptor
- * @res: (out) (transfer none): #GstMpegTsDataBroadcastDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_DATA_BROADCAST #GstMpegtsDescriptor
+ * @res: (out) (transfer full): #GstMpegtsDataBroadcastDescriptor
  *
  * Parses out the data broadcast from the @descriptor.
  *
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_data_broadcast (const GstMpegTsDescriptor
-    * descriptor, GstMpegTsDataBroadcastDescriptor * res)
+gst_mpegts_descriptor_parse_dvb_data_broadcast (const GstMpegtsDescriptor
+    * descriptor, GstMpegtsDataBroadcastDescriptor ** desc)
 {
   guint8 *data;
-  guint8 len;
+  GstMpegtsDataBroadcastDescriptor *res;
 
-  g_return_val_if_fail (descriptor != NULL && res != NULL, FALSE);
+  g_return_val_if_fail (descriptor != NULL && desc != NULL, FALSE);
   __common_desc_checks (descriptor, GST_MTS_DESC_DVB_DATA_BROADCAST, 8, FALSE);
 
   data = (guint8 *) descriptor->data + 2;
 
+  res = g_slice_new0 (GstMpegtsDataBroadcastDescriptor);
+
   res->data_broadcast_id = GST_READ_UINT16_BE (data);
   data += 2;
 
   res->component_tag = *data;
   data += 1;
 
-  len = *data;
+  res->length = *data;
   data += 1;
 
-  res->selector_bytes = g_memdup (data, len);
-  data += len;
+  res->selector_bytes = g_memdup (data, res->length);
+  data += res->length;
 
-  memcpy (res->language_code, data, 3);
+  res->language_code = convert_lang_code (data);
   data += 3;
 
   res->text = get_encoding_and_convert ((const gchar *) data + 1, *data);
 
+  *desc = res;
+
   return TRUE;
 }
 
 /* GST_MTS_DESC_DVB_SCRAMBLING (0x65) */
 /**
  * gst_mpegts_descriptor_parse_dvb_scrambling:
- * @descriptor: a %GST_MTS_DESC_DVB_SCRAMBLING #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_SCRAMBLING #GstMpegtsDescriptor
  * @scrambling_mode: (out): This 8-bit field identifies the selected
- * mode of the scrambling algorithm (#GstMpegTsDVBScramblingModeType).
+ * mode of the scrambling algorithm (#GstMpegtsDVBScramblingModeType).
  * The technical details of the scrambling algorithm are available only
  * to bona-fide users upon signature of a Non Disclosure Agreement (NDA)
  * administered by the DVB Common Scrambling Algorithm Custodian.
@@ -1761,8 +1938,8 @@
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_scrambling (const GstMpegTsDescriptor *
-    descriptor, GstMpegTsDVBScramblingModeType * scrambling_mode)
+gst_mpegts_descriptor_parse_dvb_scrambling (const GstMpegtsDescriptor *
+    descriptor, GstMpegtsDVBScramblingModeType * scrambling_mode)
 {
   guint8 *data;
 
@@ -1780,9 +1957,9 @@
 /* GST_MTS_DESC_DVB_DATA_BROADCAST_ID (0x66) */
 /**
  * gst_mpegts_descriptor_parse_dvb_data_broadcast_id:
- * @descriptor: a %GST_MTS_DESC_DVB_DATA_BROADCAST_ID #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_DVB_DATA_BROADCAST_ID #GstMpegtsDescriptor
  * @data_broadcast_id: (out): the data broadcast id
- * @id_selector_bytes: (out): the selector bytes, if present
+ * @id_selector_bytes: (out) (transfer full): the selector bytes, if present
  * @len: (out): the length of #id_selector_bytes
  *
  * Parses out the data broadcast id from the @descriptor.
@@ -1790,7 +1967,7 @@
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_data_broadcast_id (const GstMpegTsDescriptor
+gst_mpegts_descriptor_parse_dvb_data_broadcast_id (const GstMpegtsDescriptor
     * descriptor, guint16 * data_broadcast_id, guint8 ** id_selector_bytes,
     guint8 * len)
 {
@@ -1814,44 +1991,72 @@
 }
 
 /* GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM (0x7F && 0x04) */
+static GstMpegtsT2DeliverySystemDescriptor
+    * _gst_mpegts_t2_delivery_system_descriptor_copy
+    (GstMpegtsT2DeliverySystemDescriptor * source)
+{
+  GstMpegtsT2DeliverySystemDescriptor *copy;
+
+  copy = g_slice_dup (GstMpegtsT2DeliverySystemDescriptor, source);
+  copy->cells = g_ptr_array_ref (source->cells);
+
+  return copy;
+}
+
+void gst_mpegts_t2_delivery_system_descriptor_free
+    (GstMpegtsT2DeliverySystemDescriptor * source)
+{
+  g_ptr_array_unref (source->cells);
+  g_slice_free (GstMpegtsT2DeliverySystemDescriptor, source);
+}
+
+G_DEFINE_BOXED_TYPE (GstMpegtsT2DeliverySystemDescriptor,
+    gst_mpegts_t2_delivery_system_descriptor,
+    (GBoxedCopyFunc) _gst_mpegts_t2_delivery_system_descriptor_copy,
+    (GFreeFunc) gst_mpegts_t2_delivery_system_descriptor_free);
+
 static void
     _gst_mpegts_t2_delivery_system_cell_extension_free
-    (GstMpegTsT2DeliverySystemCellExtension * ext)
+    (GstMpegtsT2DeliverySystemCellExtension * ext)
 {
-  g_slice_free (GstMpegTsT2DeliverySystemCellExtension, ext);
+  g_slice_free (GstMpegtsT2DeliverySystemCellExtension, ext);
 }
 
 static void
-_gst_mpegts_t2_delivery_system_cell_free (GstMpegTsT2DeliverySystemCell * cell)
+_gst_mpegts_t2_delivery_system_cell_free (GstMpegtsT2DeliverySystemCell * cell)
 {
   g_ptr_array_unref (cell->sub_cells);
-  g_slice_free (GstMpegTsT2DeliverySystemCell, cell);
+  g_array_unref (cell->centre_frequencies);
+  g_slice_free (GstMpegtsT2DeliverySystemCell, cell);
 }
 
 /**
  * gst_mpegts_descriptor_parse_dvb_t2_delivery_system:
- * @descriptor: a %GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM #GstMpegTsDescriptor
- * @res: (out) (transfer none): #GstMpegTsT2DeliverySystemDescriptor
+ * @descriptor: a %GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM #GstMpegtsDescriptor
+ * @res: (out) (transfer full): #GstMpegtsT2DeliverySystemDescriptor
  *
  * Parses out the DVB-T2 delivery system from the @descriptor.
  *
  * Returns: %TRUE if the parsing happened correctly, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_dvb_t2_delivery_system (const GstMpegTsDescriptor
-    * descriptor, GstMpegTsT2DeliverySystemDescriptor * res)
+gst_mpegts_descriptor_parse_dvb_t2_delivery_system (const GstMpegtsDescriptor
+    * descriptor, GstMpegtsT2DeliverySystemDescriptor ** desc)
 {
   guint8 *data;
   guint8 len, freq_len, sub_cell_len;
   guint32 tmp_freq;
   guint8 i;
+  GstMpegtsT2DeliverySystemDescriptor *res;
 
-  g_return_val_if_fail (descriptor != NULL && res != NULL, FALSE);
+  g_return_val_if_fail (descriptor != NULL && desc != NULL, FALSE);
   __common_desc_ext_checks (descriptor, GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM,
       4, FALSE);
 
   data = (guint8 *) descriptor->data + 3;
 
+  res = g_slice_new0 (GstMpegtsT2DeliverySystemDescriptor);
+
   res->plp_id = *data;
   data += 1;
 
@@ -1944,10 +2149,10 @@
         _gst_mpegts_t2_delivery_system_cell_free);
 
     for (i = 0; i < len;) {
-      GstMpegTsT2DeliverySystemCell *cell;
+      GstMpegtsT2DeliverySystemCell *cell;
       guint8 j, k;
 
-      cell = g_slice_new0 (GstMpegTsT2DeliverySystemCell);
+      cell = g_slice_new0 (GstMpegtsT2DeliverySystemCell);
       g_ptr_array_add (res->cells, cell);
 
       cell->cell_id = GST_READ_UINT16_BE (data);
@@ -1982,8 +2187,8 @@
           _gst_mpegts_t2_delivery_system_cell_extension_free);
 
       for (k = 0; k < sub_cell_len;) {
-        GstMpegTsT2DeliverySystemCellExtension *cell_ext;
-        cell_ext = g_slice_new0 (GstMpegTsT2DeliverySystemCellExtension);
+        GstMpegtsT2DeliverySystemCellExtension *cell_ext;
+        cell_ext = g_slice_new0 (GstMpegtsT2DeliverySystemCellExtension);
 
         g_ptr_array_add (cell->sub_cells, cell_ext);
         cell_ext->cell_id_extension = *data;
@@ -1996,5 +2201,7 @@
       }
     }
   }
+
+  *desc = res;
   return TRUE;
 }
diff --git a/gst-libs/gst/mpegts/gst-dvb-descriptor.h b/gst-libs/gst/mpegts/gst-dvb-descriptor.h
index 83ad97f..07678c4 100644
--- a/gst-libs/gst/mpegts/gst-dvb-descriptor.h
+++ b/gst-libs/gst/mpegts/gst-dvb-descriptor.h
@@ -37,9 +37,9 @@
 G_BEGIN_DECLS
 
 /**
- * GstMpegTsDVBDescriptorType:
+ * GstMpegtsDVBDescriptorType:
  *
- * The type of #GstMpegTsDescriptor
+ * The type of #GstMpegtsDescriptor
  *
  * These values correspond to the registered descriptor type from
  * the various DVB specifications.
@@ -114,12 +114,12 @@
   GST_MTS_DESC_DVB_XAIT_LOCATION                = 0x7D,
   GST_MTS_DESC_DVB_FTA_CONTENT_MANAGEMENT       = 0x7E,
   GST_MTS_DESC_DVB_EXTENSION                    = 0x7F,
-} GstMpegTsDVBDescriptorType;
+} GstMpegtsDVBDescriptorType;
 
 /**
- * GstMpegTsDVBExtendedDescriptorType:
+ * GstMpegtsDVBExtendedDescriptorType:
  *
- * The type of #GstMpegTsDescriptor
+ * The type of #GstMpegtsDescriptor
  *
  * These values correspond to the registered extended descriptor
  * type from the various DVB specifications.
@@ -150,24 +150,24 @@
   GST_MTS_DESC_EXT_DVB_VIDEO_DEPTH_RANGE        = 0x10,
   GST_MTS_DESC_EXT_DVB_T2MI                     = 0x11,
   GST_MTS_DESC_EXT_DVB_URI_LINKAGE              = 0x13,
-} GstMpegTsDVBExtendedDescriptorType;
+} GstMpegtsDVBExtendedDescriptorType;
 
 /* GST_MTS_DESC_DVB_CAROUSEL_IDENTIFIER (0x13) */
 /* FIXME : Implement */
 
 /* GST_MTS_DESC_DVB_NETWORK_NAME (0x40) */
-gboolean gst_mpegts_descriptor_parse_dvb_network_name (const GstMpegTsDescriptor *descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_network_name (const GstMpegtsDescriptor *descriptor,
 						       gchar **name);
 
-GstMpegTsDescriptor *gst_mpegts_descriptor_from_dvb_network_name (const gchar * name);
+GstMpegtsDescriptor *gst_mpegts_descriptor_from_dvb_network_name (const gchar * name);
 
 /* GST_MTS_DESC_DVB_STUFFING (0x42) */
-gboolean gst_mpegts_descriptor_parse_dvb_stuffing (const GstMpegTsDescriptor * descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_stuffing (const GstMpegtsDescriptor * descriptor,
                                                    guint8 ** stuffing_bytes);
 
 
 /* GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM (0x43) */
-typedef struct _GstMpegTsSatelliteDeliverySystemDescriptor GstMpegTsSatelliteDeliverySystemDescriptor;
+typedef struct _GstMpegtsSatelliteDeliverySystemDescriptor GstMpegtsSatelliteDeliverySystemDescriptor;
 
 typedef enum {
   GST_MPEGTS_MODULATION_QPSK    = 0,
@@ -185,7 +185,7 @@
   GST_MPEGTS_MODULATION_DQPSK,
   GST_MPEGTS_MODULATION_QAM_4_NR_,
   GST_MPEGTS_MODULATION_NONE
-} GstMpegTsModulationType;
+} GstMpegtsModulationType;
 
 typedef enum {
   GST_MPEGTS_FEC_NONE = 0,
@@ -201,7 +201,7 @@
   GST_MPEGTS_FEC_3_5,
   GST_MPEGTS_FEC_9_10,
   GST_MPEGTS_FEC_2_5
-} GstMpegTsDVBCodeRate;
+} GstMpegtsDVBCodeRate;
 
 typedef enum {
   GST_MPEGTS_ROLLOFF_35 = 0,
@@ -209,17 +209,17 @@
   GST_MPEGTS_ROLLOFF_25,
   GST_MPEGTS_ROLLOFF_RESERVED,
   GST_MPEGTS_ROLLOFF_AUTO
-} GstMpegTsSatelliteRolloff;
+} GstMpegtsSatelliteRolloff;
 
 typedef enum {
   GST_MPEGTS_POLARIZATION_LINEAR_HORIZONTAL = 0,
   GST_MPEGTS_POLARIZATION_LINEAR_VERTICAL,
   GST_MPEGTS_POLARIZATION_CIRCULAR_LEFT,
   GST_MPEGTS_POLARIZATION_CIRCULAR_RIGHT
-} GstMpegTsSatellitePolarizationType;
+} GstMpegtsSatellitePolarizationType;
 
 /**
- * GstMpegTsSatelliteDeliverySystemDescriptor:
+ * GstMpegtsSatelliteDeliverySystemDescriptor:
  * @frequency: the frequency in kHz (kiloHertz)
  * @orbital_position: the orbital position in degrees
  * @west_east: If %TRUE, the satellite is in the eastern part of the orbit,
@@ -233,23 +233,23 @@
  *
  * Satellite Delivery System Descriptor (EN 300 468 v.1.13.1)
  */
-struct _GstMpegTsSatelliteDeliverySystemDescriptor
+struct _GstMpegtsSatelliteDeliverySystemDescriptor
 {
   guint32                            frequency;
   gfloat                             orbital_position;
   gboolean                           west_east; 
-  GstMpegTsSatellitePolarizationType polarization;
+  GstMpegtsSatellitePolarizationType polarization;
 
-  GstMpegTsSatelliteRolloff          roll_off;
+  GstMpegtsSatelliteRolloff          roll_off;
   gboolean                           modulation_system;
-  GstMpegTsModulationType            modulation_type;
+  GstMpegtsModulationType            modulation_type;
 
   guint32                            symbol_rate;
-  GstMpegTsDVBCodeRate               fec_inner;
+  GstMpegtsDVBCodeRate               fec_inner;
 };
 
-gboolean gst_mpegts_descriptor_parse_satellite_delivery_system (const GstMpegTsDescriptor *descriptor,
-								GstMpegTsSatelliteDeliverySystemDescriptor *res);
+gboolean gst_mpegts_descriptor_parse_satellite_delivery_system (const GstMpegtsDescriptor *descriptor,
+								GstMpegtsSatelliteDeliverySystemDescriptor *res);
 
 
 /* GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM (0x44) */
@@ -257,11 +257,11 @@
   GST_MPEGTS_CABLE_OUTER_FEC_UNDEFINED = 0,
   GST_MPEGTS_CABLE_OUTER_FEC_NONE,
   GST_MPEGTS_CABLE_OUTER_FEC_RS_204_188,
-} GstMpegTsCableOuterFECScheme;
+} GstMpegtsCableOuterFECScheme;
 
-typedef struct _GstMpegTsCableDeliverySystemDescriptor GstMpegTsCableDeliverySystemDescriptor;
+typedef struct _GstMpegtsCableDeliverySystemDescriptor GstMpegtsCableDeliverySystemDescriptor;
 /**
- * GstMpegTsCableDeliverySystemDescriptor:
+ * GstMpegtsCableDeliverySystemDescriptor:
  * @frequency: the frequency in Hz (Hertz)
  * @outer_fec: the outer FEC scheme used
  * @modulation: Modulation scheme used
@@ -270,26 +270,26 @@
  *
  * Cable Delivery System Descriptor (EN 300 468 v.1.13.1)
  */
-struct _GstMpegTsCableDeliverySystemDescriptor
+struct _GstMpegtsCableDeliverySystemDescriptor
 {
   guint32                            frequency;
-  GstMpegTsCableOuterFECScheme       outer_fec;
-  GstMpegTsModulationType            modulation;
+  GstMpegtsCableOuterFECScheme       outer_fec;
+  GstMpegtsModulationType            modulation;
 
   guint32                            symbol_rate;
-  GstMpegTsDVBCodeRate               fec_inner;
+  GstMpegtsDVBCodeRate               fec_inner;
 };
 
-gboolean gst_mpegts_descriptor_parse_cable_delivery_system (const GstMpegTsDescriptor *descriptor,
-							    GstMpegTsCableDeliverySystemDescriptor *res);
+gboolean gst_mpegts_descriptor_parse_cable_delivery_system (const GstMpegtsDescriptor *descriptor,
+							    GstMpegtsCableDeliverySystemDescriptor *res);
 
 /* GST_MTS_DESC_DVB_BOUQUET_NAME (0x47) */
-gboolean gst_mpegts_descriptor_parse_dvb_bouquet_name (const GstMpegTsDescriptor * descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_bouquet_name (const GstMpegtsDescriptor * descriptor,
                                                        gchar ** bouquet_name);
 
 /* GST_MTS_DESC_DVB_SERVICE (0x48) */
 /**
- * GstMpegTsDVBServiceType:
+ * GstMpegtsDVBServiceType:
  * 
  * The type of service of a channel.
  *
@@ -328,37 +328,37 @@
   /* 0x80 - 0xfe user defined */
   /* 0xff Reserved for future use */
   GST_DVB_SERVICE_RESERVED_FF
-} GstMpegTsDVBServiceType;
+} GstMpegtsDVBServiceType;
 
-gboolean gst_mpegts_descriptor_parse_dvb_service (const GstMpegTsDescriptor *descriptor,
-						  GstMpegTsDVBServiceType *service_type,
+gboolean gst_mpegts_descriptor_parse_dvb_service (const GstMpegtsDescriptor *descriptor,
+						  GstMpegtsDVBServiceType *service_type,
 						  gchar **service_name,
 						  gchar **provider_name);
 
-GstMpegTsDescriptor *gst_mpegts_descriptor_from_dvb_service (GstMpegTsDVBServiceType service_type,
+GstMpegtsDescriptor *gst_mpegts_descriptor_from_dvb_service (GstMpegtsDVBServiceType service_type,
 							     const gchar * service_name,
 							     const gchar * service_provider);
 
 /* GST_MTS_DESC_DVB_SERVICE_LIST (0x41) */
-typedef struct _GstMpegTsDVBServiceListItem GstMpegTsDVBServiceListItem;
+typedef struct _GstMpegtsDVBServiceListItem GstMpegtsDVBServiceListItem;
 
 /**
- * GstMpegTsDVBServiceListItem:
+ * GstMpegtsDVBServiceListItem:
  * @service_id: the id of a service
  * @type: the type of a service
  */
-struct _GstMpegTsDVBServiceListItem
+struct _GstMpegtsDVBServiceListItem
 {
   guint16                 service_id;
-  GstMpegTsDVBServiceType type;
+  GstMpegtsDVBServiceType type;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_service_list (const GstMpegTsDescriptor * descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_service_list (const GstMpegtsDescriptor * descriptor,
     GPtrArray ** list);
 
 /* GST_MTS_DESC_DVB_LINKAGE (0x4A) */
 /**
- * GstMpegTsDVBLinkageType:
+ * GstMpegtsDVBLinkageType:
  *
  * Linkage Type (EN 300 468 v.1.13.1)
  */
@@ -379,37 +379,37 @@
   GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_INT         = 0x0C,
   GST_MPEGTS_DVB_LINKAGE_EVENT                     = 0x0D,
   GST_MPEGTS_DVB_LINKAGE_EXTENDED_EVENT            = 0x0E,
-} GstMpegTsDVBLinkageType;
+} GstMpegtsDVBLinkageType;
 
 typedef enum {
   GST_MPEGTS_DVB_LINKAGE_HAND_OVER_RESERVED        = 0x00,
   GST_MPEGTS_DVB_LINKAGE_HAND_OVER_IDENTICAL       = 0x01,
   GST_MPEGTS_DVB_LINKAGE_HAND_OVER_LOCAL_VARIATION = 0x02,
   GST_MPEGTS_DVB_LINKAGE_HAND_OVER_ASSOCIATED      = 0x03,
-} GstMpegTsDVBLinkageHandOverType;
+} GstMpegtsDVBLinkageHandOverType;
 
-typedef struct _GstMpegTsDVBLinkageMobileHandOver GstMpegTsDVBLinkageMobileHandOver;
-typedef struct _GstMpegTsDVBLinkageEvent GstMpegTsDVBLinkageEvent;
-typedef struct _GstMpegTsDVBLinkageExtendedEvent GstMpegTsDVBLinkageExtendedEvent;
-typedef struct _GstMpegTsDVBLinkageDescriptor GstMpegTsDVBLinkageDescriptor;
+typedef struct _GstMpegtsDVBLinkageMobileHandOver GstMpegtsDVBLinkageMobileHandOver;
+typedef struct _GstMpegtsDVBLinkageEvent GstMpegtsDVBLinkageEvent;
+typedef struct _GstMpegtsDVBLinkageExtendedEvent GstMpegtsDVBLinkageExtendedEvent;
+typedef struct _GstMpegtsDVBLinkageDescriptor GstMpegtsDVBLinkageDescriptor;
 
-struct _GstMpegTsDVBLinkageMobileHandOver
+struct _GstMpegtsDVBLinkageMobileHandOver
 {
-  GstMpegTsDVBLinkageHandOverType hand_over_type;
+  GstMpegtsDVBLinkageHandOverType hand_over_type;
   /* 0 = NIT, 1 = SDT */
   gboolean                        origin_type;
   guint16                         network_id;
   guint16                         initial_service_id;
 };
 
-struct _GstMpegTsDVBLinkageEvent
+struct _GstMpegtsDVBLinkageEvent
 {
   guint16  target_event_id;
   gboolean target_listed;
   gboolean event_simulcast;
 };
 
-struct _GstMpegTsDVBLinkageExtendedEvent
+struct _GstMpegtsDVBLinkageExtendedEvent
 {
   guint16        target_event_id;
   gboolean       target_listed;
@@ -429,7 +429,7 @@
 };
 
 /**
- * GstMpegTsDVBLinkageDescriptor:
+ * GstMpegtsDVBLinkageDescriptor:
  * @transport_stream_id: the transport id
  * @original_network_id: the original network id
  * @service_id: the service id
@@ -438,60 +438,71 @@
  * @private_data_length: the length for %private_data_bytes
  * @private_data_bytes: additional data bytes
  */
-struct _GstMpegTsDVBLinkageDescriptor
+struct _GstMpegtsDVBLinkageDescriptor
 {
   guint16                           transport_stream_id;
   guint16                           original_network_id;
   guint16                           service_id;
-  GstMpegTsDVBLinkageType           linkage_type;
+  GstMpegtsDVBLinkageType           linkage_type;
   gpointer                          linkage_data;
   guint8                            private_data_length;
   guint8                            *private_data_bytes;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_linkage (const GstMpegTsDescriptor * descriptor,
-                                                  GstMpegTsDVBLinkageDescriptor * res);
+#define GST_TYPE_MPEGTS_DVB_LINKAGE_DESCRIPTOR ( gst_mpegts_dvb_linkage_descriptor_get_type())
+
+GType gst_mpegts_dvb_linkage_descriptor_get_type (void);
+
+void gst_mpegts_dvb_linkage_descriptor_free (GstMpegtsDVBLinkageDescriptor * source);
+
+gboolean gst_mpegts_descriptor_parse_dvb_linkage (const GstMpegtsDescriptor * descriptor,
+                                                  GstMpegtsDVBLinkageDescriptor ** res);
 
 /* GST_MTS_DESC_DVB_SHORT_EVENT (0x4D) */
-gboolean gst_mpegts_descriptor_parse_dvb_short_event (const GstMpegTsDescriptor *descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_short_event (const GstMpegtsDescriptor *descriptor,
 						       gchar **language_code,
 						       gchar **event_name,
 						       gchar **text);
 
 /* GST_MTS_DESC_DVB_EXTENDED_EVENT (0x4E) */
-typedef struct _GstMpegTsExtendedEventDescriptor GstMpegTsExtendedEventDescriptor;
-typedef struct _GstMpegTsExtendedEventItem GstMpegTsExtendedEventItem;
+typedef struct _GstMpegtsExtendedEventDescriptor GstMpegtsExtendedEventDescriptor;
+typedef struct _GstMpegtsExtendedEventItem GstMpegtsExtendedEventItem;
 
 /* FIXME : Maybe make a separate method for getting a specific item entry ? */
-struct _GstMpegTsExtendedEventItem
+struct _GstMpegtsExtendedEventItem
 {
   gchar *item_description;
   gchar *item;
 };
 
 /**
- * GstMpegTsExtendedEventDescriptor:
+ * GstMpegtsExtendedEventDescriptor:
  * @desctiptor_number:
  * @last_descriptor_number:
  * @language_code: NULL terminated language code.
- * @items: (element-type GstMpegTsExtendedEventItem): the #GstMpegTsExtendedEventItem
+ * @items: (element-type GstMpegtsExtendedEventItem): the #GstMpegtsExtendedEventItem
  * @text:
  *
  * Extended Event Descriptor (EN 300 468 v.1.13.1)
  */
-struct _GstMpegTsExtendedEventDescriptor
+struct _GstMpegtsExtendedEventDescriptor
 {
   guint8 descriptor_number;
   guint8 last_descriptor_number;
-  gchar  language_code[4];
+  gchar  *language_code;
   GPtrArray *items;
   gchar *text;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_extended_event (const GstMpegTsDescriptor *descriptor,
-							  GstMpegTsExtendedEventDescriptor *res);
+#define GST_TYPE_MPEGTS_EXTENDED_EVENT_DESCRIPTOR (gst_mpegts_extended_event_descriptor_get_type())
+
+GType gst_mpegts_extended_event_descriptor_get_type (void);
+void gst_mpegts_extended_event_descriptor_free (GstMpegtsExtendedEventDescriptor * source);
+gboolean gst_mpegts_descriptor_parse_dvb_extended_event (const GstMpegtsDescriptor *descriptor,
+							  GstMpegtsExtendedEventDescriptor **res);
 
 /* GST_MTS_DESC_DVB_COMPONENT (0x50) */
+#define GST_TYPE_MPEGTS_COMPONENT_DESCRIPTOR (gst_mpegts_component_descriptor_get_type ())
 typedef enum {
   GST_MPEGTS_STREAM_CONTENT_MPEG2_VIDEO          = 0x01,
   GST_MPEGTS_STREAM_CONTENT_MPEG1_LAYER2_AUDIO   = 0x02,
@@ -501,28 +512,29 @@
   GST_MPEGTS_STREAM_CONTENT_AAC                  = 0x06,
   GST_MPEGTS_STREAM_CONTENT_DTS                  = 0x07,
   GST_MPEGTS_STREAM_CONTENT_SRM_CPCM             = 0x08
-} GstMpegTsComponentStreamContent;
+} GstMpegtsComponentStreamContent;
 
-typedef struct _GstMpegTsComponentDescriptor GstMpegTsComponentDescriptor;
-struct _GstMpegTsComponentDescriptor
+typedef struct _GstMpegtsComponentDescriptor GstMpegtsComponentDescriptor;
+struct _GstMpegtsComponentDescriptor
 {
   guint8 stream_content;
   guint8 component_type;
   guint8 component_tag;
-  /* FIXME : Make it a separate (allocated, null-terminated) return value  */
-  gchar  language_code[4];
-  gchar *text;
+  gchar  *language_code;
+  gchar  *text;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_component (const GstMpegTsDescriptor *descriptor,
-						    GstMpegTsComponentDescriptor *res);
+GType gst_mpegts_component_descriptor_get_type (void);
+void gst_mpegts_dvb_component_descriptor_free (GstMpegtsComponentDescriptor * source);
+gboolean gst_mpegts_descriptor_parse_dvb_component (const GstMpegtsDescriptor *descriptor,
+						    GstMpegtsComponentDescriptor **res);
 
 /* GST_MTS_DESC_DVB_STREAM_IDENTIFIER (0x52) */
-gboolean gst_mpegts_descriptor_parse_dvb_stream_identifier (const GstMpegTsDescriptor *descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_stream_identifier (const GstMpegtsDescriptor *descriptor,
 							    guint8 *component_tag);
 
 /* GST_MTS_DESC_DVB_CA_IDENTIFIER (0x53) */
-gboolean gst_mpegts_descriptor_parse_dvb_ca_identifier (const GstMpegTsDescriptor * descriptor,
+gboolean gst_mpegts_descriptor_parse_dvb_ca_identifier (const GstMpegtsDescriptor * descriptor,
                                                         GArray ** list);
 
 /* GST_MTS_DESC_DVB_CONTENT (0x54) */
@@ -538,75 +550,75 @@
   GST_MPEGTS_CONTENT_EDUCATION_SCIENCE_FACTUAL  = 0x09,
   GST_MPEGTS_CONTENT_LEISURE_HOBBIES            = 0x0A,
   GST_MPEGTS_CONTENT_SPECIAL_CHARACTERISTICS    = 0x0B
-} GstMpegTsContentNibbleHi;
+} GstMpegtsContentNibbleHi;
 
-typedef struct _GstMpegTsContent GstMpegTsContent;
-struct _GstMpegTsContent
+typedef struct _GstMpegtsContent GstMpegtsContent;
+struct _GstMpegtsContent
 {
-  guint8 content_nibble_1;
+  GstMpegtsContentNibbleHi content_nibble_1;
   guint8 content_nibble_2;
   guint8 user_byte;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_content (const GstMpegTsDescriptor *
+gboolean gst_mpegts_descriptor_parse_dvb_content (const GstMpegtsDescriptor *
 	descriptor, GPtrArray ** content);
 
 /* GST_MTS_DESC_DVB_PARENTAL_RATING (0x55) */
-typedef struct _GstMpegTsDVBParentalRatingItem GstMpegTsDVBParentalRatingItem;
+typedef struct _GstMpegtsDVBParentalRatingItem GstMpegtsDVBParentalRatingItem;
 
 /**
- * GstMpegTsDVBParentalRating:
+ * GstMpegtsDVBParentalRating:
  * @country_code: This 24-bit field identifies a country using the 3-character
  * code as specified in ISO 3166
  * @rating: the rating age
  */
-struct _GstMpegTsDVBParentalRatingItem
+struct _GstMpegtsDVBParentalRatingItem
 {
-  gchar  country_code[4];
+  gchar  *country_code;
   guint8 rating;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_parental_rating (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_parental_rating (const GstMpegtsDescriptor
         * descriptor, GPtrArray ** rating);
 
 /* GST_MTS_DESC_DVB_TELETEXT (0x56) */
 /**
- * GstMpegTsDVBTeletextType:
+ * GstMpegtsDVBTeletextType:
  *
  * The type of teletext page.
  *
  * As specified in Table 100 of ETSI EN 300 468 v1.13.1
  */
 typedef enum {
-	INITIAL_PAGE = 0x01,
-	SUBTITLE_PAGE,
-	ADDITIONAL_INFO_PAGE,
-	PROGRAMME_SCHEDULE_PAGE,
-	HEARING_IMPAIRED_PAGE
-} GstMpegTsDVBTeletextType;
+  INITIAL_PAGE = 0x01,
+  SUBTITLE_PAGE,
+  ADDITIONAL_INFO_PAGE,
+  PROGRAMME_SCHEDULE_PAGE,
+  HEARING_IMPAIRED_PAGE
+} GstMpegtsDVBTeletextType;
 
-gboolean gst_mpegts_descriptor_parse_dvb_teletext_idx (const GstMpegTsDescriptor *
-    descriptor, guint idx, gchar (*language_code)[4],
-    GstMpegTsDVBTeletextType * teletext_type, guint8 * magazine_number,
+gboolean gst_mpegts_descriptor_parse_dvb_teletext_idx (const GstMpegtsDescriptor *
+    descriptor, guint idx, gchar ** language_code,
+    GstMpegtsDVBTeletextType * teletext_type, guint8 * magazine_number,
     guint8 * page_number);
 
-guint gst_mpegts_descriptor_parse_dvb_teletext_nb (const GstMpegTsDescriptor *
+guint gst_mpegts_descriptor_parse_dvb_teletext_nb (const GstMpegtsDescriptor *
     descriptor);
 
 /* GST_MTS_DESC_DVB_SUBTITLING (0x59) */
-gboolean gst_mpegts_descriptor_parse_dvb_subtitling_idx (const GstMpegTsDescriptor *descriptor,
-							 guint idx, gchar (*lang)[4],
+gboolean gst_mpegts_descriptor_parse_dvb_subtitling_idx (const GstMpegtsDescriptor *descriptor,
+							 guint idx, gchar ** lang,
 							 guint8 *type, guint16 *composition_page_id,
 							 guint16 *ancillary_page_id);
-guint gst_mpegts_descriptor_parse_dvb_subtitling_nb (const GstMpegTsDescriptor *descriptor);
+guint gst_mpegts_descriptor_parse_dvb_subtitling_nb (const GstMpegtsDescriptor *descriptor);
 
-GstMpegTsDescriptor * gst_mpegts_descriptor_from_dvb_subtitling (const gchar *lang,
+GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_subtitling (const gchar *lang,
     guint8 type, guint16 composition, guint16 ancillary);
 
 
 
 /* GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM (0x5A) */
-typedef struct _GstMpegTsTerrestrialDeliverySystemDescriptor GstMpegTsTerrestrialDeliverySystemDescriptor;
+typedef struct _GstMpegtsTerrestrialDeliverySystemDescriptor GstMpegtsTerrestrialDeliverySystemDescriptor;
 
 typedef enum {
   GST_MPEGTS_TRANSMISSION_MODE_2K = 0,
@@ -618,7 +630,7 @@
   GST_MPEGTS_TRANSMISSION_MODE_32K,
   GST_MPEGTS_TRANSMISSION_MODE_C1,
   GST_MPEGTS_TRANSMISSION_MODE_C3780
-} GstMpegTsTerrestrialTransmissionMode;
+} GstMpegtsTerrestrialTransmissionMode;
 
 typedef enum {
   GST_MPEGTS_GUARD_INTERVAL_1_32 = 0,
@@ -632,7 +644,7 @@
   GST_MPEGTS_GUARD_INTERVAL_PN420,
   GST_MPEGTS_GUARD_INTERVAL_PN595,
   GST_MPEGTS_GUARD_INTERVAL_PN945
-} GstMpegTsTerrestrialGuardInterval;
+} GstMpegtsTerrestrialGuardInterval;
 
 typedef enum {
   GST_MPEGTS_HIERARCHY_NONE = 0,
@@ -640,10 +652,10 @@
   GST_MPEGTS_HIERARCHY_2,
   GST_MPEGTS_HIERARCHY_4,
   GST_MPEGTS_HIERARCHY_AUTO
-} GstMpegTsTerrestrialHierarchy;
+} GstMpegtsTerrestrialHierarchy;
 
 /**
- * GstMpegTsTerrestrialDeliverySystemDescriptor:
+ * GstMpegtsTerrestrialDeliverySystemDescriptor:
  * @frequency: the frequency in Hz (Hertz)
  * @bandwidth: the bandwidth in Hz (Hertz)
  * @priority: %TRUE High Priority %FALSE Low Priority
@@ -660,132 +672,137 @@
  * Terrestrial Delivery System Descriptor (EN 300 468 v.1.13.1)
  */
 
-struct _GstMpegTsTerrestrialDeliverySystemDescriptor
+struct _GstMpegtsTerrestrialDeliverySystemDescriptor
 {
   guint32				frequency;
   guint32				bandwidth;
   gboolean				priority;
   gboolean				time_slicing;
   gboolean				mpe_fec;
-  GstMpegTsModulationType		constellation;
-  GstMpegTsTerrestrialHierarchy		hierarchy;
-  GstMpegTsDVBCodeRate			code_rate_hp;
-  GstMpegTsDVBCodeRate			code_rate_lp;
-  GstMpegTsTerrestrialGuardInterval	guard_interval;
-  GstMpegTsTerrestrialTransmissionMode	transmission_mode;
+  GstMpegtsModulationType		constellation;
+  GstMpegtsTerrestrialHierarchy		hierarchy;
+  GstMpegtsDVBCodeRate			code_rate_hp;
+  GstMpegtsDVBCodeRate			code_rate_lp;
+  GstMpegtsTerrestrialGuardInterval	guard_interval;
+  GstMpegtsTerrestrialTransmissionMode	transmission_mode;
   gboolean				other_frequency;
 };
 
-gboolean gst_mpegts_descriptor_parse_terrestrial_delivery_system (const GstMpegTsDescriptor
-              *descriptor, GstMpegTsTerrestrialDeliverySystemDescriptor * res);
+gboolean gst_mpegts_descriptor_parse_terrestrial_delivery_system (const GstMpegtsDescriptor
+              *descriptor, GstMpegtsTerrestrialDeliverySystemDescriptor * res);
 
 /* GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME (0x5B) */
-typedef struct _GstMpegTsDvbMultilingualNetworkNameItem GstMpegTsDvbMultilingualNetworkNameItem;
+typedef struct _GstMpegtsDvbMultilingualNetworkNameItem GstMpegtsDvbMultilingualNetworkNameItem;
 
 /**
- * GstMpegTsDvbMultilingualNetworkNameItem:
+ * GstMpegtsDvbMultilingualNetworkNameItem:
  * @language_code: the ISO 639 language code
  * @network_name: the network name
  *
  * a multilingual network name entry
  */
-struct _GstMpegTsDvbMultilingualNetworkNameItem
+struct _GstMpegtsDvbMultilingualNetworkNameItem
 {
-  gchar language_code[4];
+  gchar *language_code;
   gchar *network_name;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_multilingual_network_name (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_multilingual_network_name (const GstMpegtsDescriptor
               *descriptor, GPtrArray ** network_name_items);
 
 /* GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME (0x5C) */
-typedef struct _GstMpegTsDvbMultilingualBouquetNameItem GstMpegTsDvbMultilingualBouquetNameItem;
+typedef struct _GstMpegtsDvbMultilingualBouquetNameItem GstMpegtsDvbMultilingualBouquetNameItem;
 
 /**
- * GstMpegTsDvbMultilingualBouquetNameItem:
+ * GstMpegtsDvbMultilingualBouquetNameItem:
  * @language_code: the ISO 639 language code
  * @bouquet_name: the bouquet name
  *
  * a multilingual bouquet name entry
  */
-struct _GstMpegTsDvbMultilingualBouquetNameItem
+struct _GstMpegtsDvbMultilingualBouquetNameItem
 {
-  gchar language_code[4];
+  gchar *language_code;
   gchar *bouquet_name;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name (const GstMpegtsDescriptor
               *descriptor, GPtrArray ** bouquet_name_items);
 
 /* GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME (0x5D) */
-typedef struct _GstMpegTsDvbMultilingualServiceNameItem GstMpegTsDvbMultilingualServiceNameItem;
+typedef struct _GstMpegtsDvbMultilingualServiceNameItem GstMpegtsDvbMultilingualServiceNameItem;
 
 /**
- * GstMpegTsDvbMultilingualServiceNameItem:
+ * GstMpegtsDvbMultilingualServiceNameItem:
  * @language_code: the ISO 639 language code
  * @provider_name: the provider name
  * @service_name: the service name
  *
  * a multilingual service name entry
  */
-struct _GstMpegTsDvbMultilingualServiceNameItem
+struct _GstMpegtsDvbMultilingualServiceNameItem
 {
-  gchar language_code[4];
+  gchar *language_code;
   gchar *provider_name;
   gchar *service_name;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_multilingual_service_name (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_multilingual_service_name (const GstMpegtsDescriptor
               *descriptor, GPtrArray ** service_name_items);
 
 /* GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT (0x5E) */
-typedef struct _GstMpegTsDvbMultilingualComponentItem GstMpegTsDvbMultilingualComponentItem;
+typedef struct _GstMpegtsDvbMultilingualComponentItem GstMpegtsDvbMultilingualComponentItem;
 
 /**
- * GstMpegTsDvbMultilingualComponentItem:
+ * GstMpegtsDvbMultilingualComponentItem:
  * @language_code: the ISO 639 language code
  * @description: the component description
  */
-struct _GstMpegTsDvbMultilingualComponentItem
+struct _GstMpegtsDvbMultilingualComponentItem
 {
-  gchar language_code[4];
+  gchar *language_code;
   gchar *description;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_multilingual_component (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_multilingual_component (const GstMpegtsDescriptor
               *descriptor, guint8 * component_tag, GPtrArray ** component_description_items);
 
 /* GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER (0x5F) */
-gboolean gst_mpegts_descriptor_parse_dvb_private_data_specifier (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_private_data_specifier (const GstMpegtsDescriptor
               * descriptor, guint32 * private_data_specifier, guint8 ** private_data,
               guint8 * length);
 
 /* GST_MTS_DESC_DVB_FREQUENCY_LIST (0x62) */
-gboolean gst_mpegts_descriptor_parse_dvb_frequency_list (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_frequency_list (const GstMpegtsDescriptor
     * descriptor, gboolean * offset, GArray ** list);
 
 /* GST_MTS_DESC_DVB_DATA_BROADCAST (0x64) */
-typedef struct _GstMpegTsDataBroadcastDescriptor GstMpegTsDataBroadcastDescriptor;
+typedef struct _GstMpegtsDataBroadcastDescriptor GstMpegtsDataBroadcastDescriptor;
 
 /**
- * GstMpegTsDataBroadcastDescriptor:
+ * GstMpegtsDataBroadcastDescriptor:
  * @data_broadcast_id: the data broadcast id
  * @component_tag: the component tag
  * @selector_bytes: the selector byte field
  * @language_code: language of @text
  * @text: description of data broadcast
  */
-struct _GstMpegTsDataBroadcastDescriptor
+struct _GstMpegtsDataBroadcastDescriptor
 {
   guint16     data_broadcast_id;
   guint8      component_tag;
+  guint8      length;
   guint8      *selector_bytes;
-  gchar       language_code[4];
+  gchar       *language_code;
   gchar       *text;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_data_broadcast (const GstMpegTsDescriptor
-              *descriptor, GstMpegTsDataBroadcastDescriptor * res);
+
+#define GST_TYPE_MPEGTS_DVB_DATA_BROADCAST_DESCRIPTOR (gst_mpegts_dvb_data_broadcast_descriptor_get_type ())
+GType gst_mpegts_dvb_data_broadcast_descriptor_get_type (void);
+void gst_mpegts_dvb_data_broadcast_descriptor_free (GstMpegtsDataBroadcastDescriptor * source);
+gboolean gst_mpegts_descriptor_parse_dvb_data_broadcast (const GstMpegtsDescriptor
+              *descriptor, GstMpegtsDataBroadcastDescriptor ** res);
 
 /* GST_MTS_DESC_DVB_SCRAMBLING (0x65) */
 typedef enum
@@ -801,51 +818,51 @@
   /* 0x11 - 0x1f reserved for future DVB-CISSA versions */
   GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_0                = 0x70,
   GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_F                = 0x7f,
-} GstMpegTsDVBScramblingModeType;
+} GstMpegtsDVBScramblingModeType;
 
-gboolean gst_mpegts_descriptor_parse_dvb_scrambling (const GstMpegTsDescriptor * descriptor,
-       GstMpegTsDVBScramblingModeType * scrambling_mode);
+gboolean gst_mpegts_descriptor_parse_dvb_scrambling (const GstMpegtsDescriptor * descriptor,
+       GstMpegtsDVBScramblingModeType * scrambling_mode);
 
 /* GST_MTS_DESC_DVB_DATA_BROADCAST_ID (0x66) */
-gboolean gst_mpegts_descriptor_parse_dvb_data_broadcast_id (const GstMpegTsDescriptor
+gboolean gst_mpegts_descriptor_parse_dvb_data_broadcast_id (const GstMpegtsDescriptor
        * descriptor, guint16 * data_broadcast_id, guint8 ** id_selector_bytes, guint8 * len);
 
 /* GST_MTS_DESC_DVB_AC3 (0x6a) */
 /* FIXME : Implement */
 
 /* GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM (0x7F && 0x04) */
-typedef struct _GstMpegTsT2DeliverySystemCellExtension GstMpegTsT2DeliverySystemCellExtension;
+typedef struct _GstMpegtsT2DeliverySystemCellExtension GstMpegtsT2DeliverySystemCellExtension;
 
 /**
- * GstMpegTsT2DeliverySystemCellExtension:
+ * GstMpegtsT2DeliverySystemCellExtension:
  * @cell_id_extension: id of the sub cell
  * @transposer_frequency: centre frequency of the sub cell in Hz
  */
-struct _GstMpegTsT2DeliverySystemCellExtension
+struct _GstMpegtsT2DeliverySystemCellExtension
 {
   guint8  cell_id_extension;
   guint32 transposer_frequency;
 };
 
-typedef struct _GstMpegTsT2DeliverySystemCell GstMpegTsT2DeliverySystemCell;
+typedef struct _GstMpegtsT2DeliverySystemCell GstMpegtsT2DeliverySystemCell;
 
 /**
- * GstMpegTsT2DeliverySystemCell:
+ * GstMpegtsT2DeliverySystemCell:
  * @cell_id: id of the cell
  * @centre_frequencies: centre frequencies in Hz
- * @sub_cells: (element-type GstMpegTsT2DeliverySystemCellExtension):
+ * @sub_cells: (element-type GstMpegtsT2DeliverySystemCellExtension):
  */
-struct _GstMpegTsT2DeliverySystemCell
+struct _GstMpegtsT2DeliverySystemCell
 {
   guint16      cell_id;
   GArray       *centre_frequencies;
   GPtrArray    *sub_cells;
 };
 
-typedef struct _GstMpegTsT2DeliverySystemDescriptor GstMpegTsT2DeliverySystemDescriptor;
+typedef struct _GstMpegtsT2DeliverySystemDescriptor GstMpegtsT2DeliverySystemDescriptor;
 
 /**
- * GstMpegTsT2DeliverySystemDescriptor:
+ * GstMpegtsT2DeliverySystemDescriptor:
  * @plp_id:
  * @t2_system_id:
  * @siso_miso:
@@ -854,26 +871,29 @@
  * @transmission_mode:
  * @other_frequency:
  * @tfs:
- * @cells: (element-type GstMpegTsT2DeliverySystemCell):
+ * @cells: (element-type GstMpegtsT2DeliverySystemCell):
  *
  * describe DVB-T2 transmissions according to EN 302 755
  */
-struct _GstMpegTsT2DeliverySystemDescriptor
+struct _GstMpegtsT2DeliverySystemDescriptor
 {
   guint8                                plp_id;
   guint16                               t2_system_id;
   /* FIXME: */
   guint8                                siso_miso;
   guint32                               bandwidth;
-  GstMpegTsTerrestrialGuardInterval     guard_interval;
-  GstMpegTsTerrestrialTransmissionMode  transmission_mode;
+  GstMpegtsTerrestrialGuardInterval     guard_interval;
+  GstMpegtsTerrestrialTransmissionMode  transmission_mode;
   gboolean                              other_frequency;
   gboolean                              tfs;
   GPtrArray                             *cells;
 };
 
-gboolean gst_mpegts_descriptor_parse_dvb_t2_delivery_system (const GstMpegTsDescriptor
-              *descriptor, GstMpegTsT2DeliverySystemDescriptor * res);
+#define GST_TYPE_MPEGTS_T2_DELIVERY_SYSTEM_DESCRIPTOR (gst_mpegts_t2_delivery_system_descriptor_get_type ())
+GType gst_mpegts_t2_delivery_system_descriptor_get_type (void);
+void gst_mpegts_t2_delivery_system_descriptor_free (GstMpegtsT2DeliverySystemDescriptor * source);
+gboolean gst_mpegts_descriptor_parse_dvb_t2_delivery_system (const GstMpegtsDescriptor
+              *descriptor, GstMpegtsT2DeliverySystemDescriptor ** res);
 
 G_END_DECLS
 
diff --git a/gst-libs/gst/mpegts/gst-dvb-section.c b/gst-libs/gst/mpegts/gst-dvb-section.c
index dc66773..72b2f90 100644
--- a/gst-libs/gst/mpegts/gst-dvb-section.c
+++ b/gst-libs/gst/mpegts/gst-dvb-section.c
@@ -101,12 +101,12 @@
 }
 
 /* Event Information Table */
-static GstMpegTsEITEvent *
-_gst_mpegts_eit_event_copy (GstMpegTsEITEvent * eit)
+static GstMpegtsEITEvent *
+_gst_mpegts_eit_event_copy (GstMpegtsEITEvent * eit)
 {
-  GstMpegTsEITEvent *copy;
+  GstMpegtsEITEvent *copy;
 
-  copy = g_slice_dup (GstMpegTsEITEvent, eit);
+  copy = g_slice_dup (GstMpegtsEITEvent, eit);
   copy->start_time = gst_date_time_ref (eit->start_time);
   copy->descriptors = g_ptr_array_ref (eit->descriptors);
 
@@ -114,49 +114,49 @@
 }
 
 static void
-_gst_mpegts_eit_event_free (GstMpegTsEITEvent * eit)
+_gst_mpegts_eit_event_free (GstMpegtsEITEvent * eit)
 {
   if (eit->start_time)
     gst_date_time_unref (eit->start_time);
   if (eit->descriptors)
     g_ptr_array_unref (eit->descriptors);
-  g_slice_free (GstMpegTsEITEvent, eit);
+  g_slice_free (GstMpegtsEITEvent, eit);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsEITEvent, gst_mpegts_eit_event,
+G_DEFINE_BOXED_TYPE (GstMpegtsEITEvent, gst_mpegts_eit_event,
     (GBoxedCopyFunc) _gst_mpegts_eit_event_copy,
     (GFreeFunc) _gst_mpegts_eit_event_free);
 
-static GstMpegTsEIT *
-_gst_mpegts_eit_copy (GstMpegTsEIT * eit)
+static GstMpegtsEIT *
+_gst_mpegts_eit_copy (GstMpegtsEIT * eit)
 {
-  GstMpegTsEIT *copy;
+  GstMpegtsEIT *copy;
 
-  copy = g_slice_dup (GstMpegTsEIT, eit);
+  copy = g_slice_dup (GstMpegtsEIT, eit);
   copy->events = g_ptr_array_ref (eit->events);
 
   return copy;
 }
 
 static void
-_gst_mpegts_eit_free (GstMpegTsEIT * eit)
+_gst_mpegts_eit_free (GstMpegtsEIT * eit)
 {
   g_ptr_array_unref (eit->events);
-  g_slice_free (GstMpegTsEIT, eit);
+  g_slice_free (GstMpegtsEIT, eit);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsEIT, gst_mpegts_eit,
+G_DEFINE_BOXED_TYPE (GstMpegtsEIT, gst_mpegts_eit,
     (GBoxedCopyFunc) _gst_mpegts_eit_copy, (GFreeFunc) _gst_mpegts_eit_free);
 
 static gpointer
-_parse_eit (GstMpegTsSection * section)
+_parse_eit (GstMpegtsSection * section)
 {
-  GstMpegTsEIT *eit = NULL;
+  GstMpegtsEIT *eit = NULL;
   guint i = 0, allocated_events = 12;
   guint8 *data, *end, *duration_ptr;
   guint16 descriptors_loop_length;
 
-  eit = g_slice_new0 (GstMpegTsEIT);
+  eit = g_slice_new0 (GstMpegtsEIT);
 
   data = section->data;
   end = data + section->section_length;
@@ -181,7 +181,7 @@
       (GDestroyNotify) _gst_mpegts_eit_event_free);
 
   while (data < end - 4) {
-    GstMpegTsEITEvent *event;
+    GstMpegtsEITEvent *event;
 
     /* 12 is the minimum entry size + CRC */
     if (end - data < 12 + 4) {
@@ -190,7 +190,7 @@
       goto error;
     }
 
-    event = g_slice_new0 (GstMpegTsEITEvent);
+    event = g_slice_new0 (GstMpegtsEITEvent);
     g_ptr_array_add (eit->events, event);
 
     event->event_id = GST_READ_UINT16_BE (data);
@@ -238,15 +238,15 @@
 
 /**
  * gst_mpegts_section_get_eit:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_EIT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_EIT
  *
- * Returns the #GstMpegTsEIT contained in the @section.
+ * Returns the #GstMpegtsEIT contained in the @section.
  *
- * Returns: The #GstMpegTsEIT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsEIT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsEIT *
-gst_mpegts_section_get_eit (GstMpegTsSection * section)
+const GstMpegtsEIT *
+gst_mpegts_section_get_eit (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_EIT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -255,39 +255,39 @@
     section->cached_parsed = __common_section_checks (section, 18, _parse_eit,
         (GDestroyNotify) _gst_mpegts_eit_free);
 
-  return (const GstMpegTsEIT *) section->cached_parsed;
+  return (const GstMpegtsEIT *) section->cached_parsed;
 }
 
 /* Bouquet Association Table */
-static GstMpegTsBATStream *
-_gst_mpegts_bat_stream_copy (GstMpegTsBATStream * bat)
+static GstMpegtsBATStream *
+_gst_mpegts_bat_stream_copy (GstMpegtsBATStream * bat)
 {
-  GstMpegTsBATStream *copy;
+  GstMpegtsBATStream *copy;
 
-  copy = g_slice_dup (GstMpegTsBATStream, bat);
+  copy = g_slice_dup (GstMpegtsBATStream, bat);
   copy->descriptors = g_ptr_array_ref (bat->descriptors);
 
   return copy;
 }
 
 static void
-_gst_mpegts_bat_stream_free (GstMpegTsBATStream * bat)
+_gst_mpegts_bat_stream_free (GstMpegtsBATStream * bat)
 {
   if (bat->descriptors)
     g_ptr_array_unref (bat->descriptors);
-  g_slice_free (GstMpegTsBATStream, bat);
+  g_slice_free (GstMpegtsBATStream, bat);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsBATStream, gst_mpegts_bat_stream,
+G_DEFINE_BOXED_TYPE (GstMpegtsBATStream, gst_mpegts_bat_stream,
     (GBoxedCopyFunc) _gst_mpegts_bat_stream_copy,
     (GFreeFunc) _gst_mpegts_bat_stream_free);
 
-static GstMpegTsBAT *
-_gst_mpegts_bat_copy (GstMpegTsBAT * bat)
+static GstMpegtsBAT *
+_gst_mpegts_bat_copy (GstMpegtsBAT * bat)
 {
-  GstMpegTsBAT *copy;
+  GstMpegtsBAT *copy;
 
-  copy = g_slice_dup (GstMpegTsBAT, bat);
+  copy = g_slice_dup (GstMpegtsBAT, bat);
   copy->descriptors = g_ptr_array_ref (bat->descriptors);
   copy->streams = g_ptr_array_ref (bat->streams);
 
@@ -295,29 +295,29 @@
 }
 
 static void
-_gst_mpegts_bat_free (GstMpegTsBAT * bat)
+_gst_mpegts_bat_free (GstMpegtsBAT * bat)
 {
   if (bat->descriptors)
     g_ptr_array_unref (bat->descriptors);
   if (bat->streams)
     g_ptr_array_unref (bat->streams);
-  g_slice_free (GstMpegTsBAT, bat);
+  g_slice_free (GstMpegtsBAT, bat);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsBAT, gst_mpegts_bat,
+G_DEFINE_BOXED_TYPE (GstMpegtsBAT, gst_mpegts_bat,
     (GBoxedCopyFunc) _gst_mpegts_bat_copy, (GFreeFunc) _gst_mpegts_bat_free);
 
 static gpointer
-_parse_bat (GstMpegTsSection * section)
+_parse_bat (GstMpegtsSection * section)
 {
-  GstMpegTsBAT *bat = NULL;
+  GstMpegtsBAT *bat = NULL;
   guint i = 0, allocated_streams = 12;
   guint8 *data, *end, *entry_begin;
   guint16 descriptors_loop_length, transport_stream_loop_length;
 
   GST_DEBUG ("BAT");
 
-  bat = g_slice_new0 (GstMpegTsBAT);
+  bat = g_slice_new0 (GstMpegtsBAT);
 
   data = section->data;
   end = data + section->section_length;
@@ -355,7 +355,7 @@
 
   /* read up to the CRC */
   while (transport_stream_loop_length - 4 > 0) {
-    GstMpegTsBATStream *stream = g_slice_new0 (GstMpegTsBATStream);
+    GstMpegtsBATStream *stream = g_slice_new0 (GstMpegtsBATStream);
 
     g_ptr_array_add (bat->streams, stream);
 
@@ -414,15 +414,15 @@
 
 /**
  * gst_mpegts_section_get_bat:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_BAT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_BAT
  *
- * Returns the #GstMpegTsBAT contained in the @section.
+ * Returns the #GstMpegtsBAT contained in the @section.
  *
- * Returns: The #GstMpegTsBAT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsBAT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsBAT *
-gst_mpegts_section_get_bat (GstMpegTsSection * section)
+const GstMpegtsBAT *
+gst_mpegts_section_get_bat (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_BAT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -432,39 +432,39 @@
         __common_section_checks (section, 16, _parse_bat,
         (GDestroyNotify) _gst_mpegts_bat_free);
 
-  return (const GstMpegTsBAT *) section->cached_parsed;
+  return (const GstMpegtsBAT *) section->cached_parsed;
 }
 
 
 /* Network Information Table */
 
-static GstMpegTsNITStream *
-_gst_mpegts_nit_stream_copy (GstMpegTsNITStream * nit)
+static GstMpegtsNITStream *
+_gst_mpegts_nit_stream_copy (GstMpegtsNITStream * nit)
 {
-  GstMpegTsNITStream *copy;
+  GstMpegtsNITStream *copy;
 
-  copy = g_slice_dup (GstMpegTsNITStream, nit);
+  copy = g_slice_dup (GstMpegtsNITStream, nit);
   copy->descriptors = g_ptr_array_ref (nit->descriptors);
 
   return copy;
 }
 
 static void
-_gst_mpegts_nit_stream_free (GstMpegTsNITStream * nit)
+_gst_mpegts_nit_stream_free (GstMpegtsNITStream * nit)
 {
   if (nit->descriptors)
     g_ptr_array_unref (nit->descriptors);
-  g_slice_free (GstMpegTsNITStream, nit);
+  g_slice_free (GstMpegtsNITStream, nit);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsNITStream, gst_mpegts_nit_stream,
+G_DEFINE_BOXED_TYPE (GstMpegtsNITStream, gst_mpegts_nit_stream,
     (GBoxedCopyFunc) _gst_mpegts_nit_stream_copy,
     (GFreeFunc) _gst_mpegts_nit_stream_free);
 
-static GstMpegTsNIT *
-_gst_mpegts_nit_copy (GstMpegTsNIT * nit)
+static GstMpegtsNIT *
+_gst_mpegts_nit_copy (GstMpegtsNIT * nit)
 {
-  GstMpegTsNIT *copy = g_slice_dup (GstMpegTsNIT, nit);
+  GstMpegtsNIT *copy = g_slice_dup (GstMpegtsNIT, nit);
 
   copy->descriptors = g_ptr_array_ref (nit->descriptors);
   copy->streams = g_ptr_array_ref (nit->streams);
@@ -473,29 +473,29 @@
 }
 
 static void
-_gst_mpegts_nit_free (GstMpegTsNIT * nit)
+_gst_mpegts_nit_free (GstMpegtsNIT * nit)
 {
   if (nit->descriptors)
     g_ptr_array_unref (nit->descriptors);
   g_ptr_array_unref (nit->streams);
-  g_slice_free (GstMpegTsNIT, nit);
+  g_slice_free (GstMpegtsNIT, nit);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsNIT, gst_mpegts_nit,
+G_DEFINE_BOXED_TYPE (GstMpegtsNIT, gst_mpegts_nit,
     (GBoxedCopyFunc) _gst_mpegts_nit_copy, (GFreeFunc) _gst_mpegts_nit_free);
 
 
 static gpointer
-_parse_nit (GstMpegTsSection * section)
+_parse_nit (GstMpegtsSection * section)
 {
-  GstMpegTsNIT *nit = NULL;
+  GstMpegtsNIT *nit = NULL;
   guint i = 0, allocated_streams = 12;
   guint8 *data, *end, *entry_begin;
   guint16 descriptors_loop_length, transport_stream_loop_length;
 
   GST_DEBUG ("NIT");
 
-  nit = g_slice_new0 (GstMpegTsNIT);
+  nit = g_slice_new0 (GstMpegtsNIT);
 
   data = section->data;
   end = data + section->section_length;
@@ -536,7 +536,7 @@
 
   /* read up to the CRC */
   while (transport_stream_loop_length - 4 > 0) {
-    GstMpegTsNITStream *stream = g_slice_new0 (GstMpegTsNITStream);
+    GstMpegtsNITStream *stream = g_slice_new0 (GstMpegtsNITStream);
 
     g_ptr_array_add (nit->streams, stream);
 
@@ -595,15 +595,15 @@
 
 /**
  * gst_mpegts_section_get_nit:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_NIT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_NIT
  *
- * Returns the #GstMpegTsNIT contained in the @section.
+ * Returns the #GstMpegtsNIT contained in the @section.
  *
- * Returns: The #GstMpegTsNIT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsNIT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsNIT *
-gst_mpegts_section_get_nit (GstMpegTsSection * section)
+const GstMpegtsNIT *
+gst_mpegts_section_get_nit (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_NIT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -613,22 +613,22 @@
         __common_section_checks (section, 16, _parse_nit,
         (GDestroyNotify) _gst_mpegts_nit_free);
 
-  return (const GstMpegTsNIT *) section->cached_parsed;
+  return (const GstMpegtsNIT *) section->cached_parsed;
 }
 
 /**
  * gst_mpegts_nit_new:
  *
- * Allocates and initializes a #GstMpegTsNIT.
+ * Allocates and initializes a #GstMpegtsNIT.
  *
- * Returns: (transfer full): A newly allocated #GstMpegTsNIT
+ * Returns: (transfer full): A newly allocated #GstMpegtsNIT
  */
-GstMpegTsNIT *
+GstMpegtsNIT *
 gst_mpegts_nit_new (void)
 {
-  GstMpegTsNIT *nit;
+  GstMpegtsNIT *nit;
 
-  nit = g_slice_new0 (GstMpegTsNIT);
+  nit = g_slice_new0 (GstMpegtsNIT);
 
   nit->descriptors =
       g_ptr_array_new_with_free_func ((GDestroyNotify) _free_descriptor);
@@ -641,16 +641,16 @@
 /**
  * gst_mpegts_nit_stream_new:
  *
- * Allocates and initializes a #GstMpegTsNITStream
+ * Allocates and initializes a #GstMpegtsNITStream
  *
- * Returns: (transfer full): A newly allocated #GstMpegTsNITStream
+ * Returns: (transfer full): A newly allocated #GstMpegtsNITStream
  */
-GstMpegTsNITStream *
+GstMpegtsNITStream *
 gst_mpegts_nit_stream_new (void)
 {
-  GstMpegTsNITStream *stream;
+  GstMpegtsNITStream *stream;
 
-  stream = g_slice_new0 (GstMpegTsNITStream);
+  stream = g_slice_new0 (GstMpegtsNITStream);
 
   stream->descriptors = g_ptr_array_new_with_free_func (
       (GDestroyNotify) _free_descriptor);
@@ -659,12 +659,12 @@
 }
 
 static gboolean
-_packetize_nit (GstMpegTsSection * section)
+_packetize_nit (GstMpegtsSection * section)
 {
   gsize length, network_length, loop_length;
-  const GstMpegTsNIT *nit;
-  GstMpegTsNITStream *stream;
-  GstMpegTsDescriptor *descriptor;
+  const GstMpegtsNIT *nit;
+  GstMpegtsNITStream *stream;
+  GstMpegtsDescriptor *descriptor;
   guint i, j;
   guint8 *data, *pos;
 
@@ -754,16 +754,16 @@
 
 /**
  * gst_mpegts_section_from_nit:
- * @nit: (transfer full): a #GstMpegTsNIT to create the #GstMpegTsSection from
+ * @nit: (transfer full): a #GstMpegtsNIT to create the #GstMpegtsSection from
  *
- * Ownership of @nit is taken. The data in @nit is managed by the #GstMpegTsSection
+ * Ownership of @nit is taken. The data in @nit is managed by the #GstMpegtsSection
  *
- * Returns: (transfer full): the #GstMpegTsSection
+ * Returns: (transfer full): the #GstMpegtsSection
  */
-GstMpegTsSection *
-gst_mpegts_section_from_nit (GstMpegTsNIT * nit)
+GstMpegtsSection *
+gst_mpegts_section_from_nit (GstMpegtsNIT * nit)
 {
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
   g_return_val_if_fail (nit != NULL, NULL);
 
@@ -784,10 +784,10 @@
 
 /* Service Description Table (SDT) */
 
-static GstMpegTsSDTService *
-_gst_mpegts_sdt_service_copy (GstMpegTsSDTService * sdt)
+static GstMpegtsSDTService *
+_gst_mpegts_sdt_service_copy (GstMpegtsSDTService * sdt)
 {
-  GstMpegTsSDTService *copy = g_slice_dup (GstMpegTsSDTService, sdt);
+  GstMpegtsSDTService *copy = g_slice_dup (GstMpegtsSDTService, sdt);
 
   copy->descriptors = g_ptr_array_ref (sdt->descriptors);
 
@@ -795,21 +795,21 @@
 }
 
 static void
-_gst_mpegts_sdt_service_free (GstMpegTsSDTService * sdt)
+_gst_mpegts_sdt_service_free (GstMpegtsSDTService * sdt)
 {
   if (sdt->descriptors)
     g_ptr_array_unref (sdt->descriptors);
-  g_slice_free (GstMpegTsSDTService, sdt);
+  g_slice_free (GstMpegtsSDTService, sdt);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsSDTService, gst_mpegts_sdt_service,
+G_DEFINE_BOXED_TYPE (GstMpegtsSDTService, gst_mpegts_sdt_service,
     (GBoxedCopyFunc) _gst_mpegts_sdt_service_copy,
     (GFreeFunc) _gst_mpegts_sdt_service_free);
 
-static GstMpegTsSDT *
-_gst_mpegts_sdt_copy (GstMpegTsSDT * sdt)
+static GstMpegtsSDT *
+_gst_mpegts_sdt_copy (GstMpegtsSDT * sdt)
 {
-  GstMpegTsSDT *copy = g_slice_dup (GstMpegTsSDT, sdt);
+  GstMpegtsSDT *copy = g_slice_dup (GstMpegtsSDT, sdt);
 
   copy->services = g_ptr_array_ref (sdt->services);
 
@@ -817,20 +817,20 @@
 }
 
 static void
-_gst_mpegts_sdt_free (GstMpegTsSDT * sdt)
+_gst_mpegts_sdt_free (GstMpegtsSDT * sdt)
 {
   g_ptr_array_unref (sdt->services);
-  g_slice_free (GstMpegTsSDT, sdt);
+  g_slice_free (GstMpegtsSDT, sdt);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsSDT, gst_mpegts_sdt,
+G_DEFINE_BOXED_TYPE (GstMpegtsSDT, gst_mpegts_sdt,
     (GBoxedCopyFunc) _gst_mpegts_sdt_copy, (GFreeFunc) _gst_mpegts_sdt_free);
 
 
 static gpointer
-_parse_sdt (GstMpegTsSection * section)
+_parse_sdt (GstMpegtsSection * section)
 {
-  GstMpegTsSDT *sdt = NULL;
+  GstMpegtsSDT *sdt = NULL;
   guint i = 0, allocated_services = 8;
   guint8 *data, *end, *entry_begin;
   guint tmp;
@@ -839,7 +839,7 @@
 
   GST_DEBUG ("SDT");
 
-  sdt = g_slice_new0 (GstMpegTsSDT);
+  sdt = g_slice_new0 (GstMpegtsSDT);
 
   data = section->data;
   end = data + section->section_length;
@@ -864,7 +864,7 @@
 
   /* read up to the CRC */
   while (sdt_info_length - 4 > 0) {
-    GstMpegTsSDTService *service = g_slice_new0 (GstMpegTsSDTService);
+    GstMpegtsSDTService *service = g_slice_new0 (GstMpegtsSDTService);
     g_ptr_array_add (sdt->services, service);
 
     entry_begin = data;
@@ -923,15 +923,15 @@
 
 /**
  * gst_mpegts_section_get_sdt:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_SDT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_SDT
  *
- * Returns the #GstMpegTsSDT contained in the @section.
+ * Returns the #GstMpegtsSDT contained in the @section.
  *
- * Returns: The #GstMpegTsSDT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsSDT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsSDT *
-gst_mpegts_section_get_sdt (GstMpegTsSection * section)
+const GstMpegtsSDT *
+gst_mpegts_section_get_sdt (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_SDT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -941,22 +941,22 @@
         __common_section_checks (section, 15, _parse_sdt,
         (GDestroyNotify) _gst_mpegts_sdt_free);
 
-  return (const GstMpegTsSDT *) section->cached_parsed;
+  return (const GstMpegtsSDT *) section->cached_parsed;
 }
 
 /**
  * gst_mpegts_sdt_new:
  *
- * Allocates and initializes a #GstMpegTsSDT.
+ * Allocates and initializes a #GstMpegtsSDT.
  *
- * Returns: (transfer full): A newly allocated #GstMpegTsSDT
+ * Returns: (transfer full): A newly allocated #GstMpegtsSDT
  */
-GstMpegTsSDT *
+GstMpegtsSDT *
 gst_mpegts_sdt_new (void)
 {
-  GstMpegTsSDT *sdt;
+  GstMpegtsSDT *sdt;
 
-  sdt = g_slice_new0 (GstMpegTsSDT);
+  sdt = g_slice_new0 (GstMpegtsSDT);
 
   sdt->services = g_ptr_array_new_with_free_func ((GDestroyNotify)
       _gst_mpegts_sdt_service_free);
@@ -967,16 +967,16 @@
 /**
  * gst_mpegts_sdt_service_new:
  *
- * Allocates and initializes a #GstMpegTsSDTService.
+ * Allocates and initializes a #GstMpegtsSDTService.
  *
- * Returns: (transfer full): A newly allocated #GstMpegTsSDTService
+ * Returns: (transfer full): A newly allocated #GstMpegtsSDTService
  */
-GstMpegTsSDTService *
+GstMpegtsSDTService *
 gst_mpegts_sdt_service_new (void)
 {
-  GstMpegTsSDTService *service;
+  GstMpegtsSDTService *service;
 
-  service = g_slice_new0 (GstMpegTsSDTService);
+  service = g_slice_new0 (GstMpegtsSDTService);
 
   service->descriptors = g_ptr_array_new_with_free_func ((GDestroyNotify)
       _free_descriptor);
@@ -985,12 +985,12 @@
 }
 
 static gboolean
-_packetize_sdt (GstMpegTsSection * section)
+_packetize_sdt (GstMpegtsSection * section)
 {
   gsize length, service_length;
-  const GstMpegTsSDT *sdt;
-  GstMpegTsSDTService *service;
-  GstMpegTsDescriptor *descriptor;
+  const GstMpegtsSDT *sdt;
+  GstMpegtsSDTService *service;
+  GstMpegtsDescriptor *descriptor;
   guint i, j;
   guint8 *data, *pos;
 
@@ -1075,16 +1075,16 @@
 
 /**
  * gst_mpegts_section_from_sdt:
- * @sdt: (transfer full): a #GstMpegTsSDT to create the #GstMpegTsSection from
+ * @sdt: (transfer full): a #GstMpegtsSDT to create the #GstMpegtsSection from
  *
- * Ownership of @sdt is taken. The data in @sdt is managed by the #GstMpegTsSection
+ * Ownership of @sdt is taken. The data in @sdt is managed by the #GstMpegtsSection
  *
- * Returns: (transfer full): the #GstMpegTsSection
+ * Returns: (transfer full): the #GstMpegtsSection
  */
-GstMpegTsSection *
-gst_mpegts_section_from_sdt (GstMpegTsSDT * sdt)
+GstMpegtsSection *
+gst_mpegts_section_from_sdt (GstMpegtsSDT * sdt)
 {
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
   g_return_val_if_fail (sdt != NULL, NULL);
 
@@ -1105,14 +1105,14 @@
 
 /* Time and Date Table (TDT) */
 static gpointer
-_parse_tdt (GstMpegTsSection * section)
+_parse_tdt (GstMpegtsSection * section)
 {
   return (gpointer) _parse_utc_time (section->data + 3);
 }
 
 /**
  * gst_mpegts_section_get_tdt:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_TDT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TDT
  *
  * Returns the #GstDateTime of the TDT
  *
@@ -1120,7 +1120,7 @@
  * if an error happened. Release with #gst_date_time_unref when done.
  */
 GstDateTime *
-gst_mpegts_section_get_tdt (GstMpegTsSection * section)
+gst_mpegts_section_get_tdt (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_TDT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -1137,10 +1137,10 @@
 
 
 /* Time Offset Table (TOT) */
-static GstMpegTsTOT *
-_gst_mpegts_tot_copy (GstMpegTsTOT * tot)
+static GstMpegtsTOT *
+_gst_mpegts_tot_copy (GstMpegtsTOT * tot)
 {
-  GstMpegTsTOT *copy = g_slice_dup (GstMpegTsTOT, tot);
+  GstMpegtsTOT *copy = g_slice_dup (GstMpegtsTOT, tot);
 
   if (tot->utc_time)
     copy->utc_time = gst_date_time_ref (tot->utc_time);
@@ -1150,28 +1150,28 @@
 }
 
 static void
-_gst_mpegts_tot_free (GstMpegTsTOT * tot)
+_gst_mpegts_tot_free (GstMpegtsTOT * tot)
 {
   if (tot->utc_time)
     gst_date_time_unref (tot->utc_time);
   if (tot->descriptors)
     g_ptr_array_unref (tot->descriptors);
-  g_slice_free (GstMpegTsTOT, tot);
+  g_slice_free (GstMpegtsTOT, tot);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsTOT, gst_mpegts_tot,
+G_DEFINE_BOXED_TYPE (GstMpegtsTOT, gst_mpegts_tot,
     (GBoxedCopyFunc) _gst_mpegts_tot_copy, (GFreeFunc) _gst_mpegts_tot_free);
 
 static gpointer
-_parse_tot (GstMpegTsSection * section)
+_parse_tot (GstMpegtsSection * section)
 {
   guint8 *data;
-  GstMpegTsTOT *tot;
+  GstMpegtsTOT *tot;
   guint16 desc_len;
 
   GST_DEBUG ("TOT");
 
-  tot = g_slice_new0 (GstMpegTsTOT);
+  tot = g_slice_new0 (GstMpegtsTOT);
 
   tot->utc_time = _parse_utc_time (section->data + 3);
 
@@ -1187,15 +1187,15 @@
 
 /**
  * gst_mpegts_section_get_tot:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_TOT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TOT
  *
- * Returns the #GstMpegTsTOT contained in the @section.
+ * Returns the #GstMpegtsTOT contained in the @section.
  *
- * Returns: The #GstMpegTsTOT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsTOT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsTOT *
-gst_mpegts_section_get_tot (GstMpegTsSection * section)
+const GstMpegtsTOT *
+gst_mpegts_section_get_tot (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_TOT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -1205,5 +1205,5 @@
         __common_section_checks (section, 14, _parse_tot,
         (GDestroyNotify) _gst_mpegts_tot_free);
 
-  return (const GstMpegTsTOT *) section->cached_parsed;
+  return (const GstMpegtsTOT *) section->cached_parsed;
 }
diff --git a/gst-libs/gst/mpegts/gst-dvb-section.h b/gst-libs/gst/mpegts/gst-dvb-section.h
index aba057a..1152d4b 100644
--- a/gst-libs/gst/mpegts/gst-dvb-section.h
+++ b/gst-libs/gst/mpegts/gst-dvb-section.h
@@ -31,13 +31,13 @@
 G_BEGIN_DECLS
 
 /**
- * GstMpegTsSectionDVBTableID:
+ * GstMpegtsSectionDVBTableID:
  *
- * Values for a #GstMpegTsSection table_id.
+ * Values for a #GstMpegtsSection table_id.
  *
  * These are the registered DVB table_id variants.
  *
- * see also: #GstMpegTsSectionTableID
+ * see also: #GstMpegtsSectionTableID
  */
 typedef enum {
   /* EN 300 468 (DVB) v 1.12.1 */
@@ -98,10 +98,10 @@
   GST_MTS_TABLE_ID_TIM					= 0xB0,
   GST_MTS_TABLE_ID_LL_FEC_PARITY_DATA_TABLE		= 0xB1
 
-} GstMpegTsSectionDVBTableID;
+} GstMpegtsSectionDVBTableID;
 
 /**
- * GstMpegTsRunningStatus:
+ * GstMpegtsRunningStatus:
  *
  * Running status of a service.
  *
@@ -115,26 +115,26 @@
   GST_MPEGTS_RUNNING_STATUS_PAUSING,
   GST_MPEGTS_RUNNING_STATUS_RUNNING,
   GST_MPEGTS_RUNNING_STATUS_OFF_AIR
-} GstMpegTsRunningStatus;
+} GstMpegtsRunningStatus;
 
 
 
 /* NIT */
 
-typedef struct _GstMpegTsNITStream GstMpegTsNITStream;
-typedef struct _GstMpegTsNIT GstMpegTsNIT;
+typedef struct _GstMpegtsNITStream GstMpegtsNITStream;
+typedef struct _GstMpegtsNIT GstMpegtsNIT;
 
 #define GST_TYPE_MPEGTS_NIT (gst_mpegts_nit_get_type())
 #define GST_TYPE_MPEGTS_NIT_STREAM (gst_mpegts_nit_stream_get_type())
 
 /**
- * GstMpegTsNITStream:
+ * GstMpegtsNITStream:
  * @transport_stream_id:
  * @original_network_id:
- * @descriptors: (element-type GstMpegTsDescriptor):
+ * @descriptors: (element-type GstMpegtsDescriptor):
  *
  */
-struct _GstMpegTsNITStream
+struct _GstMpegtsNITStream
 {
   guint16  transport_stream_id;
   guint16  original_network_id;
@@ -143,16 +143,16 @@
 };
 
 /**
- * GstMpegTsNIT:
+ * GstMpegtsNIT:
  * @actual_network: Whether this NIT corresponds to the actual stream
  * @network_id: ID of the network that this NIT describes
- * @descriptors: (element-type GstMpegTsDescriptor): the global descriptors
- * @streams: (element-type GstMpegTsNITStream): the streams
+ * @descriptors: (element-type GstMpegtsDescriptor): the global descriptors
+ * @streams: (element-type GstMpegtsNITStream): the streams
  *
  * Network Information Table (ISO/IEC 13818-1 / EN 300 468)
  *
  */
-struct _GstMpegTsNIT
+struct _GstMpegtsNIT
 {
   gboolean   actual_network;
   guint16    network_id;
@@ -165,22 +165,22 @@
 GType gst_mpegts_nit_get_type (void);
 GType gst_mpegts_nit_stream_get_type (void);
 
-const GstMpegTsNIT *gst_mpegts_section_get_nit (GstMpegTsSection *section);
-GstMpegTsSection *gst_mpegts_section_from_nit (GstMpegTsNIT *nit);
+const GstMpegtsNIT *gst_mpegts_section_get_nit (GstMpegtsSection *section);
+GstMpegtsSection *gst_mpegts_section_from_nit (GstMpegtsNIT *nit);
 
-GstMpegTsNIT *gst_mpegts_nit_new (void);
-GstMpegTsNITStream *gst_mpegts_nit_stream_new (void);
+GstMpegtsNIT *gst_mpegts_nit_new (void);
+GstMpegtsNITStream *gst_mpegts_nit_stream_new (void);
 
 
 /* BAT */
 
-typedef struct _GstMpegTsBATStream GstMpegTsBATStream;
-typedef struct _GstMpegTsBAT GstMpegTsBAT;
+typedef struct _GstMpegtsBATStream GstMpegtsBATStream;
+typedef struct _GstMpegtsBAT GstMpegtsBAT;
 
 #define GST_TYPE_MPEGTS_BAT (gst_mpegts_bat_get_type())
 #define GST_TYPE_MPEGTS_BAT_STREAM (gst_mpegts_bat_get_type())
 
-struct _GstMpegTsBATStream
+struct _GstMpegtsBATStream
 {
   guint16   transport_stream_id;
   guint16   original_network_id;
@@ -189,15 +189,15 @@
 };
 
 /**
- * GstMpegTsBAT:
- * @descriptors: (element-type GstMpegTsDescriptor):
- * @streams: (element-type GstMpegTsBATStream):
+ * GstMpegtsBAT:
+ * @descriptors: (element-type GstMpegtsDescriptor):
+ * @streams: (element-type GstMpegtsBATStream):
  *
  * DVB Bouquet Association Table (EN 300 468)
  */
-struct _GstMpegTsBAT
+struct _GstMpegtsBAT
 {
-  GPtrArray     *descriptors;
+  GPtrArray  *descriptors;
 
   GPtrArray  *streams;
 };
@@ -205,48 +205,48 @@
 GType gst_mpegts_bat_get_type (void);
 GType gst_mpegts_bat_stream_get_type (void);
 
-const GstMpegTsBAT *gst_mpegts_section_get_bat (GstMpegTsSection *section);
+const GstMpegtsBAT *gst_mpegts_section_get_bat (GstMpegtsSection *section);
 
 /* SDT */
 #define GST_TYPE_MPEGTS_SDT (gst_mpegts_sdt_get_type())
 #define GST_TYPE_MPEGTS_SDT_SERVICE (gst_mpegts_sdt_service_get_type())
 
-typedef struct _GstMpegTsSDTService GstMpegTsSDTService;
-typedef struct _GstMpegTsSDT GstMpegTsSDT;
+typedef struct _GstMpegtsSDTService GstMpegtsSDTService;
+typedef struct _GstMpegtsSDT GstMpegtsSDT;
 
 /**
- * GstMpegTsSDTService:
+ * GstMpegtsSDTService:
  * @service_id: The program number this table belongs to
  * @EIT_schedule_flag: EIT schedule information is present in this transport stream
  * @EIT_present_following_flag: EIT present/following information is present in this transport stream
  * @running_status: Status of this service
  * @free_CA_mode: True if one or more streams is controlled by a CA system
- * @descriptors: (element-type GstMpegTsDescriptor): List of descriptors
+ * @descriptors: (element-type GstMpegtsDescriptor): List of descriptors
  *
  */
-struct _GstMpegTsSDTService
+struct _GstMpegtsSDTService
 {
   guint16    service_id;
 
   gboolean   EIT_schedule_flag;
   gboolean   EIT_present_following_flag;
-  GstMpegTsRunningStatus running_status;
+  GstMpegtsRunningStatus running_status;
   gboolean   free_CA_mode;
 
   GPtrArray    *descriptors;
 };
 
 /**
- * GstMpegTsSDT:
+ * GstMpegtsSDT:
  * @original_network_id: Network ID of the originating delivery system
  * @actual_ts: True if the table describes this transport stream
  * @transport_stream_id: ID of this transport stream
- * @services: (element-type GstMpegTsSDTService): List of services
+ * @services: (element-type GstMpegtsSDTService): List of services
  *
  * Service Description Table (EN 300 468)
  *
  */
-struct _GstMpegTsSDT
+struct _GstMpegtsSDT
 {
   guint16    original_network_id;
   gboolean   actual_ts;
@@ -258,48 +258,48 @@
 GType gst_mpegts_sdt_get_type (void);
 GType gst_mpegts_sdt_service_get_type (void);
 
-const GstMpegTsSDT *gst_mpegts_section_get_sdt (GstMpegTsSection *section);
+const GstMpegtsSDT *gst_mpegts_section_get_sdt (GstMpegtsSection *section);
 
-GstMpegTsSection *gst_mpegts_section_from_sdt (GstMpegTsSDT * sdt);
+GstMpegtsSection *gst_mpegts_section_from_sdt (GstMpegtsSDT * sdt);
 
-GstMpegTsSDT *gst_mpegts_sdt_new (void);
-GstMpegTsSDTService *gst_mpegts_sdt_service_new (void);
+GstMpegtsSDT *gst_mpegts_sdt_new (void);
+GstMpegtsSDTService *gst_mpegts_sdt_service_new (void);
 
 /* EIT */
 
 #define GST_TYPE_MPEGTS_EIT (gst_mpegts_eit_get_type())
 #define GST_TYPE_MPEGTS_EIT_EVENT (gst_mpegts_eit_event_get_type())
 
-typedef struct _GstMpegTsEITEvent GstMpegTsEITEvent;
-typedef struct _GstMpegTsEIT GstMpegTsEIT;
+typedef struct _GstMpegtsEITEvent GstMpegtsEITEvent;
+typedef struct _GstMpegtsEIT GstMpegtsEIT;
 
 /**
- * GstMpegTsEITEvent:
- * @descriptors: (element-type GstMpegTsDescriptor): List of descriptors
+ * GstMpegtsEITEvent:
+ * @descriptors: (element-type GstMpegtsDescriptor): List of descriptors
  *
- * Event from a @GstMpegTsEIT
+ * Event from a @GstMpegtsEIT
  */
-struct _GstMpegTsEITEvent
+struct _GstMpegtsEITEvent
 {
   guint16      event_id;
 
   GstDateTime *start_time;
   guint32      duration;
 
-  GstMpegTsRunningStatus running_status;
+  GstMpegtsRunningStatus running_status;
   gboolean     free_CA_mode;
 
-  GPtrArray      *descriptors;
+  GPtrArray   *descriptors;
 };
 
 /**
- * GstMpegTsEIT:
- * @events: (element-type GstMpegTsEITEvent): List of events
+ * GstMpegtsEIT:
+ * @events: (element-type GstMpegtsEITEvent): List of events
  *
  * Event Information Table (EN 300 468)
  *
  */
-struct _GstMpegTsEIT
+struct _GstMpegtsEIT
 {
   guint16        transport_stream_id;
   guint16        original_network_id;
@@ -315,31 +315,31 @@
 GType gst_mpegts_eit_get_type (void);
 GType gst_mpegts_eit_event_get_type (void);
 
-const GstMpegTsEIT *gst_mpegts_section_get_eit (GstMpegTsSection *section);
+const GstMpegtsEIT *gst_mpegts_section_get_eit (GstMpegtsSection *section);
 
 /* TDT */
-GstDateTime *gst_mpegts_section_get_tdt (GstMpegTsSection *section);
+GstDateTime *gst_mpegts_section_get_tdt (GstMpegtsSection *section);
 
 /* TOT */
 
-typedef struct _GstMpegTsTOT GstMpegTsTOT;
+typedef struct _GstMpegtsTOT GstMpegtsTOT;
 #define GST_TYPE_MPEGTS_TOT (gst_mpegts_tot_get_type())
 /**
- * GstMpegTsTOT:
- * @descriptors: (element-type GstMpegTsDescriptor): List of descriptors
+ * GstMpegtsTOT:
+ * @descriptors: (element-type GstMpegtsDescriptor): List of descriptors
  *
  * Time Offset Table (EN 300 468)
  *
  */
-struct _GstMpegTsTOT
+struct _GstMpegtsTOT
 {
   GstDateTime   *utc_time;
 
-  GPtrArray        *descriptors;
+  GPtrArray     *descriptors;
 };
 
 GType gst_mpegts_tot_get_type (void);
-const GstMpegTsTOT *gst_mpegts_section_get_tot (GstMpegTsSection *section);
+const GstMpegtsTOT *gst_mpegts_section_get_tot (GstMpegtsSection *section);
 
 G_END_DECLS
 
diff --git a/gst-libs/gst/mpegts/gst-scte-section.h b/gst-libs/gst/mpegts/gst-scte-section.h
index 66ef62f..76c5011 100644
--- a/gst-libs/gst/mpegts/gst-scte-section.h
+++ b/gst-libs/gst/mpegts/gst-scte-section.h
@@ -31,17 +31,17 @@
 G_BEGIN_DECLS
 
 /**
- * GstMpegTsScteStreamType:
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_SUBTITLING:  SCTE-27 Subtitling
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_ISOCH_DATA:  SCTE-19 Isochronous data
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_DST_NRT:     SCTE-07 Data Service or
+ * GstMpegtsScteStreamType:
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_SUBTITLING:  SCTE-27 Subtitling
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_ISOCH_DATA:  SCTE-19 Isochronous data
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_DST_NRT:     SCTE-07 Data Service or
  * Network Resource Table
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_DSMCC_DCB:   Type B - DSM-CC Data Carousel
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_DSMCC_DCB:   Type B - DSM-CC Data Carousel
  * [IEC 13818-6])
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_SIGNALING:   Enhanced Television Application
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_SIGNALING:   Enhanced Television Application
  * Signaling (OC-SP-ETV-AM1.0.1-120614)
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_SYNC_DATA:   SCTE-07 Synchronous data
- * @GST_MPEG_TS_STREAM_TYPE_SCTE_ASYNC_DATA:  SCTE-53 Asynchronous data
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_SYNC_DATA:   SCTE-07 Synchronous data
+ * @GST_MPEGTS_STREAM_TYPE_SCTE_ASYNC_DATA:  SCTE-53 Asynchronous data
  *
  * Type of mpeg-ts streams for SCTE
  *
@@ -49,23 +49,23 @@
 typedef enum {
 
   /* 0x01 - 0x82 : defined in other specs */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_SUBTITLING = 0x82,   /* Subtitling data */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_ISOCH_DATA = 0x83,   /* Isochronous data */
+  GST_MPEGTS_STREAM_TYPE_SCTE_SUBTITLING = 0x82,   /* Subtitling data */
+  GST_MPEGTS_STREAM_TYPE_SCTE_ISOCH_DATA = 0x83,   /* Isochronous data */
   /* 0x84 - 0x94 : defined in other specs */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_DST_NRT    = 0x95,   /* DST / NRT data */
+  GST_MPEGTS_STREAM_TYPE_SCTE_DST_NRT    = 0x95,   /* DST / NRT data */
   /* 0x96 - 0xaf : defined in other specs */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_DSMCC_DCB  = 0xb0,   /* Data Carousel Type B */
+  GST_MPEGTS_STREAM_TYPE_SCTE_DSMCC_DCB  = 0xb0,   /* Data Carousel Type B */
   /* 0xb1 - 0xbf : User Private (or defined in other specs) */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_SIGNALING  = 0xc0,   /* EBIF Signaling */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_SYNC_DATA  = 0xc2,   /* Synchronous data */
-  GST_MPEG_TS_STREAM_TYPE_SCTE_ASYNC_DATA = 0xc3,   /* Asynchronous data */
+  GST_MPEGTS_STREAM_TYPE_SCTE_SIGNALING  = 0xc0,   /* EBIF Signaling */
+  GST_MPEGTS_STREAM_TYPE_SCTE_SYNC_DATA  = 0xc2,   /* Synchronous data */
+  GST_MPEGTS_STREAM_TYPE_SCTE_ASYNC_DATA = 0xc3,   /* Asynchronous data */
   /* 0xc4 - 0xff : User Private (or defined in other specs) */
 
-} GstMpegTsScteStreamType;
+} GstMpegtsScteStreamType;
 
 
 /**
- * GstMpegTsSectionSCTETableID:
+ * GstMpegtsSectionSCTETableID:
  * @GST_MTS_TABLE_ID_SCTE_EAS:    SCTE-18 Emergency Alert System
  * @GST_MTS_TABLE_ID_SCTE_EBIF:   CL-SP-ETV-AM 1.0.1 EBIF message
  * @GST_MTS_TABLE_ID_SCTE_EISS:   CL-SP-ETV-AM 1.0.1 EBIF Int. Signaling Sect.
@@ -76,11 +76,11 @@
  * Splice Event notifications to remain associated with the program and pass
  * through multiplexers.
  *
- * Values for a #GstMpegTsSection table_id.
+ * Values for a #GstMpegtsSection table_id.
  *
  * These are the registered SCTE table_id variants.
  *
- * see also: #GstMpegTsSectionTableID
+ * see also: #GstMpegtsSectionTableID
  */
 typedef enum {
 
@@ -95,7 +95,7 @@
   /* 0xe5 - 0xfb : defined in other specs */
   GST_MTS_TABLE_ID_SCTE_SPLICE   = 0xfc,     /* splice information table */
 
-} GstMpegTsSectionSCTETableID;
+} GstMpegtsSectionSCTETableID;
 
 G_END_DECLS
 
diff --git a/gst-libs/gst/mpegts/gstmpegts-private.h b/gst-libs/gst/mpegts/gstmpegts-private.h
index a3e6dc1..16a2cbd 100644
--- a/gst-libs/gst/mpegts/gstmpegts-private.h
+++ b/gst-libs/gst/mpegts/gstmpegts-private.h
@@ -32,20 +32,21 @@
 G_GNUC_INTERNAL void __initialize_descriptors (void);
 G_GNUC_INTERNAL guint32 _calc_crc32 (const guint8 *data, guint datalen);
 G_GNUC_INTERNAL gchar *get_encoding_and_convert (const gchar *text, guint length);
+G_GNUC_INTERNAL gchar *convert_lang_code (guint8 * data);
 G_GNUC_INTERNAL guint8 *dvb_text_from_utf8 (const gchar * text, gsize *out_size);
-G_GNUC_INTERNAL void _free_descriptor (GstMpegTsDescriptor *descriptor);
-G_GNUC_INTERNAL GstMpegTsDescriptor *_new_descriptor (guint8 tag, guint8 length);
-G_GNUC_INTERNAL GstMpegTsDescriptor *_new_descriptor_with_extension (guint8 tag,
+G_GNUC_INTERNAL void _free_descriptor (GstMpegtsDescriptor *descriptor);
+G_GNUC_INTERNAL GstMpegtsDescriptor *_new_descriptor (guint8 tag, guint8 length);
+G_GNUC_INTERNAL GstMpegtsDescriptor *_new_descriptor_with_extension (guint8 tag,
     guint8 tag_extension, guint8 length);
 G_GNUC_INTERNAL void _packetize_descriptor_array (GPtrArray * array,
     guint8 ** out_data);
-G_GNUC_INTERNAL GstMpegTsSection *_gst_mpegts_section_init (guint16 pid, guint8 table_id);
-G_GNUC_INTERNAL void _packetize_common_section (GstMpegTsSection * section, gsize length);
+G_GNUC_INTERNAL GstMpegtsSection *_gst_mpegts_section_init (guint16 pid, guint8 table_id);
+G_GNUC_INTERNAL void _packetize_common_section (GstMpegtsSection * section, gsize length);
 
-typedef gpointer (*GstMpegTsParseFunc) (GstMpegTsSection *section);
-G_GNUC_INTERNAL gpointer __common_section_checks (GstMpegTsSection *section,
+typedef gpointer (*GstMpegtsParseFunc) (GstMpegtsSection *section);
+G_GNUC_INTERNAL gpointer __common_section_checks (GstMpegtsSection *section,
 						  guint minsize,
-						  GstMpegTsParseFunc parsefunc,
+						  GstMpegtsParseFunc parsefunc,
 						  GDestroyNotify destroynotify);
 
 #define __common_desc_check_base(desc, tagtype, retval)			\
diff --git a/gst-libs/gst/mpegts/gstmpegtsdescriptor.c b/gst-libs/gst/mpegts/gstmpegtsdescriptor.c
index 9a89627..6490b73 100644
--- a/gst-libs/gst/mpegts/gstmpegtsdescriptor.c
+++ b/gst-libs/gst/mpegts/gstmpegtsdescriptor.c
@@ -282,7 +282,7 @@
  * @out_size: (out): the byte length of the new text
  *
  * Converts UTF-8 strings to text characters compliant with EN 300 468.
- * The converted text can be used directly in DVB #GstMpegTsDescriptor
+ * The converted text can be used directly in DVB #GstMpegtsDescriptor
  *
  * The function will try different character maps until the string is
  * completely converted.
@@ -622,12 +622,23 @@
   }
 }
 
+gchar *
+convert_lang_code (guint8 * data)
+{
+  gchar *code;
+  /* the iso language code and country code is always 3 byte long */
+  code = g_malloc0 (4);
+  memcpy (code, data, 3);
+
+  return code;
+}
+
 void
 _packetize_descriptor_array (GPtrArray * array, guint8 ** out_data)
 {
   guint i;
   guint8 header_size;
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
 
   g_return_if_fail (out_data != NULL);
   g_return_if_fail (*out_data != NULL);
@@ -648,13 +659,13 @@
   }
 }
 
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 _new_descriptor (guint8 tag, guint8 length)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
   guint8 *data;
 
-  descriptor = g_slice_new (GstMpegTsDescriptor);
+  descriptor = g_slice_new (GstMpegtsDescriptor);
 
   descriptor->tag = tag;
   descriptor->tag_extension = 0;
@@ -670,13 +681,13 @@
   return descriptor;
 }
 
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 _new_descriptor_with_extension (guint8 tag, guint8 tag_extension, guint8 length)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
   guint8 *data;
 
-  descriptor = g_slice_new (GstMpegTsDescriptor);
+  descriptor = g_slice_new (GstMpegtsDescriptor);
 
   descriptor->tag = tag;
   descriptor->tag_extension = tag_extension;
@@ -693,25 +704,25 @@
   return descriptor;
 }
 
-static GstMpegTsDescriptor *
-_copy_descriptor (GstMpegTsDescriptor * desc)
+static GstMpegtsDescriptor *
+_copy_descriptor (GstMpegtsDescriptor * desc)
 {
-  GstMpegTsDescriptor *copy;
+  GstMpegtsDescriptor *copy;
 
-  copy = g_slice_dup (GstMpegTsDescriptor, desc);
+  copy = g_slice_dup (GstMpegtsDescriptor, desc);
   copy->data = g_memdup (desc->data, desc->length + 2);
 
   return copy;
 }
 
 void
-_free_descriptor (GstMpegTsDescriptor * desc)
+_free_descriptor (GstMpegtsDescriptor * desc)
 {
   g_free ((gpointer) desc->data);
-  g_slice_free (GstMpegTsDescriptor, desc);
+  g_slice_free (GstMpegtsDescriptor, desc);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsDescriptor, gst_mpegts_descriptor,
+G_DEFINE_BOXED_TYPE (GstMpegtsDescriptor, gst_mpegts_descriptor,
     (GBoxedCopyFunc) _copy_descriptor, (GBoxedFreeFunc) _free_descriptor);
 
 /**
@@ -724,7 +735,7 @@
  *
  * Note: The data provided in @buffer will not be copied.
  *
- * Returns: (transfer full) (element-type GstMpegTsDescriptor): an
+ * Returns: (transfer full) (element-type GstMpegtsDescriptor): an
  * array of the parsed descriptors or %NULL if there was an error.
  * Release with #g_array_unref when done with it.
  */
@@ -772,7 +783,7 @@
   data = buffer;
 
   for (i = 0; i < nb_desc; i++) {
-    GstMpegTsDescriptor *desc = g_slice_new0 (GstMpegTsDescriptor);
+    GstMpegtsDescriptor *desc = g_slice_new0 (GstMpegtsDescriptor);
 
     desc->data = data;
     desc->tag = *data++;
@@ -798,8 +809,8 @@
 
 /**
  * gst_mpegts_find_descriptor:
- * @descriptors: (element-type GstMpegTsDescriptor) (transfer none): an array
- * of #GstMpegTsDescriptor
+ * @descriptors: (element-type GstMpegtsDescriptor) (transfer none): an array
+ * of #GstMpegtsDescriptor
  * @tag: the tag to look for
  *
  * Finds the first descriptor of type @tag in the array.
@@ -809,7 +820,7 @@
  *
  * Returns: (transfer none): the first descriptor matchin @tag, else %NULL.
  */
-const GstMpegTsDescriptor *
+const GstMpegtsDescriptor *
 gst_mpegts_find_descriptor (GPtrArray * descriptors, guint8 tag)
 {
   guint i, nb_desc;
@@ -818,9 +829,9 @@
 
   nb_desc = descriptors->len;
   for (i = 0; i < nb_desc; i++) {
-    GstMpegTsDescriptor *desc = g_ptr_array_index (descriptors, i);
+    GstMpegtsDescriptor *desc = g_ptr_array_index (descriptors, i);
     if (desc->tag == tag)
-      return (const GstMpegTsDescriptor *) desc;
+      return (const GstMpegtsDescriptor *) desc;
   }
   return NULL;
 }
@@ -832,15 +843,15 @@
  * @additional_info: (transfer none) (allow-none): pointer to optional additional info
  * @additional_info_length: length of the optional @additional_info
  *
- * Creates a %GST_MTS_DESC_REGISTRATION #GstMpegTsDescriptor
+ * Creates a %GST_MTS_DESC_REGISTRATION #GstMpegtsDescriptor
  *
- * Return: #GstMpegTsDescriptor, %NULL on failure
+ * Return: #GstMpegtsDescriptor, %NULL on failure
  */
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 gst_mpegts_descriptor_from_registration (const gchar * format_identifier,
     guint8 * additional_info, gsize additional_info_length)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
 
   g_return_val_if_fail (format_identifier != NULL, NULL);
 
@@ -855,10 +866,43 @@
 }
 
 /* GST_MTS_DESC_ISO_639_LANGUAGE (0x0A) */
+static GstMpegtsISO639LanguageDescriptor *
+_gst_mpegts_iso_639_language_descriptor_copy (GstMpegtsISO639LanguageDescriptor
+    * source)
+{
+  GstMpegtsISO639LanguageDescriptor *copy;
+  guint i;
+
+  copy = g_slice_dup (GstMpegtsISO639LanguageDescriptor, source);
+
+  for (i = 0; i < source->nb_language; i++) {
+    copy->language[i] = g_strdup (source->language[i]);
+  }
+
+  return copy;
+}
+
+void
+gst_mpegts_iso_639_language_descriptor_free (GstMpegtsISO639LanguageDescriptor
+    * desc)
+{
+  guint i;
+
+  for (i = 0; i < desc->nb_language; i++) {
+    g_free (desc->language[i]);
+  }
+  g_slice_free (GstMpegtsISO639LanguageDescriptor, desc);
+}
+
+G_DEFINE_BOXED_TYPE (GstMpegtsISO639LanguageDescriptor,
+    gst_mpegts_iso_639_language,
+    (GBoxedCopyFunc) _gst_mpegts_iso_639_language_descriptor_copy,
+    (GFreeFunc) gst_mpegts_iso_639_language_descriptor_free);
+
 /**
  * gst_mpegts_descriptor_parse_iso_639_language:
- * @descriptor: a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsISO639LanguageDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor
+ * @res: (out) (transfer full): the #GstMpegtsISO639LanguageDescriptor to fill
  *
  * Extracts the iso 639-2 language information from @descriptor.
  *
@@ -868,34 +912,41 @@
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_iso_639_language (const GstMpegTsDescriptor *
-    descriptor, GstMpegTsISO639LanguageDescriptor * res)
+gst_mpegts_descriptor_parse_iso_639_language (const GstMpegtsDescriptor *
+    descriptor, GstMpegtsISO639LanguageDescriptor ** desc)
 {
   guint i;
   guint8 *data;
+  GstMpegtsISO639LanguageDescriptor *res;
 
-  g_return_val_if_fail (descriptor != NULL && res != NULL, FALSE);
+  g_return_val_if_fail (descriptor != NULL && desc != NULL, FALSE);
   /* This descriptor can be empty, no size check needed */
   __common_desc_checks (descriptor, GST_MTS_DESC_ISO_639_LANGUAGE, 0, FALSE);
 
   data = (guint8 *) descriptor->data + 2;
+
+  res = g_slice_new0 (GstMpegtsISO639LanguageDescriptor);
+
   /* Each language is 3 + 1 bytes */
   res->nb_language = descriptor->length / 4;
   for (i = 0; i < res->nb_language; i++) {
-    memcpy (res->language[i], data, 3);
+    res->language[i] = convert_lang_code (data);
     res->audio_type[i] = data[3];
     data += 4;
   }
+
+  *desc = res;
+
   return TRUE;
 
 }
 
 /**
  * gst_mpegts_descriptor_parse_iso_639_language_idx:
- * @descriptor: a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor
  * @idx: Table id of the language to parse
- * @lang: (out) (transfer none): 4-byte gchar array to hold the language code
- * @audio_type: (out) (transfer none) (allow-none): the #GstMpegTsIso639AudioType to set
+ * @lang: (out) (transfer full): 4-byte gchar array to hold the language code
+ * @audio_type: (out) (transfer none) (allow-none): the #GstMpegtsIso639AudioType to set
  *
  * Extracts the iso 639-2 language information from specific table id in @descriptor.
  *
@@ -905,9 +956,8 @@
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_iso_639_language_idx (const GstMpegTsDescriptor *
-    descriptor, guint idx, gchar (*lang)[4],
-    GstMpegTsIso639AudioType * audio_type)
+gst_mpegts_descriptor_parse_iso_639_language_idx (const GstMpegtsDescriptor *
+    descriptor, guint idx, gchar ** lang, GstMpegtsIso639AudioType * audio_type)
 {
   guint8 *data;
 
@@ -920,8 +970,7 @@
 
   data = (guint8 *) descriptor->data + 2 + idx * 4;
 
-  memcpy (lang, data, 3);
-  (*lang)[3] = 0;
+  *lang = convert_lang_code (data);
 
   data += 3;
 
@@ -933,12 +982,12 @@
 
 /**
  * gst_mpegts_descriptor_parse_iso_639_language_nb:
- * @descriptor: a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegTsDescriptor
+ * @descriptor: a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor
  *
  * Returns: The number of languages in @descriptor
  */
 guint
-gst_mpegts_descriptor_parse_iso_639_language_nb (const GstMpegTsDescriptor *
+gst_mpegts_descriptor_parse_iso_639_language_nb (const GstMpegtsDescriptor *
     descriptor)
 {
   g_return_val_if_fail (descriptor != NULL, 0);
@@ -950,16 +999,16 @@
 
 /**
  * gst_mpegts_descriptor_parse_logical_channel:
- * @descriptor: a %GST_MTS_DESC_DTG_LOGICAL_CHANNEL #GstMpegTsDescriptor
- * @res: (out) (transfer none): the #GstMpegTsLogicalChannelDescriptor to fill
+ * @descriptor: a %GST_MTS_DESC_DTG_LOGICAL_CHANNEL #GstMpegtsDescriptor
+ * @res: (out) (transfer none): the #GstMpegtsLogicalChannelDescriptor to fill
  *
  * Extracts the logical channels from @descriptor.
  *
  * Returns: %TRUE if parsing succeeded, else %FALSE.
  */
 gboolean
-gst_mpegts_descriptor_parse_logical_channel (const GstMpegTsDescriptor *
-    descriptor, GstMpegTsLogicalChannelDescriptor * res)
+gst_mpegts_descriptor_parse_logical_channel (const GstMpegtsDescriptor *
+    descriptor, GstMpegtsLogicalChannelDescriptor * res)
 {
   guint i;
   guint8 *data;
@@ -969,6 +1018,7 @@
   __common_desc_checks (descriptor, GST_MTS_DESC_DTG_LOGICAL_CHANNEL, 0, FALSE);
 
   data = (guint8 *) descriptor->data + 2;
+
   res->nb_channels = descriptor->length / 4;
 
   for (i = 0; i < res->nb_channels; i++) {
@@ -989,15 +1039,15 @@
  * @data: (transfer none): descriptor data (after tag and length field)
  * @length: length of @data
  *
- * Creates a #GstMpegTsDescriptor with custom @tag and @data
+ * Creates a #GstMpegtsDescriptor with custom @tag and @data
  *
- * Returns: #GstMpegTsDescriptor
+ * Returns: #GstMpegtsDescriptor
  */
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 gst_mpegts_descriptor_from_custom (guint8 tag, const guint8 * data,
     gsize length)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
 
   descriptor = _new_descriptor (tag, length);
 
diff --git a/gst-libs/gst/mpegts/gstmpegtsdescriptor.h b/gst-libs/gst/mpegts/gstmpegtsdescriptor.h
index 7c36788..5c6b1e1 100644
--- a/gst-libs/gst/mpegts/gstmpegtsdescriptor.h
+++ b/gst-libs/gst/mpegts/gstmpegtsdescriptor.h
@@ -62,9 +62,9 @@
  */
 
 /**
- * GstMpegTsDescriptorType:
+ * GstMpegtsDescriptorType:
  *
- * The type of #GstMpegTsDescriptor
+ * The type of #GstMpegtsDescriptor
  *
  * These values correspond to the registered descriptor type from
  * the base MPEG-TS specifications (ITU H.222.0 | ISO/IEC 13818-1).
@@ -135,12 +135,12 @@
   GST_MTS_DESC_STEREOSCOPIC_VIDEO_INFO          = 0x36,
 
   /* 55-63 ITU-T Rec. H.222.0 | ISO/IEC 13818-1 Reserved */
-} GstMpegTsDescriptorType;
+} GstMpegtsDescriptorType;
 
 /**
- * GstMpegTsMiscDescriptorType:
+ * GstMpegtsMiscDescriptorType:
  *
- * The type of #GstMpegTsDescriptor
+ * The type of #GstMpegtsDescriptor
  *
  * These values correspond to miscellaneous descriptor types that are
  * not yet identified from known specifications.
@@ -149,10 +149,10 @@
   /* 0x80 - 0xFE are user defined */
   GST_MTS_DESC_AC3_AUDIO_STREAM                 = 0x81,
   GST_MTS_DESC_DTG_LOGICAL_CHANNEL              = 0x83,    /* from DTG D-Book */
-} GstMpegTsMiscDescriptorType;
+} GstMpegtsMiscDescriptorType;
 
 /**
- * GstMpegTsATSCDescriptorType:
+ * GstMpegtsATSCDescriptorType:
  *
  * These values correspond to the registered descriptor type from
  * the various ATSC specifications.
@@ -186,10 +186,10 @@
   GST_MTS_DESC_ATSC_MODULE_LINK                 = 0xB4,
   GST_MTS_DESC_ATSC_CRC32                       = 0xB5,
   GST_MTS_DESC_ATSC_GROUP_LINK                  = 0xB8,
-} GstMpegTsATSCDescriptorType;
+} GstMpegtsATSCDescriptorType;
 
 /**
- * GstMpegTsISDBDescriptorType:
+ * GstMpegtsISDBDescriptorType:
  *
  * These values correspond to the registered descriptor type from
  * the various ISDB specifications.
@@ -232,15 +232,15 @@
   /* ... */
   GST_MTS_DESC_ISDB_SERVICE_GROUP               = 0xe0
   
-} GstMpegTsISDBDescriptorType;
+} GstMpegtsISDBDescriptorType;
 
-typedef struct _GstMpegTsDescriptor GstMpegTsDescriptor;
+typedef struct _GstMpegtsDescriptor GstMpegtsDescriptor;
 
 #define GST_TYPE_MPEGTS_DESCRIPTOR (gst_mpegts_descriptor_get_type())
 GType gst_mpegts_descriptor_get_type (void);
 
 /**
- * GstMpegTsDescriptor:
+ * GstMpegtsDescriptor:
  * @tag: the type of descriptor
  * @tag_extension: the extended type (if @descriptor_tag is 0x7f)
  * @length: the length of the descriptor content (excluding tag/length field)
@@ -249,7 +249,7 @@
  *
  * Mpeg-TS descriptor (ISO/IEC 13818-1).
  */
-struct _GstMpegTsDescriptor
+struct _GstMpegtsDescriptor
 {
   guint8 tag;
   guint8 tag_extension;
@@ -259,18 +259,18 @@
 
 GPtrArray *gst_mpegts_parse_descriptors (guint8 * buffer, gsize buf_len);
 
-const GstMpegTsDescriptor * gst_mpegts_find_descriptor (GPtrArray *descriptors,
+const GstMpegtsDescriptor * gst_mpegts_find_descriptor (GPtrArray *descriptors,
 							guint8 tag);
 
 /* GST_MTS_DESC_REGISTRATION (0x05) */
 
-GstMpegTsDescriptor *gst_mpegts_descriptor_from_registration (
+GstMpegtsDescriptor *gst_mpegts_descriptor_from_registration (
     const gchar *format_identifier,
     guint8 *additional_info, gsize additional_info_length);
 
 /* GST_MTS_DESC_ISO_639_LANGUAGE (0x0A) */
 /**
- * GstMpegTsISO639AudioType:
+ * GstMpegtsISO639AudioType:
  *
  * Type of audio streams
  *
@@ -281,49 +281,52 @@
   GST_MPEGTS_AUDIO_TYPE_CLEAN_EFFECTS,
   GST_MPEGTS_AUDIO_TYPE_HEARING_IMPAIRED,
   GST_MPEGTS_AUDIO_TYPE_VISUAL_IMPAIRED_COMMENTARY
-} GstMpegTsIso639AudioType;
+} GstMpegtsIso639AudioType;
 
-typedef struct _GstMpegTsISO639LanguageDescriptor GstMpegTsISO639LanguageDescriptor;
-struct _GstMpegTsISO639LanguageDescriptor
+typedef struct _GstMpegtsISO639LanguageDescriptor GstMpegtsISO639LanguageDescriptor;
+struct _GstMpegtsISO639LanguageDescriptor
 {
   guint                    nb_language;
-  gchar                    language[64][3];
-  GstMpegTsIso639AudioType audio_type[64];
+  gchar                    *language[64];
+  GstMpegtsIso639AudioType audio_type[64];
 };
 
-gboolean gst_mpegts_descriptor_parse_iso_639_language (const GstMpegTsDescriptor *descriptor,
-						       GstMpegTsISO639LanguageDescriptor *res);
-gboolean gst_mpegts_descriptor_parse_iso_639_language_idx (const GstMpegTsDescriptor *descriptor,
-                                                           guint idx, gchar (*lang)[4],
-                                                           GstMpegTsIso639AudioType *audio_type);
-guint gst_mpegts_descriptor_parse_iso_639_language_nb (const GstMpegTsDescriptor *descriptor);
+#define GST_TYPE_MPEGTS_ISO_639_LANGUAGE (gst_mpegts_iso_639_language_get_type ())
+GType gst_mpegts_iso_639_language_get_type (void);
+void gst_mpegts_iso_639_language_descriptor_free (GstMpegtsISO639LanguageDescriptor * desc);
+gboolean gst_mpegts_descriptor_parse_iso_639_language (const GstMpegtsDescriptor *descriptor,
+						       GstMpegtsISO639LanguageDescriptor **res);
+gboolean gst_mpegts_descriptor_parse_iso_639_language_idx (const GstMpegtsDescriptor *descriptor,
+                                                           guint idx, gchar **lang,
+                                                           GstMpegtsIso639AudioType *audio_type);
+guint gst_mpegts_descriptor_parse_iso_639_language_nb (const GstMpegtsDescriptor *descriptor);
 
 
 
 /* GST_MTS_DESC_DTG_LOGICAL_CHANNEL (0x83) */
-typedef struct _GstMpegTsLogicalChannelDescriptor GstMpegTsLogicalChannelDescriptor;
-typedef struct _GstMpegTsLogicalChannel GstMpegTsLogicalChannel;
+typedef struct _GstMpegtsLogicalChannelDescriptor GstMpegtsLogicalChannelDescriptor;
+typedef struct _GstMpegtsLogicalChannel GstMpegtsLogicalChannel;
 
-struct _GstMpegTsLogicalChannel
+struct _GstMpegtsLogicalChannel
 {
   guint16   service_id;
   gboolean  visible_service;
   guint16   logical_channel_number;
 };
 
-struct _GstMpegTsLogicalChannelDescriptor
+struct _GstMpegtsLogicalChannelDescriptor
 {
   guint                   nb_channels;
-  GstMpegTsLogicalChannel channels[64];
+  GstMpegtsLogicalChannel channels[64];
 };
 
 /* FIXME : Maybe make two methods. One for getting the number of channels,
  * and the other for getting the content for one channel ? */
 gboolean
-gst_mpegts_descriptor_parse_logical_channel (const GstMpegTsDescriptor *descriptor,
-					     GstMpegTsLogicalChannelDescriptor *res);
+gst_mpegts_descriptor_parse_logical_channel (const GstMpegtsDescriptor *descriptor,
+					     GstMpegtsLogicalChannelDescriptor *res);
 
-GstMpegTsDescriptor *
+GstMpegtsDescriptor *
 gst_mpegts_descriptor_from_custom (guint8 tag, const guint8 *data, gsize length);
 
 G_END_DECLS
diff --git a/gst-libs/gst/mpegts/gstmpegtssection.c b/gst-libs/gst/mpegts/gstmpegtssection.c
index 5167a39..362d329 100644
--- a/gst-libs/gst/mpegts/gstmpegtssection.c
+++ b/gst-libs/gst/mpegts/gstmpegtssection.c
@@ -79,7 +79,7 @@
 
 static GType _gst_mpegts_section_type = 0;
 #define MPEG_TYPE_TS_SECTION (_gst_mpegts_section_type)
-GST_DEFINE_MINI_OBJECT_TYPE (GstMpegTsSection, gst_mpegts_section);
+GST_DEFINE_MINI_OBJECT_TYPE (GstMpegtsSection, gst_mpegts_section);
 
 static const guint32 crc_tab[256] = {
   0x00000000, 0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b,
@@ -141,8 +141,8 @@
 }
 
 gpointer
-__common_section_checks (GstMpegTsSection * section, guint min_size,
-    GstMpegTsParseFunc parsefunc, GDestroyNotify destroynotify)
+__common_section_checks (GstMpegtsSection * section, guint min_size,
+    GstMpegtsParseFunc parsefunc, GDestroyNotify destroynotify)
 {
   gpointer res;
 
@@ -177,7 +177,7 @@
  * GENERIC MPEG-TS SECTION
  */
 static void
-_gst_mpegts_section_free (GstMpegTsSection * section)
+_gst_mpegts_section_free (GstMpegtsSection * section)
 {
   GST_DEBUG ("Freeing section type %d", section->section_type);
 
@@ -187,15 +187,15 @@
   if (section->data)
     g_free (section->data);
 
-  g_slice_free (GstMpegTsSection, section);
+  g_slice_free (GstMpegtsSection, section);
 }
 
-static GstMpegTsSection *
-_gst_mpegts_section_copy (GstMpegTsSection * section)
+static GstMpegtsSection *
+_gst_mpegts_section_copy (GstMpegtsSection * section)
 {
-  GstMpegTsSection *copy;
+  GstMpegtsSection *copy;
 
-  copy = g_slice_new0 (GstMpegTsSection);
+  copy = g_slice_new0 (GstMpegtsSection);
   gst_mini_object_init (GST_MINI_OBJECT_CAST (copy), 0, MPEG_TYPE_TS_SECTION,
       (GstMiniObjectCopyFunction) _gst_mpegts_section_copy, NULL,
       (GstMiniObjectFreeFunction) _gst_mpegts_section_free);
@@ -223,14 +223,14 @@
 
 /**
  * gst_mpegts_section_get_data:
- * @section: a #GstMpegTsSection
+ * @section: a #GstMpegtsSection
  *
  * Gets the original unparsed section data.
  *
  * Returns: (transfer full): The original unparsed section data.
  */
 GBytes *
-gst_mpegts_section_get_data (GstMpegTsSection * section)
+gst_mpegts_section_get_data (GstMpegtsSection * section)
 {
   return g_bytes_new (section->data, section->section_length);
 }
@@ -239,15 +239,15 @@
  * gst_message_parse_mpegts_section:
  * @message: a #GstMessage
  *
- * Returns the #GstMpegTsSection contained in a message.
+ * Returns the #GstMpegtsSection contained in a message.
  *
- * Returns: (transfer full): the contained #GstMpegTsSection, or %NULL.
+ * Returns: (transfer full): the contained #GstMpegtsSection, or %NULL.
  */
-GstMpegTsSection *
+GstMpegtsSection *
 gst_message_parse_mpegts_section (GstMessage * message)
 {
   const GstStructure *st;
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
   if (message->type != GST_MESSAGE_ELEMENT)
     return NULL;
@@ -262,7 +262,7 @@
 }
 
 static GstStructure *
-_mpegts_section_get_structure (GstMpegTsSection * section)
+_mpegts_section_get_structure (GstMpegtsSection * section)
 {
   GstStructure *st;
   GQuark quark;
@@ -296,7 +296,7 @@
       quark = QUARK_TOT;
       break;
     default:
-      GST_DEBUG ("Creating structure for unknown GstMpegTsSection");
+      GST_DEBUG ("Creating structure for unknown GstMpegtsSection");
       quark = QUARK_SECTION;
       break;
   }
@@ -310,15 +310,15 @@
 /**
  * gst_message_new_mpegts_section:
  * @parent: (transfer none): The creator of the message
- * @section: (transfer none): The #GstMpegTsSection to put in a message
+ * @section: (transfer none): The #GstMpegtsSection to put in a message
  *
- * Creates a new #GstMessage for a @GstMpegTsSection.
+ * Creates a new #GstMessage for a @GstMpegtsSection.
  *
  * Returns: (transfer full): The new #GstMessage to be posted, or %NULL if the
  * section is not valid.
  */
 GstMessage *
-gst_message_new_mpegts_section (GstObject * parent, GstMpegTsSection * section)
+gst_message_new_mpegts_section (GstObject * parent, GstMpegtsSection * section)
 {
   GstMessage *msg;
   GstStructure *st;
@@ -331,7 +331,7 @@
 }
 
 static GstEvent *
-_mpegts_section_get_event (GstMpegTsSection * section)
+_mpegts_section_get_event (GstMpegtsSection * section)
 {
   GstStructure *structure;
   GstEvent *event;
@@ -345,17 +345,17 @@
 
 /**
  * gst_event_parse_mpegts_section:
- * @event: (transfer none): #GstEvent containing a #GstMpegTsSection
+ * @event: (transfer none): #GstEvent containing a #GstMpegtsSection
  *
- * Extracts the #GstMpegTsSection contained in the @event #GstEvent
+ * Extracts the #GstMpegtsSection contained in the @event #GstEvent
  *
- * Returns: (transfer full): The extracted #GstMpegTsSection
+ * Returns: (transfer full): The extracted #GstMpegtsSection
  */
-GstMpegTsSection *
+GstMpegtsSection *
 gst_event_parse_mpegts_section (GstEvent * event)
 {
   const GstStructure *structure;
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
   structure = gst_event_get_structure (event);
 
@@ -369,15 +369,15 @@
 /**
  * gst_mpegts_section_send_event:
  * @element: (transfer none): The #GstElement to send to section event to
- * @section: (transfer none): The #GstMpegTsSection to put in the event
+ * @section: (transfer none): The #GstMpegtsSection to put in the event
  *
- * Creates a custom #GstEvent with a @GstMpegTsSection.
+ * Creates a custom #GstEvent with a @GstMpegtsSection.
  * The #GstEvent is sent to the @element #GstElement.
  *
  * Returns: %TRUE if the event is sent
  */
 gboolean
-gst_mpegts_section_send_event (GstMpegTsSection * section, GstElement * element)
+gst_mpegts_section_send_event (GstMpegtsSection * section, GstElement * element)
 {
   GstEvent *event;
 
@@ -394,29 +394,29 @@
   return TRUE;
 }
 
-static GstMpegTsPatProgram *
-_mpegts_pat_program_copy (GstMpegTsPatProgram * orig)
+static GstMpegtsPatProgram *
+_mpegts_pat_program_copy (GstMpegtsPatProgram * orig)
 {
-  return g_slice_dup (GstMpegTsPatProgram, orig);
+  return g_slice_dup (GstMpegtsPatProgram, orig);
 }
 
 static void
-_mpegts_pat_program_free (GstMpegTsPatProgram * orig)
+_mpegts_pat_program_free (GstMpegtsPatProgram * orig)
 {
-  g_slice_free (GstMpegTsPatProgram, orig);
+  g_slice_free (GstMpegtsPatProgram, orig);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsPatProgram, gst_mpegts_pat_program,
+G_DEFINE_BOXED_TYPE (GstMpegtsPatProgram, gst_mpegts_pat_program,
     (GBoxedCopyFunc) _mpegts_pat_program_copy,
     (GFreeFunc) _mpegts_pat_program_free);
 
 /* Program Association Table */
 static gpointer
-_parse_pat (GstMpegTsSection * section)
+_parse_pat (GstMpegtsSection * section)
 {
   GPtrArray *pat;
   guint16 i = 0, nb_programs;
-  GstMpegTsPatProgram *program;
+  GstMpegtsPatProgram *program;
   guint8 *data, *end;
 
   /* Skip already parsed data */
@@ -432,7 +432,7 @@
       (GDestroyNotify) _mpegts_pat_program_free);
 
   while (data < end - 4) {
-    program = g_slice_new0 (GstMpegTsPatProgram);
+    program = g_slice_new0 (GstMpegtsPatProgram);
     program->program_number = GST_READ_UINT16_BE (data);
     data += 2;
 
@@ -457,21 +457,21 @@
 
 /**
  * gst_mpegts_section_get_pat:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_PAT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_PAT
  *
  * Parses a Program Association Table (ITU H.222.0, ISO/IEC 13818-1).
  *
- * Returns the array of #GstMpegTsPatProgram contained in the section.
+ * Returns the array of #GstMpegtsPatProgram contained in the section.
  *
  * Note: The PAT "transport_id" field corresponds to the "subtable_extension"
  * field of the provided @section.
  *
- * Returns: (transfer container) (element-type GstMpegTsPatProgram): The
- * #GstMpegTsPatProgram contained in the section, or %NULL if an error
+ * Returns: (transfer container) (element-type GstMpegtsPatProgram): The
+ * #GstMpegtsPatProgram contained in the section, or %NULL if an error
  * happened. Release with #g_ptr_array_unref when done.
  */
 GPtrArray *
-gst_mpegts_section_get_pat (GstMpegTsSection * section)
+gst_mpegts_section_get_pat (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_PAT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -489,9 +489,9 @@
 /**
  * gst_mpegts_pat_new:
  *
- * Allocates a new #GPtrArray for #GstMpegTsPatProgram
+ * Allocates a new #GPtrArray for #GstMpegtsPatProgram
  *
- * Returns: (transfer full) (element-type GstMpegTsPatProgram): A newly allocated #GPtrArray
+ * Returns: (transfer full) (element-type GstMpegtsPatProgram): A newly allocated #GPtrArray
  */
 GPtrArray *
 gst_mpegts_pat_new (void)
@@ -507,22 +507,22 @@
 /**
  * gst_mpegts_pat_program_new:
  *
- * Allocates a new #GstMpegTsPatProgram.
+ * Allocates a new #GstMpegtsPatProgram.
  *
- * Returns: (transfer full): A newly allocated #GstMpegTsPatProgram
+ * Returns: (transfer full): A newly allocated #GstMpegtsPatProgram
  */
-GstMpegTsPatProgram *
+GstMpegtsPatProgram *
 gst_mpegts_pat_program_new (void)
 {
-  GstMpegTsPatProgram *program;
+  GstMpegtsPatProgram *program;
 
-  program = g_slice_new0 (GstMpegTsPatProgram);
+  program = g_slice_new0 (GstMpegtsPatProgram);
 
   return program;
 }
 
 static gboolean
-_packetize_pat (GstMpegTsSection * section)
+_packetize_pat (GstMpegtsSection * section)
 {
   GPtrArray *programs;
   guint8 *data;
@@ -546,7 +546,7 @@
   data = section->data + 8;
 
   for (i = 0; i < programs->len; i++) {
-    GstMpegTsPatProgram *program;
+    GstMpegtsPatProgram *program;
 
     program = g_ptr_array_index (programs, i);
 
@@ -567,17 +567,17 @@
 
 /**
  * gst_mpegts_section_from_pat:
- * @programs: (transfer full) (element-type GstMpegTsPatProgram): an array of #GstMpegTsPatProgram
+ * @programs: (transfer full) (element-type GstMpegtsPatProgram): an array of #GstMpegtsPatProgram
  * @ts_id: Transport stream ID of the PAT
  *
- * Creates a PAT #GstMpegTsSection from the @programs array of #GstMpegTsPatPrograms
+ * Creates a PAT #GstMpegtsSection from the @programs array of #GstMpegtsPatPrograms
  *
- * Returns: (transfer full): a #GstMpegTsSection
+ * Returns: (transfer full): a #GstMpegtsSection
  */
-GstMpegTsSection *
+GstMpegtsSection *
 gst_mpegts_section_from_pat (GPtrArray * programs, guint16 ts_id)
 {
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
   section = _gst_mpegts_section_init (0x00,
       GST_MTS_TABLE_ID_PROGRAM_ASSOCIATION);
@@ -592,35 +592,35 @@
 
 /* Program Map Table */
 
-static GstMpegTsPMTStream *
-_gst_mpegts_pmt_stream_copy (GstMpegTsPMTStream * pmt)
+static GstMpegtsPMTStream *
+_gst_mpegts_pmt_stream_copy (GstMpegtsPMTStream * pmt)
 {
-  GstMpegTsPMTStream *copy;
+  GstMpegtsPMTStream *copy;
 
-  copy = g_slice_dup (GstMpegTsPMTStream, pmt);
+  copy = g_slice_dup (GstMpegtsPMTStream, pmt);
   copy->descriptors = g_ptr_array_ref (pmt->descriptors);
 
   return copy;
 }
 
 static void
-_gst_mpegts_pmt_stream_free (GstMpegTsPMTStream * pmt)
+_gst_mpegts_pmt_stream_free (GstMpegtsPMTStream * pmt)
 {
   if (pmt->descriptors)
     g_ptr_array_unref (pmt->descriptors);
-  g_slice_free (GstMpegTsPMTStream, pmt);
+  g_slice_free (GstMpegtsPMTStream, pmt);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsPMTStream, gst_mpegts_pmt_stream,
+G_DEFINE_BOXED_TYPE (GstMpegtsPMTStream, gst_mpegts_pmt_stream,
     (GBoxedCopyFunc) _gst_mpegts_pmt_stream_copy,
     (GFreeFunc) _gst_mpegts_pmt_stream_free);
 
-static GstMpegTsPMT *
-_gst_mpegts_pmt_copy (GstMpegTsPMT * pmt)
+static GstMpegtsPMT *
+_gst_mpegts_pmt_copy (GstMpegtsPMT * pmt)
 {
-  GstMpegTsPMT *copy;
+  GstMpegtsPMT *copy;
 
-  copy = g_slice_dup (GstMpegTsPMT, pmt);
+  copy = g_slice_dup (GstMpegtsPMT, pmt);
   if (pmt->descriptors)
     copy->descriptors = g_ptr_array_ref (pmt->descriptors);
   copy->streams = g_ptr_array_ref (pmt->streams);
@@ -629,28 +629,28 @@
 }
 
 static void
-_gst_mpegts_pmt_free (GstMpegTsPMT * pmt)
+_gst_mpegts_pmt_free (GstMpegtsPMT * pmt)
 {
   if (pmt->descriptors)
     g_ptr_array_unref (pmt->descriptors);
   g_ptr_array_unref (pmt->streams);
-  g_slice_free (GstMpegTsPMT, pmt);
+  g_slice_free (GstMpegtsPMT, pmt);
 }
 
-G_DEFINE_BOXED_TYPE (GstMpegTsPMT, gst_mpegts_pmt,
+G_DEFINE_BOXED_TYPE (GstMpegtsPMT, gst_mpegts_pmt,
     (GBoxedCopyFunc) _gst_mpegts_pmt_copy, (GFreeFunc) _gst_mpegts_pmt_free);
 
 
 static gpointer
-_parse_pmt (GstMpegTsSection * section)
+_parse_pmt (GstMpegtsSection * section)
 {
-  GstMpegTsPMT *pmt = NULL;
+  GstMpegtsPMT *pmt = NULL;
   guint i = 0, allocated_streams = 8;
   guint8 *data, *end;
   guint program_info_length;
   guint stream_info_length;
 
-  pmt = g_slice_new0 (GstMpegTsPMT);
+  pmt = g_slice_new0 (GstMpegtsPMT);
 
   data = section->data;
   end = data + section->section_length;
@@ -687,7 +687,7 @@
   /* parse entries, cycle until there's space for another entry (at least 5
    * bytes) plus the CRC */
   while (data <= end - 4 - 5) {
-    GstMpegTsPMTStream *stream = g_slice_new0 (GstMpegTsPMTStream);
+    GstMpegtsPMTStream *stream = g_slice_new0 (GstMpegtsPMTStream);
 
     g_ptr_array_add (pmt->streams, stream);
 
@@ -728,15 +728,15 @@
 
 /**
  * gst_mpegts_section_get_pmt:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_PMT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_PMT
  *
- * Returns the #GstMpegTsPMT contained in the @section.
+ * Returns the #GstMpegtsPMT contained in the @section.
  *
- * Returns: The #GstMpegTsPMT contained in the section, or %NULL if an error
+ * Returns: The #GstMpegtsPMT contained in the section, or %NULL if an error
  * happened.
  */
-const GstMpegTsPMT *
-gst_mpegts_section_get_pmt (GstMpegTsSection * section)
+const GstMpegtsPMT *
+gst_mpegts_section_get_pmt (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_PMT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -746,22 +746,22 @@
         __common_section_checks (section, 16, _parse_pmt,
         (GDestroyNotify) _gst_mpegts_pmt_free);
 
-  return (const GstMpegTsPMT *) section->cached_parsed;
+  return (const GstMpegtsPMT *) section->cached_parsed;
 }
 
 /**
  * gst_mpegts_pmt_new:
  *
- * Allocates and initializes a new #GstMpegTsPMT.
+ * Allocates and initializes a new #GstMpegtsPMT.
  *
- * Returns: (transfer full): #GstMpegTsPMT
+ * Returns: (transfer full): #GstMpegtsPMT
  */
-GstMpegTsPMT *
+GstMpegtsPMT *
 gst_mpegts_pmt_new (void)
 {
-  GstMpegTsPMT *pmt;
+  GstMpegtsPMT *pmt;
 
-  pmt = g_slice_new0 (GstMpegTsPMT);
+  pmt = g_slice_new0 (GstMpegtsPMT);
 
   pmt->descriptors =
       g_ptr_array_new_with_free_func ((GDestroyNotify) _free_descriptor);
@@ -774,16 +774,16 @@
 /**
  * gst_mpegts_pmt_stream_new:
  *
- * Allocates and initializes a new #GstMpegTsPMTStream.
+ * Allocates and initializes a new #GstMpegtsPMTStream.
  *
- * Returns: (transfer full): #GstMpegTsPMTStream
+ * Returns: (transfer full): #GstMpegtsPMTStream
  */
-GstMpegTsPMTStream *
+GstMpegtsPMTStream *
 gst_mpegts_pmt_stream_new (void)
 {
-  GstMpegTsPMTStream *stream;
+  GstMpegtsPMTStream *stream;
 
-  stream = g_slice_new0 (GstMpegTsPMTStream);
+  stream = g_slice_new0 (GstMpegtsPMTStream);
 
   stream->descriptors =
       g_ptr_array_new_with_free_func ((GDestroyNotify) _free_descriptor);
@@ -792,11 +792,11 @@
 }
 
 static gboolean
-_packetize_pmt (GstMpegTsSection * section)
+_packetize_pmt (GstMpegtsSection * section)
 {
-  const GstMpegTsPMT *pmt;
-  GstMpegTsPMTStream *stream;
-  GstMpegTsDescriptor *descriptor;
+  const GstMpegtsPMT *pmt;
+  GstMpegtsPMTStream *stream;
+  GstMpegtsDescriptor *descriptor;
   gsize length, pgm_info_length, stream_length;
   guint8 *data;
   guint i, j;
@@ -887,17 +887,17 @@
 
 /**
  * gst_mpegts_section_from_pmt:
- * @pmt: (transfer full): a #GstMpegTsPMT to create a #GstMpegTsSection from
- * @pid: The PID that the #GstMpegTsPMT belongs to
+ * @pmt: (transfer full): a #GstMpegtsPMT to create a #GstMpegtsSection from
+ * @pid: The PID that the #GstMpegtsPMT belongs to
  *
- * Creates a #GstMpegTsSection from @pmt that is bound to @pid
+ * Creates a #GstMpegtsSection from @pmt that is bound to @pid
  *
- * Returns: (transfer full): #GstMpegTsSection
+ * Returns: (transfer full): #GstMpegtsSection
  */
-GstMpegTsSection *
-gst_mpegts_section_from_pmt (GstMpegTsPMT * pmt, guint16 pid)
+GstMpegtsSection *
+gst_mpegts_section_from_pmt (GstMpegtsPMT * pmt, guint16 pid)
 {
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
   g_return_val_if_fail (pmt != NULL, NULL);
 
@@ -913,7 +913,7 @@
 
 /* Conditional Access Table */
 static gpointer
-_parse_cat (GstMpegTsSection * section)
+_parse_cat (GstMpegtsSection * section)
 {
   guint8 *data;
   guint desc_len;
@@ -928,17 +928,17 @@
 
 /**
  * gst_mpegts_section_get_cat:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_CAT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_CAT
  *
- * Returns the array of #GstMpegTsDescriptor contained in the Condtional
+ * Returns the array of #GstMpegtsDescriptor contained in the Condtional
  * Access Table.
  *
- * Returns: (transfer container) (element-type GstMpegTsDescriptor): The
- * #GstMpegTsDescriptor contained in the section, or %NULL if an error
+ * Returns: (transfer container) (element-type GstMpegtsDescriptor): The
+ * #GstMpegtsDescriptor contained in the section, or %NULL if an error
  * happened. Release with #g_array_unref when done.
  */
 GPtrArray *
-gst_mpegts_section_get_cat (GstMpegTsSection * section)
+gst_mpegts_section_get_cat (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_CAT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -956,16 +956,16 @@
 /* Transport Stream Description Table (TSDT) */
 /**
  * gst_mpegts_section_get_tsdt:
- * @section: a #GstMpegTsSection of type %GST_MPEGTS_SECTION_TSDT
+ * @section: a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TSDT
  *
- * Returns the array of #GstMpegTsDescriptor contained in the section
+ * Returns the array of #GstMpegtsDescriptor contained in the section
  *
- * Returns: (transfer container) (element-type GstMpegTsDescriptor): The
- * #GstMpegTsDescriptor contained in the section, or %NULL if an error
+ * Returns: (transfer container) (element-type GstMpegtsDescriptor): The
+ * #GstMpegtsDescriptor contained in the section, or %NULL if an error
  * happened. Release with #g_array_unref when done.
  */
 GPtrArray *
-gst_mpegts_section_get_tsdt (GstMpegTsSection * section)
+gst_mpegts_section_get_tsdt (GstMpegtsSection * section)
 {
   g_return_val_if_fail (section->section_type == GST_MPEGTS_SECTION_TSDT, NULL);
   g_return_val_if_fail (section->cached_parsed || section->data, NULL);
@@ -1012,7 +1012,7 @@
 
 /* FIXME : Later on we might need to use more than just the table_id
  * to figure out which type of section this is. */
-static GstMpegTsSectionType
+static GstMpegtsSectionType
 _identify_section (guint16 pid, guint8 table_id)
 {
   switch (table_id) {
@@ -1084,12 +1084,12 @@
 
 }
 
-GstMpegTsSection *
+GstMpegtsSection *
 _gst_mpegts_section_init (guint16 pid, guint8 table_id)
 {
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 
-  section = g_slice_new0 (GstMpegTsSection);
+  section = g_slice_new0 (GstMpegtsSection);
   gst_mini_object_init (GST_MINI_OBJECT_CAST (section), 0, MPEG_TYPE_TS_SECTION,
       (GstMiniObjectCopyFunction) _gst_mpegts_section_copy, NULL,
       (GstMiniObjectFreeFunction) _gst_mpegts_section_free);
@@ -1103,7 +1103,7 @@
 }
 
 void
-_packetize_common_section (GstMpegTsSection * section, gsize length)
+_packetize_common_section (GstMpegtsSection * section, gsize length)
 {
   guint8 *data;
 
@@ -1158,7 +1158,7 @@
  * should contain the table_id field).
  * @data_size: size of the @data argument.
  *
- * Creates a new #GstMpegTsSection from the provided @data.
+ * Creates a new #GstMpegtsSection from the provided @data.
  *
  * Note: Ensuring @data is big enough to contain the full section is the
  * responsibility of the caller. If it is not big enough, %NULL will be
@@ -1167,13 +1167,13 @@
  * Note: it is the responsibility of the caller to ensure @data does point
  * to the beginning of the section.
  *
- * Returns: (transfer full): A new #GstMpegTsSection if the data was valid,
+ * Returns: (transfer full): A new #GstMpegtsSection if the data was valid,
  * else %NULL
  */
-GstMpegTsSection *
+GstMpegtsSection *
 gst_mpegts_section_new (guint16 pid, guint8 * data, gsize data_size)
 {
-  GstMpegTsSection *res = NULL;
+  GstMpegtsSection *res = NULL;
   guint8 tmp;
   guint8 table_id;
   guint16 section_length;
@@ -1223,13 +1223,14 @@
     GST_WARNING
         ("PID 0x%04x section extends past provided data (got:%" G_GSIZE_FORMAT
         ", need:%d)", pid, data_size, section_length + 3);
+    g_free (data);
     return NULL;
   }
 }
 
 /**
  * gst_mpegts_section_packetize:
- * @section: (transfer none): the #GstMpegTsSection that holds the data
+ * @section: (transfer none): the #GstMpegtsSection that holds the data
  * @output_size: (out): #gsize to hold the size of the data
  *
  * If the data in @section has aldready been packetized, the data pointer is returned
@@ -1238,7 +1239,7 @@
  * Returns: (transfer none): pointer to section data, or %NULL on fail
  */
 guint8 *
-gst_mpegts_section_packetize (GstMpegTsSection * section, gsize * output_size)
+gst_mpegts_section_packetize (GstMpegtsSection * section, gsize * output_size)
 {
   guint8 *crc;
   g_return_val_if_fail (section != NULL, NULL);
diff --git a/gst-libs/gst/mpegts/gstmpegtssection.h b/gst-libs/gst/mpegts/gstmpegtssection.h
index 291caac..3369396 100644
--- a/gst-libs/gst/mpegts/gstmpegtssection.h
+++ b/gst-libs/gst/mpegts/gstmpegtssection.h
@@ -29,17 +29,17 @@
 
 G_BEGIN_DECLS
 
-typedef struct _GstMpegTsSection GstMpegTsSection;
+typedef struct _GstMpegtsSection GstMpegtsSection;
 
 #define GST_TYPE_MPEGTS_SECTION (gst_mpegts_section_get_type())
-#define GST_MPEGTS_SECTION(section) ((GstMpegTsSection*) section)
+#define GST_MPEGTS_SECTION(section) ((GstMpegtsSection*) section)
 
 #define GST_MPEGTS_SECTION_TYPE(section) (GST_MPEGTS_SECTION (section)->section_type)
 
 GType gst_mpegts_section_get_type (void);
 
 /**
- * GstMpegTsSectionType:
+ * GstMpegtsSectionType:
  * @GST_MPEGTS_SECTION_UNKNOWN: Unknown section type
  * @GST_MPEGTS_SECTION_PAT: Program Association Table (ISO/IEC 13818-1)
  * @GST_MPEGTS_SECTION_PMT: Program Map Table (ISO/IEC 13818-1)
@@ -58,7 +58,7 @@
  * @GST_MPEGTS_SECTION_ATSC_EIT: ATSC Event Information Table (A65)
  * @GST_MPEGTS_SECTION_ATSC_STT: ATSC System Time Table (A65)
  *
- * Types of #GstMpegTsSection that the library handles.
+ * Types of #GstMpegtsSection that the library handles.
  */
 typedef enum {
   GST_MPEGTS_SECTION_UNKNOWN           = 0,
@@ -78,17 +78,17 @@
   GST_MPEGTS_SECTION_ATSC_ETT,
   GST_MPEGTS_SECTION_ATSC_EIT,
   GST_MPEGTS_SECTION_ATSC_STT
-} GstMpegTsSectionType;
+} GstMpegtsSectionType;
 
 /**
- * GstMpegTsSectionTableID:
+ * GstMpegtsSectionTableID:
  *
- * Values for a #GstMpegTsSection table_id
+ * Values for a #GstMpegtsSection table_id
  *
  * These are the registered ITU H.222.0 | ISO/IEC 13818-1 table_id variants.
  *
- * see also #GstMpegTsSectionATSCTableID, #GstMpegTsSectionDVBTableID, and
- * #GstMpegTsSectionSCTETableID
+ * see also #GstMpegtsSectionATSCTableID, #GstMpegtsSectionDVBTableID, and
+ * #GstMpegtsSectionSCTETableID
  */
 typedef enum {
   /* ITU H.222.0 / IEC 13818-1 */
@@ -114,12 +114,12 @@
   /* Unset */
   GST_MTS_TABLE_ID_UNSET = 0xFF
   
-} GstMpegTsSectionTableID;
+} GstMpegtsSectionTableID;
 
-typedef gboolean (*GstMpegTsPacketizeFunc) (GstMpegTsSection *section);
+typedef gboolean (*GstMpegtsPacketizeFunc) (GstMpegtsSection *section);
 
 /**
- * GstMpegTsSection:
+ * GstMpegtsSection:
  * @section_type: The type of section
  * @pid: The pid on which this section was found
  * @table_id: The table id of this section
@@ -133,13 +133,13 @@
  *
  * Mpeg-TS Section Information (SI) (ISO/IEC 13818-1)
  */
-struct _GstMpegTsSection
+struct _GstMpegtsSection
 {
   /*< private >*/
   GstMiniObject parent;
 
   /*< public >*/
-  GstMpegTsSectionType   section_type;
+  GstMpegtsSectionType   section_type;
 
   guint16       pid;
   guint8        table_id;
@@ -170,110 +170,110 @@
    * FIXME : Maybe make public later on when allowing creation of
    * sections to that people can create private short sections ? */
   gboolean      short_section;
-  GstMpegTsPacketizeFunc packetizer;
+  GstMpegtsPacketizeFunc packetizer;
 };
 
-GBytes *gst_mpegts_section_get_data (GstMpegTsSection *section);
+GBytes *gst_mpegts_section_get_data (GstMpegtsSection *section);
 
 /* PAT */
 #define GST_TYPE_MPEGTS_PAT_PROGRAM (gst_mpegts_pat_program_get_type())
 
-typedef struct _GstMpegTsPatProgram GstMpegTsPatProgram;
+typedef struct _GstMpegtsPatProgram GstMpegtsPatProgram;
 /**
- * GstMpegTsPatProgram:
+ * GstMpegtsPatProgram:
  * @program_number: the program number
  * @network_or_program_map_PID: the network of program map PID
  *
  * A program entry from a Program Association Table (ITU H.222.0, ISO/IEC 13818-1).
  */
-struct _GstMpegTsPatProgram
+struct _GstMpegtsPatProgram
 {
   guint16 program_number;
   guint16 network_or_program_map_PID;
 };
 
-GPtrArray *gst_mpegts_section_get_pat (GstMpegTsSection *section);
+GPtrArray *gst_mpegts_section_get_pat (GstMpegtsSection *section);
 GType gst_mpegts_pat_program_get_type (void);
 
 GPtrArray *gst_mpegts_pat_new (void);
-GstMpegTsPatProgram *gst_mpegts_pat_program_new (void);
-GstMpegTsSection *gst_mpegts_section_from_pat (GPtrArray * programs,
+GstMpegtsPatProgram *gst_mpegts_pat_program_new (void);
+GstMpegtsSection *gst_mpegts_section_from_pat (GPtrArray * programs,
     guint16 ts_id);
 
 /* CAT */
 
-GPtrArray *gst_mpegts_section_get_cat (GstMpegTsSection *section);
+GPtrArray *gst_mpegts_section_get_cat (GstMpegtsSection *section);
 
 /* PMT */
-typedef struct _GstMpegTsPMTStream GstMpegTsPMTStream;
-typedef struct _GstMpegTsPMT GstMpegTsPMT;
+typedef struct _GstMpegtsPMTStream GstMpegtsPMTStream;
+typedef struct _GstMpegtsPMT GstMpegtsPMT;
 #define GST_TYPE_MPEGTS_PMT (gst_mpegts_pmt_get_type())
 #define GST_TYPE_MPEGTS_PMT_STREAM (gst_mpegts_pmt_stream_get_type())
 
 /**
- * GstMpegTsStreamType:
- * @GST_MPEG_TS_STREAM_TYPE_RESERVED_00: ITU-T | ISO/IEC Reserved
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG1: ISO/IEC 11172-2 Video
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2: Rec. ITU-T H.262 | ISO/IEC 13818-2
+ * GstMpegtsStreamType:
+ * @GST_MPEGTS_STREAM_TYPE_RESERVED_00: ITU-T | ISO/IEC Reserved
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG1: ISO/IEC 11172-2 Video
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2: Rec. ITU-T H.262 | ISO/IEC 13818-2
  * Video or ISO/IEC 11172-2 constrained parameter video stream
- * @GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG1: ISO/IEC 11172-3 Audio
- * @GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG2: ISO/IEC 13818-3 Audio
- * @GST_MPEG_TS_STREAM_TYPE_PRIVATE_SECTIONS: private sections
- * @GST_MPEG_TS_STREAM_TYPE_PRIVATE_PES_PACKETS: PES packets containing private data
- * @GST_MPEG_TS_STREAM_TYPE_MHEG: ISO/IEC 13522 MHEG
- * @GST_MPEG_TS_STREAM_TYPE_DSM_CC: Annex A DSM-CC
- * @GST_MPEG_TS_STREAM_TYPE_H_222_1: Rec. ITU-T H.222.1
- * @GST_MPEG_TS_STREAM_TYPE_DSMCC_A: ISO/IEC 13818-6 type A
- * @GST_MPEG_TS_STREAM_TYPE_DSMCC_B: ISO/IEC 13818-6 type B
- * @GST_MPEG_TS_STREAM_TYPE_DSMCC_C: ISO/IEC 13818-6 type C
- * @GST_MPEG_TS_STREAM_TYPE_DSMCC_D: ISO/IEC 13818-6 type D
- * @GST_MPEG_TS_STREAM_TYPE_AUXILIARY: auxiliary streams
- * @GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_ADTS: ISO/IEC 13818-7 Audio with ADTS
+ * @GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG1: ISO/IEC 11172-3 Audio
+ * @GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG2: ISO/IEC 13818-3 Audio
+ * @GST_MPEGTS_STREAM_TYPE_PRIVATE_SECTIONS: private sections
+ * @GST_MPEGTS_STREAM_TYPE_PRIVATE_PES_PACKETS: PES packets containing private data
+ * @GST_MPEGTS_STREAM_TYPE_MHEG: ISO/IEC 13522 MHEG
+ * @GST_MPEGTS_STREAM_TYPE_DSM_CC: Annex A DSM-CC
+ * @GST_MPEGTS_STREAM_TYPE_H_222_1: Rec. ITU-T H.222.1
+ * @GST_MPEGTS_STREAM_TYPE_DSMCC_A: ISO/IEC 13818-6 type A
+ * @GST_MPEGTS_STREAM_TYPE_DSMCC_B: ISO/IEC 13818-6 type B
+ * @GST_MPEGTS_STREAM_TYPE_DSMCC_C: ISO/IEC 13818-6 type C
+ * @GST_MPEGTS_STREAM_TYPE_DSMCC_D: ISO/IEC 13818-6 type D
+ * @GST_MPEGTS_STREAM_TYPE_AUXILIARY: auxiliary streams
+ * @GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_ADTS: ISO/IEC 13818-7 Audio with ADTS
  * transport syntax
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG4: ISO/IEC 14496-2 Visual
- * @GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_LATM: ISO/IEC 14496-3 Audio with the LATM
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG4: ISO/IEC 14496-2 Visual
+ * @GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_LATM: ISO/IEC 14496-3 Audio with the LATM
  * transport syntax as defined in ISO/IEC 14496-3
- * @GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_PES_PACKETS: ISO/IEC 14496-1
+ * @GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_PES_PACKETS: ISO/IEC 14496-1
  * SL-packetized stream or FlexMux stream carried in PES packets
- * @GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_SECTIONS: ISO/IEC 14496-1 SL-packetized
+ * @GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_SECTIONS: ISO/IEC 14496-1 SL-packetized
  * stream or FlexMux stream carried in ISO/IEC 14496_sections
- * @GST_MPEG_TS_STREAM_TYPE_SYNCHRONIZED_DOWNLOAD: ISO/IEC 13818-6 Synchronized
+ * @GST_MPEGTS_STREAM_TYPE_SYNCHRONIZED_DOWNLOAD: ISO/IEC 13818-6 Synchronized
  * Download Protocol
- * @GST_MPEG_TS_STREAM_TYPE_METADATA_PES_PACKETS: Metadata carried in PES packets
- * @GST_MPEG_TS_STREAM_TYPE_METADATA_SECTIONS: Metadata carried in metadata_sections
- * @GST_MPEG_TS_STREAM_TYPE_METADATA_DATA_CAROUSEL: Metadata carried in ISO/IEC
+ * @GST_MPEGTS_STREAM_TYPE_METADATA_PES_PACKETS: Metadata carried in PES packets
+ * @GST_MPEGTS_STREAM_TYPE_METADATA_SECTIONS: Metadata carried in metadata_sections
+ * @GST_MPEGTS_STREAM_TYPE_METADATA_DATA_CAROUSEL: Metadata carried in ISO/IEC
  * 13818-6 Data Carousel
- * @GST_MPEG_TS_STREAM_TYPE_METADATA_OBJECT_CAROUSEL: Metadata carried in
+ * @GST_MPEGTS_STREAM_TYPE_METADATA_OBJECT_CAROUSEL: Metadata carried in
  * ISO/IEC 13818-6 Object Carousel
- * @GST_MPEG_TS_STREAM_TYPE_METADATA_SYNCHRONIZED_DOWNLOAD: Metadata carried in
+ * @GST_MPEGTS_STREAM_TYPE_METADATA_SYNCHRONIZED_DOWNLOAD: Metadata carried in
  * ISO/IEC 13818-6 Synchronized Download Protocol
- * @GST_MPEG_TS_STREAM_TYPE_MPEG2_IPMP: IPMP stream (defined in ISO/IEC 13818-11,
+ * @GST_MPEGTS_STREAM_TYPE_MPEG2_IPMP: IPMP stream (defined in ISO/IEC 13818-11,
  * MPEG-2 IPMP)
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_H264: AVC video stream conforming to one or
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_H264: AVC video stream conforming to one or
  * more profiles defined in Annex A of Rec. ITU-T H.264 | ISO/IEC 14496-10 or
  * AVC video sub-bitstream of SVC as defined in 2.1.78 or MVC base view
  * sub-bitstream, as defined in 2.1.85, or AVC video sub-bitstream of MVC, as
  * defined in 2.1.88
- * @GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_CLEAN: ISO/IEC 14496-3 Audio, without
+ * @GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_CLEAN: ISO/IEC 14496-3 Audio, without
  * using any additional transport syntax, such as DST, ALS and SLS
- * @GST_MPEG_TS_STREAM_TYPE_MPEG4_TIMED_TEXT: ISO/IEC 14496-17 Text
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_RVC: Auxiliary video stream as defined in
+ * @GST_MPEGTS_STREAM_TYPE_MPEG4_TIMED_TEXT: ISO/IEC 14496-17 Text
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_RVC: Auxiliary video stream as defined in
  * ISO/IEC 23002-3
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_SVC_SUB_BITSTREAM: SVC video sub-bitstream
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_H264_SVC_SUB_BITSTREAM: SVC video sub-bitstream
  * of an AVC video stream conforming to one or more profiles defined in Annex G
  * of Rec. ITU-T H.264 | ISO/IEC 14496-10
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_MVC_SUB_BITSTREAM: MVC video sub-bitstream
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_H264_MVC_SUB_BITSTREAM: MVC video sub-bitstream
  * of an AVC video stream conforming to one or more profiles defined in Annex H
  * of Rec. ITU-T H.264 | ISO/IEC 14496-10
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_JP2K: Video stream conforming to one or more
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_JP2K: Video stream conforming to one or more
  * profiles as defined in Rec. ITU-T T.800 | ISO/IEC 15444-1
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW: Additional view
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW: Additional view
  * Rec. ITU-T H.262 | ISO/IEC 13818-2 video stream for service-compatible
  * stereoscopic 3D services
- * @GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW: Additional view
+ * @GST_MPEGTS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW: Additional view
  * Rec. ITU-T H.264 | ISO/IEC 14496-10 video stream conforming to one or more
  * profiles defined in Annex A for service-compatible stereoscopic 3D services
- * @GST_MPEG_TS_STREAM_TYPE_IPMP_STREAM: IPMP stream
+ * @GST_MPEGTS_STREAM_TYPE_IPMP_STREAM: IPMP stream
  *
  * Type of mpeg-ts stream type.
  *
@@ -284,114 +284,114 @@
  * Corresponds to table 2-34 of ITU H.222.0 | ISO/IEC 13818-1
  */
 typedef enum {
-  GST_MPEG_TS_STREAM_TYPE_RESERVED_00                  = 0x00,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG1                  = 0x01,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2                  = 0x02,
-  GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG1                  = 0x03,
-  GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG2                  = 0x04,
-  GST_MPEG_TS_STREAM_TYPE_PRIVATE_SECTIONS             = 0x05,
-  GST_MPEG_TS_STREAM_TYPE_PRIVATE_PES_PACKETS          = 0x06,
-  GST_MPEG_TS_STREAM_TYPE_MHEG                         = 0x07,
-  GST_MPEG_TS_STREAM_TYPE_DSM_CC                       = 0x08,
-  GST_MPEG_TS_STREAM_TYPE_H_222_1                      = 0x09,
-  GST_MPEG_TS_STREAM_TYPE_DSMCC_A                      = 0x0a,
-  GST_MPEG_TS_STREAM_TYPE_DSMCC_B                      = 0x0b,
-  GST_MPEG_TS_STREAM_TYPE_DSMCC_C                      = 0x0c,
-  GST_MPEG_TS_STREAM_TYPE_DSMCC_D                      = 0x0d,
-  GST_MPEG_TS_STREAM_TYPE_AUXILIARY                    = 0x0e,
-  GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_ADTS               = 0x0f,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG4                  = 0x10,
-  GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_LATM               = 0x11,
-  GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_PES_PACKETS       = 0x12,
-  GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_SECTIONS          = 0x13,
-  GST_MPEG_TS_STREAM_TYPE_SYNCHRONIZED_DOWNLOAD        = 0x14,
-  GST_MPEG_TS_STREAM_TYPE_METADATA_PES_PACKETS         = 0x15,
-  GST_MPEG_TS_STREAM_TYPE_METADATA_SECTIONS            = 0x16,
-  GST_MPEG_TS_STREAM_TYPE_METADATA_DATA_CAROUSEL       = 0x17,
-  GST_MPEG_TS_STREAM_TYPE_METADATA_OBJECT_CAROUSEL     = 0x18,
-  GST_MPEG_TS_STREAM_TYPE_METADATA_SYNCHRONIZED_DOWNLOAD  = 0x19,
-  GST_MPEG_TS_STREAM_TYPE_MPEG2_IPMP                   = 0x1a,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_H264                   = 0x1b,
-  GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_CLEAN              = 0x1c,
-  GST_MPEG_TS_STREAM_TYPE_MPEG4_TIMED_TEXT             = 0x1d,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_RVC                    = 0x1e,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_SVC_SUB_BITSTREAM = 0x1f,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_MVC_SUB_BITSTREAM = 0x20,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_JP2K                   = 0x21,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW = 0x22,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW  = 0x23,
-  GST_MPEG_TS_STREAM_TYPE_VIDEO_HEVC                   = 0x24,
+  GST_MPEGTS_STREAM_TYPE_RESERVED_00                  = 0x00,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG1                  = 0x01,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2                  = 0x02,
+  GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG1                  = 0x03,
+  GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG2                  = 0x04,
+  GST_MPEGTS_STREAM_TYPE_PRIVATE_SECTIONS             = 0x05,
+  GST_MPEGTS_STREAM_TYPE_PRIVATE_PES_PACKETS          = 0x06,
+  GST_MPEGTS_STREAM_TYPE_MHEG                         = 0x07,
+  GST_MPEGTS_STREAM_TYPE_DSM_CC                       = 0x08,
+  GST_MPEGTS_STREAM_TYPE_H_222_1                      = 0x09,
+  GST_MPEGTS_STREAM_TYPE_DSMCC_A                      = 0x0a,
+  GST_MPEGTS_STREAM_TYPE_DSMCC_B                      = 0x0b,
+  GST_MPEGTS_STREAM_TYPE_DSMCC_C                      = 0x0c,
+  GST_MPEGTS_STREAM_TYPE_DSMCC_D                      = 0x0d,
+  GST_MPEGTS_STREAM_TYPE_AUXILIARY                    = 0x0e,
+  GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_ADTS               = 0x0f,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG4                  = 0x10,
+  GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_LATM               = 0x11,
+  GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_PES_PACKETS       = 0x12,
+  GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_SECTIONS          = 0x13,
+  GST_MPEGTS_STREAM_TYPE_SYNCHRONIZED_DOWNLOAD        = 0x14,
+  GST_MPEGTS_STREAM_TYPE_METADATA_PES_PACKETS         = 0x15,
+  GST_MPEGTS_STREAM_TYPE_METADATA_SECTIONS            = 0x16,
+  GST_MPEGTS_STREAM_TYPE_METADATA_DATA_CAROUSEL       = 0x17,
+  GST_MPEGTS_STREAM_TYPE_METADATA_OBJECT_CAROUSEL     = 0x18,
+  GST_MPEGTS_STREAM_TYPE_METADATA_SYNCHRONIZED_DOWNLOAD  = 0x19,
+  GST_MPEGTS_STREAM_TYPE_MPEG2_IPMP                   = 0x1a,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_H264                   = 0x1b,
+  GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_CLEAN              = 0x1c,
+  GST_MPEGTS_STREAM_TYPE_MPEG4_TIMED_TEXT             = 0x1d,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_RVC                    = 0x1e,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_H264_SVC_SUB_BITSTREAM = 0x1f,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_H264_MVC_SUB_BITSTREAM = 0x20,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_JP2K                   = 0x21,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW = 0x22,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW  = 0x23,
+  GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC                   = 0x24,
   /* 0x24 - 0x7e : Rec. ITU-T H.222.0 | ISO/IEC 13818-1 Reserved */
-  GST_MPEG_TS_STREAM_TYPE_IPMP_STREAM                  = 0x7f
+  GST_MPEGTS_STREAM_TYPE_IPMP_STREAM                  = 0x7f
   /* 0x80 - 0xff : User Private (or defined in other specs) */
-} GstMpegTsStreamType;
+} GstMpegtsStreamType;
 
 /**
- * GstMpegTsPMTStream:
- * @stream_type: the type of stream. See #GstMpegTsStreamType
+ * GstMpegtsPMTStream:
+ * @stream_type: the type of stream. See #GstMpegtsStreamType
  * @pid: the PID of the stream
- * @descriptors: (element-type GstMpegTsDescriptor): the descriptors of the
+ * @descriptors: (element-type GstMpegtsDescriptor): the descriptors of the
  * stream
  *
  * An individual stream definition.
  */
-struct _GstMpegTsPMTStream
+struct _GstMpegtsPMTStream
 {
   guint8      stream_type;
   guint16     pid;
 
-  GPtrArray     *descriptors;
+  GPtrArray  *descriptors;
 };
 
 /**
- * GstMpegTsPMT:
+ * GstMpegtsPMT:
  * @pcr_pid: PID of the stream containing PCR
- * @descriptors: (element-type GstMpegTsDescriptor): array of #GstMpegTsDescriptor
- * @streams: (element-type GstMpegTsPMTStream): Array of #GstMpegTsPMTStream
+ * @descriptors: (element-type GstMpegtsDescriptor): array of #GstMpegtsDescriptor
+ * @streams: (element-type GstMpegtsPMTStream): Array of #GstMpegtsPMTStream
  *
  * Program Map Table (ISO/IEC 13818-1).
  *
  * The program_number is contained in the subtable_extension field of the
- * container #GstMpegTsSection.
+ * container #GstMpegtsSection.
  */
-struct _GstMpegTsPMT
+struct _GstMpegtsPMT
 {
   guint16    pcr_pid;
   guint16    program_number;
 
-  GPtrArray    *descriptors;
+  GPtrArray *descriptors;
   GPtrArray *streams;
 };
 
 GType gst_mpegts_pmt_get_type (void);
 GType gst_mpegts_pmt_stream_get_type (void);
 
-GstMpegTsPMT *gst_mpegts_pmt_new (void);
-GstMpegTsPMTStream *gst_mpegts_pmt_stream_new (void);
-const GstMpegTsPMT *gst_mpegts_section_get_pmt (GstMpegTsSection *section);
-GstMpegTsSection *gst_mpegts_section_from_pmt (GstMpegTsPMT *pmt, guint16 pid);
+GstMpegtsPMT *gst_mpegts_pmt_new (void);
+GstMpegtsPMTStream *gst_mpegts_pmt_stream_new (void);
+const GstMpegtsPMT *gst_mpegts_section_get_pmt (GstMpegtsSection *section);
+GstMpegtsSection *gst_mpegts_section_from_pmt (GstMpegtsPMT *pmt, guint16 pid);
 
 /* TSDT */
 
-GPtrArray *gst_mpegts_section_get_tsdt (GstMpegTsSection *section);
+GPtrArray *gst_mpegts_section_get_tsdt (GstMpegtsSection *section);
 
 
 /* generic */
 
-#define gst_mpegts_section_ref(section)   ((GstMpegTsSection*) gst_mini_object_ref (GST_MINI_OBJECT_CAST (section)))
+#define gst_mpegts_section_ref(section)   ((GstMpegtsSection*) gst_mini_object_ref (GST_MINI_OBJECT_CAST (section)))
 #define gst_mpegts_section_unref(section) (gst_mini_object_unref (GST_MINI_OBJECT_CAST (section)))
 
-GstMessage *gst_message_new_mpegts_section (GstObject *parent, GstMpegTsSection *section);
-gboolean gst_mpegts_section_send_event (GstMpegTsSection * section, GstElement * element);
-GstMpegTsSection *gst_event_parse_mpegts_section (GstEvent * event);
+GstMessage *gst_message_new_mpegts_section (GstObject *parent, GstMpegtsSection *section);
+gboolean gst_mpegts_section_send_event (GstMpegtsSection * section, GstElement * element);
+GstMpegtsSection *gst_event_parse_mpegts_section (GstEvent * event);
 
-GstMpegTsSection *gst_message_parse_mpegts_section (GstMessage *message);
+GstMpegtsSection *gst_message_parse_mpegts_section (GstMessage *message);
 
-GstMpegTsSection *gst_mpegts_section_new (guint16 pid,
+GstMpegtsSection *gst_mpegts_section_new (guint16 pid,
 					   guint8 * data,
 					   gsize data_size);
 
-guint8 *gst_mpegts_section_packetize (GstMpegTsSection * section, gsize * output_size);
+guint8 *gst_mpegts_section_packetize (GstMpegtsSection * section, gsize * output_size);
 
 G_END_DECLS
 
diff --git a/gst-libs/gst/video/gstvideoaggregator.c b/gst-libs/gst/video/gstvideoaggregator.c
index b0ea776..2bc7e44 100644
--- a/gst-libs/gst/video/gstvideoaggregator.c
+++ b/gst-libs/gst/video/gstvideoaggregator.c
@@ -142,7 +142,7 @@
     videoconvert_convert_free (vaggpad->priv->convert);
   vaggpad->priv->convert = NULL;
 
-  G_OBJECT_CLASS (gst_videoaggregator_pad_parent_class)->dispose (o);
+  G_OBJECT_CLASS (gst_videoaggregator_pad_parent_class)->finalize (o);
 }
 
 static void
@@ -806,6 +806,7 @@
     GstVideoAggregatorPad *p = l->data;
 
     gst_buffer_replace (&p->buffer, NULL);
+    gst_buffer_replace (&p->queued, NULL);
     p->start_time = -1;
     p->end_time = -1;
 
@@ -959,6 +960,7 @@
       } else if (start_time >= output_end_time) {
         GST_DEBUG_OBJECT (pad, "Keeping buffer until %" GST_TIME_FORMAT,
             GST_TIME_ARGS (start_time));
+        gst_buffer_unref (buf);
         eos = FALSE;
       } else {
         GST_DEBUG_OBJECT (pad, "Too old buffer -- dropping");
@@ -1011,7 +1013,7 @@
     GstClockTime timestamp;
     gint64 stream_time;
     GstSegment *seg;
-    GstVideoFrame *converted_frame = g_slice_new0 (GstVideoFrame);
+    GstVideoFrame *converted_frame;
     GstBuffer *converted_buf = NULL;
     GstVideoFrame *frame = g_slice_new0 (GstVideoFrame);
 
@@ -1034,6 +1036,8 @@
     if (pad->priv->convert) {
       gint converted_size;
 
+      converted_frame = g_slice_new0 (GstVideoFrame);
+
       /* We wait until here to set the conversion infos, in case vagg->info changed */
       if (pad->need_conversion_update) {
         pad->conversion_info = vagg->info;
@@ -1854,6 +1858,8 @@
   GstVideoAggregator *vagg = GST_VIDEO_AGGREGATOR (o);
 
   gst_caps_replace (&vagg->priv->current_caps, NULL);
+
+  G_OBJECT_CLASS (gst_videoaggregator_parent_class)->dispose (o);
 }
 
 static void
diff --git a/gst-plugins-bad.doap b/gst-plugins-bad.doap
index ab4afd4..324e400 100644
--- a/gst-plugins-bad.doap
+++ b/gst-plugins-bad.doap
@@ -33,7 +33,17 @@
    </GitRepository>
  </repository> 
 
-<release>
+ <release>
+  <Version>
+   <revision>1.3.90</revision>
+   <branch>1.3</branch>
+   <name></name>
+   <created>2014-06-28</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.3.90.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
   <Version>
    <revision>1.3.3</revision>
    <branch>1.3</branch>
diff --git a/gst-plugins-bad.spec b/gst-plugins-bad.spec
index 9e72901..899a421 100644
--- a/gst-plugins-bad.spec
+++ b/gst-plugins-bad.spec
@@ -6,7 +6,7 @@
 
 Summary: GStreamer streaming media framework "bad" plug-ins
 Name: %{gstreamer}-plugins-bad
-Version: 1.3.3
+Version: 1.3.90
 Release: 1.gst
 # The freeze and nfs plugins are LGPLv2 (only)
 License: LGPLv2+ and LGPLv2
diff --git a/gst/audiovisualizers/gstaudiovisualizer.c b/gst/audiovisualizers/gstaudiovisualizer.c
index 8276dbd..fafece2 100644
--- a/gst/audiovisualizers/gstaudiovisualizer.c
+++ b/gst/audiovisualizers/gstaudiovisualizer.c
@@ -766,12 +766,14 @@
 
   /* find a pool for the negotiated caps now */
   res = gst_audio_visualizer_do_bufferpool (scope, caps);
+  gst_caps_unref (caps);
 
   return res;
 
   /* ERRORS */
 wrong_caps:
   {
+    gst_caps_unref (caps);
     GST_DEBUG_OBJECT (scope, "error parsing caps");
     return FALSE;
   }
@@ -1263,6 +1265,7 @@
 
       gst_event_parse_caps (event, &caps);
       res = gst_audio_visualizer_sink_setcaps (scope, caps);
+      gst_event_unref (event);
       break;
     }
     case GST_EVENT_FLUSH_START:
diff --git a/gst/bayer/gstbayerorc-dist.c b/gst/bayer/gstbayerorc-dist.c
index 1dc708d..2165615 100644
--- a/gst/bayer/gstbayerorc-dist.c
+++ b/gst/bayer/gstbayerorc-dist.c
@@ -336,7 +336,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 34, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 104, 111, 114,
         105, 122, 95, 117, 112, 115, 97, 109, 112, 108, 101, 95, 117, 110, 97,
-        108,
+            108,
         105, 103, 110, 101, 100, 11, 2, 2, 11, 2, 2, 12, 2, 2, 14, 4,
         1, 0, 0, 0, 20, 2, 20, 1, 20, 1, 20, 1, 20, 1, 199, 34,
         33, 4, 83, 32, 4, 16, 199, 36, 35, 32, 39, 36, 34, 36, 196, 0,
diff --git a/gst/compositor/Makefile.am b/gst/compositor/Makefile.am
index a91f0fa..eee77d3 100644
--- a/gst/compositor/Makefile.am
+++ b/gst/compositor/Makefile.am
@@ -10,14 +10,16 @@
 
 
 nodist_libgstcompositor_la_SOURCES = $(ORC_NODIST_SOURCES)
-libgstcompositor_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) \
+libgstcompositor_la_CFLAGS =  \
 	-I$(top_srcdir)/gst-libs \
 	-I$(top_builddir)/gst-libs \
+	$(GST_PLUGINS_BASE_CFLAGS) \
 	$(GST_BASE_CFLAGS) $(GST_CFLAGS) $(ORC_CFLAGS)
-libgstcompositor_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \
-	-lgstvideo-@GST_API_VERSION@ \
+libgstcompositor_la_LIBADD =  \
 	$(top_builddir)/gst-libs/gst/base/libgstbadbase-$(GST_API_VERSION).la \
 	$(top_builddir)/gst-libs/gst/video/libgstbadvideo-$(GST_API_VERSION).la \
+	$(GST_PLUGINS_BASE_LIBS) \
+	-lgstvideo-@GST_API_VERSION@ \
 	$(GST_BASE_LIBS) $(GST_LIBS) $(ORC_LIBS) $(LIBM)
 libgstcompositor_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
 libgstcompositor_la_LIBTOOLFLAGS = $(GST_PLUGIN_LIBTOOLFLAGS)
diff --git a/gst/compositor/Makefile.in b/gst/compositor/Makefile.in
index 98b936d..37249fc 100644
--- a/gst/compositor/Makefile.in
+++ b/gst/compositor/Makefile.in
@@ -176,11 +176,11 @@
 am__installdirs = "$(DESTDIR)$(plugindir)"
 LTLIBRARIES = $(plugin_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-libgstcompositor_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
-	$(top_builddir)/gst-libs/gst/base/libgstbadbase-$(GST_API_VERSION).la \
+libgstcompositor_la_DEPENDENCIES = $(top_builddir)/gst-libs/gst/base/libgstbadbase-$(GST_API_VERSION).la \
 	$(top_builddir)/gst-libs/gst/video/libgstbadvideo-$(GST_API_VERSION).la \
 	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+	$(am__DEPENDENCIES_1)
 am_libgstcompositor_la_OBJECTS = libgstcompositor_la-blend.lo \
 	libgstcompositor_la-compositor.lo
 am__objects_1 = libgstcompositor_la-tmp-orc.lo
@@ -771,15 +771,17 @@
 	compositor.c
 
 nodist_libgstcompositor_la_SOURCES = $(ORC_NODIST_SOURCES)
-libgstcompositor_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) \
+libgstcompositor_la_CFLAGS = \
 	-I$(top_srcdir)/gst-libs \
 	-I$(top_builddir)/gst-libs \
+	$(GST_PLUGINS_BASE_CFLAGS) \
 	$(GST_BASE_CFLAGS) $(GST_CFLAGS) $(ORC_CFLAGS)
 
-libgstcompositor_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) \
-	-lgstvideo-@GST_API_VERSION@ \
+libgstcompositor_la_LIBADD = \
 	$(top_builddir)/gst-libs/gst/base/libgstbadbase-$(GST_API_VERSION).la \
 	$(top_builddir)/gst-libs/gst/video/libgstbadvideo-$(GST_API_VERSION).la \
+	$(GST_PLUGINS_BASE_LIBS) \
+	-lgstvideo-@GST_API_VERSION@ \
 	$(GST_BASE_LIBS) $(GST_LIBS) $(ORC_LIBS) $(LIBM)
 
 libgstcompositor_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
diff --git a/gst/fieldanalysis/gstfieldanalysisorc-dist.c b/gst/fieldanalysis/gstfieldanalysisorc-dist.c
index 06951b7..f50df64 100644
--- a/gst/fieldanalysis/gstfieldanalysisorc-dist.c
+++ b/gst/fieldanalysis/gstfieldanalysisorc-dist.c
@@ -283,7 +283,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 102, 105, 101, 108, 100, 97, 110, 97, 108, 121, 115, 105, 115,
         95, 111, 114, 99, 95, 115, 97, 109, 101, 95, 112, 97, 114, 105, 116,
-        121,
+            121,
         95, 115, 97, 100, 95, 112, 108, 97, 110, 97, 114, 95, 121, 117, 118, 12,
         1, 1, 12, 1, 1, 13, 4, 16, 4, 20, 2, 20, 2, 20, 4, 20,
         4, 150, 32, 4, 150, 33, 5, 98, 32, 32, 33, 69, 32, 32, 154, 34,
@@ -466,9 +466,9 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 102, 105, 101, 108, 100, 97, 110, 97, 108, 121, 115, 105, 115,
         95, 111, 114, 99, 95, 115, 97, 109, 101, 95, 112, 97, 114, 105, 116,
-        121,
+            121,
         95, 115, 115, 100, 95, 112, 108, 97, 110, 97, 114, 95, 121, 117, 118,
-        12,
+            12,
         1, 1, 12, 1, 1, 13, 4, 16, 4, 20, 2, 20, 2, 20, 4, 20,
         4, 150, 32, 4, 150, 33, 5, 98, 32, 32, 33, 176, 34, 32, 32, 111,
         35, 34, 24, 106, 34, 34, 35, 181, 12, 34, 2, 0,
@@ -758,7 +758,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 46, 102, 105, 101, 108, 100, 97, 110, 97, 108, 121, 115, 105, 115,
         95, 111, 114, 99, 95, 115, 97, 109, 101, 95, 112, 97, 114, 105, 116,
-        121,
+            121,
         95, 51, 95, 116, 97, 112, 95, 112, 108, 97, 110, 97, 114, 95, 121, 117,
         118, 12, 1, 1, 12, 1, 1, 12, 1, 1, 12, 1, 1, 12, 1, 1,
         12, 1, 1, 13, 4, 14, 4, 2, 0, 0, 0, 16, 4, 20, 2, 20,
@@ -1099,7 +1099,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 50, 102, 105, 101, 108, 100, 97, 110, 97, 108, 121, 115, 105, 115,
         95, 111, 114, 99, 95, 111, 112, 112, 111, 115, 105, 116, 101, 95, 112,
-        97,
+            97,
         114, 105, 116, 121, 95, 53, 95, 116, 97, 112, 95, 112, 108, 97, 110, 97,
         114, 95, 121, 117, 118, 12, 1, 1, 12, 1, 1, 12, 1, 1, 12, 1,
         1, 12, 1, 1, 13, 4, 14, 4, 2, 0, 0, 0, 14, 4, 3, 0,
diff --git a/gst/geometrictransform/gstgeometrictransform.c b/gst/geometrictransform/gstgeometrictransform.c
index a237734..7cfaafd 100644
--- a/gst/geometrictransform/gstgeometrictransform.c
+++ b/gst/geometrictransform/gstgeometrictransform.c
@@ -229,7 +229,7 @@
 {
   GstGeometricTransform *gt;
   GstGeometricTransformClass *klass;
-  gint x, y;
+  gint x, y, i;
   GstFlowReturn ret = GST_FLOW_OK;
   gdouble *ptr;
   guint8 *in_data;
@@ -245,7 +245,7 @@
     /* in AYUV black is not just all zeros:
      * 0x10 is black for Y,
      * 0x80 is black for Cr and Cb */
-    for (int i = 0; i < out_frame->map[0].size; i += 4)
+    for (i = 0; i < out_frame->map[0].size; i += 4)
       GST_WRITE_UINT32_BE (out_data + i, 0xff108080);
   } else {
     memset (out_data, 0, out_frame->map[0].size);
diff --git a/gst/geometrictransform/gstperspective.c b/gst/geometrictransform/gstperspective.c
index 0f33eb6..e9ed230 100644
--- a/gst/geometrictransform/gstperspective.c
+++ b/gst/geometrictransform/gstperspective.c
@@ -80,10 +80,11 @@
 {
   GValue v = { 0, };
   GValueArray *va;
+  int i;
 
   va = g_value_array_new (1);
 
-  for (int i = 0; i < 9; i++) {
+  for (i = 0; i < 9; i++) {
     g_value_init (&v, G_TYPE_DOUBLE);
     g_value_set_double (&v, self->matrix[i]);
     g_value_array_append (va, &v);
diff --git a/gst/inter/gstinteraudiosrc.c b/gst/inter/gstinteraudiosrc.c
index ee8786e..cab0eb6 100644
--- a/gst/inter/gstinteraudiosrc.c
+++ b/gst/inter/gstinteraudiosrc.c
@@ -195,17 +195,22 @@
 
   structure = gst_caps_get_structure (caps, 0);
 
-  ret = gst_structure_get_int (structure, "rate", &sample_rate);
-  if (ret) {
-    interaudiosrc->sample_rate = sample_rate;
-
-    ret = gst_pad_set_caps (src->srcpad, caps);
+  if (!gst_structure_get_int (structure, "rate", &sample_rate)) {
+    GST_ERROR_OBJECT (src, "Audio caps without rate");
+    return FALSE;
   }
 
-  if (gst_audio_info_from_caps (&info, caps)) {
-    interaudiosrc->finfo = info.finfo;
+  interaudiosrc->sample_rate = sample_rate;
+
+  if (!gst_audio_info_from_caps (&info, caps)) {
+    GST_ERROR_OBJECT (src, "Can't parse audio caps");
+    return FALSE;
   }
 
+  interaudiosrc->finfo = info.finfo;
+
+  ret = gst_pad_set_caps (src->srcpad, caps);
+
   return ret;
 }
 
diff --git a/gst/mpegtsdemux/mpegtsbase.c b/gst/mpegtsdemux/mpegtsbase.c
index 13b99a5..0ca7253 100644
--- a/gst/mpegtsdemux/mpegtsbase.c
+++ b/gst/mpegtsdemux/mpegtsbase.c
@@ -87,9 +87,9 @@
 static GstStateChangeReturn mpegts_base_change_state (GstElement * element,
     GstStateChange transition);
 static gboolean mpegts_base_get_tags_from_eit (MpegTSBase * base,
-    GstMpegTsSection * section);
+    GstMpegtsSection * section);
 static gboolean mpegts_base_parse_atsc_mgt (MpegTSBase * base,
-    GstMpegTsSection * section);
+    GstMpegtsSection * section);
 static gboolean remove_each_program (gpointer key, MpegTSBaseProgram * program,
     MpegTSBase * base);
 
@@ -273,10 +273,10 @@
 /* returns NULL if no matching descriptor found *
  * otherwise returns a descriptor that needs to *
  * be freed */
-const GstMpegTsDescriptor *
+const GstMpegtsDescriptor *
 mpegts_get_descriptor_from_stream (MpegTSBaseStream * stream, guint8 tag)
 {
-  GstMpegTsPMTStream *pmt = stream->stream;
+  GstMpegtsPMTStream *pmt = stream->stream;
 
   GST_DEBUG ("Searching for tag 0x%02x in stream 0x%04x (stream_type 0x%02x)",
       tag, stream->pid, stream->stream_type);
@@ -316,10 +316,10 @@
 /* returns NULL if no matching descriptor found *
  * otherwise returns a descriptor that needs to *
  * be freed */
-const GstMpegTsDescriptor *
+const GstMpegtsDescriptor *
 mpegts_get_descriptor_from_program (MpegTSBaseProgram * program, guint8 tag)
 {
-  const GstMpegTsPMT *pmt = program->pmt;
+  const GstMpegtsPMT *pmt = program->pmt;
 
   return gst_mpegts_find_descriptor (pmt->descriptors, tag);
 }
@@ -427,7 +427,7 @@
 static guint32
 get_registration_from_descriptors (GPtrArray * descriptors)
 {
-  const GstMpegTsDescriptor *desc;
+  const GstMpegtsDescriptor *desc;
 
   if ((desc =
           gst_mpegts_find_descriptor (descriptors,
@@ -444,7 +444,7 @@
 static MpegTSBaseStream *
 mpegts_base_program_add_stream (MpegTSBase * base,
     MpegTSBaseProgram * program, guint16 pid, guint8 stream_type,
-    GstMpegTsPMTStream * stream)
+    GstMpegtsPMTStream * stream)
 {
   MpegTSBaseClass *klass = GST_MPEGTS_BASE_GET_CLASS (base);
   MpegTSBaseStream *bstream;
@@ -507,7 +507,7 @@
 /* Return TRUE if programs are equal */
 static gboolean
 mpegts_base_is_same_program (MpegTSBase * base, MpegTSBaseProgram * oldprogram,
-    guint16 new_pmt_pid, const GstMpegTsPMT * new_pmt)
+    guint16 new_pmt_pid, const GstMpegtsPMT * new_pmt)
 {
   guint i, nbstreams;
   MpegTSBaseStream *oldstream;
@@ -528,7 +528,7 @@
   /* Check the streams */
   nbstreams = new_pmt->streams->len;
   for (i = 0; i < nbstreams; ++i) {
-    GstMpegTsPMTStream *stream = g_ptr_array_index (new_pmt->streams, i);
+    GstMpegtsPMTStream *stream = g_ptr_array_index (new_pmt->streams, i);
 
     oldstream = oldprogram->streams[stream->pid];
     if (!oldstream) {
@@ -574,7 +574,7 @@
 
   if (program->pmt) {
     for (i = 0; i < program->pmt->streams->len; ++i) {
-      GstMpegTsPMTStream *stream = g_ptr_array_index (program->pmt->streams, i);
+      GstMpegtsPMTStream *stream = g_ptr_array_index (program->pmt->streams, i);
 
       mpegts_base_program_remove_stream (base, program, stream->pid);
 
@@ -582,8 +582,8 @@
        * program */
       if (!mpegts_pid_in_active_programs (base, stream->pid)) {
         switch (stream->stream_type) {
-          case GST_MPEG_TS_STREAM_TYPE_SCTE_DSMCC_DCB:
-          case GST_MPEG_TS_STREAM_TYPE_SCTE_SIGNALING:
+          case GST_MPEGTS_STREAM_TYPE_SCTE_DSMCC_DCB:
+          case GST_MPEGTS_STREAM_TYPE_SCTE_SIGNALING:
           {
             guint32 registration_id =
                 get_registration_from_descriptors (stream->descriptors);
@@ -594,15 +594,15 @@
               break;
             /* Fall through on purpose - remove this PID from known_psi */
           }
-          case GST_MPEG_TS_STREAM_TYPE_PRIVATE_SECTIONS:
-          case GST_MPEG_TS_STREAM_TYPE_MHEG:
-          case GST_MPEG_TS_STREAM_TYPE_DSM_CC:
-          case GST_MPEG_TS_STREAM_TYPE_DSMCC_A:
-          case GST_MPEG_TS_STREAM_TYPE_DSMCC_B:
-          case GST_MPEG_TS_STREAM_TYPE_DSMCC_C:
-          case GST_MPEG_TS_STREAM_TYPE_DSMCC_D:
-          case GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_SECTIONS:
-          case GST_MPEG_TS_STREAM_TYPE_METADATA_SECTIONS:
+          case GST_MPEGTS_STREAM_TYPE_PRIVATE_SECTIONS:
+          case GST_MPEGTS_STREAM_TYPE_MHEG:
+          case GST_MPEGTS_STREAM_TYPE_DSM_CC:
+          case GST_MPEGTS_STREAM_TYPE_DSMCC_A:
+          case GST_MPEGTS_STREAM_TYPE_DSMCC_B:
+          case GST_MPEGTS_STREAM_TYPE_DSMCC_C:
+          case GST_MPEGTS_STREAM_TYPE_DSMCC_D:
+          case GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_SECTIONS:
+          case GST_MPEGTS_STREAM_TYPE_METADATA_SECTIONS:
             /* Set known PSI streams */
             if (base->parse_private_sections)
               MPEGTS_BIT_UNSET (base->known_psi, stream->pid);
@@ -630,7 +630,7 @@
 
 static void
 mpegts_base_activate_program (MpegTSBase * base, MpegTSBaseProgram * program,
-    guint16 pmt_pid, GstMpegTsSection * section, const GstMpegTsPMT * pmt,
+    guint16 pmt_pid, GstMpegtsSection * section, const GstMpegtsPMT * pmt,
     gboolean initial_program)
 {
   guint i;
@@ -657,11 +657,11 @@
       program->program_number, SAFE_FOURCC_ARGS (program->registration_id));
 
   for (i = 0; i < pmt->streams->len; ++i) {
-    GstMpegTsPMTStream *stream = g_ptr_array_index (pmt->streams, i);
+    GstMpegtsPMTStream *stream = g_ptr_array_index (pmt->streams, i);
 
     switch (stream->stream_type) {
-      case GST_MPEG_TS_STREAM_TYPE_SCTE_DSMCC_DCB:
-      case GST_MPEG_TS_STREAM_TYPE_SCTE_SIGNALING:
+      case GST_MPEGTS_STREAM_TYPE_SCTE_DSMCC_DCB:
+      case GST_MPEGTS_STREAM_TYPE_SCTE_SIGNALING:
       {
         guint32 registration_id =
             get_registration_from_descriptors (stream->descriptors);
@@ -670,15 +670,15 @@
           break;
         /* Fall through on purpose - remove this PID from known_psi */
       }
-      case GST_MPEG_TS_STREAM_TYPE_PRIVATE_SECTIONS:
-      case GST_MPEG_TS_STREAM_TYPE_MHEG:
-      case GST_MPEG_TS_STREAM_TYPE_DSM_CC:
-      case GST_MPEG_TS_STREAM_TYPE_DSMCC_A:
-      case GST_MPEG_TS_STREAM_TYPE_DSMCC_B:
-      case GST_MPEG_TS_STREAM_TYPE_DSMCC_C:
-      case GST_MPEG_TS_STREAM_TYPE_DSMCC_D:
-      case GST_MPEG_TS_STREAM_TYPE_SL_FLEXMUX_SECTIONS:
-      case GST_MPEG_TS_STREAM_TYPE_METADATA_SECTIONS:
+      case GST_MPEGTS_STREAM_TYPE_PRIVATE_SECTIONS:
+      case GST_MPEGTS_STREAM_TYPE_MHEG:
+      case GST_MPEGTS_STREAM_TYPE_DSM_CC:
+      case GST_MPEGTS_STREAM_TYPE_DSMCC_A:
+      case GST_MPEGTS_STREAM_TYPE_DSMCC_B:
+      case GST_MPEGTS_STREAM_TYPE_DSMCC_C:
+      case GST_MPEGTS_STREAM_TYPE_DSMCC_D:
+      case GST_MPEGTS_STREAM_TYPE_SL_FLEXMUX_SECTIONS:
+      case GST_MPEGTS_STREAM_TYPE_METADATA_SECTIONS:
         /* Set known PSI streams */
         if (base->parse_private_sections)
           MPEGTS_BIT_SET (base->known_psi, stream->pid);
@@ -719,7 +719,7 @@
 
 
 static gboolean
-mpegts_base_apply_pat (MpegTSBase * base, GstMpegTsSection * section)
+mpegts_base_apply_pat (MpegTSBase * base, GstMpegtsSection * section)
 {
   GPtrArray *pat = gst_mpegts_section_get_pat (section);
   GPtrArray *old_pat;
@@ -745,7 +745,7 @@
   GST_LOG ("Activating new Program Association Table");
   /* activate the new table */
   for (i = 0; i < pat->len; ++i) {
-    GstMpegTsPatProgram *patp = g_ptr_array_index (pat, i);
+    GstMpegtsPatProgram *patp = g_ptr_array_index (pat, i);
 
     program = mpegts_base_get_program (base, patp->program_number);
     if (program) {
@@ -781,7 +781,7 @@
     GST_LOG ("Deactivating old Program Association Table");
 
     for (i = 0; i < old_pat->len; ++i) {
-      GstMpegTsPatProgram *patp = g_ptr_array_index (old_pat, i);
+      GstMpegtsPatProgram *patp = g_ptr_array_index (old_pat, i);
 
       program = mpegts_base_get_program (base, patp->program_number);
       if (G_UNLIKELY (program == NULL)) {
@@ -820,9 +820,9 @@
 }
 
 static gboolean
-mpegts_base_apply_pmt (MpegTSBase * base, GstMpegTsSection * section)
+mpegts_base_apply_pmt (MpegTSBase * base, GstMpegtsSection * section)
 {
-  const GstMpegTsPMT *pmt;
+  const GstMpegtsPMT *pmt;
   MpegTSBaseProgram *program, *old_program;
   guint program_number;
   gboolean initial_program = TRUE;
@@ -893,7 +893,7 @@
 }
 
 static void
-mpegts_base_handle_psi (MpegTSBase * base, GstMpegTsSection * section)
+mpegts_base_handle_psi (MpegTSBase * base, GstMpegtsSection * section)
 {
   gboolean post_message = TRUE;
 
@@ -932,9 +932,9 @@
 }
 
 static gboolean
-mpegts_base_parse_atsc_mgt (MpegTSBase * base, GstMpegTsSection * section)
+mpegts_base_parse_atsc_mgt (MpegTSBase * base, GstMpegtsSection * section)
 {
-  const GstMpegTsAtscMGT *mgt;
+  const GstMpegtsAtscMGT *mgt;
   gint i;
 
   mgt = gst_mpegts_section_get_atsc_mgt (section);
@@ -942,12 +942,12 @@
     return FALSE;
 
   for (i = 0; i < mgt->tables->len; ++i) {
-    GstMpegTsAtscMGTTable *table = g_ptr_array_index (mgt->tables, i);
+    GstMpegtsAtscMGTTable *table = g_ptr_array_index (mgt->tables, i);
 
-    if ((table->table_type >= GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_EIT0 &&
-            table->table_type <= GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_EIT127) ||
-        (table->table_type >= GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_ETT0 &&
-            table->table_type <= GST_MPEG_TS_ATSC_MGT_TABLE_TYPE_ETT127)) {
+    if ((table->table_type >= GST_MPEGTS_ATSC_MGT_TABLE_TYPE_EIT0 &&
+            table->table_type <= GST_MPEGTS_ATSC_MGT_TABLE_TYPE_EIT127) ||
+        (table->table_type >= GST_MPEGTS_ATSC_MGT_TABLE_TYPE_ETT0 &&
+            table->table_type <= GST_MPEGTS_ATSC_MGT_TABLE_TYPE_ETT127)) {
       MPEGTS_BIT_SET (base->known_psi, table->pid);
     }
   }
@@ -956,9 +956,9 @@
 }
 
 static gboolean
-mpegts_base_get_tags_from_eit (MpegTSBase * base, GstMpegTsSection * section)
+mpegts_base_get_tags_from_eit (MpegTSBase * base, GstMpegtsSection * section)
 {
-  const GstMpegTsEIT *eit;
+  const GstMpegtsEIT *eit;
   guint i;
   MpegTSBaseProgram *program;
 
@@ -981,8 +981,8 @@
 
   if (program && eit->present_following) {
     for (i = 0; i < eit->events->len; i++) {
-      GstMpegTsEITEvent *event = g_ptr_array_index (eit->events, i);
-      const GstMpegTsDescriptor *desc;
+      GstMpegtsEITEvent *event = g_ptr_array_index (eit->events, i);
+      const GstMpegtsDescriptor *desc;
 
       if (event->running_status == RUNNING_STATUS_RUNNING) {
         program->event_id = event->event_id;
@@ -1174,14 +1174,14 @@
         && MPEGTS_BIT_IS_SET (base->known_psi, packet.pid)) {
       /* base PSI data */
       GList *others, *tmp;
-      GstMpegTsSection *section;
+      GstMpegtsSection *section;
 
       section = mpegts_packetizer_push_section (packetizer, &packet, &others);
       if (section)
         mpegts_base_handle_psi (base, section);
       if (G_UNLIKELY (others)) {
         for (tmp = others; tmp; tmp = tmp->next)
-          mpegts_base_handle_psi (base, (GstMpegTsSection *) tmp->data);
+          mpegts_base_handle_psi (base, (GstMpegtsSection *) tmp->data);
         g_list_free (others);
       }
 
diff --git a/gst/mpegtsdemux/mpegtsbase.h b/gst/mpegtsdemux/mpegtsbase.h
index 6e0bee1..6b2d7d3 100644
--- a/gst/mpegtsdemux/mpegtsbase.h
+++ b/gst/mpegtsdemux/mpegtsbase.h
@@ -63,7 +63,7 @@
   /* Content of the registration descriptor (if present) */
   guint32             registration_id;
 
-  GstMpegTsPMTStream *stream;
+  GstMpegtsPMTStream *stream;
 };
 
 struct _MpegTSBaseProgram
@@ -75,8 +75,8 @@
   /* Content of the registration descriptor (if present) */
   guint32             registration_id;
 
-  GstMpegTsSection   *section;
-  const GstMpegTsPMT *pmt;
+  GstMpegtsSection   *section;
+  const GstMpegtsPMT *pmt;
 
   MpegTSBaseStream  **streams;
   GList              *stream_list;
@@ -165,7 +165,7 @@
 
   /* Virtual methods */
   void (*reset) (MpegTSBase *base);
-  GstFlowReturn (*push) (MpegTSBase *base, MpegTSPacketizerPacket *packet, GstMpegTsSection * section);
+  GstFlowReturn (*push) (MpegTSBase *base, MpegTSPacketizerPacket *packet, GstMpegtsSection * section);
   /* takes ownership of @event */
   gboolean (*push_event) (MpegTSBase *base, GstEvent * event);
 
@@ -213,8 +213,8 @@
 G_GNUC_INTERNAL MpegTSBaseProgram *mpegts_base_get_program (MpegTSBase * base, gint program_number);
 G_GNUC_INTERNAL MpegTSBaseProgram *mpegts_base_add_program (MpegTSBase * base, gint program_number, guint16 pmt_pid);
 
-G_GNUC_INTERNAL const GstMpegTsDescriptor *mpegts_get_descriptor_from_stream (MpegTSBaseStream * stream, guint8 tag);
-G_GNUC_INTERNAL const GstMpegTsDescriptor *mpegts_get_descriptor_from_program (MpegTSBaseProgram * program, guint8 tag);
+G_GNUC_INTERNAL const GstMpegtsDescriptor *mpegts_get_descriptor_from_stream (MpegTSBaseStream * stream, guint8 tag);
+G_GNUC_INTERNAL const GstMpegtsDescriptor *mpegts_get_descriptor_from_program (MpegTSBaseProgram * program, guint8 tag);
 
 G_GNUC_INTERNAL gboolean
 mpegts_base_handle_seek_event(MpegTSBase * base, GstPad * pad, GstEvent * event);
diff --git a/gst/mpegtsdemux/mpegtspacketizer.c b/gst/mpegtsdemux/mpegtspacketizer.c
index b504739..fea8fc0 100644
--- a/gst/mpegtsdemux/mpegtspacketizer.c
+++ b/gst/mpegtsdemux/mpegtspacketizer.c
@@ -469,12 +469,12 @@
   return PACKET_OK;
 }
 
-static GstMpegTsSection *
+static GstMpegtsSection *
 mpegts_packetizer_parse_section_header (MpegTSPacketizer2 * packetizer,
     MpegTSPacketizerStream * stream)
 {
   MpegTSPacketizerStreamSubtable *subtable;
-  GstMpegTsSection *res;
+  GstMpegtsSection *res;
 
   subtable =
       find_subtable (stream->subtables, stream->table_id,
@@ -874,7 +874,7 @@
  * * The section applies now (current_next_indicator)
  * * The section is an update or was never seen
  *
- * The section should be a new GstMpegTsSection:
+ * The section should be a new GstMpegtsSection:
  * * properly initialized
  * * With pid, table_id AND section_type set (move logic from mpegtsbase)
  * * With data copied into it (yes, minor overhead)
@@ -884,12 +884,12 @@
  * If more than one section is available, the 'remaining' field will
  * be set to the beginning of a valid GList containing other sections.
  * */
-GstMpegTsSection *
+GstMpegtsSection *
 mpegts_packetizer_push_section (MpegTSPacketizer2 * packetizer,
     MpegTSPacketizerPacket * packet, GList ** remaining)
 {
-  GstMpegTsSection *section;
-  GstMpegTsSection *res = NULL;
+  GstMpegtsSection *section;
+  GstMpegtsSection *res = NULL;
   MpegTSPacketizerStream *stream;
   gboolean long_packet;
   guint8 pointer = 0, table_id;
diff --git a/gst/mpegtsdemux/mpegtspacketizer.h b/gst/mpegtsdemux/mpegtspacketizer.h
index a453bd9..883e297 100644
--- a/gst/mpegtsdemux/mpegtspacketizer.h
+++ b/gst/mpegtsdemux/mpegtspacketizer.h
@@ -348,7 +348,7 @@
 G_GNUC_INTERNAL void mpegts_packetizer_remove_stream(MpegTSPacketizer2 *packetizer,
   gint16 pid);
 
-G_GNUC_INTERNAL GstMpegTsSection *mpegts_packetizer_push_section (MpegTSPacketizer2 *packetzer,
+G_GNUC_INTERNAL GstMpegtsSection *mpegts_packetizer_push_section (MpegTSPacketizer2 *packetzer,
 								  MpegTSPacketizerPacket *packet, GList **remaining);
 
 /* Only valid if calculate_offset is TRUE */
diff --git a/gst/mpegtsdemux/mpegtsparse.c b/gst/mpegtsdemux/mpegtsparse.c
index 7fda8aa..87281b2 100644
--- a/gst/mpegtsdemux/mpegtsparse.c
+++ b/gst/mpegtsdemux/mpegtsparse.c
@@ -91,7 +91,7 @@
 
 static GstFlowReturn
 mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet,
-    GstMpegTsSection * section);
+    GstMpegtsSection * section);
 
 static MpegTSParsePad *mpegts_parse_create_tspad (MpegTSParse2 * parse,
     const gchar * name);
@@ -402,7 +402,7 @@
 
 static GstFlowReturn
 mpegts_parse_tspad_push_section (MpegTSParse2 * parse, MpegTSParsePad * tspad,
-    GstMpegTsSection * section, MpegTSPacketizerPacket * packet)
+    GstMpegtsSection * section, MpegTSPacketizerPacket * packet)
 {
   GstFlowReturn ret = GST_FLOW_OK;
   gboolean to_push = TRUE;
@@ -480,7 +480,7 @@
 
 static GstFlowReturn
 mpegts_parse_push (MpegTSBase * base, MpegTSPacketizerPacket * packet,
-    GstMpegTsSection * section)
+    GstMpegtsSection * section)
 {
   MpegTSParse2 *parse = (MpegTSParse2 *) base;
   guint32 pads_cookie;
diff --git a/gst/mpegtsdemux/tsdemux.c b/gst/mpegtsdemux/tsdemux.c
index 5d11271..7f2d255 100644
--- a/gst/mpegtsdemux/tsdemux.c
+++ b/gst/mpegtsdemux/tsdemux.c
@@ -275,7 +275,7 @@
 static void gst_ts_demux_reset (MpegTSBase * base);
 static GstFlowReturn
 gst_ts_demux_push (MpegTSBase * base, MpegTSPacketizerPacket * packet,
-    GstMpegTsSection * section);
+    GstMpegtsSection * section);
 static void gst_ts_demux_flush (MpegTSBase * base, gboolean hard);
 static GstFlowReturn gst_ts_demux_drain (MpegTSBase * base);
 static void
@@ -960,14 +960,14 @@
 gst_ts_demux_create_tags (TSDemuxStream * stream)
 {
   MpegTSBaseStream *bstream = (MpegTSBaseStream *) stream;
-  const GstMpegTsDescriptor *desc = NULL;
+  const GstMpegtsDescriptor *desc = NULL;
   int i, nb;
 
   desc =
       mpegts_get_descriptor_from_stream (bstream,
       GST_MTS_DESC_ISO_639_LANGUAGE);
   if (desc) {
-    gchar lang_code[4];
+    gchar *lang_code;
 
     nb = gst_mpegts_descriptor_parse_iso_639_language_nb (desc);
 
@@ -975,8 +975,10 @@
 
     for (i = 0; i < nb; i++)
       if (gst_mpegts_descriptor_parse_iso_639_language_idx (desc, i, &lang_code,
-              NULL))
+              NULL)) {
         add_iso639_language_to_tags (stream, lang_code);
+        g_free (lang_code);
+      }
 
     return;
   }
@@ -985,7 +987,7 @@
       mpegts_get_descriptor_from_stream (bstream, GST_MTS_DESC_DVB_SUBTITLING);
 
   if (desc) {
-    gchar lang_code[4];
+    gchar *lang_code;
 
     nb = gst_mpegts_descriptor_parse_dvb_subtitling_nb (desc);
 
@@ -993,8 +995,10 @@
 
     for (i = 0; i < nb; i++)
       if (gst_mpegts_descriptor_parse_dvb_subtitling_idx (desc, i, &lang_code,
-              NULL, NULL, NULL))
+              NULL, NULL, NULL)) {
         add_iso639_language_to_tags (stream, lang_code);
+        g_free (lang_code);
+      }
   }
 }
 
@@ -1007,7 +1011,7 @@
   gchar *name = NULL;
   GstCaps *caps = NULL;
   GstPadTemplate *template = NULL;
-  const GstMpegTsDescriptor *desc = NULL;
+  const GstMpegtsDescriptor *desc = NULL;
   GstPad *pad = NULL;
 
   gst_ts_demux_create_tags (stream);
@@ -1021,7 +1025,7 @@
     switch (bstream->stream_type) {
       case ST_BD_AUDIO_AC3:
       {
-        const GstMpegTsDescriptor *ac3_desc;
+        const GstMpegtsDescriptor *ac3_desc;
 
         /* ATSC ac3 audio descriptor */
         ac3_desc =
@@ -1075,8 +1079,8 @@
 
   /* Handle non-BluRay stream types */
   switch (bstream->stream_type) {
-    case GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG1:
-    case GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG2:
+    case GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG1:
+    case GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2:
     case ST_PS_VIDEO_MPEG2_DCII:
       /* FIXME : Use DCII registration code (ETV1 ?) to handle that special
        * Stream type (ST_PS_VIDEO_MPEG2_DCII) */
@@ -1089,12 +1093,12 @@
       name = g_strdup_printf ("video_%04x", bstream->pid);
       caps = gst_caps_new_simple ("video/mpeg",
           "mpegversion", G_TYPE_INT,
-          bstream->stream_type == GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG1 ? 1 : 2,
+          bstream->stream_type == GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG1 ? 1 : 2,
           "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
 
       break;
-    case GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG1:
-    case GST_MPEG_TS_STREAM_TYPE_AUDIO_MPEG2:
+    case GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG1:
+    case GST_MPEGTS_STREAM_TYPE_AUDIO_MPEG2:
       GST_LOG ("mpeg audio");
       template = gst_static_pad_template_get (&audio_template);
       name = g_strdup_printf ("audio_%04x", bstream->pid);
@@ -1105,7 +1109,7 @@
       if (program->registration_id == DRF_ID_TSHV)
         gst_caps_set_simple (caps, "layer", G_TYPE_INT, 2, NULL);
       break;
-    case GST_MPEG_TS_STREAM_TYPE_PRIVATE_PES_PACKETS:
+    case GST_MPEGTS_STREAM_TYPE_PRIVATE_PES_PACKETS:
       GST_LOG ("private data");
       /* FIXME: Move all of this into a common method (there might be other
        * types also, depending on registratino descriptors also
@@ -1198,35 +1202,35 @@
       /* name = g_strdup_printf ("private_%04x", bstream->pid); */
       /* caps = gst_caps_new_simple ("hdv/aux-a", NULL); */
       break;
-    case GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_ADTS:
+    case GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_ADTS:
       template = gst_static_pad_template_get (&audio_template);
       name = g_strdup_printf ("audio_%04x", bstream->pid);
       caps = gst_caps_new_simple ("audio/mpeg",
           "mpegversion", G_TYPE_INT, 2,
           "stream-format", G_TYPE_STRING, "adts", NULL);
       break;
-    case GST_MPEG_TS_STREAM_TYPE_AUDIO_AAC_LATM:
+    case GST_MPEGTS_STREAM_TYPE_AUDIO_AAC_LATM:
       template = gst_static_pad_template_get (&audio_template);
       name = g_strdup_printf ("audio_%04x", bstream->pid);
       caps = gst_caps_new_simple ("audio/mpeg",
           "mpegversion", G_TYPE_INT, 4,
           "stream-format", G_TYPE_STRING, "loas", NULL);
       break;
-    case GST_MPEG_TS_STREAM_TYPE_VIDEO_MPEG4:
+    case GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG4:
       template = gst_static_pad_template_get (&video_template);
       name = g_strdup_printf ("video_%04x", bstream->pid);
       caps = gst_caps_new_simple ("video/mpeg",
           "mpegversion", G_TYPE_INT, 4,
           "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
       break;
-    case GST_MPEG_TS_STREAM_TYPE_VIDEO_H264:
+    case GST_MPEGTS_STREAM_TYPE_VIDEO_H264:
       template = gst_static_pad_template_get (&video_template);
       name = g_strdup_printf ("video_%04x", bstream->pid);
       caps = gst_caps_new_simple ("video/x-h264",
           "stream-format", G_TYPE_STRING, "byte-stream",
           "alignment", G_TYPE_STRING, "nal", NULL);
       break;
-    case GST_MPEG_TS_STREAM_TYPE_VIDEO_HEVC:
+    case GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC:
       template = gst_static_pad_template_get (&video_template);
       name = g_strdup_printf ("video_%04x", bstream->pid);
       caps = gst_caps_new_simple ("video/x-h265",
@@ -1381,7 +1385,7 @@
         gst_flow_combiner_add_pad (demux->flowcombiner, stream->pad);
     }
 
-    if (bstream->stream_type == GST_MPEG_TS_STREAM_TYPE_VIDEO_H264) {
+    if (bstream->stream_type == GST_MPEGTS_STREAM_TYPE_VIDEO_H264) {
       stream->scan_function =
           (GstTsDemuxKeyFrameScanFunction) scan_keyframe_h264;
     } else {
@@ -2147,7 +2151,7 @@
 
 static GstFlowReturn
 gst_ts_demux_handle_packet (GstTSDemux * demux, TSDemuxStream * stream,
-    MpegTSPacketizerPacket * packet, GstMpegTsSection * section)
+    MpegTSPacketizerPacket * packet, GstMpegtsSection * section)
 {
   GstFlowReturn res = GST_FLOW_OK;
 
@@ -2228,7 +2232,7 @@
 
 static GstFlowReturn
 gst_ts_demux_push (MpegTSBase * base, MpegTSPacketizerPacket * packet,
-    GstMpegTsSection * section)
+    GstMpegtsSection * section)
 {
   GstTSDemux *demux = GST_TS_DEMUX_CAST (base);
   TSDemuxStream *stream = NULL;
diff --git a/gst/mpegtsmux/mpegtsmux.c b/gst/mpegtsmux/mpegtsmux.c
index 6b7662f..af246a2 100644
--- a/gst/mpegtsmux/mpegtsmux.c
+++ b/gst/mpegtsmux/mpegtsmux.c
@@ -1737,7 +1737,7 @@
 static gboolean
 mpegtsmux_send_event (GstElement * element, GstEvent * event)
 {
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
   MpegTsMux *mux = GST_MPEG_TSMUX (element);
 
   g_return_val_if_fail (event != NULL, FALSE);
diff --git a/gst/mpegtsmux/tsmux/tsmux.c b/gst/mpegtsmux/tsmux/tsmux.c
index 6a1c064..7eb7b86 100644
--- a/gst/mpegtsmux/tsmux/tsmux.c
+++ b/gst/mpegtsmux/tsmux/tsmux.c
@@ -263,14 +263,14 @@
 /**
  * tsmux_add_mpegts_si_section:
  * @mux: a #TsMux
- * @section: (transfer full): a #GstMpegTsSection to add
+ * @section: (transfer full): a #GstMpegtsSection to add
  *
- * Add a Service Information #GstMpegTsSection to the stream
+ * Add a Service Information #GstMpegtsSection to the stream
  *
  * Returns: #TRUE on success, #FALSE otherwise
  */
 gboolean
-tsmux_add_mpegts_si_section (TsMux * mux, GstMpegTsSection * section)
+tsmux_add_mpegts_si_section (TsMux * mux, GstMpegtsSection * section)
 {
   TsMuxSection *tsmux_section;
 
@@ -842,7 +842,7 @@
 }
 
 static gboolean
-tsmux_section_write_packet (GstMpegTsSectionType * type,
+tsmux_section_write_packet (GstMpegtsSectionType * type,
     TsMuxSection * section, TsMux * mux)
 {
   GstBuffer *section_buffer;
@@ -872,7 +872,7 @@
   payload_written = 0;
 
   /* Wrap section data in a buffer without free function.
-     The data will be freed when the GstMpegTsSection is destroyed. */
+     The data will be freed when the GstMpegtsSection is destroyed. */
   section_buffer = gst_buffer_new_wrapped_full (GST_MEMORY_FLAG_READONLY,
       data, data_size, 0, data_size, NULL, NULL);
 
@@ -1138,7 +1138,7 @@
     pat = gst_mpegts_pat_new ();
 
     for (cur = mux->programs; cur; cur = cur->next) {
-      GstMpegTsPatProgram *pat_pgm;
+      GstMpegtsPatProgram *pat_pgm;
       TsMuxProgram *program = (TsMuxProgram *) cur->data;
 
       pat_pgm = gst_mpegts_pat_program_new ();
@@ -1187,8 +1187,8 @@
      *    }
      * }
      */
-    GstMpegTsDescriptor *descriptor;
-    GstMpegTsPMT *pmt;
+    GstMpegtsDescriptor *descriptor;
+    GstMpegtsPMT *pmt;
     guint8 desc[] = { 0x0F, 0xFF, 0xFC, 0xFC };
     guint i;
 
@@ -1207,7 +1207,7 @@
 
     /* Write out the entries */
     for (i = 0; i < program->streams->len; i++) {
-      GstMpegTsPMTStream *pmt_stream;
+      GstMpegtsPMTStream *pmt_stream;
       TsMuxStream *stream = g_array_index (program->streams, TsMuxStream *, i);
 
       pmt_stream = gst_mpegts_pmt_stream_new ();
diff --git a/gst/mpegtsmux/tsmux/tsmux.h b/gst/mpegtsmux/tsmux/tsmux.h
index 2368378..dd1185a 100644
--- a/gst/mpegtsmux/tsmux/tsmux.h
+++ b/gst/mpegtsmux/tsmux/tsmux.h
@@ -105,7 +105,7 @@
 
 struct TsMuxSection {
   TsMuxPacketInfo pi;
-  GstMpegTsSection *section;
+  GstMpegtsSection *section;
 };
 
 /* Information for the streams associated with one program */
@@ -200,7 +200,7 @@
 /* SI table management */
 void            tsmux_set_si_interval           (TsMux *mux, guint interval);
 guint           tsmux_get_si_interval           (TsMux *mux);
-gboolean        tsmux_add_mpegts_si_section     (TsMux * mux, GstMpegTsSection * section);
+gboolean        tsmux_add_mpegts_si_section     (TsMux * mux, GstMpegtsSection * section);
 
 /* stream management */
 TsMuxStream *	tsmux_create_stream 		(TsMux *mux, TsMuxStreamType stream_type, guint16 pid, gchar *language);
diff --git a/gst/mpegtsmux/tsmux/tsmuxstream.c b/gst/mpegtsmux/tsmux/tsmuxstream.c
index 7a4605e..2cbbf76 100644
--- a/gst/mpegtsmux/tsmux/tsmuxstream.c
+++ b/gst/mpegtsmux/tsmux/tsmuxstream.c
@@ -697,9 +697,9 @@
  */
 void
 tsmux_stream_get_es_descrs (TsMuxStream * stream,
-    GstMpegTsPMTStream * pmt_stream)
+    GstMpegtsPMTStream * pmt_stream)
 {
-  GstMpegTsDescriptor *descriptor;
+  GstMpegtsDescriptor *descriptor;
 
   g_return_if_fail (stream != NULL);
   g_return_if_fail (pmt_stream != NULL);
diff --git a/gst/mpegtsmux/tsmux/tsmuxstream.h b/gst/mpegtsmux/tsmux/tsmuxstream.h
index 33d5eaf..5640df6 100644
--- a/gst/mpegtsmux/tsmux/tsmuxstream.h
+++ b/gst/mpegtsmux/tsmux/tsmuxstream.h
@@ -228,7 +228,7 @@
 gboolean	tsmux_stream_is_pcr 		(TsMuxStream *stream);
 
 gboolean 	tsmux_stream_at_pes_start 	(TsMuxStream *stream);
-void 		tsmux_stream_get_es_descrs 	(TsMuxStream *stream, GstMpegTsPMTStream *pmt_stream);
+void 		tsmux_stream_get_es_descrs 	(TsMuxStream *stream, GstMpegtsPMTStream *pmt_stream);
 
 gint 		tsmux_stream_bytes_in_buffer 	(TsMuxStream *stream);
 gint 		tsmux_stream_bytes_avail 	(TsMuxStream *stream);
diff --git a/gst/videoparsers/gsth264parse.c b/gst/videoparsers/gsth264parse.c
index 2b43b30..c14784a 100644
--- a/gst/videoparsers/gsth264parse.c
+++ b/gst/videoparsers/gsth264parse.c
@@ -501,6 +501,16 @@
             "new buffering period; ts_trn_nb updated: %" GST_TIME_FORMAT,
             GST_TIME_ARGS (h264parse->ts_trn_nb));
         break;
+
+        /* Additional messages that are not innerly useful to the
+         * element but for debugging purposes */
+      case GST_H264_SEI_RECOVERY_POINT:
+        GST_LOG_OBJECT (h264parse, "recovery point found: %u %u %u %u",
+            sei.payload.recovery_point.recovery_frame_cnt,
+            sei.payload.recovery_point.exact_match_flag,
+            sei.payload.recovery_point.broken_link_flag,
+            sei.payload.recovery_point.changing_slice_group_idc);
+        break;
     }
   }
   g_array_free (messages, TRUE);
@@ -571,6 +581,7 @@
       }
 
       gst_h264_parser_store_nal (h264parse, pps.id, nal_type, nalu);
+      gst_h264_pps_clear (&pps);
       break;
     case GST_H264_NAL_SEI:
       gst_h264_parse_process_sei (h264parse, nalu);
diff --git a/gst/videoparsers/gsth265parse.c b/gst/videoparsers/gsth265parse.c
index d2e828d..caf4616 100644
--- a/gst/videoparsers/gsth265parse.c
+++ b/gst/videoparsers/gsth265parse.c
@@ -1767,7 +1767,7 @@
     size = map.size;
 
     /* parse the hvcC data */
-    if (size < 28) {
+    if (size < 23) {
       gst_buffer_unmap (codec_data, &map);
       goto hvcc_too_small;
     }
@@ -1854,7 +1854,7 @@
   /* ERRORS */
 hvcc_too_small:
   {
-    GST_DEBUG_OBJECT (h265parse, "hvcC size %" G_GSIZE_FORMAT " < 8", size);
+    GST_DEBUG_OBJECT (h265parse, "hvcC size %" G_GSIZE_FORMAT " < 23", size);
     goto refuse_caps;
   }
 wrong_version:
diff --git a/install-sh b/install-sh
index a9244eb..377bb86 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2011-01-19.21; # UTC
+scriptversion=2011-11-20.07; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -35,7 +35,7 @@
 # FSF changes to this file are in the public domain.
 #
 # Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
+# 'make' implicit rules from creating a file called install from it
 # when there is no Makefile.
 #
 # This script is compatible with the BSD install script, but was written
@@ -156,7 +156,7 @@
     -s) stripcmd=$stripprog;;
 
     -t) dst_arg=$2
-	# Protect names problematic for `test' and other utilities.
+	# Protect names problematic for 'test' and other utilities.
 	case $dst_arg in
 	  -* | [=\(\)!]) dst_arg=./$dst_arg;;
 	esac
@@ -190,7 +190,7 @@
     fi
     shift # arg
     dst_arg=$arg
-    # Protect names problematic for `test' and other utilities.
+    # Protect names problematic for 'test' and other utilities.
     case $dst_arg in
       -* | [=\(\)!]) dst_arg=./$dst_arg;;
     esac
@@ -202,7 +202,7 @@
     echo "$0: no input file specified." >&2
     exit 1
   fi
-  # It's OK to call `install-sh -d' without argument.
+  # It's OK to call 'install-sh -d' without argument.
   # This can happen when creating conditional directories.
   exit 0
 fi
@@ -240,7 +240,7 @@
 
 for src
 do
-  # Protect names problematic for `test' and other utilities.
+  # Protect names problematic for 'test' and other utilities.
   case $src in
     -* | [=\(\)!]) src=./$src;;
   esac
@@ -354,7 +354,7 @@
 	      if test -z "$dir_arg" || {
 		   # Check for POSIX incompatibilities with -m.
 		   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-		   # other-writeable bit of parent directory when it shouldn't.
+		   # other-writable bit of parent directory when it shouldn't.
 		   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
 		   ls_ld_tmpdir=`ls -ld "$tmpdir"`
 		   case $ls_ld_tmpdir in
diff --git a/missing b/missing
index 86a8fc3..db98974 100755
--- a/missing
+++ b/missing
@@ -1,11 +1,10 @@
 #! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2012-01-06.13; # UTC
+scriptversion=2013-10-28.13; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -26,68 +25,40 @@
 # the same distribution terms that you use for the rest of that program.
 
 if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
+  echo 1>&2 "Try '$0 --help' for more information"
   exit 1
 fi
 
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
 case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
+
+  --is-lightweight)
+    # Used by our autoconf macros to check whether the available missing
+    # script is modern enough.
+    exit 0
+    ;;
+
+  --run)
+    # Back-compat with the calling convention used by older automake.
+    shift
+    ;;
 
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
 
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
+  bison     yacc      flex         lex       help2man
 
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
 
 Send bug reports to <bug-automake@gnu.org>."
     exit $?
@@ -99,228 +70,141 @@
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
+    echo 1>&2 "$0: unknown '$1' option"
+    echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
 esac
 
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
+# Run the given program, remember its exit status.
+"$@"; st=$?
 
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
+
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch.  This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+  msg="probably too old"
+elif test $st -eq 127; then
+  # Program was missing.
+  msg="missing on your system"
+else
+  # Program was found and executed, but failed.  Give up.
+  exit $st
+fi
+
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+  case $1 in
+    aclocal|automake)
+      echo "The '$1' program is part of the GNU Automake package:"
+      echo "<$gnu_software_URL/automake>"
+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/autoconf>"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+    autoconf|autom4te|autoheader)
+      echo "The '$1' program is part of the GNU Autoconf package:"
+      echo "<$gnu_software_URL/autoconf/>"
+      echo "It also requires GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+  esac
+}
+
+give_advice ()
+{
+  # Normalize program name to check for.
+  normalized_program=`echo "$1" | sed '
+    s/^gnu-//; t
+    s/^gnu//; t
+    s/^g//; t'`
+
+  printf '%s\n' "'$1' is $msg."
+
+  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+  case $normalized_program in
+    autoconf*)
+      echo "You should only need it if you modified 'configure.ac',"
+      echo "or m4 files included by it."
+      program_details 'autoconf'
+      ;;
+    autoheader*)
+      echo "You should only need it if you modified 'acconfig.h' or"
+      echo "$configure_deps."
+      program_details 'autoheader'
+      ;;
+    automake*)
+      echo "You should only need it if you modified 'Makefile.am' or"
+      echo "$configure_deps."
+      program_details 'automake'
+      ;;
+    aclocal*)
+      echo "You should only need it if you modified 'acinclude.m4' or"
+      echo "$configure_deps."
+      program_details 'aclocal'
+      ;;
+   autom4te*)
+      echo "You might have modified some maintainer files that require"
+      echo "the 'autom4te' program to be rebuilt."
+      program_details 'autom4te'
+      ;;
+    bison*|yacc*)
+      echo "You should only need it if you modified a '.y' file."
+      echo "You may want to install the GNU Bison package:"
+      echo "<$gnu_software_URL/bison/>"
+      ;;
+    lex*|flex*)
+      echo "You should only need it if you modified a '.l' file."
+      echo "You may want to install the Fast Lexical Analyzer package:"
+      echo "<$flex_URL>"
+      ;;
+    help2man*)
+      echo "You should only need it if you modified a dependency" \
+           "of a man page."
+      echo "You may want to install the GNU Help2man package:"
+      echo "<$gnu_software_URL/help2man/>"
     ;;
+    makeinfo*)
+      echo "You should only need it if you modified a '.texi' file, or"
+      echo "any other file indirectly affecting the aspect of the manual."
+      echo "You might want to install the Texinfo package:"
+      echo "<$gnu_software_URL/texinfo/>"
+      echo "The spurious makeinfo call might also be the consequence of"
+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+      echo "want to install GNU make:"
+      echo "<$gnu_software_URL/make/>"
+      ;;
+    *)
+      echo "You might have modified some files without having the proper"
+      echo "tools for further handling them.  Check the 'README' file, it"
+      echo "often tells you about the needed prerequisites for installing"
+      echo "this package.  You may also peek at any GNU archive site, in"
+      echo "case some other package contains this missing '$1' program."
+      ;;
+  esac
+}
 
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+                       -e '2,$s/^/         /' >&2
 
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-	   sed 's/\.am$/.in/' |
-	   while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo "#! /bin/sh"
-	echo "# Created by GNU Automake missing as a replacement of"
-	echo "#  $ $@"
-	echo "exit 0"
-	chmod +x $file
-	exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-	case $LASTARG in
-	*.y)
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.c
-	    fi
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.h
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f y.tab.h; then
-	echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-	echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-	case $LASTARG in
-	*.l)
-	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" lex.yy.c
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f lex.yy.c; then
-	echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-	 you modified a dependency of a manual page.  You may need the
-	 \`Help2man' package in order for those modifications to take
-	 effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo ".ab help2man is required to generate this page"
-	exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-	/^@setfilename/{
-	  s/.* \([^ ]*\) *$/\1/
-	  p
-	  q
-	}' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
-    ;;
-esac
-
-exit 0
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
diff --git a/po/af.gmo b/po/af.gmo
index c488c20..e9bd2a8 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index 552a8f6..572ac82 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.7.6\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2004-03-18 14:16+0200\n"
 "Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
 "Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/po/az.gmo b/po/az.gmo
index 498a713..de859a6 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index bd7cece..b59acf2 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2004-03-19 18:29+0200\n"
 "Last-Translator: Metin Amiroff <metin@karegen.com>\n"
 "Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
diff --git a/po/bg.gmo b/po/bg.gmo
index a5effe0..4708f1c 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index 3c204c6..6b744fa 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-04-26 22:30+0300\n"
 "Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
diff --git a/po/ca.gmo b/po/ca.gmo
index 853a7f0..0fdc9c1 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 8b06c0f..3f79135 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2012-01-01 14:19+0100\n"
 "Last-Translator: Gil Forcada <gforcada@gnome.org>\n"
 "Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/po/cs.gmo b/po/cs.gmo
index 341f8e4..4b1d25d 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 43d6e5f..d2b72af 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -11,7 +11,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.1.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2013-09-18 10:05+0200\n"
 "Last-Translator: Marek Černocký <marek@manet.cz>\n"
 "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/po/da.gmo b/po/da.gmo
index 5adfba3..e1dfa01 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index bc70015..b6bf51f 100644
--- a/po/da.po
+++ b/po/da.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-24 11:28+0200\n"
 "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
diff --git a/po/de.gmo b/po/de.gmo
index d7c99c5..2185e4e 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 3b22043..6ddc2aa 100644
--- a/po/de.po
+++ b/po/de.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-22 18:27+0100\n"
 "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
diff --git a/po/el.gmo b/po/el.gmo
index 109096c..50dc88b 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index a7b4c09..33fb772 100644
--- a/po/el.po
+++ b/po/el.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2012-05-05 19:17+0100\n"
 "Last-Translator: Savvas Radevic <vicedar@gmail.com>\n"
 "Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index 4175071..479020e 100644
--- a/po/en_GB.gmo
+++ b/po/en_GB.gmo
Binary files differ
diff --git a/po/en_GB.po b/po/en_GB.po
index b6e26a7..f1f2dac 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.8.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2004-04-26 10:41-0400\n"
 "Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
 "Language-Team: English (British) <en_gb@li.org>\n"
diff --git a/po/eo.gmo b/po/eo.gmo
index e8d200a..ef03385 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index 021a866..b42822f 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-06-04 22:18+0200\n"
 "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
 "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/po/es.gmo b/po/es.gmo
index 61e02d4..ede3552 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index 9376bf1..4bd7945 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-10-02 15:47+0200\n"
 "Last-Translator: Jorge González González <aloriel@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
diff --git a/po/eu.gmo b/po/eu.gmo
index bc4716c..9f1a785 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index d9a5387..82c8cbf 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-0.10.17.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2010-03-25 12:30+0100\n"
 "Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
 "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index a76d79e..ad2e169 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 019040b..0b7bf14 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -11,7 +11,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.13.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2009-08-12 22:13+0300\n"
 "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index 577cd74..02f207c 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index af4fb94..b7e8c44 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-04-28 09:13+0200\n"
 "Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
 "Language-Team: French <traduc@traduc.org>\n"
diff --git a/po/gl.gmo b/po/gl.gmo
index 5c7b48a..9866c41 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index 69dd602..5aa08e0 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-09-05 12:50+0200\n"
 "Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n"
 "Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/po/gst-plugins-bad-1.0.pot b/po/gst-plugins-bad-1.0.pot
index 1476c26..91d6722 100644
--- a/po/gst-plugins-bad-1.0.pot
+++ b/po/gst-plugins-bad-1.0.pot
@@ -5,9 +5,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-bad 1.3.3\n"
+"Project-Id-Version: gst-plugins-bad 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -124,27 +124,27 @@
 msgid "Given file name \"%s\" can't be converted to local file name encoding."
 msgstr ""
 
-#: sys/dvb/gstdvbsrc.c:1115 sys/dvb/gstdvbsrc.c:1301
+#: sys/dvb/gstdvbsrc.c:1118 sys/dvb/gstdvbsrc.c:1304
 #, c-format
 msgid "Device \"%s\" does not exist."
 msgstr ""
 
-#: sys/dvb/gstdvbsrc.c:1119
+#: sys/dvb/gstdvbsrc.c:1122
 #, c-format
 msgid "Could not open frontend device \"%s\"."
 msgstr ""
 
-#: sys/dvb/gstdvbsrc.c:1132
+#: sys/dvb/gstdvbsrc.c:1135
 #, c-format
 msgid "Could not get settings from frontend device \"%s\"."
 msgstr ""
 
-#: sys/dvb/gstdvbsrc.c:1148
+#: sys/dvb/gstdvbsrc.c:1151
 #, c-format
 msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
 msgstr ""
 
-#: sys/dvb/gstdvbsrc.c:1305
+#: sys/dvb/gstdvbsrc.c:1308
 #, c-format
 msgid "Could not open file \"%s\" for reading."
 msgstr ""
diff --git a/po/hr.gmo b/po/hr.gmo
index 027853e..0ba1d3d 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index 4d24d5a..58c3afb 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2012-04-16 02:06+0200\n"
 "Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
 "Language-Team: Croatian <lokalizacija@linux.hr>\n"
diff --git a/po/hu.gmo b/po/hu.gmo
index 731e05d..7f4dbda 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index 4b41bec..119aead 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-23 20:42+0200\n"
 "Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/po/id.gmo b/po/id.gmo
index 3c19c75..b40ce60 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index d786c98..a2c5250 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-31 22:16+0700\n"
 "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
diff --git a/po/it.gmo b/po/it.gmo
index f15e44c..c35eca2 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index e4ed5d8..d17eba9 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.13.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2009-08-14 00:12+0200\n"
 "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/po/ja.gmo b/po/ja.gmo
index 9e6e3c8..476f251 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 6efd8cd..716c851 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-04-26 19:38+0900\n"
 "Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/po/ky.gmo b/po/ky.gmo
index 20a08f2..023e8c6 100644
--- a/po/ky.gmo
+++ b/po/ky.gmo
Binary files differ
diff --git a/po/ky.po b/po/ky.po
index 73cf04b..8aece02 100644
--- a/po/ky.po
+++ b/po/ky.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.5\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2007-11-13 17:16+0600\n"
 "Last-Translator: Ilyas Bakirov <just_ilyas@yahoo.com>\n"
 "Language-Team: Kirghiz <i18n-team-ky-kyrgyz@lists.sourceforge.net>\n"
diff --git a/po/lt.gmo b/po/lt.gmo
index 32c82cc..d556aab 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 87a3e88..6656d4f 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-0.10.6.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2008-05-14 02:13+0300\n"
 "Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n"
 "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
diff --git a/po/lv.gmo b/po/lv.gmo
index 3cfa8eb..2436db5 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index 24df994..29784fc 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-04-20 15:52+0300\n"
 "Last-Translator: Rihards Prieditis <rprieditis@gmail.com>\n"
 "Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
diff --git a/po/mt.gmo b/po/mt.gmo
index 98cd23c..11a1625 100644
--- a/po/mt.gmo
+++ b/po/mt.gmo
Binary files differ
diff --git a/po/mt.po b/po/mt.po
index 765ce49..376c025 100644
--- a/po/mt.po
+++ b/po/mt.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-0.10.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2008-10-26 20:27+0100\n"
 "Last-Translator: Michel Bugeja <michelbugeja@rabatmalta.com>\n"
 "Language-Team: Maltese <translation-team-mt@lists.sourceforge.net>\n"
diff --git a/po/nb.gmo b/po/nb.gmo
index de58618..115ba62 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index 5ae46ad..fd6620f 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-01-22 17:56+0100\n"
 "Last-Translator: Johnny A. Solbu <johnny@solbu.net>\n"
 "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
diff --git a/po/nl.gmo b/po/nl.gmo
index d7a6bb6..0cf3d88 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 9e01868..aaa8682 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-22 00:31+0200\n"
 "Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
diff --git a/po/or.gmo b/po/or.gmo
index aa87a6c..bdd5193 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index 7bc8a4e..3bdbfd8 100644
--- a/po/or.po
+++ b/po/or.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2004-09-27 13:32+0530\n"
 "Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n"
 "Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index 4a25f5a..157f800 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 28fe3a8..0da3353 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-22 18:34+0200\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 0eea4ef..0da1b3b 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index cede153..fd7e942 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2013-12-17 01:09-0200\n"
 "Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
diff --git a/po/ro.gmo b/po/ro.gmo
index cfa0431..1460214 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index f041006..2110f0d 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.18.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2010-08-16 03:11+0300\n"
 "Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/po/ru.gmo b/po/ru.gmo
index 32527e2..825754c 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index 398459b..637ea28 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-22 19:59+0400\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@mx.ru>\n"
diff --git a/po/sk.gmo b/po/sk.gmo
index 5600516..b0b5174 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index 84d1b1e..cf978b4 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-01-30 10:44+0100\n"
 "Last-Translator: Peter Tuharsky <tuharsky@misbb.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index 4e14165..08cae41 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index c71dd90..90a9eda 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-04-26 15:21+0100\n"
 "Last-Translator: Klemen Košir <klemen.kosir@gmx.com>\n"
 "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/po/sq.gmo b/po/sq.gmo
index 924bacf..575722e 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index 16ab381..3c67212 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2008-08-15 16:07+0200\n"
 "Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
 "Language-Team: Albanian <translation-team-sq@lists.sourceforge.net>\n"
diff --git a/po/sr.gmo b/po/sr.gmo
index 5562514..a091abb 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index 4e5a997..6ff7eb3 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-06-18 19:15+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
diff --git a/po/sv.gmo b/po/sv.gmo
index 2783dab..5de77ca 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 9f90b95..346784b 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.13.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2009-08-12 20:29+0100\n"
 "Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index 35630f4..cd1e90d 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index ee8b814..8d4f482 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-0.10.21.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2011-04-26 19:21+0200\n"
 "Last-Translator: Server Acim <serveracim@gmail.com>\n"
 "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/po/uk.gmo b/po/uk.gmo
index 21cedc5..15de3c5 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index 1a836be..bf6c834 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2014-05-22 07:31+0300\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
diff --git a/po/vi.gmo b/po/vi.gmo
index e15afc0..8a61808 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 5660eb4..740946c 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad-1.1.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2013-09-16 14:18+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index e70ac72..4364306 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 5f1bf84..1b370ae 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-bad 0.10.16.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-06-22 17:56+0200\n"
+"POT-Creation-Date: 2014-06-28 11:24+0200\n"
 "PO-Revision-Date: 2009-11-20 18:12中国标准时间\n"
 "Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/sys/d3dvideosink/d3dhelpers.c b/sys/d3dvideosink/d3dhelpers.c
index c7ffc8c..88fcd99 100644
--- a/sys/d3dvideosink/d3dhelpers.c
+++ b/sys/d3dvideosink/d3dhelpers.c
@@ -58,6 +58,8 @@
 static gint WM_D3DVIDEO_NOTIFY_DEVICE_LOST = 0;
 #define IDT_DEVICE_RESET_TIMER 0
 
+#define WM_QUIT_THREAD  WM_USER+0
+
 /** Helpers **/
 
 #define ERROR_CHECK_HR(hr)                          \
@@ -1083,6 +1085,7 @@
 
   /* Unset current window  */
   if (sink->d3d.window_handle != NULL) {
+    PostMessage (sink->d3d.window_handle, WM_QUIT_THREAD, NULL, NULL);
     GST_DEBUG_OBJECT (sink, "Unsetting window [HWND:%p]",
         sink->d3d.window_handle);
     d3d_window_wndproc_unset (sink);
@@ -1096,6 +1099,8 @@
   if (window_id) {
     sink->d3d.window_handle = (HWND) window_id;
     sink->d3d.window_is_internal = is_internal;
+    if (!is_internal)
+      sink->d3d.external_window_handle = sink->d3d.window_handle;
     /* If caps have been set.. prepare window */
     if (sink->format != 0)
       d3d_prepare_render_window (sink);
@@ -1131,6 +1136,10 @@
 
   LOCK_SINK (sink);
 
+  /* if we already had an external window, then use it again */
+  if (sink->d3d.external_window_handle)
+    sink->d3d.window_handle = sink->d3d.external_window_handle;
+
   /* Give the app a last chance to set a window id */
   if (!sink->d3d.window_handle)
     gst_video_overlay_prepare_window_handle (GST_VIDEO_OVERLAY (sink));
@@ -2118,6 +2127,7 @@
   GstD3DVideoSink *sink;
   HWND hWnd;
   MSG msg;
+  BOOL fGetMsg;
 
   g_return_val_if_fail (dat != NULL, NULL);
 
@@ -2138,7 +2148,10 @@
   /*
    * Internal window message loop
    */
+
   while (GetMessage (&msg, NULL, 0, 0)) {
+    if (msg.message == WM_QUIT_THREAD)
+      break;
     TranslateMessage (&msg);
     DispatchMessage (&msg);
   }
@@ -2597,6 +2610,7 @@
   if (!ret)
     klass->d3d.error_exit = TRUE;
   if (hWnd) {
+    PostMessage (hWnd, WM_DESTROY, NULL, NULL);
     DestroyWindow (hWnd);
     klass->d3d.hidden_window = 0;
   }
diff --git a/sys/d3dvideosink/d3dhelpers.h b/sys/d3dvideosink/d3dhelpers.h
index 1e25303..4145f78 100644
--- a/sys/d3dvideosink/d3dhelpers.h
+++ b/sys/d3dvideosink/d3dhelpers.h
@@ -78,6 +78,7 @@
 
 typedef struct _GstD3DData {
   /* Window Proc Stuff */
+  HWND                   external_window_handle;
   HWND                   window_handle;
   gboolean               window_is_internal;
   WNDPROC                orig_wnd_proc;
diff --git a/sys/dvb/camconditionalaccess.c b/sys/dvb/camconditionalaccess.c
index c09a6b7..a1fe1de 100644
--- a/sys/dvb/camconditionalaccess.c
+++ b/sys/dvb/camconditionalaccess.c
@@ -70,7 +70,7 @@
 }
 
 static CamReturn
-send_ca_pmt (CamConditionalAccess * cas, GstMpegTsPMT * pmt,
+send_ca_pmt (CamConditionalAccess * cas, GstMpegtsPMT * pmt,
     guint8 list_management, guint8 cmd_id)
 {
   CamReturn ret;
@@ -108,7 +108,7 @@
 
 CamReturn
 cam_conditional_access_set_pmt (CamConditionalAccess * cas,
-    GstMpegTsPMT * pmt, CamConditionalAccessPmtFlag flag)
+    GstMpegtsPMT * pmt, CamConditionalAccessPmtFlag flag)
 {
   return send_ca_pmt (cas, pmt, flag, 0x01 /* ok_descrambling */ );
 }
diff --git a/sys/dvb/camconditionalaccess.h b/sys/dvb/camconditionalaccess.h
index d5fb621..92e94af 100644
--- a/sys/dvb/camconditionalaccess.h
+++ b/sys/dvb/camconditionalaccess.h
@@ -50,6 +50,6 @@
 void cam_conditional_access_destroy (CamConditionalAccess *cas);
 
 CamReturn cam_conditional_access_set_pmt (CamConditionalAccess *cas,
-  GstMpegTsPMT *pmt, CamConditionalAccessPmtFlag flag);
+  GstMpegtsPMT *pmt, CamConditionalAccessPmtFlag flag);
 
 #endif /* CAM_CONDITIONAL_ACCESS_H */
diff --git a/sys/dvb/camdevice.c b/sys/dvb/camdevice.c
index 0952bcf..fad1900 100644
--- a/sys/dvb/camdevice.c
+++ b/sys/dvb/camdevice.c
@@ -217,7 +217,7 @@
 
 void
 cam_device_set_pmt (CamDevice * device,
-    GstMpegTsPMT * pmt, CamConditionalAccessPmtFlag flag)
+    GstMpegtsPMT * pmt, CamConditionalAccessPmtFlag flag)
 {
   g_return_if_fail (device != NULL);
   g_return_if_fail (device->state == CAM_DEVICE_STATE_OPEN);
diff --git a/sys/dvb/camdevice.h b/sys/dvb/camdevice.h
index afbc419..f3b359c 100644
--- a/sys/dvb/camdevice.h
+++ b/sys/dvb/camdevice.h
@@ -64,6 +64,6 @@
 gboolean cam_device_ready (CamDevice *device);
 void cam_device_poll (CamDevice *device);
 void cam_device_set_pmt (CamDevice *device,
-  GstMpegTsPMT *pmt, CamConditionalAccessPmtFlag flag);
+  GstMpegtsPMT *pmt, CamConditionalAccessPmtFlag flag);
 
 #endif /* CAM_DEVICE_H */
diff --git a/sys/dvb/camswclient.c b/sys/dvb/camswclient.c
index 12f54e3..f5d07cf 100644
--- a/sys/dvb/camswclient.c
+++ b/sys/dvb/camswclient.c
@@ -114,7 +114,7 @@
 }
 
 static void
-send_ca_pmt (CamSwClient * client, GstMpegTsPMT * pmt,
+send_ca_pmt (CamSwClient * client, GstMpegtsPMT * pmt,
     guint8 list_management, guint8 cmd_id)
 {
   guint8 *buffer;
@@ -150,7 +150,7 @@
 }
 
 void
-cam_sw_client_set_pmt (CamSwClient * client, GstMpegTsPMT * pmt)
+cam_sw_client_set_pmt (CamSwClient * client, GstMpegtsPMT * pmt)
 {
   g_return_if_fail (client != NULL);
   g_return_if_fail (pmt != NULL);
@@ -160,7 +160,7 @@
 }
 
 void
-cam_sw_client_update_pmt (CamSwClient * client, GstMpegTsPMT * pmt)
+cam_sw_client_update_pmt (CamSwClient * client, GstMpegtsPMT * pmt)
 {
   g_return_if_fail (client != NULL);
   g_return_if_fail (pmt != NULL);
diff --git a/sys/dvb/camswclient.h b/sys/dvb/camswclient.h
index 794f353..299e268 100644
--- a/sys/dvb/camswclient.h
+++ b/sys/dvb/camswclient.h
@@ -48,7 +48,7 @@
 gboolean cam_sw_client_open (CamSwClient *sw_client, const char *sock_path);
 void cam_sw_client_close (CamSwClient *sw_client);
 
-void cam_sw_client_set_pmt (CamSwClient *sw_client, GstMpegTsPMT *pmt);
-void cam_sw_client_update_pmt (CamSwClient *sw_client, GstMpegTsPMT *pmt);
+void cam_sw_client_set_pmt (CamSwClient *sw_client, GstMpegtsPMT *pmt);
+void cam_sw_client_update_pmt (CamSwClient *sw_client, GstMpegtsPMT *pmt);
 
 #endif /* CAM_SW_CLIENT_H */
diff --git a/sys/dvb/camutils.c b/sys/dvb/camutils.c
index 11c0aa2..dc7ed20 100644
--- a/sys/dvb/camutils.c
+++ b/sys/dvb/camutils.c
@@ -178,7 +178,7 @@
   guint len = 0;
 
   for (i = 0; i < nb_desc; i++) {
-    GstMpegTsDescriptor *desc = g_ptr_array_index (descriptors, i);
+    GstMpegtsDescriptor *desc = g_ptr_array_index (descriptors, i);
     if (desc->tag == 0x09)
       len += desc->length;
   }
@@ -193,7 +193,7 @@
 
   nb_desc = descriptors->len;
   for (i = 0; i < nb_desc; i++) {
-    GstMpegTsDescriptor *desc = g_ptr_array_index (descriptors, i);
+    GstMpegtsDescriptor *desc = g_ptr_array_index (descriptors, i);
     if (desc->tag == 0x09) {
       memcpy (body, desc->data, desc->length);
       body += desc->length;
@@ -204,10 +204,10 @@
 }
 
 guint8 *
-cam_build_ca_pmt (GstMpegTsPMT * pmt, guint8 list_management, guint8 cmd_id,
+cam_build_ca_pmt (GstMpegtsPMT * pmt, guint8 list_management, guint8 cmd_id,
     guint * size)
 {
-  GstMpegTsSection *section = (GstMpegTsSection *) pmt;
+  GstMpegtsSection *section = (GstMpegtsSection *) pmt;
   guint body_size = 0;
   guint8 *buffer;
   guint8 *body;
@@ -225,7 +225,7 @@
   body_size += 6 + len;
 
   for (i = 0; i < pmt->streams->len; i++) {
-    GstMpegTsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
+    GstMpegtsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
 
     len = get_ca_descriptors_length (pmtstream->descriptors);
     if (len > 0)
@@ -269,7 +269,7 @@
   }
 
   for (i = 0; i < pmt->streams->len; i++) {
-    GstMpegTsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
+    GstMpegtsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
 
     *body++ = pmtstream->stream_type;
     GST_WRITE_UINT16_BE (body, pmtstream->pid);
diff --git a/sys/dvb/camutils.h b/sys/dvb/camutils.h
index dc9bd3c..67b0ca3 100644
--- a/sys/dvb/camutils.h
+++ b/sys/dvb/camutils.h
@@ -55,6 +55,6 @@
 guint8 cam_calc_length_field_size (guint length);
 guint8 cam_write_length_field (guint8 *buff, guint length);
 guint8 cam_read_length_field (guint8 *buff, guint *length);
-guint8 *cam_build_ca_pmt (GstMpegTsPMT *pmt, guint8 list_management, guint8 cmd_id, guint *size);
+guint8 *cam_build_ca_pmt (GstMpegtsPMT *pmt, guint8 list_management, guint8 cmd_id, guint *size);
 
 #endif /* CAM_UTILS_H */
diff --git a/sys/dvb/dvbbasebin.c b/sys/dvb/dvbbasebin.c
index 7da3f62..9361200 100644
--- a/sys/dvb/dvbbasebin.c
+++ b/sys/dvb/dvbbasebin.c
@@ -94,10 +94,10 @@
   gint program_number;
   guint16 pmt_pid;
   guint16 pcr_pid;
-  GstMpegTsSection *section;
-  GstMpegTsSection *old_section;
-  const GstMpegTsPMT *pmt;
-  const GstMpegTsPMT *old_pmt;
+  GstMpegtsSection *section;
+  GstMpegtsSection *old_section;
+  const GstMpegtsPMT *pmt;
+  const GstMpegtsPMT *old_pmt;
   gboolean selected;
   gboolean pmt_active;
   gboolean active;
@@ -117,9 +117,9 @@
     GstStateChange transition);
 static void dvb_base_bin_handle_message (GstBin * bin, GstMessage * message);
 static void dvb_base_bin_pat_info_cb (DvbBaseBin * dvbbasebin,
-    GstMpegTsSection * pat);
+    GstMpegtsSection * pat);
 static void dvb_base_bin_pmt_info_cb (DvbBaseBin * dvbbasebin,
-    GstMpegTsSection * pmt);
+    GstMpegtsSection * pmt);
 static GstPad *dvb_base_bin_request_new_pad (GstElement * element,
     GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
 static void dvb_base_bin_release_pad (GstElement * element, GstPad * pad);
@@ -661,7 +661,7 @@
 {
   CamConditionalAccessPmtFlag flag;
   GList *walk;
-  GstMpegTsPMT *pmt;
+  GstMpegtsPMT *pmt;
 
   walk = dvbbasebin->pmtlist;
   while (walk) {
@@ -677,7 +677,7 @@
         flag = CAM_CONDITIONAL_ACCESS_PMT_FLAG_MORE;
     }
 
-    pmt = (GstMpegTsPMT *) walk->data;
+    pmt = (GstMpegtsPMT *) walk->data;
     cam_device_set_pmt (dvbbasebin->hwcam, pmt, flag);
 
     walk = walk->next;
@@ -793,13 +793,13 @@
 
 static void
 dvb_base_bin_remove_pmt_streams (DvbBaseBin * dvbbasebin,
-    const GstMpegTsPMT * pmt)
+    const GstMpegtsPMT * pmt)
 {
   gint i;
   DvbBaseBinStream *stream;
 
   for (i = 0; i < pmt->streams->len; i++) {
-    GstMpegTsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
+    GstMpegtsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
 
     stream = dvb_base_bin_get_stream (dvbbasebin, pmtstream->pid);
     if (stream == NULL) {
@@ -813,13 +813,13 @@
 }
 
 static void
-dvb_base_bin_add_pmt_streams (DvbBaseBin * dvbbasebin, const GstMpegTsPMT * pmt)
+dvb_base_bin_add_pmt_streams (DvbBaseBin * dvbbasebin, const GstMpegtsPMT * pmt)
 {
   DvbBaseBinStream *stream;
   gint i;
 
   for (i = 0; i < pmt->streams->len; i++) {
-    GstMpegTsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
+    GstMpegtsPMTStream *pmtstream = g_ptr_array_index (pmt->streams, i);
 
     GST_DEBUG ("filtering stream %d stream_type %d", pmtstream->pid,
         pmtstream->stream_type);
@@ -914,7 +914,7 @@
 
   /* note: message->src might be a GstPad, so use element cast w/o typecheck */
   if (GST_ELEMENT_CAST (message->src) == dvbbasebin->tsparse) {
-    GstMpegTsSection *section = gst_message_parse_mpegts_section (message);
+    GstMpegtsSection *section = gst_message_parse_mpegts_section (message);
 
     if (section) {
       switch (GST_MPEGTS_SECTION_TYPE (section)) {
@@ -938,7 +938,7 @@
 
 
 static void
-dvb_base_bin_pat_info_cb (DvbBaseBin * dvbbasebin, GstMpegTsSection * section)
+dvb_base_bin_pat_info_cb (DvbBaseBin * dvbbasebin, GstMpegtsSection * section)
 {
   GPtrArray *pat;
   DvbBaseBinProgram *program;
@@ -953,7 +953,7 @@
   }
 
   for (i = 0; i < pat->len; i++) {
-    GstMpegTsPatProgram *patp = g_ptr_array_index (pat, i);
+    GstMpegtsPatProgram *patp = g_ptr_array_index (pat, i);
 
     program = dvb_base_bin_get_program (dvbbasebin, patp->program_number);
     if (program == NULL)
@@ -984,9 +984,9 @@
 }
 
 static void
-dvb_base_bin_pmt_info_cb (DvbBaseBin * dvbbasebin, GstMpegTsSection * section)
+dvb_base_bin_pmt_info_cb (DvbBaseBin * dvbbasebin, GstMpegtsSection * section)
 {
-  const GstMpegTsPMT *pmt;
+  const GstMpegtsPMT *pmt;
   DvbBaseBinProgram *program;
   guint program_number;
 
diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c
index f8829d2..721517b 100644
--- a/sys/dvb/gstdvbsrc.c
+++ b/sys/dvb/gstdvbsrc.c
@@ -33,7 +33,7 @@
  * gst-launch dvbsrc modulation="QAM 64" trans-mode=8k bandwidth=8 frequency=514000000 code-rate-lp=AUTO code-rate-hp=2/3 guard=4  hierarchy=0 pids=100:256:257 ! mpegtsdemux name=demux ! queue max-size-buffers=0 max-size-time=0 ! mpeg2dec ! xvimagesink demux. ! queue max-size-buffers=0 max-size-time=0 ! mad ! alsasink
  * ]| Captures and renders a transport stream from dvb card 0 that is a DVB-T card for a program at tuned frequency 514000000 with PMT pid 100 and elementary stream pids of 256, 257 with other parameters as seen in the pipeline.
  * |[
- * gst-launch dvbsrc polarity="h" frequency=11302000 symbol-rate=27500 diseqc-src=0 pids=50:102:103 ! mpegtsdemux name=demux ! queue max-size-buffers=0 max-size-time=0 ! mpeg2dec ! xvimagesink demux. ! queue max-size-buffers=0 max-size-time=0 ! mad ! alsasink
+ * gst-launch dvbsrc polarity="h" frequency=11302000 symbol-rate=27500 diseqc-source=0 pids=50:102:103 ! mpegtsdemux name=demux ! queue max-size-buffers=0 max-size-time=0 ! mpeg2dec ! xvimagesink demux. ! queue max-size-buffers=0 max-size-time=0 ! mad ! alsasink
  * ]| Captures and renders a transport stream from dvb card 0 that is a DVB-S card for a program at tuned frequency 11302000 Hz, symbol rate of 27500 kHz with PMT pid of 50 and elementary stream pids of 102 and 103.
  * </refsect2>
  */
@@ -41,7 +41,7 @@
 /* 
  * History of DVB_API_VERSION 5 minor changes
  *
- * API Addition/changes in reverse order (most recent addition first)
+ * API Addition/changes in reverse order (most recent first)
  *
  * Minor 10 (statistics properties)
  *   DTV_STAT_*
@@ -194,7 +194,7 @@
 #define DEFAULT_DISEQC_SRC -1   /* disabled */
 #define DEFAULT_FREQUENCY 0
 #define DEFAULT_POLARITY "H"
-#define DEFAULT_PIDS "8192"
+#define DEFAULT_PIDS "8192"     /* Special value meaning 'all' PIDs */
 #define DEFAULT_SYMBOL_RATE 0
 #define DEFAULT_BANDWIDTH_HZ 8000000
 #define DEFAULT_BANDWIDTH BANDWIDTH_8_MHZ
@@ -536,7 +536,7 @@
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_ADAPTER,
       g_param_spec_int ("adapter", "The adapter device number",
-          "The adapter device number (eg. 0 for adapter0)",
+          "The DVB adapter device number (eg. 0 for adapter0)",
           0, 16, DEFAULT_ADAPTER, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_FRONTEND,
@@ -550,8 +550,8 @@
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_POLARITY,
       g_param_spec_string ("polarity", "polarity",
-          "Polarity [vhHV] (DVB-S, DVB-S2)", DEFAULT_POLARITY,
-          G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
+          "(DVB-S/S2) Polarity [vhHV] (eg. V for Vertical)",
+          DEFAULT_POLARITY, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_PIDS,
       g_param_spec_string ("pids", "pids",
@@ -561,7 +561,7 @@
   g_object_class_install_property (gobject_class, ARG_DVBSRC_SYM_RATE,
       g_param_spec_uint ("symbol-rate",
           "symbol rate",
-          "Symbol Rate (DVB-S, DVB-S2, DVB-C)",
+          "(DVB-S/S2, DVB-C) Symbol rate in bauds",
           0, G_MAXUINT, DEFAULT_SYMBOL_RATE, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_TUNE,
@@ -571,61 +571,63 @@
   g_object_class_install_property (gobject_class, ARG_DVBSRC_DISEQC_SRC,
       g_param_spec_int ("diseqc-source",
           "diseqc source",
-          "DISEqC selected source (-1 disabled) (DVB-S, DVB-S2)",
-          -1, 7, DEFAULT_DISEQC_SRC, G_PARAM_READWRITE));
+          "(DVB-S/S2) Selected DiSEqC source. Only needed if you have a "
+          "DiSEqC switch. Otherwise leave at -1 (disabled)", -1, 7,
+          DEFAULT_DISEQC_SRC, G_PARAM_READWRITE));
 
   /* DVB-T, additional properties */
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_BANDWIDTH_HZ,
       g_param_spec_uint ("bandwidth-hz", "bandwidth-hz",
-          "Bandwidth in Hz (DVB-T)",
-          0, G_MAXUINT, DEFAULT_BANDWIDTH_HZ, G_PARAM_READWRITE));
+          "(DVB-T) Bandwidth in Hz", 0, G_MAXUINT, DEFAULT_BANDWIDTH_HZ,
+          G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_BANDWIDTH,
       g_param_spec_enum ("bandwidth", "bandwidth",
-          "Bandwidth (DVB-T) deprecated",
-          GST_TYPE_DVBSRC_BANDWIDTH, DEFAULT_BANDWIDTH, G_PARAM_READWRITE));
+          "(DVB-T) Bandwidth. Deprecated", GST_TYPE_DVBSRC_BANDWIDTH,
+          DEFAULT_BANDWIDTH, G_PARAM_READWRITE));
 
   /* FIXME: DVB-C, DVB-S, DVB-S2 named it as innerFEC */
   g_object_class_install_property (gobject_class, ARG_DVBSRC_CODE_RATE_HP,
       g_param_spec_enum ("code-rate-hp",
           "code-rate-hp",
-          "High Priority Code Rate (DVB-T, DVB-S, DVB-S2 and DVB-C)",
+          "(DVB-T, DVB-S/S2 and DVB-C) High priority code rate",
           GST_TYPE_DVBSRC_CODE_RATE, DEFAULT_CODE_RATE_HP, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_CODE_RATE_LP,
       g_param_spec_enum ("code-rate-lp",
           "code-rate-lp",
-          "Low Priority Code Rate (DVB-T)",
+          "(DVB-T) Low priority code rate",
           GST_TYPE_DVBSRC_CODE_RATE, DEFAULT_CODE_RATE_LP, G_PARAM_READWRITE));
 
   /* FIXME: should the property be called 'guard-interval' then? */
   g_object_class_install_property (gobject_class, ARG_DVBSRC_GUARD,
       g_param_spec_enum ("guard",
           "guard",
-          "Guard Interval (DVB-T)",
+          "(DVB-T) Guard Interval",
           GST_TYPE_DVBSRC_GUARD, DEFAULT_GUARD, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_MODULATION,
       g_param_spec_enum ("modulation", "modulation",
-          "Modulation (DVB-T and DVB-C)",
+          "(DVB-T and DVB-C) Modulation type",
           GST_TYPE_DVBSRC_MODULATION, DEFAULT_MODULATION, G_PARAM_READWRITE));
 
   /* FIXME: property should be named 'transmission-mode' */
   g_object_class_install_property (gobject_class,
       ARG_DVBSRC_TRANSMISSION_MODE,
       g_param_spec_enum ("trans-mode", "trans-mode",
-          "Transmission Mode (DVB-T)", GST_TYPE_DVBSRC_TRANSMISSION_MODE,
-          DEFAULT_TRANSMISSION_MODE, G_PARAM_READWRITE));
+          "(DVB-T) Transmission mode",
+          GST_TYPE_DVBSRC_TRANSMISSION_MODE, DEFAULT_TRANSMISSION_MODE,
+          G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_HIERARCHY_INF,
       g_param_spec_enum ("hierarchy", "hierarchy",
-          "Hierarchy Information (DVB-T)",
+          "(DVB-T) Hierarchy information",
           GST_TYPE_DVBSRC_HIERARCHY, DEFAULT_HIERARCHY, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_INVERSION,
       g_param_spec_enum ("inversion", "inversion",
-          "Inversion Information (DVB-T and DVB-C)",
+          "(DVB-T and DVB-C) Inversion information",
           GST_TYPE_DVBSRC_INVERSION, DEFAULT_INVERSION, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class,
@@ -637,13 +639,13 @@
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_TIMEOUT,
       g_param_spec_uint64 ("timeout", "Timeout",
-          "Post a message after timeout microseconds (0 = disabled)", 0,
-          G_MAXUINT64, DEFAULT_TIMEOUT, G_PARAM_READWRITE));
+          "Post a message after timeout microseconds (0 = disabled)",
+          0, G_MAXUINT64, DEFAULT_TIMEOUT, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_TUNING_TIMEOUT,
       g_param_spec_uint64 ("tuning-timeout", "Tuning Timeout",
-          "Milliseconds to wait before giving up tuning/locking on a signal", 0,
-          G_MAXUINT64, DEFAULT_TUNING_TIMEOUT, G_PARAM_READWRITE));
+          "Milliseconds to wait before giving up tuning/locking on a signal",
+          0, G_MAXUINT64, DEFAULT_TUNING_TIMEOUT, G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class,
       ARG_DVBSRC_DVB_BUFFER_SIZE,
@@ -666,8 +668,8 @@
 
   g_object_class_install_property (gobject_class, ARG_DVBSRC_STREAM_ID,
       g_param_spec_int ("stream-id", "stream-id",
-          "Stream ID (-1 disabled, DVB-T2 and DVB-S2 max 255, ISDB max 65535)",
-          -1, 65535, DEFAULT_STREAM_ID, G_PARAM_READWRITE));
+          "(DVB-T2 and DVB-S2 max 255, ISDB max 65535) Stream ID "
+          "(-1 = disabled)", -1, 65535, DEFAULT_STREAM_ID, G_PARAM_READWRITE));
 
   /**
    * GstDvbSrc::tuning-start:
@@ -728,7 +730,7 @@
     object->pids[i] = G_MAXUINT16;
     object->fd_filters[i] = -1;
   }
-  /* Pid 8192 on DVB gets the whole transport stream */
+  /* PID 8192 on DVB gets the whole transport stream */
   object->pids[0] = 8192;
   object->dvb_buffer_size = DEFAULT_DVB_BUFFER_SIZE;
   object->adapter_number = DEFAULT_ADAPTER;
@@ -928,7 +930,8 @@
     case ARG_DVBSRC_TUNE:{
       GST_INFO_OBJECT (object, "Set Property: ARG_DVBSRC_TUNE");
 
-      /* if we are in paused/playing state tune now, otherwise in ready to paused state change */
+      /* if we are in paused/playing state tune now, otherwise in ready
+       * to paused state change */
       if (GST_STATE (object) > GST_STATE_READY) {
         g_mutex_lock (&object->tune_mutex);
         gst_dvbsrc_tune (object);
@@ -1622,7 +1625,7 @@
       cmd->cmd.msg[1], cmd->cmd.msg[2], cmd->cmd.msg[3], cmd->cmd.msg[4],
       cmd->cmd.msg[5]);
   if (ioctl (fd, FE_DISEQC_SEND_MASTER_CMD, &cmd->cmd) == -1) {
-    GST_ERROR ("Sending diseqc command failed");
+    GST_ERROR ("Sending DiSEqC command failed");
     return;
   }
 
@@ -1657,7 +1660,7 @@
   cmd.cmd.msg[3] =
       0xf0 | (((sat_no * 4) & 0x0f) | (tone == SEC_TONE_ON ? 1 : 0) |
       (voltage == SEC_VOLTAGE_13 ? 0 : 2));
-  /* send twice because some diseqc switches do not respond correctly the
+  /* send twice because some DiSEqC switches do not respond correctly the
    * first time */
   diseqc_send_msg (secfd, voltage, &cmd, tone,
       sat_no % 2 ? SEC_MINI_B : SEC_MINI_A);
@@ -1708,7 +1711,7 @@
     return FALSE;
   }
 
-  /* If theres no delivery system set yet. Choose the
+  /* If there's no delivery system set yet. Choose the
    * last from the list of frontend supported ones */
   if (object->delsys == SYS_UNDEFINED) {
     object->delsys = object->best_guess_delsys;
@@ -1819,7 +1822,11 @@
     case SYS_DVBS2:
     case SYS_TURBO:
       if (freq > 2200000) {
-        /* this must be an absolute frequency */
+        /* FIXME: Make SLOF/LOF1/LOF2 seteable props with a sane default.
+         * These values shouldn't be fixed because not all universal LNBs
+         * share the same parameters.
+         *
+         * this must be an absolute frequency */
         if (freq < SLOF) {
           freq -= LOF1;
           object->tone = SEC_TONE_OFF;
@@ -1849,13 +1856,13 @@
         /* DTV_TONE not yet implemented
          * set_prop (fe_props_array, &n, DTV_TONE, object->tone) */
         if (ioctl (object->fd_frontend, FE_SET_TONE, object->tone) < 0) {
-          GST_WARNING_OBJECT (object, "Could'nt set tone: %s",
+          GST_WARNING_OBJECT (object, "Couldn't set tone: %s",
               g_strerror (errno));
         }
       } else {
         GST_DEBUG_OBJECT (object, "Sending DISEqC");
         diseqc (object->fd_frontend, object->diseqc_src, voltage, object->tone);
-        /* Once diseqc source is set, do not set it again until
+        /* Once DiSEqC source is set, do not set it again until
          * app decides to change it
          * object->send_diseqc = FALSE; */
       }
diff --git a/sys/dvb/gstdvbsrc.h b/sys/dvb/gstdvbsrc.h
index f2f9fca..b9d07d7 100644
--- a/sys/dvb/gstdvbsrc.h
+++ b/sys/dvb/gstdvbsrc.h
@@ -1,3 +1,24 @@
+/* GStreamer DVB source
+ * Copyright (C) 2006 Zaheer Abbas Merali <zaheerabbas at merali
+ *                                         dot org>
+ * Copyright (C) 2014 Samsung Electronics. All rights reserved.
+ *     @Author: Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
 
 #ifndef __GST_DVBSRC_H__
 #define __GST_DVBSRC_H__
@@ -47,7 +68,7 @@
   guchar delsys;
   guchar best_guess_delsys;
 
-  int adapter_number;           /* the device directory with the sub-devices */
+  int adapter_number;
   int frontend_number;
 
   int fd_frontend;
diff --git a/sys/opensles/openslessrc.c b/sys/opensles/openslessrc.c
index 6a9f21d..5247854 100644
--- a/sys/opensles/openslessrc.c
+++ b/sys/opensles/openslessrc.c
@@ -82,7 +82,7 @@
       gst_static_pad_template_get (&src_factory));
 
   gst_element_class_set_static_metadata (gstelement_class, "OpenSL ES Src",
-      "Src/Audio",
+      "Source/Audio",
       "Input sound using the OpenSL ES APIs",
       "Josep Torra <support@fluendo.com>");
 
diff --git a/test-driver b/test-driver
index 32bf39e..d306056 100755
--- a/test-driver
+++ b/test-driver
@@ -1,7 +1,7 @@
 #! /bin/sh
 # test-driver - basic testsuite driver script.
 
-scriptversion=2012-06-27.10; # UTC
+scriptversion=2013-07-13.22; # UTC
 
 # Copyright (C) 2011-2013 Free Software Foundation, Inc.
 #
@@ -44,13 +44,12 @@
 Usage:
   test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
               [--expect-failure={yes|no}] [--color-tests={yes|no}]
-              [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT
+              [--enable-hard-errors={yes|no}] [--]
+              TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
 The '--test-name', '--log-file' and '--trs-file' options are mandatory.
 END
 }
 
-# TODO: better error handling in option parsing (in particular, ensure
-# TODO: $log_file, $trs_file and $test_name are defined).
 test_name= # Used for reporting.
 log_file=  # Where to save the output of the test script.
 trs_file=  # Where to save the metadata of the test run.
@@ -69,10 +68,23 @@
   --enable-hard-errors) enable_hard_errors=$2; shift;;
   --) shift; break;;
   -*) usage_error "invalid option: '$1'";;
+   *) break;;
   esac
   shift
 done
 
+missing_opts=
+test x"$test_name" = x && missing_opts="$missing_opts --test-name"
+test x"$log_file"  = x && missing_opts="$missing_opts --log-file"
+test x"$trs_file"  = x && missing_opts="$missing_opts --trs-file"
+if test x"$missing_opts" != x; then
+  usage_error "the following mandatory options are missing:$missing_opts"
+fi
+
+if test $# -eq 0; then
+  usage_error "missing argument"
+fi
+
 if test $color_tests = yes; then
   # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
   red='' # Red.
diff --git a/tests/check/elements/camerabin.c b/tests/check/elements/camerabin.c
index 5816aaf..0061606 100644
--- a/tests/check/elements/camerabin.c
+++ b/tests/check/elements/camerabin.c
@@ -134,6 +134,7 @@
           gst_caps_unref (tmp);
         }
         gst_query_set_caps_result (query, result);
+        gst_caps_unref (result);
         ret = TRUE;
       }
       break;
diff --git a/tests/check/libs/mpegts.c b/tests/check/libs/mpegts.c
index e1bedff..f5bc84b 100644
--- a/tests/check/libs/mpegts.c
+++ b/tests/check/libs/mpegts.c
@@ -70,9 +70,9 @@
 
 GST_START_TEST (test_mpegts_pat)
 {
-  GstMpegTsPatProgram *program;
+  GstMpegtsPatProgram *program;
   GPtrArray *pat;
-  GstMpegTsSection *pat_section;
+  GstMpegtsSection *pat_section;
   gint i;
   guint8 *data;
   gsize data_size;
@@ -129,10 +129,10 @@
 
 GST_START_TEST (test_mpegts_pmt)
 {
-  GstMpegTsPMT *pmt;
-  GstMpegTsPMTStream *stream;
-  GstMpegTsDescriptor *desc;
-  GstMpegTsSection *pmt_section;
+  GstMpegtsPMT *pmt;
+  GstMpegtsPMTStream *stream;
+  GstMpegtsDescriptor *desc;
+  GstMpegtsSection *pmt_section;
   guint8 *data;
   gsize data_size;
   gint i;
@@ -149,7 +149,7 @@
   for (i = 0; i < 2; i++) {
     stream = gst_mpegts_pmt_stream_new ();
 
-    stream->stream_type = GST_MPEG_TS_STREAM_TYPE_VIDEO_H264;
+    stream->stream_type = GST_MPEGTS_STREAM_TYPE_VIDEO_H264;
     stream->pid = 0x40 + i;
 
     desc = gst_mpegts_descriptor_from_registration ("HDMV", NULL, 0);
@@ -162,26 +162,26 @@
   fail_if (pmt_section == NULL);
 
   /* Re-parse the PMT from section */
-  pmt = (GstMpegTsPMT *) gst_mpegts_section_get_pmt (pmt_section);
+  pmt = (GstMpegtsPMT *) gst_mpegts_section_get_pmt (pmt_section);
 
   fail_unless (pmt->pcr_pid == 0x1FFF);
   fail_unless (pmt->program_number == 1);
   fail_unless (pmt->descriptors->len == 1);
   fail_unless (pmt->streams->len == 2);
 
-  desc = (GstMpegTsDescriptor *) gst_mpegts_find_descriptor (pmt->descriptors,
+  desc = (GstMpegtsDescriptor *) gst_mpegts_find_descriptor (pmt->descriptors,
       GST_MTS_DESC_REGISTRATION);
   fail_if (desc == NULL);
 
   for (i = 0; i < 2; i++) {
     stream = g_ptr_array_index (pmt->streams, i);
 
-    fail_unless (stream->stream_type == GST_MPEG_TS_STREAM_TYPE_VIDEO_H264);
+    fail_unless (stream->stream_type == GST_MPEGTS_STREAM_TYPE_VIDEO_H264);
     fail_unless (stream->pid == 0x40 + i);
     fail_unless (stream->descriptors->len == 1);
 
     desc =
-        (GstMpegTsDescriptor *) gst_mpegts_find_descriptor (stream->descriptors,
+        (GstMpegtsDescriptor *) gst_mpegts_find_descriptor (stream->descriptors,
         GST_MTS_DESC_REGISTRATION);
     fail_if (desc == NULL);
   }
@@ -198,7 +198,7 @@
   /* Check assertion on bad CRC. Reset parsed data, and make the CRC corrupt */
   pmt_section->data[pmt_section->section_length - 1]++;
   pmt_section->cached_parsed = NULL;
-  pmt = (GstMpegTsPMT *) gst_mpegts_section_get_pmt (pmt_section);
+  pmt = (GstMpegtsPMT *) gst_mpegts_section_get_pmt (pmt_section);
 
   fail_unless (pmt == NULL);
 
@@ -210,10 +210,10 @@
 
 GST_START_TEST (test_mpegts_nit)
 {
-  GstMpegTsNITStream *stream;
-  GstMpegTsNIT *nit;
-  GstMpegTsDescriptor *desc;
-  GstMpegTsSection *nit_section;
+  GstMpegtsNITStream *stream;
+  GstMpegtsNIT *nit;
+  GstMpegtsDescriptor *desc;
+  GstMpegtsSection *nit_section;
   gchar *name;
   guint8 *data;
   gsize data_size;
@@ -246,14 +246,14 @@
   fail_if (nit_section == NULL);
 
   /* Re-parse the NIT from section */
-  nit = (GstMpegTsNIT *) gst_mpegts_section_get_nit (nit_section);
+  nit = (GstMpegtsNIT *) gst_mpegts_section_get_nit (nit_section);
 
   fail_unless (nit->descriptors->len == 1);
   fail_unless (nit->streams->len == 2);
   fail_unless (nit->actual_network == TRUE);
   fail_unless (nit->network_id == 0x1FFF);
 
-  desc = (GstMpegTsDescriptor *) gst_mpegts_find_descriptor (nit->descriptors,
+  desc = (GstMpegtsDescriptor *) gst_mpegts_find_descriptor (nit->descriptors,
       GST_MTS_DESC_DVB_NETWORK_NAME);
 
   fail_if (desc == NULL);
@@ -269,7 +269,7 @@
     fail_unless (stream->descriptors->len == 1);
 
     desc =
-        (GstMpegTsDescriptor *) gst_mpegts_find_descriptor (stream->descriptors,
+        (GstMpegtsDescriptor *) gst_mpegts_find_descriptor (stream->descriptors,
         GST_MTS_DESC_DVB_NETWORK_NAME);
 
     fail_unless (gst_mpegts_descriptor_parse_dvb_network_name (desc,
@@ -290,7 +290,7 @@
   /* Check assertion on bad CRC. Reset parsed data, and make the CRC corrupt */
   nit_section->data[nit_section->section_length - 1]++;
   nit_section->cached_parsed = NULL;
-  nit = (GstMpegTsNIT *) gst_mpegts_section_get_nit (nit_section);
+  nit = (GstMpegtsNIT *) gst_mpegts_section_get_nit (nit_section);
 
   fail_unless (nit == NULL);
 
@@ -301,10 +301,10 @@
 
 GST_START_TEST (test_mpegts_sdt)
 {
-  GstMpegTsSDTService *service;
-  GstMpegTsSDT *sdt;
-  GstMpegTsDescriptor *desc;
-  GstMpegTsSection *sdt_section;
+  GstMpegtsSDTService *service;
+  GstMpegtsSDT *sdt;
+  GstMpegtsDescriptor *desc;
+  GstMpegtsSection *sdt_section;
   guint8 *data;
   gsize data_size;
   gint i;
@@ -335,7 +335,7 @@
   fail_if (sdt_section == NULL);
 
   /* Re-parse the SDT from section */
-  sdt = (GstMpegTsSDT *) gst_mpegts_section_get_sdt (sdt_section);
+  sdt = (GstMpegtsSDT *) gst_mpegts_section_get_sdt (sdt_section);
 
   fail_unless (sdt->services->len == 2);
   fail_unless (sdt->actual_ts == TRUE);
@@ -354,7 +354,7 @@
         GST_MPEGTS_RUNNING_STATUS_RUNNING + i);
     fail_unless (service->free_CA_mode == TRUE);
 
-    desc = (GstMpegTsDescriptor *)
+    desc = (GstMpegtsDescriptor *)
         gst_mpegts_find_descriptor (service->descriptors,
         GST_MTS_DESC_DVB_SERVICE);
 
@@ -378,7 +378,7 @@
   /* Check assertion on bad CRC. Reset parsed data, and make the CRC corrupt */
   sdt_section->data[sdt_section->section_length - 1]++;
   sdt_section->cached_parsed = NULL;
-  sdt = (GstMpegTsSDT *) gst_mpegts_section_get_sdt (sdt_section);
+  sdt = (GstMpegtsSDT *) gst_mpegts_section_get_sdt (sdt_section);
 
   fail_unless (sdt == NULL);
 
@@ -389,8 +389,8 @@
 
 GST_START_TEST (test_mpegts_atsc_stt)
 {
-  const GstMpegTsAtscSTT *stt;
-  GstMpegTsSection *section;
+  const GstMpegtsAtscSTT *stt;
+  GstMpegtsSection *section;
   guint8 *data;
   GstDateTime *dt;
 
@@ -407,7 +407,7 @@
   fail_unless (stt->ds_dayofmonth == 0);
   fail_unless (stt->ds_hour == 0);
 
-  dt = gst_mpegts_atsc_stt_get_datetime_utc ((GstMpegTsAtscSTT *) stt);
+  dt = gst_mpegts_atsc_stt_get_datetime_utc ((GstMpegtsAtscSTT *) stt);
   fail_unless (gst_date_time_get_day (dt) == 30);
   fail_unless (gst_date_time_get_month (dt) == 12);
   fail_unless (gst_date_time_get_year (dt) == 1998);
@@ -428,7 +428,7 @@
 
 GST_START_TEST (test_mpegts_descriptors)
 {
-  GstMpegTsDescriptor *desc;
+  GstMpegtsDescriptor *desc;
   guint i;
 
   /*
@@ -461,8 +461,8 @@
 
 GST_START_TEST (test_mpegts_dvb_descriptors)
 {
-  GstMpegTsDescriptor *desc;
-  GstMpegTsDVBServiceType service_type;
+  GstMpegtsDescriptor *desc;
+  GstMpegtsDVBServiceType service_type;
   gchar *string, *provider;
   gchar long_string[257];
   gboolean ret;
@@ -533,10 +533,14 @@
   /* Descriptor should fail if string is more than 255 bytes */
   memset (long_string, 0x41, 256);
   long_string[256] = 0x00;
-  ASSERT_CRITICAL (gst_mpegts_descriptor_from_dvb_service
-      (GST_DVB_SERVICE_DIGITAL_TELEVISION, long_string, NULL));
-  ASSERT_CRITICAL (gst_mpegts_descriptor_from_dvb_service
-      (GST_DVB_SERVICE_DIGITAL_TELEVISION, NULL, long_string));
+  desc =
+      gst_mpegts_descriptor_from_dvb_service
+      (GST_DVB_SERVICE_DIGITAL_TELEVISION, long_string, NULL);
+  fail_if (desc != NULL);
+  desc =
+      gst_mpegts_descriptor_from_dvb_service
+      (GST_DVB_SERVICE_DIGITAL_TELEVISION, NULL, long_string);
+  fail_if (desc != NULL);
 }
 
 GST_END_TEST;
diff --git a/tests/examples/mpegts/ts-parser.c b/tests/examples/mpegts/ts-parser.c
index 86c53ee..11a5d78 100644
--- a/tests/examples/mpegts/ts-parser.c
+++ b/tests/examples/mpegts/ts-parser.c
@@ -84,23 +84,23 @@
   GEnumValue *en;
 
   en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-          (GST_TYPE_MPEG_TS_DESCRIPTOR_TYPE)), val);
+          (GST_TYPE_MPEGTS_DESCRIPTOR_TYPE)), val);
   if (en == NULL)
     /* Else try with DVB enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_DVB_DESCRIPTOR_TYPE)), val);
+            (GST_TYPE_MPEGTS_DVB_DESCRIPTOR_TYPE)), val);
   if (en == NULL)
     /* Else try with ATSC enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_ATSC_DESCRIPTOR_TYPE)), val);
+            (GST_TYPE_MPEGTS_ATSC_DESCRIPTOR_TYPE)), val);
   if (en == NULL)
     /* Else try with ISB enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_ISDB_DESCRIPTOR_TYPE)), val);
+            (GST_TYPE_MPEGTS_ISDB_DESCRIPTOR_TYPE)), val);
   if (en == NULL)
     /* Else try with misc enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_MISC_DESCRIPTOR_TYPE)), val);
+            (GST_TYPE_MPEGTS_MISC_DESCRIPTOR_TYPE)), val);
   if (en == NULL)
     return "UNKNOWN/PRIVATE";
   return en->value_nick;
@@ -112,19 +112,19 @@
   GEnumValue *en;
 
   en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-          (GST_TYPE_MPEG_TS_SECTION_TABLE_ID)), val);
+          (GST_TYPE_MPEGTS_SECTION_TABLE_ID)), val);
   if (en == NULL)
     /* Else try with DVB enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_SECTION_DVB_TABLE_ID)), val);
+            (GST_TYPE_MPEGTS_SECTION_DVB_TABLE_ID)), val);
   if (en == NULL)
     /* Else try with ATSC enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_SECTION_ATSC_TABLE_ID)), val);
+            (GST_TYPE_MPEGTS_SECTION_ATSC_TABLE_ID)), val);
   if (en == NULL)
     /* Else try with SCTE enum types */
     en = g_enum_get_value (G_ENUM_CLASS (g_type_class_peek
-            (GST_TYPE_MPEG_TS_SECTION_SCTE_TABLE_ID)), val);
+            (GST_TYPE_MPEGTS_SECTION_SCTE_TABLE_ID)), val);
   if (en == NULL)
     return "UNKNOWN/PRIVATE";
   return en->value_nick;
@@ -143,27 +143,27 @@
 }
 
 static void
-dump_cable_delivery_descriptor (GstMpegTsDescriptor * desc, guint spacing)
+dump_cable_delivery_descriptor (GstMpegtsDescriptor * desc, guint spacing)
 {
-  GstMpegTsCableDeliverySystemDescriptor res;
+  GstMpegtsCableDeliverySystemDescriptor res;
 
   if (gst_mpegts_descriptor_parse_cable_delivery_system (desc, &res)) {
     g_printf ("%*s Cable Delivery Descriptor\n", spacing, "");
     g_printf ("%*s   Frequency   : %d Hz\n", spacing, "", res.frequency);
     g_printf ("%*s   Outer FEC   : %d (%s)\n", spacing, "", res.outer_fec,
-        enum_name (GST_TYPE_MPEG_TS_CABLE_OUTER_FEC_SCHEME, res.outer_fec));
+        enum_name (GST_TYPE_MPEGTS_CABLE_OUTER_FEC_SCHEME, res.outer_fec));
     g_printf ("%*s   modulation  : %d (%s)\n", spacing, "", res.modulation,
-        enum_name (GST_TYPE_MPEG_TS_MODULATION_TYPE, res.modulation));
+        enum_name (GST_TYPE_MPEGTS_MODULATION_TYPE, res.modulation));
     g_printf ("%*s   Symbol rate : %d sym/s\n", spacing, "", res.symbol_rate);
     g_printf ("%*s   Inner FEC   : %d (%s)\n", spacing, "", res.fec_inner,
-        enum_name (GST_TYPE_MPEG_TS_DVB_CODE_RATE, res.fec_inner));
+        enum_name (GST_TYPE_MPEGTS_DVB_CODE_RATE, res.fec_inner));
   }
 }
 
 static void
-dump_terrestrial_delivery (GstMpegTsDescriptor * desc, guint spacing)
+dump_terrestrial_delivery (GstMpegtsDescriptor * desc, guint spacing)
 {
-  GstMpegTsTerrestrialDeliverySystemDescriptor res;
+  GstMpegtsTerrestrialDeliverySystemDescriptor res;
 
   if (gst_mpegts_descriptor_parse_terrestrial_delivery_system (desc, &res)) {
     g_printf ("%*s Terrestrial Delivery Descriptor\n", spacing, "");
@@ -176,23 +176,24 @@
     g_printf ("%*s   MPE FEC           : %s\n", spacing, "",
         res.mpe_fec ? "TRUE" : "FALSE");
     g_printf ("%*s   Constellation     : %d (%s)\n", spacing, "",
-        res.constellation, enum_name (GST_TYPE_MPEG_TS_MODULATION_TYPE,
+        res.constellation, enum_name (GST_TYPE_MPEGTS_MODULATION_TYPE,
             res.constellation));
-    g_printf ("%*s   Hierarchy         : %d (%s)\n", spacing, "", res.hierarchy,
-        enum_name (GST_TYPE_MPEG_TS_TERRESTRIAL_HIERARCHY, res.hierarchy));
+    g_printf ("%*s   Hierarchy         : %d (%s)\n", spacing, "",
+        res.hierarchy, enum_name (GST_TYPE_MPEGTS_TERRESTRIAL_HIERARCHY,
+            res.hierarchy));
     g_printf ("%*s   Code Rate HP      : %d (%s)\n", spacing, "",
-        res.code_rate_hp, enum_name (GST_TYPE_MPEG_TS_DVB_CODE_RATE,
+        res.code_rate_hp, enum_name (GST_TYPE_MPEGTS_DVB_CODE_RATE,
             res.code_rate_hp));
     g_printf ("%*s   Code Rate LP      : %d (%s)\n", spacing, "",
-        res.code_rate_lp, enum_name (GST_TYPE_MPEG_TS_DVB_CODE_RATE,
+        res.code_rate_lp, enum_name (GST_TYPE_MPEGTS_DVB_CODE_RATE,
             res.code_rate_lp));
     g_printf ("%*s   Guard Interval    : %d (%s)\n", spacing, "",
         res.guard_interval,
-        enum_name (GST_TYPE_MPEG_TS_TERRESTRIAL_GUARD_INTERVAL,
+        enum_name (GST_TYPE_MPEGTS_TERRESTRIAL_GUARD_INTERVAL,
             res.guard_interval));
     g_printf ("%*s   Transmission Mode : %d (%s)\n", spacing, "",
         res.transmission_mode,
-        enum_name (GST_TYPE_MPEG_TS_TERRESTRIAL_TRANSMISSION_MODE,
+        enum_name (GST_TYPE_MPEGTS_TERRESTRIAL_TRANSMISSION_MODE,
             res.transmission_mode));
     g_printf ("%*s   Other Frequency   : %s\n", spacing, "",
         res.other_frequency ? "TRUE" : "FALSE");
@@ -200,7 +201,7 @@
 }
 
 static void
-dump_dvb_service_list (GstMpegTsDescriptor * desc, guint spacing)
+dump_dvb_service_list (GstMpegtsDescriptor * desc, guint spacing)
 {
   GPtrArray *res;
 
@@ -208,26 +209,26 @@
     guint i;
     g_printf ("%*s DVB Service List Descriptor\n", spacing, "");
     for (i = 0; i < res->len; i++) {
-      GstMpegTsDVBServiceListItem *item = g_ptr_array_index (res, i);
+      GstMpegtsDVBServiceListItem *item = g_ptr_array_index (res, i);
       g_printf ("%*s   Service #%d, id:0x%04x, type:0x%x (%s)\n",
           spacing, "", i, item->service_id, item->type,
-          enum_name (GST_TYPE_MPEG_TS_DVB_SERVICE_TYPE, item->type));
+          enum_name (GST_TYPE_MPEGTS_DVB_SERVICE_TYPE, item->type));
     }
     g_ptr_array_unref (res);
   }
 }
 
 static void
-dump_logical_channel_descriptor (GstMpegTsDescriptor * desc, guint spacing)
+dump_logical_channel_descriptor (GstMpegtsDescriptor * desc, guint spacing)
 {
-  GstMpegTsLogicalChannelDescriptor res;
+  GstMpegtsLogicalChannelDescriptor res;
   guint i;
 
   if (gst_mpegts_descriptor_parse_logical_channel (desc, &res)) {
     g_printf ("%*s Logical Channel Descriptor (%d channels)\n", spacing, "",
         res.nb_channels);
     for (i = 0; i < res.nb_channels; i++) {
-      GstMpegTsLogicalChannel *chann = &res.channels[i];
+      GstMpegtsLogicalChannel *chann = &res.channels[i];
       g_printf ("%*s   service_id: 0x%04x, logical channel number:%4d\n",
           spacing, "", chann->service_id, chann->logical_channel_number);
     }
@@ -235,13 +236,13 @@
 }
 
 static void
-dump_multiligual_network_name (GstMpegTsDescriptor * desc, guint spacing)
+dump_multiligual_network_name (GstMpegtsDescriptor * desc, guint spacing)
 {
   GPtrArray *items;
   if (gst_mpegts_descriptor_parse_dvb_multilingual_network_name (desc, &items)) {
     guint i;
     for (i = 0; i < items->len; i++) {
-      GstMpegTsDvbMultilingualNetworkNameItem *item =
+      GstMpegtsDvbMultilingualNetworkNameItem *item =
           g_ptr_array_index (items, i);
       g_printf ("%*s item : %u\n", spacing, "", i);
       g_printf ("%*s   language_code : %s\n", spacing, "", item->language_code);
@@ -252,13 +253,13 @@
 }
 
 static void
-dump_multiligual_bouquet_name (GstMpegTsDescriptor * desc, guint spacing)
+dump_multiligual_bouquet_name (GstMpegtsDescriptor * desc, guint spacing)
 {
   GPtrArray *items;
   if (gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name (desc, &items)) {
     guint i;
     for (i = 0; i < items->len; i++) {
-      GstMpegTsDvbMultilingualBouquetNameItem *item =
+      GstMpegtsDvbMultilingualBouquetNameItem *item =
           g_ptr_array_index (items, i);
       g_printf ("%*s item : %u\n", spacing, "", i);
       g_printf ("%*s   language_code : %s\n", spacing, "", item->language_code);
@@ -269,13 +270,13 @@
 }
 
 static void
-dump_multiligual_service_name (GstMpegTsDescriptor * desc, guint spacing)
+dump_multiligual_service_name (GstMpegtsDescriptor * desc, guint spacing)
 {
   GPtrArray *items;
   if (gst_mpegts_descriptor_parse_dvb_multilingual_service_name (desc, &items)) {
     guint i;
     for (i = 0; i < items->len; i++) {
-      GstMpegTsDvbMultilingualServiceNameItem *item =
+      GstMpegtsDvbMultilingualServiceNameItem *item =
           g_ptr_array_index (items, i);
       g_printf ("%*s item : %u\n", spacing, "", i);
       g_printf ("%*s   language_code : %s\n", spacing, "", item->language_code);
@@ -287,7 +288,7 @@
 }
 
 static void
-dump_multiligual_component (GstMpegTsDescriptor * desc, guint spacing)
+dump_multiligual_component (GstMpegtsDescriptor * desc, guint spacing)
 {
   GPtrArray *items;
   guint8 tag;
@@ -296,7 +297,7 @@
     guint8 i;
     g_printf ("%*s component_tag : 0x%02x\n", spacing, "", tag);
     for (i = 0; i < items->len; i++) {
-      GstMpegTsDvbMultilingualComponentItem *item =
+      GstMpegtsDvbMultilingualComponentItem *item =
           g_ptr_array_index (items, i);
       g_printf ("%*s   item : %u\n", spacing, "", i);
       g_printf ("%*s     language_code : %s\n", spacing, "",
@@ -308,33 +309,30 @@
 }
 
 static void
-dump_linkage (GstMpegTsDescriptor * desc, guint spacing)
+dump_linkage (GstMpegtsDescriptor * desc, guint spacing)
 {
-  GstMpegTsDVBLinkageDescriptor res;
-
-  res.private_data_length = 0;
-  res.private_data_bytes = NULL;
+  GstMpegtsDVBLinkageDescriptor *res;
 
   if (gst_mpegts_descriptor_parse_dvb_linkage (desc, &res)) {
     g_printf ("%*s Linkage Descriptor : 0x%02x (%s)\n", spacing, "",
-        res.linkage_type, enum_name (GST_TYPE_MPEG_TS_DVB_LINKAGE_TYPE,
-            res.linkage_type));
+        res->linkage_type, enum_name (GST_TYPE_MPEGTS_DVB_LINKAGE_TYPE,
+            res->linkage_type));
 
     g_printf ("%*s   Transport Stream ID : 0x%04x\n", spacing, "",
-        res.transport_stream_id);
+        res->transport_stream_id);
     g_printf ("%*s   Original Network ID : 0x%04x\n", spacing, "",
-        res.original_network_id);
+        res->original_network_id);
     g_printf ("%*s   Service ID          : 0x%04x\n", spacing, "",
-        res.service_id);
+        res->service_id);
 
-    switch (res.linkage_type) {
+    switch (res->linkage_type) {
       case GST_MPEGTS_DVB_LINKAGE_MOBILE_HAND_OVER:
       {
-        GstMpegTsDVBLinkageMobileHandOver *linkage =
-            (GstMpegTsDVBLinkageMobileHandOver *) res.linkage_data;
+        GstMpegtsDVBLinkageMobileHandOver *linkage =
+            (GstMpegtsDVBLinkageMobileHandOver *) res->linkage_data;
         g_printf ("%*s   hand_over_type    : 0x%02x (%s)\n", spacing,
             "", linkage->hand_over_type,
-            enum_name (GST_TYPE_MPEG_TS_DVB_LINKAGE_HAND_OVER_TYPE,
+            enum_name (GST_TYPE_MPEGTS_DVB_LINKAGE_HAND_OVER_TYPE,
                 linkage->hand_over_type));
         g_printf ("%*s   origin_type       : %s\n", spacing, "",
             linkage->origin_type ? "SDT" : "NIT");
@@ -346,8 +344,8 @@
       }
       case GST_MPEGTS_DVB_LINKAGE_EVENT:
       {
-        GstMpegTsDVBLinkageEvent *linkage =
-            (GstMpegTsDVBLinkageEvent *) res.linkage_data;
+        GstMpegtsDVBLinkageEvent *linkage =
+            (GstMpegtsDVBLinkageEvent *) res->linkage_data;
         g_printf ("%*s   target_event_id   : 0x%04x\n", spacing, "",
             linkage->target_event_id);
         g_printf ("%*s   target_listed     : %s\n", spacing, "",
@@ -359,10 +357,10 @@
       case GST_MPEGTS_DVB_LINKAGE_EXTENDED_EVENT:
       {
         guint i;
-        GPtrArray *items = (GPtrArray *) res.linkage_data;
+        GPtrArray *items = (GPtrArray *) res->linkage_data;
 
         for (i = 0; i < items->len; i++) {
-          GstMpegTsDVBLinkageExtendedEvent *linkage =
+          GstMpegtsDVBLinkageExtendedEvent *linkage =
               g_ptr_array_index (items, i);
           g_printf ("%*s   target_event_id   : 0x%04x\n", spacing, "",
               linkage->target_event_id);
@@ -398,46 +396,46 @@
       default:
         break;
     }
-    if (res.private_data_length > 0) {
-      dump_memory_bytes (res.private_data_bytes, res.private_data_length,
+    if (res->private_data_length > 0) {
+      dump_memory_bytes (res->private_data_bytes, res->private_data_length,
           spacing + 2);
-      g_free ((gpointer) res.private_data_bytes);
     }
+    gst_mpegts_dvb_linkage_descriptor_free (res);
   }
 }
 
 static void
-dump_component (GstMpegTsDescriptor * desc, guint spacing)
+dump_component (GstMpegtsDescriptor * desc, guint spacing)
 {
-  GstMpegTsComponentDescriptor res;
-
-  res.text = NULL;
+  GstMpegtsComponentDescriptor *res;
 
   if (gst_mpegts_descriptor_parse_dvb_component (desc, &res)) {
     g_printf ("%*s stream_content : 0x%02x (%s)\n", spacing, "",
-        res.stream_content,
-        enum_name (GST_TYPE_MPEG_TS_COMPONENT_STREAM_CONTENT,
-            res.stream_content));
-    g_printf ("%*s component_type : 0x%02x\n", spacing, "", res.component_type);
-    g_printf ("%*s component_tag  : 0x%02x\n", spacing, "", res.component_tag);
-    g_printf ("%*s language_code  : %s\n", spacing, "", res.language_code);
+        res->stream_content,
+        enum_name (GST_TYPE_MPEGTS_COMPONENT_STREAM_CONTENT,
+            res->stream_content));
+    g_printf ("%*s component_type : 0x%02x\n", spacing, "",
+        res->component_type);
+    g_printf ("%*s component_tag  : 0x%02x\n", spacing, "", res->component_tag);
+    g_printf ("%*s language_code  : %s\n", spacing, "", res->language_code);
     g_printf ("%*s text           : %s\n", spacing, "",
-        res.text ? res.text : "NULL");
+        res->text ? res->text : "NULL");
+    gst_mpegts_dvb_component_descriptor_free (res);
   }
 }
 
 static void
-dump_content (GstMpegTsDescriptor * desc, guint spacing)
+dump_content (GstMpegtsDescriptor * desc, guint spacing)
 {
   GPtrArray *contents;
   guint i;
 
   if (gst_mpegts_descriptor_parse_dvb_content (desc, &contents)) {
     for (i = 0; i < contents->len; i++) {
-      GstMpegTsContent *item = g_ptr_array_index (contents, i);
+      GstMpegtsContent *item = g_ptr_array_index (contents, i);
       g_printf ("%*s content nibble 1 : 0x%01x (%s)\n", spacing, "",
           item->content_nibble_1,
-          enum_name (GST_TYPE_MPEG_TS_CONTENT_NIBBLE_HI,
+          enum_name (GST_TYPE_MPEGTS_CONTENT_NIBBLE_HI,
               item->content_nibble_1));
       g_printf ("%*s content nibble 2 : 0x%01x\n", spacing, "",
           item->content_nibble_2);
@@ -449,38 +447,40 @@
 }
 
 static void
-dump_iso_639_language (GstMpegTsDescriptor * desc, guint spacing)
+dump_iso_639_language (GstMpegtsDescriptor * desc, guint spacing)
 {
   guint i;
-  GstMpegTsISO639LanguageDescriptor res;
+  GstMpegtsISO639LanguageDescriptor *res;
 
   if (gst_mpegts_descriptor_parse_iso_639_language (desc, &res)) {
-    for (i = 0; i < res.nb_language; i++)
+    for (i = 0; i < res->nb_language; i++) {
       g_print
-          ("%*s ISO 639 Language Descriptor %c%c%c , audio_type:0x%x (%s)\n",
-          spacing, "", res.language[i][0], res.language[i][1],
-          res.language[i][2], res.audio_type[i],
-          enum_name (GST_TYPE_MPEG_TS_ISO639_AUDIO_TYPE, res.audio_type[i]));
+          ("%*s ISO 639 Language Descriptor %s , audio_type:0x%x (%s)\n",
+          spacing, "", res->language[i], res->audio_type[i],
+          enum_name (GST_TYPE_MPEGTS_ISO639_AUDIO_TYPE, res->audio_type[i]));
+    }
+    gst_mpegts_iso_639_language_descriptor_free (res);
   }
 }
 
 static void
-dump_dvb_extended_event (GstMpegTsDescriptor * desc, guint spacing)
+dump_dvb_extended_event (GstMpegtsDescriptor * desc, guint spacing)
 {
-  GstMpegTsExtendedEventDescriptor res;
+  GstMpegtsExtendedEventDescriptor *res;
 
   if (gst_mpegts_descriptor_parse_dvb_extended_event (desc, &res)) {
     guint i;
     g_printf ("%*s DVB Extended Event\n", spacing, "");
     g_printf ("%*s   descriptor_number:%d, last_descriptor_number:%d\n",
-        spacing, "", res.descriptor_number, res.last_descriptor_number);
-    g_printf ("%*s   language_code:%s\n", spacing, "", res.language_code);
-    g_printf ("%*s   text : %s\n", spacing, "", res.text);
-    for (i = 0; i < res.items->len; i++) {
-      GstMpegTsExtendedEventItem *item = g_ptr_array_index (res.items, i);
+        spacing, "", res->descriptor_number, res->last_descriptor_number);
+    g_printf ("%*s   language_code:%s\n", spacing, "", res->language_code);
+    g_printf ("%*s   text : %s\n", spacing, "", res->text);
+    for (i = 0; i < res->items->len; i++) {
+      GstMpegtsExtendedEventItem *item = g_ptr_array_index (res->items, i);
       g_printf ("%*s     #%d [description:item]  %s : %s\n",
           spacing, "", i, item->item_description, item->item);
     }
+    gst_mpegts_extended_event_descriptor_free (res);
   }
 }
 
@@ -490,7 +490,7 @@
   guint i;
 
   for (i = 0; i < descriptors->len; i++) {
-    GstMpegTsDescriptor *desc = g_ptr_array_index (descriptors, i);
+    GstMpegtsDescriptor *desc = g_ptr_array_index (descriptors, i);
     g_printf ("%*s [descriptor 0x%02x (%s) length:%d]\n", spacing, "",
         desc->tag, descriptor_name (desc->tag), desc->length);
     if (DUMP_DESCRIPTORS)
@@ -542,11 +542,11 @@
       case GST_MTS_DESC_DVB_SERVICE:
       {
         gchar *service_name, *provider_name;
-        GstMpegTsDVBServiceType service_type;
+        GstMpegtsDVBServiceType service_type;
         if (gst_mpegts_descriptor_parse_dvb_service (desc, &service_type,
                 &service_name, &provider_name)) {
           g_printf ("%*s   Service Descriptor, type:0x%02x (%s)\n", spacing, "",
-              service_type, enum_name (GST_TYPE_MPEG_TS_DVB_SERVICE_TYPE,
+              service_type, enum_name (GST_TYPE_MPEGTS_DVB_SERVICE_TYPE,
                   service_type));
           g_printf ("%*s      service_name  : %s\n", spacing, "", service_name);
           g_printf ("%*s      provider_name : %s\n", spacing, "",
@@ -579,8 +579,18 @@
       }
       case GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER:
       {
-        if (!DUMP_DESCRIPTORS)
-          dump_memory_content (desc, spacing + 2);
+        guint32 specifier;
+        guint8 len = 0, *data = NULL;
+
+        if (gst_mpegts_descriptor_parse_dvb_private_data_specifier (desc,
+                &specifier, &data, &len)) {
+          g_printf ("%*s   private_data_specifier : 0x%08x\n", spacing, "",
+              specifier);
+          if (len > 0) {
+            dump_memory_bytes (data, len, spacing + 2);
+            g_free (data);
+          }
+        }
         break;
       }
       case GST_MTS_DESC_DVB_FREQUENCY_LIST:
@@ -637,7 +647,7 @@
 
         if (gst_mpegts_descriptor_parse_dvb_parental_rating (desc, &ratings)) {
           for (j = 0; j < ratings->len; j++) {
-            GstMpegTsDVBParentalRatingItem *item =
+            GstMpegtsDVBParentalRatingItem *item =
                 g_ptr_array_index (ratings, j);
             g_printf ("%*s   country_code : %s\n", spacing, "",
                 item->country_code);
@@ -647,6 +657,25 @@
         }
         break;
       }
+      case GST_MTS_DESC_DVB_DATA_BROADCAST:
+      {
+        GstMpegtsDataBroadcastDescriptor *res;
+
+        if (gst_mpegts_descriptor_parse_dvb_data_broadcast (desc, &res)) {
+          g_printf ("%*s   data_broadcast_id : 0x%04x\n", spacing, "",
+              res->data_broadcast_id);
+          g_printf ("%*s   component_tag     : 0x%02x\n", spacing, "",
+              res->component_tag);
+          if (res->length > 0) {
+            g_printf ("%*s   selector_bytes:\n", spacing, "");
+            dump_memory_bytes (res->selector_bytes, res->length, spacing + 2);
+          }
+          g_printf ("%*s   text              : %s\n", spacing, "",
+              res->text ? res->text : "NULL");
+          gst_mpegts_dvb_data_broadcast_descriptor_free (res);
+        }
+        break;
+      }
       case GST_MTS_DESC_ISO_639_LANGUAGE:
         dump_iso_639_language (desc, spacing + 2);
         break;
@@ -672,7 +701,7 @@
       }
       case GST_MTS_DESC_DVB_SUBTITLING:
       {
-        gchar lang[4];
+        gchar *lang;
         guint8 type;
         guint16 composition;
         guint16 ancillary;
@@ -687,13 +716,14 @@
               composition);
           g_printf ("%*s      ancillary page id   : %u\n", spacing, "",
               ancillary);
+          g_free (lang);
         }
       }
         break;
       case GST_MTS_DESC_DVB_TELETEXT:
       {
-        GstMpegTsDVBTeletextType type;
-        gchar lang[4];
+        GstMpegtsDVBTeletextType type;
+        gchar *lang;
         guint8 magazine, page_number;
         guint j;
 
@@ -701,10 +731,11 @@
             gst_mpegts_descriptor_parse_dvb_teletext_idx (desc, j, &lang, &type,
                 &magazine, &page_number); j++) {
           g_printf ("%*s   Teletext, type:0x%02x (%s)\n", spacing, "", type,
-              enum_name (GST_TYPE_MPEG_TS_DVB_TELETEXT_TYPE, type));
+              enum_name (GST_TYPE_MPEGTS_DVB_TELETEXT_TYPE, type));
           g_printf ("%*s      language    : %s\n", spacing, "", lang);
           g_printf ("%*s      magazine    : %u\n", spacing, "", magazine);
           g_printf ("%*s      page number : %u\n", spacing, "", page_number);
+          g_free (lang);
         }
       }
         break;
@@ -715,7 +746,7 @@
 }
 
 static void
-dump_pat (GstMpegTsSection * section)
+dump_pat (GstMpegtsSection * section)
 {
   GPtrArray *pat = gst_mpegts_section_get_pat (section);
   guint i, len;
@@ -724,7 +755,7 @@
   g_printf ("   %d program(s):\n", len);
 
   for (i = 0; i < len; i++) {
-    GstMpegTsPatProgram *patp = g_ptr_array_index (pat, i);
+    GstMpegtsPatProgram *patp = g_ptr_array_index (pat, i);
 
     g_print
         ("     program_number:%6d (0x%04x), network_or_program_map_PID:0x%04x\n",
@@ -736,9 +767,9 @@
 }
 
 static void
-dump_pmt (GstMpegTsSection * section)
+dump_pmt (GstMpegtsSection * section)
 {
-  const GstMpegTsPMT *pmt = gst_mpegts_section_get_pmt (section);
+  const GstMpegtsPMT *pmt = gst_mpegts_section_get_pmt (section);
   guint i, len;
 
   g_printf ("     program_number : 0x%04x\n", section->subtable_extension);
@@ -747,18 +778,18 @@
   len = pmt->streams->len;
   g_printf ("     %d Streams:\n", len);
   for (i = 0; i < len; i++) {
-    GstMpegTsPMTStream *stream = g_ptr_array_index (pmt->streams, i);
+    GstMpegtsPMTStream *stream = g_ptr_array_index (pmt->streams, i);
     g_printf ("       pid:0x%04x , stream_type:0x%02x (%s)\n", stream->pid,
         stream->stream_type,
-        enum_name (GST_TYPE_MPEG_TS_STREAM_TYPE, stream->stream_type));
+        enum_name (GST_TYPE_MPEGTS_STREAM_TYPE, stream->stream_type));
     dump_descriptors (stream->descriptors, 9);
   }
 }
 
 static void
-dump_eit (GstMpegTsSection * section)
+dump_eit (GstMpegtsSection * section)
 {
-  const GstMpegTsEIT *eit = gst_mpegts_section_get_eit (section);
+  const GstMpegtsEIT *eit = gst_mpegts_section_get_eit (section);
   guint i, len;
 
   g_assert (eit);
@@ -776,7 +807,7 @@
   g_printf ("     %d Event(s):\n", len);
   for (i = 0; i < len; i++) {
     gchar *tmp = (gchar *) "<NO TIME>";
-    GstMpegTsEITEvent *event = g_ptr_array_index (eit->events, i);
+    GstMpegtsEITEvent *event = g_ptr_array_index (eit->events, i);
 
     if (event->start_time)
       tmp = gst_date_time_to_iso8601_string (event->start_time);
@@ -784,7 +815,7 @@
         GST_TIME_FORMAT "\n", event->event_id, tmp,
         GST_TIME_ARGS (event->duration * GST_SECOND));
     g_printf ("       running_status:0x%02x (%s), free_CA_mode:%d (%s)\n",
-        event->running_status, enum_name (GST_TYPE_MPEG_TS_RUNNING_STATUS,
+        event->running_status, enum_name (GST_TYPE_MPEGTS_RUNNING_STATUS,
             event->running_status), event->free_CA_mode,
         event->free_CA_mode ? "MAYBE SCRAMBLED" : "NOT SCRAMBLED");
     if (event->start_time)
@@ -799,7 +830,7 @@
   guint i;
 
   for (i = 0; i < mstrings->len; i++) {
-    GstMpegTsAtscMultString *mstring = g_ptr_array_index (mstrings, i);
+    GstMpegtsAtscMultString *mstring = g_ptr_array_index (mstrings, i);
     gint j, n;
 
     n = mstring->segments->len;
@@ -808,7 +839,7 @@
         i, mstring->iso_639_langcode);
     g_printf ("%*s   segments:%d\n", spacing, "", n);
     for (j = 0; j < n; j++) {
-      GstMpegTsAtscStringSegment *segment =
+      GstMpegtsAtscStringSegment *segment =
           g_ptr_array_index (mstring->segments, j);
 
       g_printf ("%*s    Compression:0x%x\n", spacing, "",
@@ -822,9 +853,9 @@
 }
 
 static void
-dump_atsc_eit (GstMpegTsSection * section)
+dump_atsc_eit (GstMpegtsSection * section)
 {
-  const GstMpegTsAtscEIT *eit = gst_mpegts_section_get_atsc_eit (section);
+  const GstMpegtsAtscEIT *eit = gst_mpegts_section_get_atsc_eit (section);
   guint i, len;
 
   g_assert (eit);
@@ -835,7 +866,7 @@
   len = eit->events->len;
   g_printf ("     %d Event(s):\n", len);
   for (i = 0; i < len; i++) {
-    GstMpegTsAtscEITEvent *event = g_ptr_array_index (eit->events, i);
+    GstMpegtsAtscEITEvent *event = g_ptr_array_index (eit->events, i);
 
     g_printf ("     %d)\n", i);
     g_printf ("       event_id: 0x%04x\n", event->event_id);
@@ -849,9 +880,9 @@
 }
 
 static void
-dump_ett (GstMpegTsSection * section)
+dump_ett (GstMpegtsSection * section)
 {
-  const GstMpegTsAtscETT *ett = gst_mpegts_section_get_atsc_ett (section);
+  const GstMpegtsAtscETT *ett = gst_mpegts_section_get_atsc_ett (section);
   guint len;
 
   g_assert (ett);
@@ -866,15 +897,15 @@
 }
 
 static void
-dump_stt (GstMpegTsSection * section)
+dump_stt (GstMpegtsSection * section)
 {
-  const GstMpegTsAtscSTT *stt = gst_mpegts_section_get_atsc_stt (section);
+  const GstMpegtsAtscSTT *stt = gst_mpegts_section_get_atsc_stt (section);
   GstDateTime *dt;
   gchar *dt_str = NULL;
 
   g_assert (stt);
 
-  dt = gst_mpegts_atsc_stt_get_datetime_utc ((GstMpegTsAtscSTT *) stt);
+  dt = gst_mpegts_atsc_stt_get_datetime_utc ((GstMpegtsAtscSTT *) stt);
   if (dt)
     dt_str = gst_date_time_to_iso8601_string (dt);
 
@@ -890,9 +921,9 @@
 }
 
 static void
-dump_nit (GstMpegTsSection * section)
+dump_nit (GstMpegtsSection * section)
 {
-  const GstMpegTsNIT *nit = gst_mpegts_section_get_nit (section);
+  const GstMpegtsNIT *nit = gst_mpegts_section_get_nit (section);
   guint i, len;
 
   g_assert (nit);
@@ -904,7 +935,7 @@
   len = nit->streams->len;
   g_printf ("     %d Streams:\n", len);
   for (i = 0; i < len; i++) {
-    GstMpegTsNITStream *stream = g_ptr_array_index (nit->streams, i);
+    GstMpegtsNITStream *stream = g_ptr_array_index (nit->streams, i);
     g_printf
         ("       transport_stream_id:0x%04x , original_network_id:0x%02x\n",
         stream->transport_stream_id, stream->original_network_id);
@@ -913,9 +944,9 @@
 }
 
 static void
-dump_bat (GstMpegTsSection * section)
+dump_bat (GstMpegtsSection * section)
 {
-  const GstMpegTsBAT *bat = gst_mpegts_section_get_bat (section);
+  const GstMpegtsBAT *bat = gst_mpegts_section_get_bat (section);
   guint i, len;
 
   g_assert (bat);
@@ -925,7 +956,7 @@
   len = bat->streams->len;
   g_printf ("     %d Streams:\n", len);
   for (i = 0; i < len; i++) {
-    GstMpegTsBATStream *stream = g_ptr_array_index (bat->streams, i);
+    GstMpegtsBATStream *stream = g_ptr_array_index (bat->streams, i);
     g_printf
         ("       transport_stream_id:0x%04x , original_network_id:0x%02x\n",
         stream->transport_stream_id, stream->original_network_id);
@@ -934,9 +965,9 @@
 }
 
 static void
-dump_sdt (GstMpegTsSection * section)
+dump_sdt (GstMpegtsSection * section)
 {
-  const GstMpegTsSDT *sdt = gst_mpegts_section_get_sdt (section);
+  const GstMpegtsSDT *sdt = gst_mpegts_section_get_sdt (section);
   guint i, len;
 
   g_assert (sdt);
@@ -947,7 +978,7 @@
   len = sdt->services->len;
   g_printf ("     %d Services:\n", len);
   for (i = 0; i < len; i++) {
-    GstMpegTsSDTService *service = g_ptr_array_index (sdt->services, i);
+    GstMpegtsSDTService *service = g_ptr_array_index (sdt->services, i);
     g_print
         ("       service_id:0x%04x, EIT_schedule_flag:%d, EIT_present_following_flag:%d\n",
         service->service_id, service->EIT_schedule_flag,
@@ -955,7 +986,7 @@
     g_print
         ("       running_status:0x%02x (%s), free_CA_mode:%d (%s)\n",
         service->running_status,
-        enum_name (GST_TYPE_MPEG_TS_RUNNING_STATUS, service->running_status),
+        enum_name (GST_TYPE_MPEGTS_RUNNING_STATUS, service->running_status),
         service->free_CA_mode,
         service->free_CA_mode ? "MAYBE SCRAMBLED" : "NOT SCRAMBLED");
     dump_descriptors (service->descriptors, 9);
@@ -963,7 +994,7 @@
 }
 
 static void
-dump_tdt (GstMpegTsSection * section)
+dump_tdt (GstMpegtsSection * section)
 {
   GstDateTime *date = gst_mpegts_section_get_tdt (section);
 
@@ -978,9 +1009,9 @@
 }
 
 static void
-dump_tot (GstMpegTsSection * section)
+dump_tot (GstMpegtsSection * section)
 {
-  const GstMpegTsTOT *tot = gst_mpegts_section_get_tot (section);
+  const GstMpegtsTOT *tot = gst_mpegts_section_get_tot (section);
   gchar *str = gst_date_time_to_iso8601_string (tot->utc_time);
 
   g_printf ("     utc_time : %s\n", str);
@@ -989,15 +1020,15 @@
 }
 
 static void
-dump_mgt (GstMpegTsSection * section)
+dump_mgt (GstMpegtsSection * section)
 {
-  const GstMpegTsAtscMGT *mgt = gst_mpegts_section_get_atsc_mgt (section);
+  const GstMpegtsAtscMGT *mgt = gst_mpegts_section_get_atsc_mgt (section);
   gint i;
 
   g_printf ("     protocol_version    : %u\n", mgt->protocol_version);
   g_printf ("     tables number       : %d\n", mgt->tables->len);
   for (i = 0; i < mgt->tables->len; i++) {
-    GstMpegTsAtscMGTTable *table = g_ptr_array_index (mgt->tables, i);
+    GstMpegtsAtscMGTTable *table = g_ptr_array_index (mgt->tables, i);
     g_printf ("     table %d)\n", i);
     g_printf ("       table_type    : %u\n", table->table_type);
     g_printf ("       pid           : 0x%x\n", table->pid);
@@ -1009,9 +1040,9 @@
 }
 
 static void
-dump_vct (GstMpegTsSection * section)
+dump_vct (GstMpegtsSection * section)
 {
-  const GstMpegTsAtscVCT *vct;
+  const GstMpegtsAtscVCT *vct;
   gint i;
 
   if (GST_MPEGTS_SECTION_TYPE (section) == GST_MPEGTS_SECTION_ATSC_CVCT) {
@@ -1027,7 +1058,7 @@
   g_printf ("     protocol_version    : %u\n", vct->protocol_version);
   g_printf ("     %d Sources:\n", vct->sources->len);
   for (i = 0; i < vct->sources->len; i++) {
-    GstMpegTsAtscVCTSource *source = g_ptr_array_index (vct->sources, i);
+    GstMpegtsAtscVCTSource *source = g_ptr_array_index (vct->sources, i);
     g_print ("       short_name: %s\n", source->short_name);
     g_print ("       major_channel_number: %u, minor_channel_number: %u\n",
         source->major_channel_number, source->minor_channel_number);
@@ -1052,7 +1083,7 @@
 }
 
 static void
-dump_section (GstMpegTsSection * section)
+dump_section (GstMpegtsSection * section)
 {
   switch (GST_MPEGTS_SECTION_TYPE (section)) {
     case GST_MPEGTS_SECTION_PAT:
@@ -1113,7 +1144,7 @@
       break;
     case GST_MESSAGE_ELEMENT:
     {
-      GstMpegTsSection *section;
+      GstMpegtsSection *section;
       if ((section = gst_message_parse_mpegts_section (message))) {
         const gchar *table_name;
 
@@ -1121,7 +1152,7 @@
         g_print
             ("Got section: PID:0x%04x type:%s (table_id 0x%02x (%s)) at offset %"
             G_GUINT64_FORMAT "\n", section->pid,
-            enum_name (GST_TYPE_MPEG_TS_SECTION_TYPE, section->section_type),
+            enum_name (GST_TYPE_MPEGTS_SECTION_TYPE, section->section_type),
             section->table_id, table_name, section->offset);
         if (!section->short_section) {
           g_print
@@ -1163,31 +1194,31 @@
   }
 
   /* Hack: ensure all enum type classes are loaded */
-  g_type_class_ref (GST_TYPE_MPEG_TS_SECTION_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_SECTION_TABLE_ID);
-  g_type_class_ref (GST_TYPE_MPEG_TS_RUNNING_STATUS);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DESCRIPTOR_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DVB_DESCRIPTOR_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_ATSC_DESCRIPTOR_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_ISDB_DESCRIPTOR_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_MISC_DESCRIPTOR_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_ISO639_AUDIO_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DVB_SERVICE_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DVB_TELETEXT_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_STREAM_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_SECTION_DVB_TABLE_ID);
-  g_type_class_ref (GST_TYPE_MPEG_TS_SECTION_ATSC_TABLE_ID);
-  g_type_class_ref (GST_TYPE_MPEG_TS_SECTION_SCTE_TABLE_ID);
-  g_type_class_ref (GST_TYPE_MPEG_TS_MODULATION_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DVB_CODE_RATE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_CABLE_OUTER_FEC_SCHEME);
-  g_type_class_ref (GST_TYPE_MPEG_TS_TERRESTRIAL_TRANSMISSION_MODE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_TERRESTRIAL_GUARD_INTERVAL);
-  g_type_class_ref (GST_TYPE_MPEG_TS_TERRESTRIAL_HIERARCHY);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DVB_LINKAGE_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_DVB_LINKAGE_HAND_OVER_TYPE);
-  g_type_class_ref (GST_TYPE_MPEG_TS_COMPONENT_STREAM_CONTENT);
-  g_type_class_ref (GST_TYPE_MPEG_TS_CONTENT_NIBBLE_HI);
+  g_type_class_ref (GST_TYPE_MPEGTS_SECTION_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_SECTION_TABLE_ID);
+  g_type_class_ref (GST_TYPE_MPEGTS_RUNNING_STATUS);
+  g_type_class_ref (GST_TYPE_MPEGTS_DESCRIPTOR_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_DVB_DESCRIPTOR_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_ATSC_DESCRIPTOR_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_ISDB_DESCRIPTOR_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_MISC_DESCRIPTOR_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_ISO639_AUDIO_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_DVB_SERVICE_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_DVB_TELETEXT_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_STREAM_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_SECTION_DVB_TABLE_ID);
+  g_type_class_ref (GST_TYPE_MPEGTS_SECTION_ATSC_TABLE_ID);
+  g_type_class_ref (GST_TYPE_MPEGTS_SECTION_SCTE_TABLE_ID);
+  g_type_class_ref (GST_TYPE_MPEGTS_MODULATION_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_DVB_CODE_RATE);
+  g_type_class_ref (GST_TYPE_MPEGTS_CABLE_OUTER_FEC_SCHEME);
+  g_type_class_ref (GST_TYPE_MPEGTS_TERRESTRIAL_TRANSMISSION_MODE);
+  g_type_class_ref (GST_TYPE_MPEGTS_TERRESTRIAL_GUARD_INTERVAL);
+  g_type_class_ref (GST_TYPE_MPEGTS_TERRESTRIAL_HIERARCHY);
+  g_type_class_ref (GST_TYPE_MPEGTS_DVB_LINKAGE_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_DVB_LINKAGE_HAND_OVER_TYPE);
+  g_type_class_ref (GST_TYPE_MPEGTS_COMPONENT_STREAM_CONTENT);
+  g_type_class_ref (GST_TYPE_MPEGTS_CONTENT_NIBBLE_HI);
 
   mainloop = g_main_loop_new (NULL, FALSE);
 
diff --git a/win32/common/config.h b/win32/common/config.h
index b1949b0..49f6c24 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -86,7 +86,7 @@
 #define GST_PACKAGE_ORIGIN "Unknown package origin"
 
 /* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2014-06-22"
+#define GST_PACKAGE_RELEASE_DATETIME "2014-06-28"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -634,7 +634,7 @@
 #define PACKAGE_NAME "GStreamer Bad Plug-ins"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer Bad Plug-ins 1.3.3"
+#define PACKAGE_STRING "GStreamer Bad Plug-ins 1.3.90"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gst-plugins-bad"
@@ -643,7 +643,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.3.3"
+#define PACKAGE_VERSION "1.3.90"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -683,7 +683,7 @@
 #undef USE_EGL_RPI
 
 /* Version number of package */
-#define VERSION "1.3.3"
+#define VERSION "1.3.90"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */