diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 0000000..de3b375
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,16 @@
+GStreamer for Debian
+----------------------
+This package contains the GStreamer distribution.
+
+More information can be found at http://gstreamer.net/
+
+GStreamer core is split into the following packages:
+
+   libgstreamer#           core libraries, plugins, and utilities
+   libgstreamer#-dev       development libs and headers
+   gstreamerVER-doc        documentation
+   gstreamerVER-tools      useful tools
+
+Where VER is the major and minor version of the libarary.
+
+David I. Lehn <dlehn@debian.org>  Thu, 01 May 2003 19:30:35 -0400
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..6e3b91d
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,2141 @@
+gstreamer0.10 (0.10.35-1) unstable; urgency=low
+
+  * New upstream bugfix release, "Nuclear Fission".
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 23 Jun 2011 08:48:30 +0200
+
+gstreamer0.10 (0.10.34-1) unstable; urgency=low
+
+  * New upstream bugfix release, "Misfits".
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 14 May 2011 11:41:04 +0200
+
+gstreamer0.10 (0.10.33-1) unstable; urgency=low
+
+  * New upstream release, "Prior Spaceflight Experience is an Advantage":
+    + debian/libgstreamer.symbols:
+      - Update version of new symbols to 0.10.33.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 10 May 2011 15:45:19 +0200
+
+gstreamer0.10 (0.10.32.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 27 Apr 2011 14:04:36 +0200
+
+gstreamer0.10 (0.10.32.2-1) experimental; urgency=low
+
+  * debian/control.in:
+    + Let the -dev package depend on the GIR package as required by
+      the new gobject-introspection policy.
+
+  [ Alessandro Decina ]
+  * debian/control.in:
+    + Add build dependency on dh-autoreconf.
+  * debian/rules:
+    + Include dh-autoreconf cdbs rule.
+
+  [ Sebastian Dröge ]
+  * New upstream pre-release:
+    + debian/patches/01_valve-only-set-discont-once.patch:
+      - Dropped, merged upstream.
+    + debian/libgstreamer.symbols:
+      - Add new API.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 17 Apr 2011 09:45:41 +0200
+
+gstreamer0.10 (0.10.32-6) unstable; urgency=low
+
+  * Upload to unstable for the gobject-introspection transition.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 22 Mar 2011 13:58:41 +0100
+
+gstreamer0.10 (0.10.32-5) experimental; urgency=low
+
+  * debian/control.in:
+    + Revert gobject-introspection versio revert and provide
+      gir1.2-gstreamer-0.10 again.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 07 Mar 2011 09:26:32 +0100
+
+gstreamer0.10 (0.10.32-4) unstable; urgency=low
+
+  * debian/control.in: Remove Conflict on gst-plugins-bad, the registry
+    itself works around it.
+  * debian/control.in: Move back to the old gobject-introspection stack as it
+    hasn't migrated to unstable yet
+  * Both of the above fixes FTBS on unstable (Closes: #615911)
+
+ -- Sjoerd Simons <sjoerd@debian.org>  Wed, 02 Mar 2011 00:18:29 +0000
+
+gstreamer0.10 (0.10.32-3) unstable; urgency=low
+
+  * debian/patches/01_valve-only-set-discont-once.patch
+    - Added. Fixes bad audio quality in calls from Empathy (From upstream git)
+
+ -- Sjoerd Simons <sjoerd@debian.org>  Mon, 28 Feb 2011 18:42:54 +0000
+
+gstreamer0.10 (0.10.32-2) unstable; urgency=low
+
+  * Upload to unstable.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 08 Feb 2011 10:55:58 +0100
+
+gstreamer0.10 (0.10.32-1) experimental; urgency=low
+
+  * New upstream stable release, "Take Me to the Bonus Level":
+    + debian/libgstreamer.symbols:
+      - Update new symbols to the release version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 22 Jan 2011 12:54:28 +0100
+
+gstreamer0.10 (0.10.31.4-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update new symbols to the latest pre-release version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 19 Jan 2011 21:09:58 +0100
+
+gstreamer0.10 (0.10.31.3-1) experimental; urgency=low
+
+  * debian/control.in:
+    + Conflict with gstreamer0.10-plugins-bad0.10 (<< 0.10.20.2) because
+      of the moved selector and valve plugins. There's no file conflict.
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update new symbols to the latest pre-release version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 13 Jan 2011 11:47:02 +0100
+
+gstreamer0.10 (0.10.31.2-1) experimental; urgency=low
+
+  [ Emilio Pozuelo Monfort ]
+  * debian/control.in,
+    debian/rules:
+    + Use dpkg-vendor instead of lsb_release.
+
+  [ Sebastian Dröge ]
+  * debian/control.in:
+    + Suggest gstreamer0.10-plugins-base instead of the non-existing
+      gstreamer0.10-plugins package (Closes: #607466).
+  * New upstream pre-release:
+    + debian/control.in:
+      - Require GLib >= 2.22.
+    + debian/patches/*.patch:
+      - Refreshed.
+    + debian/libgstreamer.symbols:
+      - Add new API symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 08 Jan 2011 17:05:50 +0100
+
+gstreamer0.10 (0.10.31-2) experimental; urgency=low
+
+  * Transition from gir1.0-gstreamer-0.10 to gir1.2-gstreamer-0.10
+
+ -- Sjoerd Simons <sjoerd@debian.org>  Sun, 12 Dec 2010 19:45:03 +0000
+
+gstreamer0.10 (0.10.31-1) experimental; urgency=low
+
+  * New upstream release, "Safety Pins":
+    + debian/libgstreamer.symbols:
+      - Update symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 02 Dec 2010 10:30:18 +0100
+
+gstreamer0.10 (0.10.30.5-1) experimental; urgency=low
+
+  * debian/control.in:
+    + Drop gir-repository-dev build dependency. It's not needed and
+      only pulls in half of Gnome.
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 19 Nov 2010 11:26:27 +0100
+
+gstreamer0.10 (0.10.30.4-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 01 Nov 2010 20:11:56 +0100
+
+gstreamer0.10 (0.10.30.3-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 22 Oct 2010 19:51:53 +0200
+
+gstreamer0.10 (0.10.30.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/patches/80_ia32-hack.patch:
+      - Refreshed.
+    + debian/libgstreamer.symbols:
+      - Add new symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 16 Oct 2010 11:14:39 +0200
+
+gstreamer0.10 (0.10.30-1) unstable; urgency=low
+
+  * New upstream stable release, "Safety First":
+    + debian/libgstreamer.symbols:
+      - Update new symbols version to 0.10.30.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 15 Jul 2010 13:48:14 +0200
+
+gstreamer0.10 (0.10.29.4-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update new symbols version to 0.10.29.4.
+      - Add new symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 07 Jul 2010 11:40:13 +0200
+
+gstreamer0.10 (0.10.29.3-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update new symbols version to 0.10.29.3.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 30 Jun 2010 10:40:20 +0200
+
+gstreamer0.10 (0.10.29.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/rules,
+      debian/compat,
+      debian/control.in,
+      debian/source/format,
+      debian/patches/*:
+      - Update to debhelper compat level 7.
+      - Update to source format 3.0 (quilt).
+      - Update to Standards-Version 3.8.4.
+    + debian/libgstreamer.symbols:
+      - Update symbols file for the new API.
+    + debian/control.in:
+      - Build depend on GLib 2.20.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 26 Jun 2010 20:17:40 +0200
+
+gstreamer0.10 (0.10.29-1) unstable; urgency=low
+
+  * New upstream release, "It's a Trap":
+    + debian/libgstreamer.symbols:
+      - Update symbol versions to the stable release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 28 Apr 2010 09:40:47 +0200
+
+gstreamer0.10 (0.10.28.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 26 Apr 2010 07:58:27 +0200
+
+gstreamer0.10 (0.10.28.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Update symbols file for the new API.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 15 Apr 2010 11:44:13 +0200
+
+gstreamer0.10 (0.10.28-1) unstable; urgency=low
+
+  * New upstream stable release, "Same Old, Same Old".
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 09 Mar 2010 09:45:24 +0000
+
+gstreamer0.10 (0.10.27-1) unstable; urgency=low
+
+  * New upstream stable release, "You're Shocked, We Know":
+    + debian/libgstreamer.symbols:
+      - Updated symbol versions to the stable version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 07 Mar 2010 10:18:53 +0000
+
+gstreamer0.10 (0.10.26.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 25 Feb 2010 08:20:25 +0100
+
+gstreamer0.10 (0.10.26.2-2) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Added new API.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 19 Feb 2010 13:46:16 +0100
+
+gstreamer0.10 (0.10.26-1) unstable; urgency=low
+
+  * New upstream release, "Think Twice":
+    + debian/libgstreamer.symbols:
+      - Update to use the stable versions.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 11 Feb 2010 10:30:18 +0100
+
+gstreamer0.10 (0.10.25.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 05 Feb 2010 09:59:16 +0100
+
+gstreamer0.10 (0.10.25.2-3) experimental; urgency=low
+
+  * debian/patches/80_ia32-hack.patch:
+    + Fix FTBFS if sys/utsname.h is not included indirectly by
+      other headers.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 28 Jan 2010 17:54:47 +0100
+
+gstreamer0.10 (0.10.25.2-2) experimental; urgency=low
+
+  * debian/libgstreamer.install:
+    + Also ship the registry update helper application.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 27 Jan 2010 10:38:21 +0100
+
+gstreamer0.10 (0.10.25.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/patches/01_multiqueue-iterate-internal-links.patch:
+      - Dropped, merged upstream.
+    + debian/patches/80_ia32-hack.patch:
+      - Updated to apply cleanly again.
+    + debian/control.in:
+      - Conflict with gstreamer0.10-plugins-base (<< 0.10.25.2) because
+        of a moved plugin. This is no file conflict but a GObject type
+        name conflict.
+      - Build depend on GLib 2.18.
+    + debian/libgstreamer.symbols:
+      - Added new API.
+  * debian/control.in:
+    + Remove David I. Lehn from Uploaders (Closes: #557284).
+    + Fix typo in package description (Closes: #557365).
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 27 Jan 2010 07:43:13 +0100
+
+gstreamer0.10 (0.10.25-4) unstable; urgency=low
+
+  * debian/rules:
+    + Don't include the plugin library files in the dh_makeshlibs
+      call (Closes: #559657).
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 06 Dec 2009 13:57:03 +0100
+
+gstreamer0.10 (0.10.25-3) unstable; urgency=low
+
+  * debian/rules,
+    debian/control.in,
+    debian/gir1.0-gstreamer.install:
+    + Update for the new GObject-Introspection mini spec (Closes: #551568).
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 20 Oct 2009 10:54:14 +0200
+
+gstreamer0.10 (0.10.25-2) unstable; urgency=low
+
+  * debian/patches/01_multiqueue-iterate-internal-links.patch:
+    + Patch from upstream GIT to improve the iterate internal links
+      function of the multiqueue element. It's more robust and faster
+      now.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 07 Oct 2009 08:52:26 +0200
+
+gstreamer0.10 (0.10.25-1) unstable; urgency=low
+
+  * New upstream release, 'Feel the burn':
+    + debian/libgstreamer.symbols:
+      - Updated for the new release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 05 Oct 2009 18:07:40 +0200
+
+gstreamer0.10 (0.10.24.4-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 02 Oct 2009 07:41:43 +0200
+
+gstreamer0.10 (0.10.24.3-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/patches/01_gir-pkgconfig-path.patch,
+      debian/patches/02_pkgconfig-first.patch:
+      - Dropped, merged upstream.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 17 Sep 2009 07:13:33 +0200
+
+gstreamer0.10 (0.10.24.2-2) experimental; urgency=low
+
+  * debian/rules:
+    + Set HOME to a fake home directory to prevent writing
+      to a non-writable buildd home which results in FTBFS (Closes: #546444).
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 13 Sep 2009 11:14:41 +0200
+
+gstreamer0.10 (0.10.24.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/control.in,
+      debian/libgstreamer.install,
+      debian/libgstreamer-dev.install:
+      - Enable GObject-Introspection support and ship the generated
+        files in the -dev and shared library package.
+    + debian/control.in:
+      - Update build dependencies.
+    + debian/patches/90_dont-link-gstcheck-with-check.patch:
+      - Dropped, not needed anymore.
+    + debian/libgstreamer.symbols:
+      - Updated for the new version.
+  * debian/control.in:
+    - Update Standards-Version to 3.8.3.
+  * debian/patches/01_gir-pkgconfig-path.patch:
+    - Add correct pkg-config search path for introspection
+      generation.
+  * debian/patches/02_pkgconfig-first.patch:
+    - Generate pkg-config before all binaries.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 12 Sep 2009 12:23:52 +0200
+
+gstreamer0.10 (0.10.24-1) unstable; urgency=low
+
+  * New upstream release, 'It matters':
+    + debian/libgstreamer.symbols:
+      - Updated for the new release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 05 Aug 2009 08:00:46 +0200
+
+gstreamer0.10 (0.10.23.4-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Updated for the new pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 24 Jul 2009 18:41:42 +0200
+
+gstreamer0.10 (0.10.23.3-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer.symbols:
+      - Updated for the new pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 21 Jul 2009 09:48:07 +0200
+
+gstreamer0.10 (0.10.23.2-1) experimental; urgency=low
+
+  * debian/control.in:
+    + Fix section of debug package.
+    + Update Standards-Version to 3.8.2, no additional changes needed.
+  * New upstream pre-release:
+    + debian/control.in:
+      - Update build dependencies.
+    + debian/patches/01_urihandler-get_type_full.patch:
+      - Dropped, merged upstream.
+    + debian/libgstreamer.symbols:
+      - Updated for the new API additions.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 15 Jul 2009 09:07:03 +0200
+
+gstreamer0.10 (0.10.23-2) unstable; urgency=low
+
+  * debian/control.in:
+    + (Build-) depend on libxml2-doc and libglib2.0-doc to get correct
+      cross references in the docs.
+    + Add ${misc:Depends} everywhere.
+  * debian/gstreamer-doc.links:
+    + Add links to /usr/share/gtk-doc to allow cross references to
+      the gstreamer core docs.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 17 Jun 2009 16:31:46 +0200
+
+gstreamer0.10 (0.10.23-1) unstable; urgency=low
+
+  * New upstream release, 'Alaboo Alaboo':
+    + debian/libgstreamer.symbols:
+      - Change new symbol version to 0.10.23.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 11 May 2009 10:02:06 +0200
+
+gstreamer0.10 (0.10.22.4-1) experimental; urgency=low
+
+  * debian/patches/90_dont-link-gstcheck-with-check.patch:
+    + Patch by Arnaud Soyez to fix FTBFS because of invalid make syntax.
+      (Closes: #527007).
+  * debian/patches/01_urihandler-get_type_full.patch:
+    + Use get_type_full() vmethod instead of get_type() if specified.
+      This makes it possible to implement GstURIHandler from bindings.
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 07 May 2009 09:27:44 +0200
+
+gstreamer0.10 (0.10.22.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 22 Apr 2009 08:05:52 +0200
+
+gstreamer0.10 (0.10.22.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/control.in:
+      - Require GLib >= 2.14.
+    + debian/libgstreamer.symbols:
+      - Add new symbols.
+  * debian/control.in:
+    + Update Standards-Version to 3.8.1, no additional changes needed.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 16 Apr 2009 06:17:17 +0200
+
+gstreamer0.10 (0.10.22-3) unstable; urgency=low
+
+  * debian/patches/90_dont-link-gstcheck-with-check.patch:
+    + Don't link libgstcheck with check. check is a static library
+      and by linking it to libgstcheck and to everything using libgstcheck
+      we're introducing the check symbols twice and export the check
+      API from libgstcheck (Closes: #521735).
+  * debian/rules:
+    + Include clean-la.mk to remove dependency_libs from the .la files.
+      This is a preparation to drop them later and to remove unneeded
+      dependencies when linking to the GStreamer libraries.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 01 Apr 2009 16:07:22 +0200
+
+gstreamer0.10 (0.10.22-2) unstable; urgency=low
+
+  * Upload to unstable.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 15 Feb 2009 19:43:50 +0100
+
+gstreamer0.10 (0.10.22-1) experimental; urgency=low
+
+  * New upstream release, 'I heard a disturbing sound':
+    + debian/libgstreamer.symbols:
+      - Updated for the new version.
+    + Fixes segfault in gst_register_typefind() (Closes: #511902).
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 20 Jan 2009 09:10:34 +0100
+
+gstreamer0.10 (0.10.21.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 11 Jan 2009 20:09:19 +0100
+
+gstreamer0.10 (0.10.21.2-3) experimental; urgency=low
+
+  * debian/rules:
+    + Fix check introduced in last version to prevent FTBFS.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 09 Jan 2009 11:05:19 +0100
+
+gstreamer0.10 (0.10.21.2-2) experimental; urgency=low
+
+  * debian/rules:
+    + Only build the docs when binary-indep is called.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 08 Jan 2009 10:05:43 +0100
+
+gstreamer0.10 (0.10.21.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/patches/01_wrapper-plugins.patch,
+      debian/patches/02_gtkdoc-rebase.patch,
+      debian/patches/03_registry-failure-crash.patch,
+      debian/patches/04_pad-caps-acception.patch,
+      debian/patches/05_basetransform-caps-refcount.patch,
+      debian/patches/06_basetransform-buffer-allocation.patch:
+      - Dropped, merged upstream.
+    + debian/patches/80_ia32-hack.patch:
+      - Updated to apply cleanly again.
+    + debian/libgstreamer.symbols:
+      - Updated with the new symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 07 Jan 2009 09:42:00 +0100
+
+gstreamer0.10 (0.10.21-5) experimental; urgency=low
+
+  * debian/patches/06_basetransform-buffer-allocation.patch:
+    + Patch from upstream CVS to fix buffer allocation. Before it could
+      happen that invalid memory references were returned.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 24 Oct 2008 14:49:42 +0200
+
+gstreamer0.10 (0.10.21-4) experimental; urgency=low
+
+  * debian/patches/04_pad-caps-acception.patch:
+    + Patch from upstream CVS to fix several cases where basetransform
+      elements didn't accept caps while they should.
+  * debian/patches/05_basetransform-caps-refcount.patch:
+    + Patch from upstream CVS to make sure that basetransform's pad caps
+      have the correct refcount and are not destroyed by accident.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 22 Oct 2008 07:53:14 +0200
+
+gstreamer0.10 (0.10.21-3) experimental; urgency=low
+
+  * debian/patches/03_registry-failure-crash.patch:
+    + Patch from upstream CVS to fix a crash when writing the registry file
+      failed. Fixes builds on buildd's with non-writable $HOME.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 08 Oct 2008 12:22:10 +0200
+
+gstreamer0.10 (0.10.21-2) experimental; urgency=low
+
+  * debian/libgstreamer.symbols:
+    - Updated for 0.10.21 so we depend on a stable version.
+  * debian/patches/02_gtkdoc-rebase.patch:
+    - Don't require gtk-doc for the docs. Fixes the build with
+      binary-indep (Closes: #499818).
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 05 Oct 2008 10:02:37 +0200
+
+gstreamer0.10 (0.10.21-1) experimental; urgency=low
+
+  * New upstream release, 'Take These Things From Me'.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 04 Oct 2008 12:16:53 +0200
+
+gstreamer0.10 (0.10.20.2-1) experimental; urgency=low
+
+  * debian/gst-codec-info.c:
+    + Ignore decoders with a less than marginal rank as they're
+      not autoplugged by playbin/decodebin. This only applies to the
+      X-Gst-Decoders field.
+  * New upstream pre-release:
+    + debian/patches/02_gtk-doc-cflags.patch:
+      - Dropped, merged upstream.
+    + debian/libgstreamer.symbols:
+      - Updated for the new version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 21 Sep 2008 16:22:29 +0200
+
+gstreamer0.10 (0.10.20-3) experimental; urgency=low
+
+  [ Loic Minier ]
+  * Bdep on perl-doc; thanks Marc 'HE' Brockschmidt; closes: #495043.
+  * Wrap uploaders, bdeps and deps.
+
+  [ Sebastian Dröge ]
+  * debian/gst-codec-info.c:
+    + Rename gstreamer0.10-{audio,video}src to
+      gstreamer0.10-{audio,video}source.
+    + Remove some more useless fields from the encoder/decoder caps.
+  * debian/control.in:
+    + Let the -dev package recommends debhelper for the dh_gstscancodecs
+      script (Closes: #494999).
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 15 Aug 2008 09:21:42 +0200
+
+gstreamer0.10 (0.10.20-2) experimental; urgency=low
+
+  * debian/control.in:
+    + Update flex build dependency to >= 2.5.34 for the new symbols this
+      adds to the library (Closes: #492028).
+  * debian/gst-codec-info.c,
+    debian/control.in,
+    debian/rules,
+    debian/dh_gstscancodecs,
+    debian/libgstreamer-dev.install:
+    + Implement infrastructure to export the codec installation informations
+      via binary package control fields. Move dh_gstscancodecs to the -dev
+      package and implement helper utility gst-codec-info-0.10 for getting
+      the codec information for a package.
+  * debian/rules,
+    debian/libgstreamer-dev.install:
+    + Add a manpage for dh_gstscancodecs (Closes: #445456).
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 07 Aug 2008 15:47:00 +0200
+
+gstreamer0.10 (0.10.20-1) unstable; urgency=low
+
+  * New upstream release, 'You Crazy Diamond':
+    + debian/libgstreamer.symbols:
+      - Updated for the new version.
+  * debian/control.in:
+    + Replace gs build dependency by ghostscript as the former is only a
+      transitional dummy package.
+    + Update Standards-Version to 3.8.0, no additional changes needed.
+  * debian/libgstreamer.symbols:
+    + Append '~' to the versions for symbols which were introduced between
+      different Debian package versions.
+  * debian/gstreamer-doc.links:
+    + Link the GStreamer plugins documentation into the devhelp directories
+      too.
+  * debian/gstreamer0.10-doc.doc-base.manual,
+    debian/gstreamer0.10-doc.doc-base.pwg,
+    debian/gstreamer0.10-doc.doc-base.core-ref,
+    debian/gstreamer0.10-doc.doc-base.libs-ref,
+    debian/gstreamer0.10-doc.doc-base.faq:
+    + Fix sections.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 18 Jun 2008 20:11:25 +0200
+
+gstreamer0.10 (0.10.19.3-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/patches/02_link-dl.patch:
+      - Dropped, merged upstream.
+  * debian/patches/02_gtk-doc-cflags.patch:
+    + Use the CFLAGS passed to configure also for the gtk-doc utitilities.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 12 Jun 2008 10:53:21 +0200
+
+gstreamer0.10 (0.10.19.2-1) experimental; urgency=low
+
+  [ Sjoerd Simons ]
+  * debian/patches/07_bus_flushing_race.patch
+    + Added. Patch from upstream CVS to handle the bus_dispatch function
+    popping NULL from the message queue, which can happen if the bus is set to
+    flushing between check/prepare and dispatch.
+
+  [ Sebastian Dröge ]
+  * New upstream pre-release:
+    + debian/patches/03_binary-registry-version.patch,
+      debian/patches/04_binary-registry-alignment.patch,
+      debian/patches/05_binary-registry-empty-uri-schemes-corruption.patch,
+      debian/patches/06_binary-registry-checksum.patch,
+      debian/patches/07_bus_flushing_race.patch,
+      debian/patches/75_build_docs_without_python_xml.patch:
+      - Dropped, merged upstream.
+    + debian/control.in:
+      - Drop python-twisted-core from build dependencies as it's not needed
+        anymore.
+      - Bump glib build dependency to >= 2.12.
+    + debian/rules:
+      - Drop configure parameter to build the binary registry. It's the
+        default now.
+    + debian/libgstreamer.symbols:
+      - Updated symbol file with the new symbols.
+  * debian/rules:
+    + Pass -c4 to to dh_makeshlibs to fail the build when the symbol files is
+      out of date.
+    + Don't compress gtk-doc documentation to make gtk-doc happy.
+  * debian/patches/02_werror.patch,
+    debian/rules:
+    + Drop patch to prevent usage of -Werror and append -Wno-error to
+      CFLAGS and CXXFLAGS instead.
+  * debian/patches/02_link-dl.patch:
+    + Link with -ldl for dladdr().
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 05 Jun 2008 07:57:05 +0200
+
+gstreamer0.10 (0.10.19-3) unstable; urgency=low
+
+  * debian/patches/06_binary-registry-checksum.patch:
+    + Patch from upstream CVS to include a CRC32 checksum for the registry
+      data to make sure it's not corrupted. Also plug a memory leak in error
+      cases.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 16 Apr 2008 23:01:20 +0200
+
+gstreamer0.10 (0.10.19-2) unstable; urgency=medium
+
+  * debian/control.in:
+    + Require bison >= 1.875 as per configure.ac.
+  * debian/patches/05_binary-registry-empty-uri-schemes-corruption.patch:
+    + Patch from upstream CVS to not corrupt the registry if a plugin gives
+      a valid pointer for the supported URI schemes list but this contains
+      no URI schemes. Also don't unref a variable from which we don't own
+      the reference and improve debugging (Closes: #475735). Set urgency to
+      medium because this closes an RC bug.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 16 Apr 2008 15:18:24 +0200
+
+gstreamer0.10 (0.10.19-1) unstable; urgency=high
+
+  * New upstream bugfix release, "Me Again":
+    + debian/patches/05_fdsrc-fdsink-eagain.patch:
+      - Dropped, merged upstream.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 07 Apr 2008 11:31:15 +0200
+
+gstreamer0.10 (0.10.18-4) unstable; urgency=low
+
+  * debian/patches/05_fdsrc-fdsink-eagain.patch:
+    + Retry when we get EAGAIN. Fixes the totem mozilla plugin to actually
+      work again.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 25 Mar 2008 09:05:01 +0100
+
+gstreamer0.10 (0.10.18-3) unstable; urgency=low
+
+  * debian/patches/04_binary-registry-alignment.patch:
+    + Fix alignment of the binary registry on 64 bit architectures
+      and whitelist amd64 for unaligned access too.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 23 Mar 2008 12:23:21 +0100
+
+gstreamer0.10 (0.10.18-2) unstable; urgency=low
+
+  * debian/rules:
+    + Start using the binary registry instead of the XML registry. This has
+      the advantage of being much faster (especially startup of applications
+      will be faster) and lower memory usage.
+  * debian/patches/03_binary-registry-version.patch:
+    + Patch from upstream CVS to use a sane value for the binary registry
+      format version and not print an error when there is a version mismatch.
+      Instead silently recreate the registry.
+  * debian/libgstreamer.symbols:
+    + Update for the binary registry. These symbols are private ones and
+      should in theory not be exported at all.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 22 Mar 2008 22:46:31 +0100
+
+gstreamer0.10 (0.10.18-1) unstable; urgency=low
+
+  * New upstream release, "So far away":
+    + debian/libgstreamer.symbols:
+      - Updated for the new version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 21 Mar 2008 01:12:34 +0100
+
+gstreamer0.10 (0.10.17.4-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer0.10-0.symbols:
+      - Update symbols for 0.10.17.4.
+    + debian/rules:
+      - Use file versionize magic to get the correct filename for the
+        symbols file.
+    + debian/patches/02_werror.patch:
+      - Don't build with -Werror.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 18 Mar 2008 13:28:59 +0100
+
+gstreamer0.10 (0.10.17.3-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer0.10-0.symbols:
+      - Updated.
+  * debian/patches/75_build_docs_without_python_xml.patch,
+    debian/control.in:
+    + Stop using pyxml for building the docs (Closes: #468627).
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 11 Mar 2008 04:47:48 +0100
+
+gstreamer0.10 (0.10.17.2-2) experimental; urgency=low
+
+  * debian/patches/80_ia32-hack.patch:
+    + Updated to build without warnings on other architectures than i386.
+      Fixes FTBFS as we use -Werror for pre-releases.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 05 Mar 2008 06:50:43 +0100
+
+gstreamer0.10 (0.10.17.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/libgstreamer0.10-0.symbols:
+      - Updated for the new version.
+  * debian/libgstreamer.{post*,pre*},
+    debian/libgstreamer.dirs,
+    debian/rules:
+    + Don't use non-existing configure parameters and for 0.10 we don't need
+      a cache dir anymore, so let's not create one and remove it with
+      maintainer scripts on remove.
+  * debian/control.in:
+    + Add Homepage field.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 04 Mar 2008 11:36:42 +0100
+
+gstreamer0.10 (0.10.17-2) unstable; urgency=low
+
+  [ Emilio Pozuelo Monfort ]
+  * debian/rules:
+    - Decide the package name and url depending on the distribution.
+  * debian/control.in:
+    - Build-Depend on lsb-release.
+    - Add a Conflicts for libgstreamer-plugins-base0.10-0 <<
+      0.10.11cvs20070110-0ubuntu5 to keep the Ubuntu delta lower.
+
+  [ Sebastian Dröge ]
+  * debian/patches/99_ltmain_as-needed.patch,
+    debian/rules:
+    + Add -Wl,-z,defs -Wl,-O1 -Wl,--as-needed to LDFLAGS to remove some
+      unnecessary dependencies on various packages.
+  * debian/libgstreamer0.10-0.symbols:
+    + Add new symbol added by using flex 2.3.34.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 19 Feb 2008 08:09:34 +0100
+
+gstreamer0.10 (0.10.17-1) unstable; urgency=low
+
+  * New upstream bugfix-only release, "Due Negligence".
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 30 Jan 2008 16:05:58 +0100
+
+gstreamer0.10 (0.10.16-1) unstable; urgency=low
+
+  * New upstream release, "Special Dispensation", with API additions:
+    + debian/libgstreamer0.10-0.symbols:
+      - Updated symbols for 0.10.16.
+  * debian/patches/80_ia32-hack.patch:
+     + Set the plugin dir to /usr/lib32/gstreamer-0.10, when running the
+       i386 binaries on amd64. Patch taken from the Ubuntu package, originally
+       created by Matthias Klose.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 29 Jan 2008 10:34:54 +0100
+
+gstreamer0.10 (0.10.15.4-1) experimental; urgency=low
+
+  * New upstream pre-release.
+  * debian/libgstreamer0.10-0.symbols,
+    debian/control.in:
+    + Add a symbols file for the GStreamer core libraries, generated from all
+      0.10 releases since 0.10.0. Build depend on dpkg-dev >= 1.14.13 for
+      this.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 22 Jan 2008 13:20:05 +0100
+
+gstreamer0.10 (0.10.15.3-1) experimental; urgency=low
+
+  * New upstream pre-release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 18 Jan 2008 05:56:07 +0100
+
+gstreamer0.10 (0.10.15.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/patches/02_basesink-event-forwarding.patch,
+      debian/patches/03_filesink-seek-failure.patch:
+      - Dropped, merged upstream.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 15 Jan 2008 15:14:45 +0100
+
+gstreamer0.10 (0.10.15-4) unstable; urgency=low
+
+  * debian/dh_gstscancodecs:
+    + Fix typo: extention->extension.
+  * debian/patches/01_wrapper-plugins.patch:
+    + Update to also handle the ffmpeg plugin and rebuild the registry
+      if libavcodec and friends change.
+  * debian/control.in:
+    + Update Standards-Version to 3.7.3, no additional changes needed.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 15 Jan 2008 15:11:26 +0100
+
+gstreamer0.10 (0.10.15-3) unstable; urgency=low
+
+  * debian/rules:
+    + Don't make the build fail if the testsuite fails.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 28 Nov 2007 10:38:37 +0100
+
+gstreamer0.10 (0.10.15-2) unstable; urgency=low
+
+  * debian/patches/02_basesink-event-forwarding.patch:
+    + Only forward upstream events upstream. This prevents some useless
+      warnings. Patch taken from upstream CVS.
+  * debian/patches/03_filesink-seek-failure.patch:
+    + Only try to seek if it is really necessary in filesink. This fixes
+      filesink on a FIFO. Patch taken from upstream CVS.
+  * debian/rules:
+    + Enable test suite.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 28 Nov 2007 09:04:03 +0100
+
+gstreamer0.10 (0.10.15-1) unstable; urgency=low
+
+  * New upstream release, "October", with API additions:
+    + Fixes FTBFS if built twice in a row (Closes: #424386).
+  * debian/control.in:
+    + Only suggest the docs package instead of recommending (Closes: #436667).
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 13 Nov 2007 14:42:33 +0100
+
+gstreamer0.10 (0.10.14-2) unstable; urgency=low
+
+  * debian/control.in:
+    + Let the -dev package depend on check as some headers include check.h.
+      check is no dependency of the libs package because it's linked
+      statically.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 08 Sep 2007 21:38:18 +0200
+
+gstreamer0.10 (0.10.14-1) unstable; urgency=low
+
+  * New upstream release 'Breathing Vacuum', with API additions.
+  * debian/control.in:
+    + Use ${binary:Version} and ${source:Version} instead of ${Source-Version}
+      to make lintian happy.
+  * debian/gstreamer-tools.install,
+    debian/dh_gstscancodecs:
+    + Add debhelper script for extracting GStreamer codec informations. This
+      will be used for semi-automatic codec installation.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 03 Aug 2007 17:30:01 +0200
+
+gstreamer0.10 (0.10.13-2) unstable; urgency=low
+
+  * debian/patches/01_wrapper-plugins.patch:
+    + Add hacks for gnomevfs, ladspa and libvisual plugin to have the registry
+      rebuild if the plugins of them change. This for example lets GStreamer
+      recognize if new gnomevfs methods are installed after the gnomevfs
+      plugin is installed. (Closes: #426694)
+      This is a temporary workaround until the upstream bug is fixed:
+      http://bugzilla.gnome.org/show_bug.cgi?id=350477
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 10 Jun 2007 12:38:27 +0200
+
+gstreamer0.10 (0.10.13-1) unstable; urgency=low
+
+  * New upstream release with API additions, "With or without you".
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 05 Jun 2007 17:01:07 +0200
+
+gstreamer0.10 (0.10.12.1+cvs20070529-1) unstable; urgency=low
+
+  * Prepare CVS snapshot
+  * debian/patches/01_yacc-reentrant.patch
+    debian/patches/02_filesrc_no_location.patch
+    debian/patches/03_system_clock_wait_jitter_block.patch:
+    + All dropped, fixed upstream.
+
+ -- Sjoerd Simons <sjoerd@debian.org>  Tue, 29 May 2007 09:00:41 +0200
+
+gstreamer0.10 (0.10.12-5) unstable; urgency=low
+
+  * debian/patches/03_system_clock_wait_jitter_block.patch:
+    + Patch from upstream CVS. Make the GstSystemCLock wait_jitter
+    implementation  really block untill a timeout occurs instead of returning
+    when the first entries_changed condition occurs. Fixes problems with
+    farsight.
+  * Add myself to Uploaders.
+
+ -- Sjoerd Simons <sjoerd@debian.org>  Thu, 03 May 2007 20:48:30 +0200
+
+gstreamer0.10 (0.10.12-4) unstable; urgency=low
+
+  * debian/patches/02_filesrc_no_location.patch:
+    + Patch from upstream CVS to also allow "file://" as URI. This is used
+      by some applications, like quodlibet, to check if there's an element
+      that handles the file protocol. (Closes: #421167)
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 27 Apr 2007 09:28:53 +0200
+
+gstreamer0.10 (0.10.12-3) unstable; urgency=low
+
+  * Upload to unstable
+  * Merged experimental branch:
+    + New upstream release 0.10.12, "Inevitable Demise":
+      - Fixes typo in manual (Closes: #408516)
+    + New upstream release 0.10.11, "Love never runs on time":
+      - debian/patches/10_assertion-failure-on-signal-full-when-empty.patch:
+        . Dropped, merged upstream
+      - debian/patches/70_relibtoolize.patch:
+        . Dropped, upstream used Debian's libtool
+    + Add common/gst.supp to libgstreamer-dbg.docs for valgrind suppressions.
+      (Loic Minier)
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon,  9 Apr 2007 23:22:34 +0200
+
+gstreamer0.10 (0.10.10-4) unstable; urgency=low
+
+  * debian/patches/01_yacc-reentrant.patch,
+    debian/control.in:
+    + Make gst_parse_launch reentrant. This fixes a crash in gaim. Also update
+      flex build-dependency to >= 2.5.31 for this.
+      Patch with some changes taken from:
+      http://bugzilla.gnome.org/show_bug.cgi?id=349180
+      (Closes: #404637, #403343, #400602)
+  * debian/control.in:
+    + Update to use my debian.org address
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 18 Mar 2007 22:50:59 +0100
+
+gstreamer0.10 (0.10.10-3) unstable; urgency=low
+
+  * Rename 10_dont-leak-buffer-on-emptied-queue to
+    10_assertion-failure-on-signal-full-when-empty, what the patch fixes is
+    really an assertion failure which happens when the queue is empty at the
+    moment where the "queue full" signal is processed.
+  * Fix typo in control, "versionned" -> "versioned"; thanks J S Bygott;
+    closes: #408931.
+
+ -- Loic Minier <lool@dooz.org>  Mon, 29 Jan 2007 13:35:23 +0100
+
+gstreamer0.10 (0.10.10-2) unstable; urgency=low
+
+  * New patch, 10_dont-leak-buffer-on-emptied-queue, to avoid leaking a buffer
+    when a queue is emptied while sending out a signal.
+
+ -- Loic Minier <lool@dooz.org>  Fri, 13 Oct 2006 11:04:59 +0200
+
+gstreamer0.10 (0.10.10-1) unstable; urgency=low
+
+  [ Sebastian Dröge ]
+  * New upstream release, "Pais", some additional API
+  * debian/patches/70_relibtoolize.patch:
+    + updated for new upstream version
+
+  [ Loic Minier ]
+  * Drop the versionned Recommends which will break with binNMUs.
+  * Fix duplicate dependencies.
+
+ -- Loic Minier <lool@dooz.org>  Fri, 15 Sep 2006 15:05:55 +0200
+
+gstreamer0.10 (0.10.9-2) unstable; urgency=low
+
+  [ Loic Minier ]
+  * Update control.
+
+  [ Sebastian Dröge ]
+  * debian/rules,
+    debian/control.in:
+    + Add a -dbg package for libgstreamer0.10-0 and add me to Uploaders
+  * debian/compat,
+    debian/control.in:
+    + Bump debhelper compat level to 5
+
+  [ Loic Minier ]
+  * Build-depend on python-twisted-core instead of python-twisted, thanks
+    Matthias Klose. (Closes: #385428)
+  * Don't build the doc on arm and m68k.  It's painfully long, and -- at least
+    on arm -- it segfaults; this is to lower the impact of #383147.
+
+ -- Loic Minier <lool@dooz.org>  Thu, 31 Aug 2006 11:48:25 +0200
+
+gstreamer0.10 (0.10.9-1) unstable; urgency=low
+
+  * Clean up Build-Depends-Indep of packages already referenced in
+    Build-Depends.
+  * New upstream release, "On the road again", no API changes.
+    - Drop 10_no-registry-file-fallback patch, merged upstream.
+    - Update 70_relibtoolize patch.
+
+ -- Loic Minier <lool@dooz.org>  Fri, 14 Jul 2006 23:14:30 +0200
+
+gstreamer0.10 (0.10.8-2) unstable; urgency=low
+
+  * Update 70_relibtoolize to not ship config.guess and config.sub already
+    updated by CDBS.
+  * New patch, 10_no-registry-file-fallback.patch from upstream CVS to re-read
+    the registry when the forked child fails to write it for example because
+    the home dir isn't writable; see discussion in GNOME #344748.
+
+ -- Loic Minier <lool@dooz.org>  Tue, 13 Jun 2006 18:42:06 +0200
+
+gstreamer0.10 (0.10.8-1) unstable; urgency=low
+
+  * New upstream releases with API additions, "Soepeke, ik zie ou nog altijd
+    nie".
+    - New patch, 70_relibtoolize, ditto.
+    - Drop 10_accept-empty-strings-in-registry patch, included upstream.
+
+ -- Loic Minier <lool@dooz.org>  Sun, 11 Jun 2006 14:38:05 +0200
+
+gstreamer0.10 (0.10.6-2) unstable; urgency=low
+
+  * Bump up Standards-Version to 3.7.2.
+    [debian/control, debian/control.in]
+  * New patch from upstream to let the registry handle empty strings,
+    especially important because of a bug in a m4 macro which lets the name of
+    official GStreamer packages empty if you use --with-package-name as is the
+    case in Debian.
+    [debian/patches/10_accept-empty-strings-in-registry.patch]
+  * Export OIL_CPU_FLAGS=0 for commands launched during the build process as
+    it can cause build failures on buildds with specific hardware at build
+    time.
+    [debian/rules]
+
+ -- Loic Minier <lool@dooz.org>  Wed, 17 May 2006 18:49:42 +0200
+
+gstreamer0.10 (0.10.6-1) unstable; urgency=low
+
+  * New upstream release, "Take the cannoli", with API additions.
+    - Bump up inter-dependencies to 0.10.6.
+      [debian/control]
+    - Bump up libglib2.0-dev build-dep to >= 2.8.
+      [debian/control, debian/control.in]
+    - Drop relibtoolizing patch as this release was libtoolized under Debian
+      or a derivative.
+      [debian/patches/70_relibtoolize.patch]
+
+ -- Loic Minier <lool@dooz.org>  Sun, 14 May 2006 21:36:26 +0200
+
+gstreamer0.10 (0.10.5-1) unstable; urgency=low
+
+  * New upstream release, "Fogo".
+    - Force debian/control rebuild, a debian/changelog Makefile dep wouldn't
+      be wise.
+      [debian/control]
+
+ -- Loic Minier <lool@dooz.org>  Sat, 29 Apr 2006 12:04:39 +0200
+
+gstreamer0.10 (0.10.4.2-1) unstable; urgency=low
+
+  * New upstream pre-release, with API additions.
+    - Drop patch for the check libraries in pkg-config files (merged
+      upstream).
+      [debian/patches/11_libcheck-pkgconfig-force-pic.patch]
+    - Relibtoolize.
+      [debian/patches/70_relibtoolize.patch]
+    - Drop all references to the gst-md5sum utility (removed upstream).
+      [debian/gstreamer-tools-abi.install, debian/gstreamer-tools.install,
+       debian/gstreamer-tools-abi.manpages]
+
+ -- Loic Minier <lool@dooz.org>  Mon, 17 Apr 2006 23:19:50 +0200
+
+gstreamer0.10 (0.10.4-1) unstable; urgency=low
+
+  * New upstream release, "Light".
+
+ -- Loic Minier <lool@dooz.org>  Sat, 11 Mar 2006 09:55:26 +0100
+
+gstreamer0.10 (0.10.3.2-1) unstable; urgency=low
+
+  * New upstream pre-release, with API additions.
+    - Backward incompatible change: removes support for quoted strings and
+      mimetypes when writing filtered caps.
+    - Drop patch for force linking against the PIC version of libcheck since
+      upstream implemented a better fix.
+      [debian/patches/10_libcheck-macro-force-pic.patch]
+    - Relibtoolize.
+      [debian/patches/70_relibtoolize.patch]
+  * Use upstream descriptions for packages descriptions.
+    [debian/control, debian/control.in]
+
+ -- Loic Minier <lool@dooz.org>  Fri, 10 Mar 2006 10:43:57 +0100
+
+gstreamer0.10 (0.10.3-1) unstable; urgency=low
+
+  * New upstream release, "Like a virgin".
+
+ -- Loic Minier <lool@dooz.org>  Wed,  8 Feb 2006 20:49:29 +0100
+
+gstreamer0.10 (0.10.2.3-1) unstable; urgency=low
+
+  * New upstream pre-release.
+
+ -- Loic Minier <lool@dooz.org>  Wed,  8 Feb 2006 17:13:14 +0100
+
+gstreamer0.10 (0.10.2.2-1) unstable; urgency=low
+
+  * New upstream pre-release.
+    - Relibtoolize.
+      [debian/patches/70_relibtoolize.patch]
+
+ -- Loic Minier <lool@dooz.org>  Wed,  8 Feb 2006 16:08:38 +0100
+
+gstreamer0.10 (0.10.2-1) unstable; urgency=low
+
+  * New upstream release, "If man is 5".
+
+ -- Loic Minier <lool@dooz.org>  Mon, 16 Jan 2006 21:42:56 +0100
+
+gstreamer0.10 (0.10.1-2) unstable; urgency=low
+
+  * Drop unneeded passivetex and xmltex from the build-deps, thanks Frank
+    Küster; this is urgent since xmltex is RC-buggy. (Closes: #348214)
+    [debian/control, debian/control.in]
+
+ -- Loic Minier <lool@dooz.org>  Sun, 15 Jan 2006 19:40:59 +0100
+
+gstreamer0.10 (0.10.1-1) unstable; urgency=low
+
+  * Suggest gstreamer0.10-plugins-base instead of misc. (Closes: #345118)
+    [debian/control, debian/control.in]
+  * Add Sebastien Bacher to Uploaders.
+    [debian/control, debian/control.in]
+  * Replace occurrences of GST_PREFIX in GST_PKGNAME since they hold the same
+    value and GST_PREFIX isn't used in the other source packages.
+    [debian/control.in, debian/gstreamer-doc.install,
+     debian/gstreamer-doc.links, debian/gstreamer-doc.lintian, debian/rules]
+  * New upstream release.
+  * Force linking against libcheck_pic instead of libcheck.  Warning: to use
+    this patch you need to relibtoolize afterwards or patch configure too.
+    [debian/patches/10_libcheck-macro-force-pic.patch]
+  * Advertise this in pkgconfig files.
+    [debian/patches/11_libcheck-pkgconfig-force-pic.patch]
+  * Relibtoolize.
+    [debian/patches/70_relibtoolize.patch]
+  * Move check to arch-dependent build-deps and version to >= 0.9.3-2 to get a
+    PIC version of the static lib.
+    [debian/control, debian/control.in]
+
+ -- Loic Minier <lool@dooz.org>  Tue,  3 Jan 2006 22:28:37 +0100
+
+gstreamer0.10 (0.10.0-1) unstable; urgency=medium
+
+  [ Sebastien Bacher ]
+  * New upstream version.
+  * Changes for gstreamer0.10:
+    - Rename 0.8 packages to 0.10. [debian/rules]
+    - Build-Depends on check, python-twisted, python-xml [debian/control.in]
+    - Bump shlibs deps for 0.10. [debian/rules]
+    - Create a cache directory [debian/libgstreamer.dirs, debian/rules]
+    - Don't use alternatives [debian/gstreamer-tools-abi.postinst,.
+      debian/gstreamer-tools-abi.prerm]
+    - Drop references to deprecated tools [debian/gstreamer-tools-abi.install,.
+      debian/gstreamer-tools-abi.manpages,debian/gstreamer-tools-abi.postinst,.
+      debian/gstreamer-tools-abi.prerm, debian/libgstreamer.install,.
+      debian/libgstreamer.manpages, debian/libgstreamer.postinst, debian/rules]
+    - New gstreamer-tools (unversionned binaries) package
+      [debian/control.in, debian/gstreamer-tools.install, debian/rules].
+    - Remove transition code. [debian/libgstreamer.preinst]
+    - Rename documentation lists. [debian/gstreamer0.8-doc.doc-base.core-ref,
+      debian/gstreamer0.8-doc.doc-base.faq,
+      debian/gstreamer0.8-doc.doc-base.libs-ref,
+      debian/gstreamer0.8-doc.doc-base.manual,
+      debian/gstreamer0.8-doc.doc-base.pwg]
+    - Updated descriptions [debian/control.in]
+    - Updated lists of files. [debian/libgstreamer.install
+      debian/gstreamer-tools-abi.install debian/libgstreamer-dev.install]
+    - Updated options for the documentation build [debian/rules]
+    - Updated the TODO list [debian/TODO]
+  * debian/patches/64_sparc-gcc4-build-fix.patch,
+    debian/patches/doc-build.patch:
+    - fixed with the new version.
+
+  [ Loic Minier ]
+  * Merge changes from Sebastien Bacher, thanks!
+  * Update upstream URL to http://gstreamer.freedesktop.org/.
+    [debian/control, debian/control.in, debian/copyright]
+  * Minor cleanups.
+    [debian/rules]
+  * Let gstreamer-tools conflict with gstreamer0.8-tools << 0.8.11-2 which
+    shipped the gst-* command line tools as symlinks.
+    [debian/control, debian/control.in]
+  * Add gst-xmlinspect to man pages.
+    [debian/gstreamer-tools-abi.manpages]
+
+ -- Loic Minier <lool@dooz.org>  Sun, 11 Dec 2005 20:57:56 +0100
+
+gstreamer0.8 (0.8.11-2) unstable; urgency=low
+
+  [ Sebastien Bacher ]
+  * Clean the alternatives, we use real files now
+    [debian/gstreamer-tools.postinst, debian/gstreamer-tools.preinst,
+    debian/gstreamer-tools.prerm]
+
+  [ Loic Minier ]
+  * Merge the work of Sebastien Bacher (above), thanks!
+  * Completely drop the now obsolete prerm and postinst scripts.
+    [debian/gstreamer-tools.postinst, debian/gstreamer-tools.preinst,
+    debian/rules]
+  * With this upload, you will loose the gst-* commands such as gst-launch,
+    only the versionned version will remain, the unversionned tools will be
+    built and shipped from the 0.10 series sources.
+
+ -- Loic Minier <lool@dooz.org>  Sun, 11 Dec 2005 18:55:40 +0100
+
+gstreamer0.8 (0.8.11-1) unstable; urgency=low
+
+  * New upstream release, "No Fun".
+    - Bump libxml2-dev build-dep to 2.6.0.
+  * Update FSF address. [debian/copyright]
+  * Fix FTBFS with GCC 4 in a code path only built by sparc (but unused).
+    (Closes: #319147) [debian/patches/64_sparc-gcc4-build-fix.patch]
+  * Bump shlibs.
+
+ -- Loic Minier <lool@dooz.org>  Sun,  4 Sep 2005 22:20:20 +0200
+
+gstreamer0.8 (0.8.10-2) unstable; urgency=low
+
+  * Loic Minier:
+    * Install alternatives for the gst-* binaries with a priority
+      corresponding to the GStreamer ABI. (Closes:  #265223) [debian/rules,
+      debian/gstreamer-tools.prerm, debian/gstreamer-tools.postinst]
+    * Call gst-register and gst-compprep with GST_REGISTRY in their
+      environment to override the default behavior of writing to
+      /root/.gstreamer-0.8, waiting for an upstream fix. (Closes: #301190)
+      [debian/libgstreamer.postinst, debian/TODO.Debian]
+    * Remove /var/lib/gstreamer if empty.
+      [debian/libgstreamer.postrm]
+    * Remove left over /root/.gstreamer-0.8 tree if it hasn't been modified.
+      [debian/libgstreamer.preinst, debian/rules]
+    * Add a versioned dependency with >= current-upstream-version to all
+      current shlibs inter-dependencies to ensure consistency of symbols to
+      avoid things such as #315556.
+      [debian/control, debian/control.in, debian/rules]
+    * Set Maintainer to group. [debian/control, debian/control.in]
+    * Bump Standards-Version to 3.6.2, no change needed.
+      [debian/control, debian/control.in]
+    * Add a TODO list for the Debian package. [debian/TODO.Debian]
+
+ -- Loic Minier <lool@dooz.org>  Mon, 27 Jun 2005 16:21:55 +0200
+
+gstreamer0.8 (0.8.10-1) unstable; urgency=low
+
+  * Loic Minier:
+    * New upstream release "No Fun". (Closes: #312355)
+      - Don't drop buffers on interrupt, fixes reported problems on MP3
+        playback. (Closes: #303139)
+      - Fix a typo in the gst-launch manual page where "--silent" was used
+        instead of "--verbose". (Closes: #292267)
+      - Bump shlibs to current version since new elements were added.
+        [debian/rules]
+      - Drop CPUID instruction detection patch, upstream used a SIGILL handler
+        instead. [debian/patches/cpuid.patch]
+    * Add myself as uploader.
+
+ -- Loic Minier <lool@dooz.org>  Tue, 14 Jun 2005 21:49:55 +0200
+
+gstreamer0.8 (0.8.9-2) unstable; urgency=low
+
+  * debian/patches/cpuid.patch:
+    * Patch from upstream to check for cpuid support (Closes: #289362)
+  * debian/watch:
+    * Watch for gstreamer not gst-plugins
+
+ -- David I. Lehn <dlehn@debian.org>  Wed, 16 Mar 2005 01:17:29 -0500
+
+gstreamer0.8 (0.8.9-1) unstable; urgency=low
+
+  * New upstream
+  * debian/rules:
+    * Bump shlibs to current version
+  * debian/patches/doc-build.patch:
+    * Update and refer to bug #286160
+  * debian/watch:
+    * Add
+  * debian/gstreamer0.8-doc.doc-base.*
+    * Register docs with doc-base (Closes: #293871)
+
+ -- David I. Lehn <dlehn@debian.org>  Wed,  9 Feb 2005 10:24:16 -0500
+
+gstreamer0.8 (0.8.8-1) unstable; urgency=low
+
+  * New upstream
+    * Fixes Ogg stream bug (Closes: #273086)
+    * Fixes mp3 infinite loop (Closes: #277650)
+  * debian/rules:
+    * Bump shlibs to current version
+  * debian/rules:
+    * Distribute NEWS (Closes: #275717)
+  * Should fix Rhythmbox image and cpu problems
+    (Closes: #277146, #278661, #278663, #278656, #281426, #284507, #288102)
+
+ -- David I. Lehn <dlehn@debian.org>  Fri,  7 Jan 2005 01:44:26 -0500
+
+gstreamer0.8 (0.8.7-1) unstable; urgency=low
+
+  * New upstream
+  * debian/rules:
+    * Bump shlibs to current version
+
+ -- David I. Lehn <dlehn@debian.org>  Wed,  6 Oct 2004 14:25:15 -0400
+
+gstreamer0.8 (0.8.6-1) unstable; urgency=low
+
+  * New upstream
+  * debian/rules:
+    * Bump shlibs to current version
+    * Use debian/control:: vs debian/control: to work with recent CDBS changes
+    * Use CDBS simple-patchsys
+  * docs/pwg/advanced-types.xml:
+    * Remove patch
+  * debian/patches/doc-build.patch:
+    * Add goofy doc patch
+
+ -- David I. Lehn <dlehn@debian.org>  Tue,  5 Oct 2004 13:15:06 -0400
+
+gstreamer0.8 (0.8.5-1) unstable; urgency=low
+
+  * New upstream
+  * debian/rules:
+    * Bump shlibs to current version
+
+ -- David I. Lehn <dlehn@debian.org>  Tue, 17 Aug 2004 23:06:54 -0400
+
+gstreamer0.8 (0.8.4-1) unstable; urgency=low
+
+  * New upstream
+  * debian/rules:
+    * Bump shlibs version
+  * gst/queue.h:
+    * Fix GstQueue binary compatibility (patch from upstream CVS)
+  * libs/gst/control/Makefile.{am,in}:
+    * Link libgstcontrol to libgstreamer (patch from upstream CVS)
+      (Closes: #262019)
+
+ -- David I. Lehn <dlehn@debian.org>  Thu, 29 Jul 2004 15:07:20 -0400
+
+gstreamer0.8 (0.8.3-3) unstable; urgency=low
+
+  * debian/rules:
+    * Typo, s/DEB_MAKESHLIBS_ARGS_/DEB_DH_MAKESHLIBS_ARGS_/, broke versioned
+      shlibs
+
+ -- David I. Lehn <dlehn@debian.org>  Wed, 30 Jun 2004 17:11:13 -0400
+
+gstreamer0.8 (0.8.3-2) unstable; urgency=medium
+
+  * debian/libgstreamer.install, debian/libgstreamer-dev.install:
+    * Include dataprotocol library and development files
+  * debian/rules:
+    * Bump shlibs dep to 0.8.3-2 due to dataprotocol
+
+ -- David I. Lehn <dlehn@debian.org>  Wed, 23 Jun 2004 17:49:23 -0400
+
+gstreamer0.8 (0.8.3-1) unstable; urgency=low
+
+  * New upstream
+
+ -- David I. Lehn <dlehn@debian.org>  Sat, 12 Jun 2004 00:05:23 -0400
+
+gstreamer0.8 (0.8.2-1) unstable; urgency=low
+
+  * New upstream
+
+ -- David I. Lehn <dlehn@debian.org>  Sat, 12 Jun 2004 00:01:21 -0400
+
+gstreamer0.8 (0.8.1-2) unstable; urgency=low
+
+  * debain/rules:
+    * Convert to use CDBS
+      * Fixes rpath and .la libdir problems from previous builds
+      * Always builds the docs even on -arch builds, sorry
+  * debian/compat:
+    * Bump to 4
+  * debian/control.in:
+    * Update Standards-Version to 3.6.1 due to CDBS use
+    * Add CDBS and newer debhelper dependencies
+  * debian/*:
+    * Adjust install paths to work with CDBS
+
+ -- David I. Lehn <dlehn@debian.org>  Sun, 18 Apr 2004 22:21:30 -0400
+
+gstreamer0.8 (0.8.1-1) unstable; urgency=low
+
+  * New upstream
+  * New schedulers:
+  * debian/libgstreamer.install:
+    * Add libgstentrygthreadscheduler.so
+    * Add libgstentryomegascheduler.so
+  * docs/gst/Makefile.{in,am}:
+    * Patch from CVS to fix docs build
+
+ -- David I. Lehn <dlehn@debian.org>  Sat, 17 Apr 2004 19:47:18 -0400
+
+gstreamer0.8 (0.8.0-2) unstable; urgency=low
+
+  * Bump to -2 to ease upgrades for early -1 testers
+  * gstreamer-tools.links:
+    * Link gst-xmlinspect manpage to gst-inspect
+
+ -- David I. Lehn <dlehn@debian.org>  Fri, 16 Apr 2004 00:52:46 -0400
+
+gstreamer0.8 (0.8.0-1) unstable; urgency=low
+
+  * New upstream (Closes: #239114)
+    * Branch 0.7.x to 0.8.x
+  * debian/control.in:
+    * Version all packages as 0.8 series
+  * debian/rules:
+    * Update to 0.8
+    * Build 0.8 series package control files
+    * Remove older hacks fixed upstream
+  * debian/*:
+    * Reorg many control files for 0.8 versioning
+    * s/--gst-mask=0/--gst-debug-level=0/
+    * Remove "VERSION" from input package file names
+  * debian/libgstreamer[-dev].install:
+    * Plugins removed upstream: gsttypes, gststaticautoplug*,
+      gstautoplugcache, gstautoplugger, gstputbits, gststaticautoplug,
+      gststaticautoplugrender, gsttypes
+    * Add locale files
+  * debian/gstreamer-tools.install:
+    * Add gst-xmlinspect-*
+  * Upstream installs versioned manpages (Closes: #199444)
+
+ -- David I. Lehn <dlehn@debian.org>  Wed, 14 Apr 2004 16:08:50 -0400
+
+gstreamer0.7 (0.7.6-1) unstable; urgency=low
+
+  * New upstream
+  * debian/control.in:
+    * Build-Depends-Indep: add netpbm so ps and pdf docs build
+
+ -- David I. Lehn <dlehn@debian.org>  Fri, 12 Mar 2004 18:30:54 -0500
+
+gstreamer0.7 (0.7.5-1) unstable; urgency=low
+
+  * New upstream
+
+ -- David I. Lehn <dlehn@debian.org>  Thu, 11 Mar 2004 23:30:32 -0500
+
+gstreamer0.7 (0.7.4-1) unstable; urgency=low
+
+  * New upstream
+
+ -- David I. Lehn <dlehn@debian.org>  Thu, 11 Mar 2004 23:11:58 -0500
+
+gstreamer0.7 (0.7.3-1) unstable; urgency=low
+
+  * New upstream
+
+ -- David I. Lehn <dlehn@debian.org>  Thu, 11 Mar 2004 05:54:52 -0500
+
+gstreamer0.7 (0.7.1-1) unstable; urgency=low
+
+  * New upstream
+    * Branch 0.6.x to 0.7.x
+  * debian/rules:
+    * Update to 0.7
+
+ -- David I. Lehn <dlehn@debian.org>  Thu, 11 Mar 2004 04:58:40 -0500
+
+gstreamer (0.6.4-1) unstable; urgency=low
+
+  * New upstream (Closes: #217880)
+  * Add xmlto, xmltex, and passivetex dependencies for doc creation
+  * debian/rules: adjust for new doc locations
+  * docs/{manual,pwg,faq}/Makefile.in: temporary hack to disable ps/pdf
+    generation
+
+ -- David I. Lehn <dlehn@debian.org>  Fri, 31 Oct 2003 14:08:46 -0500
+
+gstreamer (0.6.3-1) unstable; urgency=low
+
+  * New upstream
+  * configure, configure.ac:
+    * disable -Werror
+  * gst/gstplugin.c: CVS patch to fix type punning
+
+ -- David I. Lehn <dlehn@debian.org>  Sat, 30 Aug 2003 23:20:43 -0400
+
+gstreamer (0.6.2-2) unstable; urgency=low
+
+  * m68k patch by Matthias Urlichs <smurf@smurf.noris.de> (forwarded from Rick
+    Younie <rick@def.debian.net>) (Closes: #172269)
+
+ -- David I. Lehn <dlehn@debian.org>  Tue, 12 Aug 2003 13:24:12 -0400
+
+gstreamer (0.6.2-1) unstable; urgency=low
+
+  * New upstream
+  * debian/gstreamer-tools.install/manpages: add gst-typefind
+  * docs/gst/: change www.oasis-open.org dtd to local dtd
+  * docs/libs/: use some code from cdbs to change dtd in gtk-doc tools output
+    to local dtd
+
+ -- David I. Lehn <dlehn@debian.org>  Wed, 11 Jun 2003 10:36:17 -0400
+
+gstreamer (0.6.1-2) unstable; urgency=low
+
+  * (unreleased)
+  * Merge packages:
+    * Simplify for users, developers, and maintainers.
+    * Current number of packages is confusing.
+    * Users/developers need to install all the packages anyway due to tight
+      (circular) dependencies.
+    * The libraries and plugins are all versioned - no need (currently) for a
+      "-common" type package.
+    * Progress towards capability for parallel GStreamer installs (more work
+      needed).
+    * Decision long ago to make very modular has turned out to be complex and
+      is not utilized by any current applications.
+  * Merge changes:
+    * Add -core, -core-libs, -runtime files to libgstreamer0.6-0
+    * Add -core-libs-dev files to libgstreaer0.6-dev
+    * Version gst-{register,compprep} (and manpages) as
+      gst-{register,compprep}-0.6
+    * Many other supporting debian/ adjustments
+  * Remove DISPLAY unset hacks from postinst/postrm scripts and fix non-X
+    installs with 0.6.2 CVS xvideosink patch in gst-plugins.
+    (Closes: #192693, #195342, #169100, #195113, #194975)
+  * docs/devhelp/Makefile.*: stop regeneration of devhelp files during install
+  * gst/elements/gstmd5sink.c: make md5_* functions static to avoid symbol
+    conflicts with libdvdnav 0.1.9
+  * Fix gstreamer-doc Recommends: to use versioned -dev package
+
+ -- David I. Lehn <dlehn@debian.org>  Thu,  5 Jun 2003 19:11:39 -0400
+
+gstreamer (0.6.1-1) unstable; urgency=low
+
+  * New upstream
+  * Change maintainer address to @debian.org
+  * Added gst-element-check.m4 to -dev package (Closes: Bug#187456)
+  * debian/control.in:
+    * gstreamer-tools: gst-feedback depends on pkg-config (Closes: Bug#180076)
+    * libgstreamer0.6-dev depends on libxml2-dev (Closes: Bug#190103)
+    * gstreamer-runtime depends on gstreamer-core.  Sigh.  Didn't want to do
+      this but looks like no other option. (Closes: Bug#181502, Bug#181745,
+      Bug#185817)
+  * gst/gstatomic_impl.h: disable mips asm in favor of generic implementation
+    (sparc disabled upstream) (Closes: Bug#186440)
+  * Upstream now linking libraries properly (Closes: Bug#187360)
+  * Patch from 0.6.1+ to add back _get_props_entry_type
+  * Unset DISPLAY before running gst-register/gst-compprep
+
+ -- David I. Lehn <dlehn@debian.org>  Sat,  3 May 2003 16:52:53 -0400
+
+gstreamer (0.6.0-1) unstable; urgency=low
+
+  * New upstream
+  * Upstream manpage updates (Closes: Bug#179190)
+
+ -- David I. Lehn <dlehn@vt.edu>  Sat,  1 Feb 2003 21:32:17 -0500
+
+gstreamer (0.5.2.3-1) unstable; urgency=low
+
+  * New upstream
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 30 Jan 2003 23:26:10 -0500
+
+gstreamer (0.5.2.2-1) unstable; urgency=low
+
+  * New upstream
+    * pre-release for API frozen 0.6.x series
+  * Slight pacakge refactoring so a possible future parallel dev series is
+    slightly less painful
+  * Update libgstreamer-dev to libgstreamer0.6-dev
+  * Update libgstreamer0.5.2 to libgstreamer0.6-0
+  * debian/libgstreamer0.6-dev.install:
+    * explicitly mention gstreamer-[0-9]*.pc
+  * debian/gstreamer-core-libs-dev.install:
+    * add gstreamer-control-*.pc
+
+ -- David I. Lehn <dlehn@vt.edu>  Wed, 29 Jan 2003 13:42:01 -0500
+
+gstreamer (0.5.2-1) unstable; urgency=low
+
+  * New upstream
+  * Update libgstreamer0.5.1 to libgstreamer0.5.2
+  * Upstream fixes Python requirement when not building docs
+    (Closes: Bug#178114)
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 23 Jan 2003 20:15:24 -0500
+
+gstreamer (0.5.1-1) unstable; urgency=low
+
+  * New upstream (Closes: Bug#176474)
+  * Update libgstreamer0.5.0 to libgstreamer0.5.1
+  * Tighten gstreamer-core-libs shlibs (Closes: Bug#174363)
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 16 Jan 2003 18:46:41 -0500
+
+gstreamer (0.5.0-1) unstable; urgency=low
+
+  * New upstream
+  * Make core Architecture: any:  It's almost true, or might be now, or will
+    be soon and autobuilders are ignoring that field anyway.
+  * Generated files moved from /etc/gstreamer to /var/lib/gstreamer/0.5/
+  * Update libgstreamer0.4.2 to libgstreamer0.5.0
+  * Hack gst/autoplug/gstautoplugger.c to not use the non-existant
+    "caps_changed" signal
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 19 Dec 2002 20:43:26 -0500
+
+gstreamer (0.4.2-2) unstable; urgency=low
+
+  * Update gtk-doc.m4 with CVS patch to handle multidigit version check
+  * Add S/390 support patch (Closes: Bug#171473)
+  * Update config.{guess,sub}
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue,  3 Dec 2002 22:22:22 -0500
+
+gstreamer (0.4.2-1) unstable; urgency=low
+
+  * New upstream (Closes: Bug#167479)
+  * Update libgstreamer0.4.1 to libgstreamer0.4.2
+  * libgstreamer0.4.2 conflicts with 0.4.0, 0.4.1
+    * Upstream needs more work to properly support parallel lib installs
+  * Tighten dependencies
+    * Upstream ABI/API changes require this for any hope of smooth upgrades at
+      the moment
+  * Move gstreamer-runtime to Section: utils from libs
+  * Move gstreamer-tools to Section: utils from x11
+  * Doc fixes: (Closes: Bug#165279)
+    * Call xsltproc with --nonet
+    * Refer xsl:import urls to local docbook-xsl package xsl files
+    * Refer www.oasis-open.org dtds to local docbook-xml package dtd files
+    * Add docbook-xml and docbook-xsl to Build-Depends-Indep
+
+ -- David I. Lehn <dlehn@vt.edu>  Wed,  6 Nov 2002 20:32:46 -0500
+
+gstreamer (0.4.1-3) unstable; urgency=low
+
+  * Fix formatting of Architecture: list to fix alpha and sparc builds
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 15 Oct 2002 22:08:54 -0400
+
+gstreamer (0.4.1-2) unstable; urgency=low
+
+  * Update debian/rules to not fail on binary-arch only builds (configure was
+    unconditionally run with --enable-docs-build which caused it to fail when
+    Build-Depends-Indep packages were not installed)
+    (Closes: Bug#164589, Bug#164698)
+  * Fix version check in common/m4/as-python.m4 to use sys.version_info
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon, 14 Oct 2002 20:00:29 -0400
+
+gstreamer (0.4.1-1) unstable; urgency=low
+
+  * New upstream
+  * Update libgstreamer0.4.0 to libgstreamer0.4.1
+  * gstreamer-tools.files/manpages: add gst-md5sum
+  * Use xsltproc 1.0.21 to fix doc image problems
+  * Add patch from CVS to fix GST_TYPE_CAPS/PROPS macro typos
+  * Build libgstcontrol as a lib not a plugin module
+  * Update config.{guess,sub}
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon,  7 Oct 2002 20:36:28 -0400
+
+gstreamer (0.4.0.2-cvs20020919-1) unstable; urgency=low
+
+  * CVS snapshot, release branch
+  * gstreamer-core.files: change to libgst*scheduler, since the
+    scheduler names have changed.
+  * gstreamer-core-libs.files: libgstcontrol.so moved
+  * add debian/control.in, and create debian/control rule in debian/rules
+    to change the version number automatically
+
+ -- David Schleef <ds@schleef.org>  Thu, 19 Sep 2002 15:07:36 -0700
+
+gstreamer (0.4.0-2) unstable; urgency=low
+
+  * Remove libtool hack
+  * Dependency change from libc6-dev to libc6-dev | libc-dev
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 23 Aug 2002 12:26:10 -0400
+
+gstreamer (0.4.0-1) unstable; urgency=low
+
+  * New upstream
+  * Update library package: libgstreamer0.3.4 -> libgstreamer0.4.0
+  * Add automake Python support to find python binary to run devhelp doc
+    helper script.  This touches -every- Makefile.in and since the package
+    diff will already be large just use automake 1.6 instead of 1.5 as used
+    upstream.  Sorry.
+  * Update config.{guess,sub}
+  * Temporarily comment out figures from manual so it builds
+  * Apply CVS patch for s/&percnt;/%/ in XML docs
+  * Added devhelp support
+  * Added gst-feedback to gstreamer-tools
+  * Break stuff: blindly reanme gstreamer-lib-core{-dev} to
+    gstreamer-core-libs{-dev}.  Hard to chose naming as these are half-plugins
+    and half-linkable libs.  Picking a scheme that also works with
+    gstreamer-plugins-* packages.  Still looking for a better solution...
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 16 Jul 2002 02:20:40 -0400
+
+gstreamer (0.3.4-1) unstable; urgency=low
+
+  * New upstream
+  * libgstreamer0.3.3 -> libgstreamer0.3.4
+  * Conflict and Replace libgstreamer0.3.3 so upgrades work
+    This shouldn't be required because plugins know what version they were
+    compiled with.  Apparently this doesn't yet work properly.
+  * Add bison and flex to Build-Depends
+  * Add libgstfastscheduler.so to -core
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon, 15 Apr 2002 01:13:00 -0400
+
+gstreamer (0.3.3-3) unstable; urgency=low
+
+  * Add libgstreamer-dev dependencies on libpopt-dev and libglib2.0-dev
+  * CVS fix for GstElement NEW_PAD and PAD_REMOVED g_signal_new parameters
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 29 Mar 2002 03:04:22 -0500
+
+gstreamer (0.3.3-2) unstable; urgency=low
+
+  * Depend on and rebuld for glib 2.0
+  * Remove libgtk from Build-Depends
+  * Move gs from Build-Depends to Build-Depends-Indep
+  * Added lintian overrides for base.css zero length files
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 22 Mar 2002 19:29:24 -0500
+
+gstreamer (0.3.3-1) unstable; urgency=low
+
+  * New upstream
+  * Renamed libgstX to libgstreamerX.Y.Z
+    will move to better versioning once upstream starts interface versioning
+  * Renamed libgst-dev to libgstreamer-dev
+  * Patch to build plugins as only .so
+  * Added libstandardscheduler.so to -core
+  * Guessing that mips support handles mipsel too
+  * From David Schleef <ds@schleef.org>:
+    * Add popt, gs to Build-Depends:
+    * #include <errno.h> compile fix
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 21 Mar 2002 01:42:18 -0500
+
+gstreamer (0.3.2-2) unstable; urgency=low
+
+  * Rebuild for glib/gtk 1.3.15
+
+ -- David I. Lehn <dlehn@vt.edu>  Sun, 24 Feb 2002 23:48:33 -0500
+
+gstreamer (0.3.2-1) unstable; urgency=low
+
+  * The "I should have started using cvs-buildpacakge long ago" release
+  * New upstream release
+  * Once again stripped CVS dirs from upstream tarball
+  * Add spider autoplugger
+  * Added gst-xmllaunch and man page to -tools
+  * Despite my complaints, upstream is using new lib versioning
+    until they decide API is "stable" enough to provide support.
+    At that point proper versioning will happen.
+    This release lib change:
+       libgst.so.2.0.0 -> libgst-0.3.2.so.0.0.0
+    This release lib package change:
+       libgst2 -> libgst3
+    Hopefully this is mostly transparent.
+
+    Due to a conflict with GNU Smalltalk the next upstream release
+    will be renaming some "gst" to "gstreamer".  This will change
+    the lib to libgstreamer*.  Some header locations will change too
+    so prepare for broken code.
+
+    Plan for next upstream release is to rename packages:
+       libgst3 -> libgstreamer0
+       libgst-dev -> libgstreamer-dev
+  * Plugins now unversioned upstream:
+    * Just .so, no more .so.x.y.z
+    * Drop .la and .a
+    * Fixup a few
+    * Wait and see if anyone even notices...
+  * Add back some docs that escaped via the diff
+  * Fixup some more doc cruft in the diff
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 14 Feb 2002 02:20:48 -0500
+
+gstreamer (0.3.1-4) unstable; urgency=low
+
+  * (Unreleased)
+  * find . -type d -name CVS -exec rm -rf {} \;
+  * Hack upstream tarball to exclude above CVS/ dirs
+  * Rebuild for conversion to cvs-buildpackage management
+
+ -- David I. Lehn <dlehn@vt.edu>  Wed, 13 Feb 2002 18:18:34 -0500
+
+gstreamer (0.3.1-3) unstable; urgency=low
+
+  * Rebuild for glib/gtk 1.3.13
+
+ -- David I. Lehn <dlehn@vt.edu>  Wed,  6 Feb 2002 02:17:23 -0500
+
+gstreamer (0.3.1-2) unstable; urgency=low
+
+  * Upstream fix for proper libxml version in pkg-config
+  * Undo some of the auto docs/*/tmpl breakage
+
+ -- David I. Lehn <dlehn@vt.edu>  Wed, 23 Jan 2002 01:28:12 -0500
+
+gstreamer (0.3.1-1) unstable; urgency=low
+
+  * New upstream release
+  * Upstream broken into multiple packages
+  * Core plugins left in -core
+  * Core lib plugins moved to -core
+  * Other plugins now built from gst-plugins source pacakge
+  * libgst1 -> libgst2
+  * Tool prefix renamed upstream: s/gstreamer/gst/
+  * Moved gstreamer-guilaunch to gst-editor source package
+  * Removed gstreamer-config and .m4 in favor of pkg-config use
+  * Build for glib2
+  * Change doc build system a bit
+  * Added -lib-core and -lib-core-dev packages for library plugins
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 10 Jan 2002 23:09:34 -0500
+
+gstreamer (0.3.0-3) unstable; urgency=low
+
+  * Remove upstream ChangeLog from packages: 128k changelog.gz per
+    plugin package for 40 packages is too much
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 25 Dec 2001 23:36:28 -0500
+
+gstreamer (0.3.0-2) unstable; urgency=low
+
+  * Fix bug that slipped into 0.3.0: s/aasink/xvideosink/ in
+    gstplay/gstplay.c
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 25 Dec 2001 17:56:29 -0500
+
+gstreamer (0.3.0-1) unstable; urgency=low
+
+  * New upstream release
+  * Attempt to update various Build-Depends versions
+  * Added plugin packages: -a52dec, -dvd, -mikmod, -sid
+  * Renamed -elements to -core
+  * Added to -core: gstbasicscheduler
+  * Moved from -common to -core: gsttypes, autoplug related
+  * Renamed -common to -misc
+  * Added to -misc: speed, qcam, bytesteram, control, silence, sinesrc,
+    mpegstream, playondemand, resample
+  * Added gstreamer-guilaunch to gstreamer-tools package
+  * Added dependencies on unofficial LAME packages
+  * Use PIC libs for Xv
+  * Disable broken building of PDF/PS docs
+  * Renamed -all-plugins to -all
+  * Disable docs -- too hard to build
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 21 Dec 2001 12:00:02 -0500
+
+gstreamer (0.2.1-4) unstable; urgency=low
+
+  * Fix some problems reported from lintian 1.20.14:
+    * copyright-lists-upstream-authors-like-dh_make
+    * debian-changelog-file-contains-user-emacs-settings
+  * Patch from CVS to link libgst into plugins
+    Plugins now properly depend on libgst package
+  * Use RedHat Gtk+-1.3 hack to fix relink issues with ltmain.sh
+  * Patch from CVS for xvideosink segfault when no DISPLAY set
+  * Remove builddir references from gstreamer-config.in
+  * Move libgstelements.la from libgst-dev to gstreamer-elements
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 28 Aug 2001 20:05:28 -0400
+
+gstreamer (0.2.1-3) unstable; urgency=low
+
+  * Update build dependencies to FLAC 1.0
+  * Enable debug features
+  * Fixup broken doc build -scan voodoo with link into .libs/ dir
+
+ -- David I. Lehn <dlehn@vt.edu>  Sun,  5 Aug 2001 23:04:28 -0400
+
+gstreamer (0.2.1-2) unstable; urgency=low
+
+  * Fix lib deps: run debhelper tools in the right order
+  * Added arts dir to Makefile.am SUBDIRS so it builds again
+  * Changed libmpeg2dec to libgstmpeg2dec to avoid naming issues
+    when using -lmpeg2dec
+  * Updated system_encode/ with CVS segfaulter bug fix
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 19 Jul 2001 15:47:24 -0400
+
+gstreamer (0.2.1-1) unstable; urgency=low
+
+  * New upstream 0.2.1: "Return of the Sedi Master"
+  * New plugin packages: -festival, -flac, -avifile, -x
+  * New plugins in -common: chart, deinterlace, udp
+  * Added some post-0.2.1 fixes for FLAC, build system, ALSA
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 28 Jun 2001 20:15:15 -0400
+
+gstreamer (0.2.0-6) unstable; urgency=low
+
+  * Move -compprep to -runtime and call it same places as -register
+  * Do -register and -compprep in postrm instead of prerm
+  * Make -arts plugin actually build all the source (sent upstream)
+  * Purge of -runtime removes /etc/gstreamer
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 19 Jun 2001 13:09:32 -0400
+
+gstreamer (0.2.0-5) unstable; urgency=low
+
+  * Added element package dependencies to libgstmediaplay0
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon, 18 Jun 2001 11:18:53 -0400
+
+gstreamer (0.2.0-4) unstable; urgency=low
+
+  * Add --gst-mask=0 to -runtime.postinst
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 15 Jun 2001 11:47:24 -0400
+
+gstreamer (0.2.0-3) unstable; urgency=low
+
+  * Fix the plugin control file symlink creation
+  * Add audiofile to Build-Depends
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 15 Jun 2001 05:22:28 -0400
+
+gstreamer (0.2.0-2) unstable; urgency=low
+
+  * Fixed ALSA checks to not include -lasound in -every- link
+  * Update LAME plugin to use latest CVS API
+  * Removed OSS src/sink from -common.files (was in -oss too)
+  * Swapped -arts.files and -artsd.files contents
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri, 15 Jun 2001 04:02:21 -0400
+
+gstreamer (0.2.0-1) unstable; urgency=low
+
+  * Added gstreamer-compprep manpage
+  * Upgrade to 0.2.0
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu,  7 Jun 2001 12:53:59 -0400
+
+gstreamer (0.2.0-0.3) unstable; urgency=low
+
+  * GStreamer 0.2.0-pre3
+
+ -- David I. Lehn <dlehn@vt.edu>  Wed,  6 Jun 2001 15:09:59 -0400
+
+gstreamer (0.2.0-0.2) unstable; urgency=low
+
+  * GStreamer 0.2.0-pre2 + CVS 20010604
+  * Added -artsd (vs -arts), -audiofile, -gnomevfs, -gsm, -jpeg,
+    -oss, and -sdl plugin packages
+  * Added osshelper lib to oss package
+  * Added more AVI related plugins and autoplug libs to -common
+  * Added pkgconfig file to libgst-dev
+  * Added gstreamer-all-plugins pseudo package that depends on
+    all other plugin pacakges
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon,  4 Jun 2001 17:33:20 -0400
+
+gstreamer (0.2.0-0.1) unstable; urgency=low
+
+  * GStreamer 0.2.0-pre1
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 31 May 2001 17:16:23 -0400
+
+gstreamer (0.1.1.20010504-1) unstable; urgency=low
+
+  * Latest CVS code
+
+ -- David I. Lehn <dlehn@vt.edu>  Fri,  4 May 2001 21:48:45 -0400
+
+gstreamer (0.1.1.20010430-2) unstable; urgency=low
+
+  * Added -colorspace package for Hermes dependent conversion
+  * Added -arts package for aRts sink
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue,  1 May 2001 19:46:08 -0400
+
+gstreamer (0.1.1.20010430-1) unstable; urgency=low
+
+  * Latest CVS code
+  * Added -aa package for aasink output
+  * Added -mad package for mad mp3 decoder
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon, 30 Apr 2001 18:25:52 -0400
+
+gstreamer (0.1.1.20010320-1) unstable; urgency=low
+
+  * Latest CVS code
+  * enable main docs
+  * disable broken plugin docs with new option
+
+ -- David I. Lehn <dlehn@vt.edu>  Tue, 20 Mar 2001 18:15:19 -0500
+
+gstreamer (0.1.1.20010315-1) unstable; urgency=low
+
+  * Latest CVS code
+  * Added man pages
+  * Split mpeg2dec to seperate plugin
+  * libgst Architectures updated to cothread supported archs
+
+ -- David I. Lehn <dlehn@vt.edu>  Thu, 15 Mar 2001 20:17:19 -0500
+
+gstreamer (0.1.1-1) unstable; urgency=low
+
+  * New upstream release
+  * disable docs build, broken at the momemnt
+
+ -- David I. Lehn <dlehn@vt.edu>  Sun, 25 Feb 2001 17:58:25 -0500
+
+gstreamer (0.1.0-2) unstable; urgency=low
+
+  * debian/rules: call configure instead of autogen.sh
+
+ -- David I. Lehn <dlehn@vt.edu>  Sat, 24 Feb 2001 18:31:36 -0500
+
+gstreamer (0.1.0-1) unstable; urgency=low
+
+  * Initial Release.
+
+ -- David I. Lehn <dlehn@vt.edu>  Mon, 15 Jan 2001 18:25:18 -0500
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7f8f011
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+7
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..3d7d192
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,191 @@
+Source: gstreamer0.10
+Section: libs
+Priority: optional
+Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>
+Uploaders: Loic Minier <lool@dooz.org>,
+           Sebastien Bacher <seb128@debian.org>,
+           Sebastian Dröge <slomo@debian.org>,
+           Sjoerd Simons <sjoerd@debian.org>
+Build-Depends: debhelper (>= 7),
+               cdbs (>= 0.4.20),
+               gnome-pkg-tools (>= 0.7),
+               autotools-dev,
+               dh-autoreconf,
+               autopoint,
+               libxml2-dev (>= 2.6.0),
+               zlib1g-dev (>= 1:1.1.4),
+               libglib2.0-dev (>= 2.22),
+               libgmp3-dev,
+               libgsl0-dev,
+               pkg-config (>= 0.11.0),
+               bison (>= 1.875),
+               flex (>= 2.5.34),
+               dpkg-dev (>= 1.15.1),
+               perl-doc,
+               libgirepository1.0-dev (>= 0.9.12-4~),
+               gobject-introspection (>= 0.9.12-4~),
+               gir1.2-glib-2.0,
+               gir1.2-freedesktop
+Build-Depends-Indep: python (>= 2.2),
+                     gtk-doc-tools (>= 0.7),
+                     jade (>= 1.2.1),
+                     transfig (>= 3.2.3.c),
+                     docbook-utils (>= 0.6.9),
+                     docbook-xml,
+                     docbook-xsl,
+                     xsltproc (>= 1.0.21),
+                     ghostscript,
+                     xmlto,
+                     netpbm,
+                     libxml2-doc,
+                     libglib2.0-doc
+Standards-Version: 3.8.4
+Homepage: http://gstreamer.freedesktop.org
+
+Package: libgstreamer0.10-0
+Architecture: any
+Section: libs
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Suggests: gstreamer0.10-tools,
+          gstreamer0.10-plugins-base
+Conflicts: libgstreamer-plugins-base0.10-0 (<< 0.10.11cvs20070110-0ubuntu5),
+           gstreamer0.10-plugins-base (<< 0.10.25.2)
+Replaces: gobject-introspection-repository (<< 0.6.5-2)
+Description: Core GStreamer libraries and elements
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains the core library and elements.
+
+Package: libgstreamer0.10-0-dbg
+Architecture: any
+Section: debug
+Priority: extra
+Depends: libgstreamer0.10-0 (= ${binary:Version}),
+         ${misc:Depends}
+Description: Core GStreamer libraries and elements
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains unstripped shared libraries. It is provided primarily
+ to provide a backtrace with names in a debugger, this makes it somewhat
+ easier to interpret core dumps. The libraries are installed in
+ /usr/lib/debug and are automatically used by gdb.
+
+Package: libgstreamer0.10-dev
+Architecture: any
+Section: libdevel
+Depends: libgstreamer0.10-0 (= ${binary:Version}),
+         libc6-dev | libc-dev,
+         pkg-config,
+         libglib2.0-dev,
+         libxml2-dev,
+         ${shlibs:Depends},
+         ${misc:Depends},
+         gir1.2-gstreamer-0.10 (= ${binary:Version})
+Replaces: gstreamer-tools (<< 0.10.20-2),
+          gobject-introspection-repository (<< 0.6.5-2)
+Recommends: debhelper
+Suggests: gstreamer0.10-doc
+Description: GStreamer core development files
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains development files for the core library and
+ elements.
+
+Package: gstreamer0.10-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends},
+         libxml2-doc,
+         libglib2.0-doc
+Recommends: libgstreamer0.10-dev (= ${source:Version})
+Description: GStreamer core documentation and manuals
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains documentation for core libraries and elements as
+ well as:
+  * the GStreamer Manual
+  * the GStreamer Plugin Writers Guide
+  * Various API docs
+
+Package: gstreamer0.10-tools
+Architecture: any
+Section: utils
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         pkg-config,
+         libgstreamer0.10-0 (>= 0.10.33)
+Suggests: gstreamer0.10-plugins-base
+Description: Tools for use with GStreamer
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains versioned command-line tools for GStreamer.
+
+Package: gstreamer-tools
+Architecture: any
+Section: utils
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         gstreamer0.10-tools | gstreamer0.8-tools
+Conflicts: gstreamer0.8-tools (<< 0.8.11-2)
+Description: Tools for use with GStreamer
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains unversioned command-line tools for GStreamer
+ that work with different major/minor versions of GStreamer.
+
+Package: gir1.2-gstreamer-0.10
+Section: libs
+Architecture: any
+Depends: ${gir:Depends},
+         ${shlibs:Depends},
+         ${misc:Depends},
+         ${gir:Depends}
+Conflicts: gir1.0-gstreamer-0.10
+Replaces: libgstreamer0.10-0 (<< 0.10.25-3),
+          gobject-introspection-repository (<< 0.6.5-2),
+          gir1.0-gstreamer-0.10
+Description: Description: GObject introspection data for the GStreamer library
+ This package contains introspection data for the GStreamer streaming media
+ framework.
+ .
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ It can be used by packages using the GIRepository format to generate
+ dynamic bindings.
+
diff --git a/debian/control.in b/debian/control.in
new file mode 100644
index 0000000..c6aba89
--- /dev/null
+++ b/debian/control.in
@@ -0,0 +1,191 @@
+Source: @GST_PKGNAME@
+Section: libs
+Priority: optional
+Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>
+Uploaders: Loic Minier <lool@dooz.org>,
+           Sebastien Bacher <seb128@debian.org>,
+           Sebastian Dröge <slomo@debian.org>,
+           Sjoerd Simons <sjoerd@debian.org>
+Build-Depends: debhelper (>= 7),
+               cdbs (>= 0.4.20),
+               gnome-pkg-tools (>= 0.7),
+               autotools-dev,
+               dh-autoreconf,
+               autopoint,
+               libxml2-dev (>= 2.6.0),
+               zlib1g-dev (>= 1:1.1.4),
+               libglib2.0-dev (>= 2.22),
+               libgmp3-dev,
+               libgsl0-dev,
+               pkg-config (>= 0.11.0),
+               bison (>= 1.875),
+               flex (>= 2.5.34),
+               dpkg-dev (>= 1.15.1),
+               perl-doc,
+               libgirepository1.0-dev (>= 0.9.12-4~),
+               gobject-introspection (>= 0.9.12-4~),
+               gir1.2-glib-2.0,
+               gir1.2-freedesktop
+Build-Depends-Indep: python (>= 2.2),
+                     gtk-doc-tools (>= 0.7),
+                     jade (>= 1.2.1),
+                     transfig (>= 3.2.3.c),
+                     docbook-utils (>= 0.6.9),
+                     docbook-xml,
+                     docbook-xsl,
+                     xsltproc (>= 1.0.21),
+                     ghostscript,
+                     xmlto,
+                     netpbm,
+                     libxml2-doc,
+                     libglib2.0-doc
+Standards-Version: 3.8.4
+Homepage: http://gstreamer.freedesktop.org
+
+Package: @GST_LIB@
+Architecture: any
+Section: libs
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Suggests: @GST_PKGNAME@-tools,
+          @GST_PKGNAME@-plugins-base
+Conflicts: libgstreamer-plugins-base0.10-0 (<< 0.10.11cvs20070110-0ubuntu5),
+           gstreamer0.10-plugins-base (<< 0.10.25.2)
+Replaces: gobject-introspection-repository (<< 0.6.5-2)
+Description: Core GStreamer libraries and elements
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains the core library and elements.
+
+Package: @GST_LIB@-dbg
+Architecture: any
+Section: debug
+Priority: extra
+Depends: @GST_LIB@ (= ${binary:Version}),
+         ${misc:Depends}
+Description: Core GStreamer libraries and elements
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains unstripped shared libraries. It is provided primarily
+ to provide a backtrace with names in a debugger, this makes it somewhat
+ easier to interpret core dumps. The libraries are installed in
+ /usr/lib/debug and are automatically used by gdb.
+
+Package: @GST_LIB_DEV@
+Architecture: any
+Section: libdevel
+Depends: @GST_LIB@ (= ${binary:Version}),
+         libc6-dev | libc-dev,
+         pkg-config,
+         libglib2.0-dev,
+         libxml2-dev,
+         ${shlibs:Depends},
+         ${misc:Depends},
+         gir1.2-gstreamer-@GST_ABI@ (= ${binary:Version})
+Replaces: gstreamer-tools (<< 0.10.20-2),
+          gobject-introspection-repository (<< 0.6.5-2)
+Recommends: debhelper
+Suggests: @GST_PKGNAME@-doc
+Description: GStreamer core development files
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains development files for the core library and
+ elements.
+
+Package: @GST_PKGNAME@-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends},
+         libxml2-doc,
+         libglib2.0-doc
+Recommends: @GST_LIB_DEV@ (= ${source:Version})
+Description: GStreamer core documentation and manuals
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains documentation for core libraries and elements as
+ well as:
+  * the GStreamer Manual
+  * the GStreamer Plugin Writers Guide
+  * Various API docs
+
+Package: @GST_PKGNAME@-tools
+Architecture: any
+Section: utils
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         pkg-config,
+         @GST_LIB@ (>= @GST_VERSION@)
+Suggests: @GST_PKGNAME@-plugins-base
+Description: Tools for use with GStreamer
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains versioned command-line tools for GStreamer.
+
+Package: gstreamer-tools
+Architecture: any
+Section: utils
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         gstreamer0.10-tools | gstreamer0.8-tools
+Conflicts: gstreamer0.8-tools (<< 0.8.11-2)
+Description: Tools for use with GStreamer
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains unversioned command-line tools for GStreamer
+ that work with different major/minor versions of GStreamer.
+
+Package: gir1.2-gstreamer-@GST_ABI@
+Section: libs
+Architecture: any
+Depends: ${gir:Depends},
+         ${shlibs:Depends},
+         ${misc:Depends},
+         ${gir:Depends}
+Conflicts: gir1.0-gstreamer-@GST_ABI@
+Replaces: @GST_LIB@ (<< 0.10.25-3),
+          gobject-introspection-repository (<< 0.6.5-2),
+          gir1.0-gstreamer-@GST_ABI@
+Description: Description: GObject introspection data for the GStreamer library
+ This package contains introspection data for the GStreamer streaming media
+ framework.
+ .
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ It can be used by packages using the GIRepository format to generate
+ dynamic bindings.
+
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..b70e835
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,31 @@
+This package was debianized by David I. Lehn <dlehn@debian.org> on
+Mon, 15 Jan 2001 18:21:37 -0500.
+
+It was downloaded from <http://gstreamer.freedesktop.org/>.
+
+Upstream Authors:
+
+    Erik Walthinsen <omegahacker@users.sourceforge.net>
+    Wim Taymans <wim.taymans@chello.be>
+    Richard Boulton <richard@tartarus.org>
+    and many more...
+
+Copyright:
+
+    This package is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2 of the License, or (at your option) any later version.
+
+    This package is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this package; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+On Debian GNU/Linux systems, the complete text of the GNU Lesser General
+Public License can be found in `/usr/share/common-licenses/LGPL'.
+
diff --git a/debian/dh_gstscancodecs b/debian/dh_gstscancodecs
new file mode 100644
index 0000000..48a3620
--- /dev/null
+++ b/debian/dh_gstscancodecs
@@ -0,0 +1,126 @@
+#!/usr/bin/perl -w
+
+=head1 NAME
+
+dh_gstscancodecs - enumerate and classify gstreamer codecs
+
+=cut
+
+use strict;
+use Debian::Debhelper::Dh_Lib;
+use File::Temp;
+
+=head1 SYNOPSIS
+
+  dh_gstscancodecs [debhelper options]
+
+=head1 DESCRIPTION
+
+This program is meant to assist in building a package that provides
+codecs, demultiplexers and other media-handling components for
+gstreamer-based applications.
+
+dh_gstscancodecs generates substitution variable for debian/control,
+by scanning libraries /usr/lib/gstreamer-0.10/*.so.
+
+The generated substitution variables are
+
+=over 4
+
+=item gstreamer:Version
+
+Should be added to XB-GStreamer-Version
+
+=item gstreamer:Elements
+
+Should be added to XB-GStreamer-Elements
+
+=item gstreamer:Provides
+
+Should be added to Provides
+
+=item gstreamer:URISources
+
+Should be added to XB-GStreamer-URI-Sources
+
+=item gstreamer:URISinks
+
+Should be added to XB-GStreamer-URI-Sinks
+
+=item gstreamer:Encoders
+
+Should be added to XB-GStreamer-Encoders
+
+=item gstreamer:Decoders
+
+Should be added to XB-GStreamer-Decoders
+
+=back
+
+This control fields will be used by the /usr/bin/gstreamer-codec-install
+helper to install required missing GStreamer elements.
+
+=head1 OPTIONS
+
+The standard debhelper options are supported.
+
+=cut
+
+init();
+
+$::pluginlibdirprefix = '/usr/lib/gstreamer-';
+
+foreach my $package (@{$dh{DOPACKAGES}}) {
+  my $tmp = tmpdir($package);
+
+  delsubstvar($package, "gstreamer:Version");
+  delsubstvar($package, "gstreamer:URISinks");
+  delsubstvar($package, "gstreamer:URISources");
+  delsubstvar($package, "gstreamer:Encoders");
+  delsubstvar($package, "gstreamer:Decoders");
+
+  foreach my $sodir (glob "$tmp$::pluginlibdirprefix*") {
+    my $gstversion= substr($sodir, length("$tmp$::pluginlibdirprefix"));
+    verbose_print("# gstreamer version $gstversion");
+
+    my (undef, $tmpfile) = File::Temp::tempfile("/tmp/".basename($0).".XXXX", UNLINK => 1);
+    my (undef, $registryfile) = File::Temp::tempfile("/tmp/".basename($0).".XXXX", UNLINK => 1);
+
+    my $command="GST_REGISTRY=$registryfile GST_PLUGIN_SYSTEM_PATH= GST_PLUGIN_PATH=$sodir gst-codec-info-$gstversion " . join(' ', (glob "$sodir/*.so")) . " > $tmpfile";
+
+    system($command);
+    if ($?) {
+      my $output;
+      {
+          local *F;
+          open(F, $tmpfile);
+          local $/;
+          $output = <F>;
+          close(F);
+      }
+      die("gst-codec-info-$gstversion call failed: '".$command."' rc: $? output: $output");
+    }
+
+    local *F;
+    open(F, $tmpfile);
+    my ($variable, $value);
+    while(<F>) {
+      $variable = $1 if /([a-zA-Z]*:[a-zA-Z]*)=/;
+      $value = $2 if /([a-zA-Z]*:[a-zA-Z]*)=(.*)\n/;
+      addsubstvar($package, $variable, $value);
+    }
+  }
+}
+
+=head1 SEE ALSO
+
+L<debhelper(1)>
+
+This program is an extension to debhelper.
+
+=head1 AUTHOR
+
+Ian Jackson <iwj@ubuntu.com>
+Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+=cut
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 0000000..ebb3d05
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,6 @@
+[DEFAULT]
+upstream-branch = upstream
+debian-branch = master
+pristine-tar = True
+upstream-tag = upstream/%(version)s
+debian-tag = debian/%(version)s
diff --git a/debian/gir1.2-gstreamer.install b/debian/gir1.2-gstreamer.install
new file mode 100644
index 0000000..318141b
--- /dev/null
+++ b/debian/gir1.2-gstreamer.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/girepository-*
diff --git a/debian/gst-codec-info.c b/debian/gst-codec-info.c
new file mode 100644
index 0000000..f916df2
--- /dev/null
+++ b/debian/gst-codec-info.c
@@ -0,0 +1,446 @@
+/* GStreamer
+ * Copyright (C) 2008 Sebastian Dröge <sebastian.droege@collabora.co.uk>
+ *
+ * gst-codec-info.c: tool to print automatic codec installation info
+ *                   for a given list of plugins
+ *
+ * Partially based on gst-inspect from gstreamer.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+
+#include <gst/gst.h>
+#include <string.h>
+
+static const gchar *virtual_packages[] = {
+  "gstreamer0.10-audiosink",
+  "gstreamer0.10-audiosource",
+  "gstreamer0.10-videosink",
+  "gstreamer0.10-videosource",
+  "gstreamer0.10-visualization",
+  NULL
+};
+
+static GList *elements = NULL;
+static GList *uri_sources = NULL;
+static GList *uri_sinks = NULL;
+static GList *provides = NULL;
+static GstCaps *encoders = NULL, *decoders = NULL;
+
+static void
+free_plugin_info (void)
+{
+  g_list_foreach (elements, (GFunc) g_free, NULL);
+  g_list_foreach (uri_sources, (GFunc) g_free, NULL);
+  g_list_foreach (uri_sinks, (GFunc) g_free, NULL);
+
+  g_list_free (elements);
+  g_list_free (uri_sources);
+  g_list_free (uri_sinks);
+
+  g_list_free (provides);
+
+  gst_caps_unref (encoders);
+  gst_caps_unref (decoders);
+}
+
+static void
+print_plugin_info (void)
+{
+  GList *l;
+
+  if (elements) {
+    g_print ("gstreamer:Elements=");
+    for (l = elements; l; l = l->next) {
+      if (l->next)
+        g_print ("%s, ", (gchar *) l->data);
+      else
+        g_print ("%s\n", (gchar *) l->data);
+    }
+  }
+
+  if (provides) {
+    g_print ("gstreamer:Provides=");
+    for (l = provides; l; l = l->next) {
+      if (l->next)
+        g_print ("%s, ", (gchar *) l->data);
+      else
+        g_print ("%s\n", (gchar *) l->data);
+    }
+  }
+
+  if (uri_sources) {
+    g_print ("gstreamer:URISources=");
+    for (l = uri_sources; l; l = l->next) {
+      if (l->next)
+        g_print ("%s, ", (gchar *) l->data);
+      else
+        g_print ("%s\n", (gchar *) l->data);
+    }
+  }
+
+  if (uri_sinks) {
+    g_print ("gstreamer:URISinks=");
+    for (l = uri_sinks; l; l = l->next) {
+      if (l->next)
+        g_print ("%s, ", (gchar *) l->data);
+      else
+        g_print ("%s\n", (gchar *) l->data);
+    }
+  }
+
+  if (!gst_caps_is_empty (encoders)) {
+    gchar *caps = gst_caps_to_string (encoders);
+
+    g_print ("gstreamer:Encoders=%s\n", caps);
+    g_free (caps);
+  }
+
+  if (!gst_caps_is_empty (decoders)) {
+    gchar *caps = gst_caps_to_string (decoders);
+
+    g_print ("gstreamer:Decoders=%s\n", caps);
+    g_free (caps);
+  }
+}
+
+static void
+remove_duplicates (GList * list, gboolean free)
+{
+  GList *l;
+  gchar *previous;
+
+  if (!list || !list->next)
+    return;
+
+  previous = list->data;
+  l = list->next;
+
+  while (l) {
+    if (strcmp (l->data, previous) == 0) {
+      GList *next = l->next;
+
+      if (free)
+        g_free (l->data);
+
+      l = g_list_delete_link (l->prev, l);
+      l = next;
+    } else {
+      previous = l->data;
+      l = l->next;
+    }
+  }
+}
+
+static void
+cleanup_plugin_info (void)
+{
+  if (encoders)
+    gst_caps_do_simplify (encoders);
+
+  if (decoders)
+    gst_caps_do_simplify (decoders);
+
+  elements = g_list_sort (elements, (GCompareFunc) strcmp);
+  uri_sources = g_list_sort (uri_sources, (GCompareFunc) strcmp);
+  uri_sinks = g_list_sort (uri_sinks, (GCompareFunc) strcmp);
+  provides = g_list_sort (provides, (GCompareFunc) strcmp);
+
+  remove_duplicates (elements, TRUE);
+  remove_duplicates (uri_sources, TRUE);
+  remove_duplicates (uri_sinks, TRUE);
+  remove_duplicates (provides, FALSE);
+}
+
+static void
+collect_uri_protocols (GstElementFactory * factory)
+{
+  gchar **protocols, **p;
+
+  protocols = gst_element_factory_get_uri_protocols (factory);
+  if (!protocols)
+    return;
+
+  switch (gst_element_factory_get_uri_type (factory)) {
+    case GST_URI_SINK:
+      for (p = protocols; *p; p++)
+        uri_sinks = g_list_prepend (uri_sinks, g_strdup (*p));
+      break;
+    case GST_URI_SRC:
+      for (p = protocols; *p; p++)
+        uri_sources = g_list_prepend (uri_sources, g_strdup (*p));
+      break;
+  }
+  g_strfreev (protocols);
+}
+
+static void
+remove_min_max_fields (GstStructure * s)
+{
+  gint i, n;
+  gboolean removed_field = FALSE;
+
+
+  do {
+    n = gst_structure_n_fields (s);
+    removed_field = FALSE;
+    for (i = 0; i < n; i++) {
+      const gchar *field_name = gst_structure_nth_field_name (s, i);
+      const GValue *field;
+
+      field = gst_structure_get_value (s, field_name);
+
+      if (GST_VALUE_HOLDS_INT_RANGE (field)) {
+        gint min, max;
+
+        min = gst_value_get_int_range_min (field);
+        max = gst_value_get_int_range_max (field);
+
+        if (min == 0 && max == G_MAXINT) {
+          gst_structure_remove_field (s, field_name);
+          removed_field = TRUE;
+          break;
+        }
+      } else if (GST_VALUE_HOLDS_LIST (field)) {
+        gint n2 = gst_value_list_get_size (field);
+
+        if (n2 == 2) {
+          const GValue *val1 = gst_value_list_get_value (field, 0);
+          const GValue *val2 = gst_value_list_get_value (field, 1);
+
+          if (G_VALUE_TYPE (val1) == G_TYPE_BOOLEAN
+              && G_VALUE_TYPE (val2) == G_TYPE_BOOLEAN
+              && ((g_value_get_boolean (val1) && !g_value_get_boolean (val2))
+                  || (!g_value_get_boolean (val1)
+                      && g_value_get_boolean (val2)))) {
+            gst_structure_remove_field (s, field_name);
+            removed_field = TRUE;
+            break;
+          }
+        }
+      } else if (GST_VALUE_HOLDS_ARRAY (field)) {
+        gint n2 = gst_value_array_get_size (field);
+
+        if (n2 == 2) {
+          const GValue *val1 = gst_value_array_get_value (field, 0);
+          const GValue *val2 = gst_value_array_get_value (field, 1);
+
+          if (G_VALUE_TYPE (val1) == G_TYPE_BOOLEAN
+              && G_VALUE_TYPE (val2) == G_TYPE_BOOLEAN
+              && ((g_value_get_boolean (val1) && !g_value_get_boolean (val2))
+                  || (!g_value_get_boolean (val1)
+                      && g_value_get_boolean (val2)))) {
+            gst_structure_remove_field (s, field_name);
+            removed_field = TRUE;
+            break;
+          }
+        }
+      }
+    }
+  } while (removed_field);
+}
+
+static void
+collect_codecs (GstElementFactory * factory)
+{
+  GstPadDirection direction;
+  gboolean encoder;
+  const gchar *klass;
+  const GList *static_templates, *l;
+  GstCaps *caps = NULL;
+  gint i, n;
+
+  klass = gst_element_factory_get_klass (factory);
+  g_return_if_fail (klass);
+
+  if (strstr (klass, "Demuxer") ||
+      strstr (klass, "Decoder") ||
+      strstr (klass, "Depay") || strstr (klass, "Parser")) {
+
+    /* Ignore decoders with a less than marginal rank as they're
+     * not autoplugged by playbin/decodebin */
+    if (gst_plugin_feature_get_rank (GST_PLUGIN_FEATURE (factory)) <
+        GST_RANK_MARGINAL)
+      return;
+
+    encoder = FALSE;
+    direction = GST_PAD_SINK;
+  } else if (strstr (klass, "Muxer") ||
+      strstr (klass, "Encoder") || strstr (klass, "Pay")) {
+    encoder = TRUE;
+    direction = GST_PAD_SRC;
+  } else if (strcmp (klass, "Sink/Audio") == 0) {
+    provides = g_list_prepend (provides, (gchar *) virtual_packages[0]);
+    return;
+  } else if (strcmp (klass, "Source/Audio") == 0) {
+    provides = g_list_prepend (provides, (gchar *) virtual_packages[1]);
+    return;
+  } else if (strcmp (klass, "Sink/Video") == 0) {
+    provides = g_list_prepend (provides, (gchar *) virtual_packages[2]);
+    return;
+  } else if (strcmp (klass, "Source/Video") == 0) {
+    provides = g_list_prepend (provides, (gchar *) virtual_packages[3]);
+    return;
+  } else if (strcmp (klass, "Visualization") == 0) {
+    provides = g_list_prepend (provides, (gchar *) virtual_packages[4]);
+    return;
+  } else {
+    return;
+  }
+
+  /* decoder/demuxer sink pads should always be static and there should only
+   * be one, the same applies to encoders/muxers and source pads */
+  static_templates = gst_element_factory_get_static_pad_templates (factory);
+  for (l = static_templates; l; l = l->next) {
+    GstStaticPadTemplate *tmpl = l->data;
+
+    if (tmpl->direction == direction) {
+      caps = gst_static_pad_template_get_caps (tmpl);
+      break;
+    }
+  }
+
+  if (caps == NULL) {
+    g_printerr ("W: Couldn't find static pad template for '%s'\n",
+        GST_PLUGIN_FEATURE_NAME (factory));
+    return;
+  }
+
+  caps = gst_caps_make_writable (caps);
+  n = gst_caps_get_size (caps);
+  for (i = 0; i < n; i++) {
+    GstStructure *s = gst_caps_get_structure (caps, i);
+
+    /* make caps easier to interpret, remove common fields that are likely
+     * to be irrelevant for determining the right plugin (ie. mostly fields
+     * where template caps usually have the standard MIN - MAX range as value) */
+    gst_structure_remove_field (s, "codec_data");
+    gst_structure_remove_field (s, "palette_data");
+    gst_structure_remove_field (s, "pixel-aspect-ratio");
+    gst_structure_remove_field (s, "framerate");
+    gst_structure_remove_field (s, "leaf_size");
+    gst_structure_remove_field (s, "packet_size");
+    gst_structure_remove_field (s, "block_align");
+    gst_structure_remove_field (s, "metadata-interval");        /* icy caps */
+    /* decoders/encoders almost always handle the usual width/height/channel/rate
+     * range (and if we don't remove this then the app will have a much harder
+     * time blacklisting formats it has unsuccessfully tried to install before) */
+    gst_structure_remove_field (s, "width");
+    gst_structure_remove_field (s, "depth");
+    gst_structure_remove_field (s, "height");
+    gst_structure_remove_field (s, "channels");
+    gst_structure_remove_field (s, "rate");
+    /* rtp fields */
+    gst_structure_remove_field (s, "config");
+    gst_structure_remove_field (s, "clock-rate");
+    gst_structure_remove_field (s, "clock-base");
+    gst_structure_remove_field (s, "maxps");
+    gst_structure_remove_field (s, "seqnum-base");
+    gst_structure_remove_field (s, "npt-start");
+    gst_structure_remove_field (s, "npt-stop");
+    gst_structure_remove_field (s, "play-speed");
+    gst_structure_remove_field (s, "play-scale");
+    gst_structure_remove_field (s, "dynamic_range");
+
+    remove_min_max_fields (s);
+
+    gst_caps_append_structure ((encoder) ? encoders : decoders,
+        gst_structure_copy (s));
+  }
+
+  gst_caps_unref (caps);
+}
+
+static void
+collect_plugin_info (GstPlugin * plugin)
+{
+  GList *features, *l;
+  const gchar *plugin_name;
+
+  plugin_name = gst_plugin_get_name (plugin);
+
+  features = gst_registry_get_feature_list (gst_registry_get_default (),
+      GST_TYPE_ELEMENT_FACTORY);
+
+  for (l = features; l; l = l->next) {
+    GstPluginFeature *feature = GST_PLUGIN_FEATURE (l->data);
+    GstElementFactory *factory = GST_ELEMENT_FACTORY (feature);
+
+    if (!g_str_equal (plugin_name, feature->plugin_name))
+      continue;
+
+    elements =
+        g_list_prepend (elements,
+        g_strdup (gst_plugin_feature_get_name (feature)));
+    collect_uri_protocols (factory);
+    collect_codecs (factory);
+  }
+
+  g_list_foreach (features, (GFunc) gst_object_unref, NULL);
+  g_list_free (features);
+}
+
+int
+main (int argc, char **argv)
+{
+  guint major, minor, micro, nano;
+  gint i;
+
+  if (!g_thread_supported ())
+    g_thread_init (NULL);
+
+  gst_init (NULL, NULL);
+
+  gst_version (&major, &minor, &micro, &nano);
+
+  if (argc == 1)
+    return 0;
+
+  encoders = gst_caps_new_empty ();
+  decoders = gst_caps_new_empty ();
+
+  for (i = 1; i < argc; i++) {
+    GstPlugin *plugin = NULL;
+    GError *error = NULL;
+
+    if (argv[i] == NULL ||
+        !g_file_test (argv[i], G_FILE_TEST_EXISTS) ||
+        !g_str_has_suffix (argv[i], G_MODULE_SUFFIX)) {
+      g_printerr ("W: '%s' is no valid plugin filename\n", argv[i]);
+      continue;
+    }
+
+    plugin = gst_plugin_load_file (argv[i], &error);
+
+    if (!plugin) {
+      g_printerr ("W: Could not load '%s': %s\n", argv[i], error->message);
+      g_error_free (error);
+      continue;
+    }
+
+    collect_plugin_info (plugin);
+  }
+
+  if (elements)
+    g_print ("gstreamer:Version=%u.%u\n", major, minor);
+
+  cleanup_plugin_info ();
+  print_plugin_info ();
+  free_plugin_info ();
+
+  return 0;
+}
diff --git a/debian/gstreamer-doc.install b/debian/gstreamer-doc.install
new file mode 100644
index 0000000..7879231
--- /dev/null
+++ b/debian/gstreamer-doc.install
@@ -0,0 +1 @@
+debian/tmp/usr/share/doc/@GST_PKGNAME@-doc
diff --git a/debian/gstreamer-doc.links b/debian/gstreamer-doc.links
new file mode 100644
index 0000000..32ab372
--- /dev/null
+++ b/debian/gstreamer-doc.links
@@ -0,0 +1,6 @@
+/usr/share/doc/@GST_PKGNAME@-doc/gstreamer-@GST_ABI@ /usr/share/devhelp/books/gstreamer-@GST_ABI@
+/usr/share/doc/@GST_PKGNAME@-doc/gstreamer-libs-@GST_ABI@ /usr/share/devhelp/books/gstreamer-libs-@GST_ABI@
+/usr/share/doc/@GST_PKGNAME@-doc/gstreamer-plugins-@GST_ABI@ /usr/share/devhelp/books/gstreamer-plugins-@GST_ABI@
+/usr/share/doc/@GST_PKGNAME@-doc/gstreamer-@GST_ABI@ /usr/share/gtk-doc/html/gstreamer-@GST_ABI@
+/usr/share/doc/@GST_PKGNAME@-doc/gstreamer-libs-@GST_ABI@ /usr/share/gtk-doc/html/gstreamer-libs-@GST_ABI@
+/usr/share/doc/@GST_PKGNAME@-doc/gstreamer-plugins-@GST_ABI@ /usr/share/gtk-doc/html/gstreamer-plugins-@GST_ABI@
diff --git a/debian/gstreamer-doc.lintian b/debian/gstreamer-doc.lintian
new file mode 100644
index 0000000..7ade982
--- /dev/null
+++ b/debian/gstreamer-doc.lintian
@@ -0,0 +1 @@
+@GST_PKGNAME@-doc: zero-byte-file-in-doc-directory usr/share/doc/@GST_PKGNAME@-doc/pwg/html/base.css
diff --git a/debian/gstreamer-tools-abi.install b/debian/gstreamer-tools-abi.install
new file mode 100644
index 0000000..b6ae46a
--- /dev/null
+++ b/debian/gstreamer-tools-abi.install
@@ -0,0 +1,6 @@
+debian/tmp/usr/bin/gst-feedback-@GST_ABI@
+debian/tmp/usr/bin/gst-inspect-@GST_ABI@
+debian/tmp/usr/bin/gst-launch-@GST_ABI@
+debian/tmp/usr/bin/gst-typefind-@GST_ABI@
+debian/tmp/usr/bin/gst-xmllaunch-@GST_ABI@
+debian/tmp/usr/bin/gst-xmlinspect-@GST_ABI@
diff --git a/debian/gstreamer-tools-abi.links b/debian/gstreamer-tools-abi.links
new file mode 100644
index 0000000..4b80bf6
--- /dev/null
+++ b/debian/gstreamer-tools-abi.links
@@ -0,0 +1 @@
+/usr/share/man/man1/gst-inspect-@GST_ABI@.1 /usr/share/man/man1/gst-xmlinspect-@GST_ABI@.1
diff --git a/debian/gstreamer-tools-abi.manpages b/debian/gstreamer-tools-abi.manpages
new file mode 100644
index 0000000..a229510
--- /dev/null
+++ b/debian/gstreamer-tools-abi.manpages
@@ -0,0 +1,6 @@
+debian/tmp/usr/share/man/man1/gst-feedback-@GST_ABI@.1
+debian/tmp/usr/share/man/man1/gst-inspect-@GST_ABI@.1
+debian/tmp/usr/share/man/man1/gst-launch-@GST_ABI@.1
+debian/tmp/usr/share/man/man1/gst-typefind-@GST_ABI@.1
+debian/tmp/usr/share/man/man1/gst-xmlinspect-@GST_ABI@.1
+debian/tmp/usr/share/man/man1/gst-xmllaunch-@GST_ABI@.1
diff --git a/debian/gstreamer-tools.install b/debian/gstreamer-tools.install
new file mode 100644
index 0000000..3424b9c
--- /dev/null
+++ b/debian/gstreamer-tools.install
@@ -0,0 +1,6 @@
+debian/tmp/usr/bin/gst-feedback
+debian/tmp/usr/bin/gst-inspect
+debian/tmp/usr/bin/gst-launch
+debian/tmp/usr/bin/gst-typefind
+debian/tmp/usr/bin/gst-xmllaunch
+debian/tmp/usr/bin/gst-xmlinspect
diff --git a/debian/gstreamer0.10-doc.doc-base.core-ref b/debian/gstreamer0.10-doc.doc-base.core-ref
new file mode 100644
index 0000000..2d3245d
--- /dev/null
+++ b/debian/gstreamer0.10-doc.doc-base.core-ref
@@ -0,0 +1,8 @@
+Document: gstreamer-0.10-core-ref
+Title: GStreamer 0.10 Core Reference Manual
+Abstract: API documentation for the core of GStreamer 0.10.
+Section: Programming/C
+
+Format: HTML
+Files: /usr/share/doc/gstreamer0.10-doc/gstreamer-0.10/*.html
+Index: /usr/share/doc/gstreamer0.10-doc/gstreamer-0.10/index.html
diff --git a/debian/gstreamer0.10-doc.doc-base.faq b/debian/gstreamer0.10-doc.doc-base.faq
new file mode 100644
index 0000000..056b701
--- /dev/null
+++ b/debian/gstreamer0.10-doc.doc-base.faq
@@ -0,0 +1,9 @@
+Document: gstreamer-0.10-faq
+Title: GStreamer 0.10 FAQ
+Abstract: FAQ for GStreamer, a multimedia framework. Questions and answers
+ range from general information to deep-down-and-dirty compilation issues.
+Section: Help/FAQ
+
+Format: HTML
+Files: /usr/share/doc/gstreamer0.10-doc/faq/html/*.html
+Index: /usr/share/doc/gstreamer0.10-doc/faq/html/index.html
diff --git a/debian/gstreamer0.10-doc.doc-base.libs-ref b/debian/gstreamer0.10-doc.doc-base.libs-ref
new file mode 100644
index 0000000..ca4391b
--- /dev/null
+++ b/debian/gstreamer0.10-doc.doc-base.libs-ref
@@ -0,0 +1,8 @@
+Document: gstreamer-0.10-libs-ref
+Title: GStreamer 0.10 Library Reference Manual
+Abstract: API documentation for libraries from GStreamer 0.10.
+Section: Programming/C
+
+Format: HTML
+Files: /usr/share/doc/gstreamer0.10-doc/gstreamer-libs-0.10/*.html
+Index: /usr/share/doc/gstreamer0.10-doc/gstreamer-libs-0.10/index.html
diff --git a/debian/gstreamer0.10-doc.doc-base.manual b/debian/gstreamer0.10-doc.doc-base.manual
new file mode 100644
index 0000000..1fc9a64
--- /dev/null
+++ b/debian/gstreamer0.10-doc.doc-base.manual
@@ -0,0 +1,11 @@
+Document: gstreamer-0.10-manual
+Title: GStreamer 0.10 Application Development Manual
+Author: Wim Taymans, Steve Baker, Andy Wingo, Ronald S. Bultje
+Abstract: GStreamer is an extremely powerful and versatile framework for
+ creating streaming media applications. This guide is intended to help you
+ understand the GStreamer framework so you can develop applications based on it.
+Section: Programming
+
+Format: HTML
+Files: /usr/share/doc/gstreamer0.10-doc/manual/html/*.html
+Index: /usr/share/doc/gstreamer0.10-doc/manual/html/index.html
diff --git a/debian/gstreamer0.10-doc.doc-base.pwg b/debian/gstreamer0.10-doc.doc-base.pwg
new file mode 100644
index 0000000..cc11013
--- /dev/null
+++ b/debian/gstreamer0.10-doc.doc-base.pwg
@@ -0,0 +1,14 @@
+Document: gstreamer-0.10-pwg
+Title: GStreamer Plugin Writer's Guide
+Author: Richard John Boulton, Erik Walthinsen, Steve Baker, Leif Johnson, Ronald S. Bultje
+Abstract:  This guide is intended to help you understand the GStreamer
+ framework so you can develop new plugins to extend the existing functionality.
+ The guide addresses most issues by following the development of an example
+ audio filter plugin, written in C. The later parts of the guide also present
+ some issues involved in writing other types of plugins, and the end of the
+ guide describes some of the Python bindings for GStreamer.
+Section: Programming
+
+Format: HTML
+Files: /usr/share/doc/gstreamer0.10-doc/pwg/html/*.html
+Index: /usr/share/doc/gstreamer0.10-doc/pwg/html/index.html
diff --git a/debian/libgstreamer-dev.install b/debian/libgstreamer-dev.install
new file mode 100644
index 0000000..6dfcb36
--- /dev/null
+++ b/debian/libgstreamer-dev.install
@@ -0,0 +1,9 @@
+debian/tmp/usr/include
+debian/tmp/usr/lib/*.{a,la,so}
+debian/tmp/usr/lib/gstreamer-@GST_ABI@/*.{a,la}
+debian/tmp/usr/lib/pkgconfig
+debian/tmp/usr/share/aclocal
+debian/tmp/usr/share/gir-*
+debian/tmp/usr/bin/gst-codec-info-@GST_ABI@
+debian/dh_gstscancodecs usr/bin
+debian/tmp/usr/share/man/man1/dh_gstscancodecs.1
diff --git a/debian/libgstreamer.install b/debian/libgstreamer.install
new file mode 100644
index 0000000..195e4e9
--- /dev/null
+++ b/debian/libgstreamer.install
@@ -0,0 +1,4 @@
+debian/tmp/usr/lib/gstreamer-@GST_ABI@/*.so
+debian/tmp/usr/lib/gstreamer@GST_ABI@/gstreamer-@GST_ABI@/gst-plugin-scanner
+debian/tmp/usr/lib/*.so.*
+debian/tmp/usr/share/locale
diff --git a/debian/libgstreamer.symbols b/debian/libgstreamer.symbols
new file mode 100644
index 0000000..ca4a381
--- /dev/null
+++ b/debian/libgstreamer.symbols
@@ -0,0 +1,1676 @@
+libgstbase-0.10.so.0 libgstreamer0.10-0 #MINVER#
+* Build-Depends-Package: libgstreamer0.10-dev
+ gst_adapter_available@Base 0.10.0
+ gst_adapter_available_fast@Base 0.10.0
+ gst_adapter_clear@Base 0.10.0
+ gst_adapter_copy@Base 0.10.12
+ gst_adapter_flush@Base 0.10.0
+ gst_adapter_get_type@Base 0.10.0
+ gst_adapter_masked_scan_uint32@Base 0.10.24
+ gst_adapter_masked_scan_uint32_peek@Base 0.10.30
+ gst_adapter_new@Base 0.10.0
+ gst_adapter_peek@Base 0.10.0
+ gst_adapter_prev_timestamp@Base 0.10.24
+ gst_adapter_push@Base 0.10.0
+ gst_adapter_take@Base 0.10.0
+ gst_adapter_take_buffer@Base 0.10.6
+ gst_adapter_take_list@Base 0.10.31
+ gst_base_parse_add_index_entry@Base 0.10.33
+ gst_base_parse_convert_default@Base 0.10.33
+ gst_base_parse_frame_free@Base 0.10.33
+ gst_base_parse_frame_get_type@Base 0.10.33
+ gst_base_parse_frame_init@Base 0.10.33
+ gst_base_parse_frame_new@Base 0.10.33
+ gst_base_parse_get_type@Base 0.10.33
+ gst_base_parse_push_frame@Base 0.10.33
+ gst_base_parse_set_average_bitrate@Base 0.10.33
+ gst_base_parse_set_duration@Base 0.10.33
+ gst_base_parse_set_frame_rate@Base 0.10.33
+ gst_base_parse_set_has_timing_info@Base 0.10.33
+ gst_base_parse_set_min_frame_size@Base 0.10.33
+ gst_base_parse_set_passthrough@Base 0.10.33
+ gst_base_parse_set_syncable@Base 0.10.33
+ gst_base_sink_do_preroll@Base 0.10.22
+ gst_base_sink_get_blocksize@Base 0.10.22
+ gst_base_sink_get_last_buffer@Base 0.10.15
+ gst_base_sink_get_latency@Base 0.10.12
+ gst_base_sink_get_max_lateness@Base 0.10.4
+ gst_base_sink_get_render_delay@Base 0.10.21
+ gst_base_sink_get_sync@Base 0.10.4
+ gst_base_sink_get_throttle_time@Base 0.10.33
+ gst_base_sink_get_ts_offset@Base 0.10.15
+ gst_base_sink_get_type@Base 0.10.0
+ gst_base_sink_is_async_enabled@Base 0.10.15
+ gst_base_sink_is_last_buffer_enabled@Base 0.10.30
+ gst_base_sink_is_qos_enabled@Base 0.10.5
+ gst_base_sink_query_latency@Base 0.10.12
+ gst_base_sink_set_async_enabled@Base 0.10.15
+ gst_base_sink_set_blocksize@Base 0.10.22
+ gst_base_sink_set_last_buffer_enabled@Base 0.10.30
+ gst_base_sink_set_max_lateness@Base 0.10.4
+ gst_base_sink_set_qos_enabled@Base 0.10.5
+ gst_base_sink_set_render_delay@Base 0.10.21
+ gst_base_sink_set_sync@Base 0.10.4
+ gst_base_sink_set_throttle_time@Base 0.10.33
+ gst_base_sink_set_ts_offset@Base 0.10.15
+ gst_base_sink_wait_clock@Base 0.10.20
+ gst_base_sink_wait_eos@Base 0.10.15
+ gst_base_sink_wait_preroll@Base 0.10.11
+ gst_base_src_get_blocksize@Base 0.10.22
+ gst_base_src_get_do_timestamp@Base 0.10.15
+ gst_base_src_get_type@Base 0.10.0
+ gst_base_src_is_live@Base 0.10.0
+ gst_base_src_new_seamless_segment@Base 0.10.26
+ gst_base_src_query_latency@Base 0.10.13
+ gst_base_src_set_blocksize@Base 0.10.22
+ gst_base_src_set_do_timestamp@Base 0.10.15
+ gst_base_src_set_format@Base 0.10.1
+ gst_base_src_set_live@Base 0.10.0
+ gst_base_src_wait_playing@Base 0.10.11
+ gst_base_transform_get_type@Base 0.10.0
+ gst_base_transform_is_in_place@Base 0.10.0
+ gst_base_transform_is_passthrough@Base 0.10.0
+ gst_base_transform_is_qos_enabled@Base 0.10.5
+ gst_base_transform_reconfigure@Base 0.10.21
+ gst_base_transform_set_gap_aware@Base 0.10.16
+ gst_base_transform_set_in_place@Base 0.10.0
+ gst_base_transform_set_passthrough@Base 0.10.0
+ gst_base_transform_set_qos_enabled@Base 0.10.5
+ gst_base_transform_suggest@Base 0.10.21
+ gst_base_transform_update_qos@Base 0.10.5
+ gst_bit_reader_free@Base 0.10.22
+ gst_bit_reader_get_bits_uint16@Base 0.10.22
+ gst_bit_reader_get_bits_uint32@Base 0.10.22
+ gst_bit_reader_get_bits_uint64@Base 0.10.22
+ gst_bit_reader_get_bits_uint8@Base 0.10.22
+ gst_bit_reader_get_pos@Base 0.10.22
+ gst_bit_reader_get_remaining@Base 0.10.22
+ gst_bit_reader_get_size@Base 0.10.26
+ gst_bit_reader_init@Base 0.10.22
+ gst_bit_reader_init_from_buffer@Base 0.10.22
+ gst_bit_reader_new@Base 0.10.22
+ gst_bit_reader_new_from_buffer@Base 0.10.22
+ gst_bit_reader_peek_bits_uint16@Base 0.10.22
+ gst_bit_reader_peek_bits_uint32@Base 0.10.22
+ gst_bit_reader_peek_bits_uint64@Base 0.10.22
+ gst_bit_reader_peek_bits_uint8@Base 0.10.22
+ gst_bit_reader_set_pos@Base 0.10.22
+ gst_bit_reader_skip@Base 0.10.22
+ gst_bit_reader_skip_to_byte@Base 0.10.22
+ gst_byte_reader_dup_data@Base 0.10.24
+ gst_byte_reader_dup_string_utf16@Base 0.10.24
+ gst_byte_reader_dup_string_utf32@Base 0.10.24
+ gst_byte_reader_dup_string_utf8@Base 0.10.24
+ gst_byte_reader_free@Base 0.10.22
+ gst_byte_reader_get_data@Base 0.10.22
+ gst_byte_reader_get_float32_be@Base 0.10.22
+ gst_byte_reader_get_float32_le@Base 0.10.22
+ gst_byte_reader_get_float64_be@Base 0.10.22
+ gst_byte_reader_get_float64_le@Base 0.10.22
+ gst_byte_reader_get_int16_be@Base 0.10.22
+ gst_byte_reader_get_int16_le@Base 0.10.22
+ gst_byte_reader_get_int24_be@Base 0.10.22
+ gst_byte_reader_get_int24_le@Base 0.10.22
+ gst_byte_reader_get_int32_be@Base 0.10.22
+ gst_byte_reader_get_int32_le@Base 0.10.22
+ gst_byte_reader_get_int64_be@Base 0.10.22
+ gst_byte_reader_get_int64_le@Base 0.10.22
+ gst_byte_reader_get_int8@Base 0.10.22
+ gst_byte_reader_get_pos@Base 0.10.22
+ gst_byte_reader_get_remaining@Base 0.10.22
+ gst_byte_reader_get_size@Base 0.10.26
+ gst_byte_reader_get_string_utf8@Base 0.10.24
+ gst_byte_reader_get_uint16_be@Base 0.10.22
+ gst_byte_reader_get_uint16_le@Base 0.10.22
+ gst_byte_reader_get_uint24_be@Base 0.10.22
+ gst_byte_reader_get_uint24_le@Base 0.10.22
+ gst_byte_reader_get_uint32_be@Base 0.10.22
+ gst_byte_reader_get_uint32_le@Base 0.10.22
+ gst_byte_reader_get_uint64_be@Base 0.10.22
+ gst_byte_reader_get_uint64_le@Base 0.10.22
+ gst_byte_reader_get_uint8@Base 0.10.22
+ gst_byte_reader_init@Base 0.10.22
+ gst_byte_reader_init_from_buffer@Base 0.10.22
+ gst_byte_reader_masked_scan_uint32@Base 0.10.24
+ gst_byte_reader_new@Base 0.10.22
+ gst_byte_reader_new_from_buffer@Base 0.10.22
+ gst_byte_reader_peek_data@Base 0.10.22
+ gst_byte_reader_peek_float32_be@Base 0.10.22
+ gst_byte_reader_peek_float32_le@Base 0.10.22
+ gst_byte_reader_peek_float64_be@Base 0.10.22
+ gst_byte_reader_peek_float64_le@Base 0.10.22
+ gst_byte_reader_peek_int16_be@Base 0.10.22
+ gst_byte_reader_peek_int16_le@Base 0.10.22
+ gst_byte_reader_peek_int24_be@Base 0.10.22
+ gst_byte_reader_peek_int24_le@Base 0.10.22
+ gst_byte_reader_peek_int32_be@Base 0.10.22
+ gst_byte_reader_peek_int32_le@Base 0.10.22
+ gst_byte_reader_peek_int64_be@Base 0.10.22
+ gst_byte_reader_peek_int64_le@Base 0.10.22
+ gst_byte_reader_peek_int8@Base 0.10.22
+ gst_byte_reader_peek_string_utf8@Base 0.10.24
+ gst_byte_reader_peek_uint16_be@Base 0.10.22
+ gst_byte_reader_peek_uint16_le@Base 0.10.22
+ gst_byte_reader_peek_uint24_be@Base 0.10.22
+ gst_byte_reader_peek_uint24_le@Base 0.10.22
+ gst_byte_reader_peek_uint32_be@Base 0.10.22
+ gst_byte_reader_peek_uint32_le@Base 0.10.22
+ gst_byte_reader_peek_uint64_be@Base 0.10.22
+ gst_byte_reader_peek_uint64_le@Base 0.10.22
+ gst_byte_reader_peek_uint8@Base 0.10.22
+ gst_byte_reader_set_pos@Base 0.10.22
+ gst_byte_reader_skip@Base 0.10.22
+ gst_byte_reader_skip_string_utf16@Base 0.10.24
+ gst_byte_reader_skip_string_utf32@Base 0.10.24
+ gst_byte_reader_skip_string_utf8@Base 0.10.24
+ gst_byte_writer_ensure_free_space@Base 0.10.26
+ gst_byte_writer_fill@Base 0.10.27
+ gst_byte_writer_free@Base 0.10.26
+ gst_byte_writer_free_and_get_buffer@Base 0.10.26
+ gst_byte_writer_free_and_get_data@Base 0.10.26
+ gst_byte_writer_get_remaining@Base 0.10.26
+ gst_byte_writer_init@Base 0.10.26
+ gst_byte_writer_init_with_buffer@Base 0.10.26
+ gst_byte_writer_init_with_data@Base 0.10.26
+ gst_byte_writer_init_with_size@Base 0.10.26
+ gst_byte_writer_new@Base 0.10.26
+ gst_byte_writer_new_with_buffer@Base 0.10.26
+ gst_byte_writer_new_with_data@Base 0.10.26
+ gst_byte_writer_new_with_size@Base 0.10.26
+ gst_byte_writer_put_data@Base 0.10.26
+ gst_byte_writer_put_float32_be@Base 0.10.26
+ gst_byte_writer_put_float32_le@Base 0.10.26
+ gst_byte_writer_put_float64_be@Base 0.10.26
+ gst_byte_writer_put_float64_le@Base 0.10.26
+ gst_byte_writer_put_int16_be@Base 0.10.26
+ gst_byte_writer_put_int16_le@Base 0.10.26
+ gst_byte_writer_put_int24_be@Base 0.10.26
+ gst_byte_writer_put_int24_le@Base 0.10.26
+ gst_byte_writer_put_int32_be@Base 0.10.26
+ gst_byte_writer_put_int32_le@Base 0.10.26
+ gst_byte_writer_put_int64_be@Base 0.10.26
+ gst_byte_writer_put_int64_le@Base 0.10.26
+ gst_byte_writer_put_int8@Base 0.10.26
+ gst_byte_writer_put_string_utf16@Base 0.10.26
+ gst_byte_writer_put_string_utf32@Base 0.10.26
+ gst_byte_writer_put_string_utf8@Base 0.10.26
+ gst_byte_writer_put_uint16_be@Base 0.10.26
+ gst_byte_writer_put_uint16_le@Base 0.10.26
+ gst_byte_writer_put_uint24_be@Base 0.10.26
+ gst_byte_writer_put_uint24_le@Base 0.10.26
+ gst_byte_writer_put_uint32_be@Base 0.10.26
+ gst_byte_writer_put_uint32_le@Base 0.10.26
+ gst_byte_writer_put_uint64_be@Base 0.10.26
+ gst_byte_writer_put_uint64_le@Base 0.10.26
+ gst_byte_writer_put_uint8@Base 0.10.26
+ gst_byte_writer_reset@Base 0.10.26
+ gst_byte_writer_reset_and_get_buffer@Base 0.10.26
+ gst_byte_writer_reset_and_get_data@Base 0.10.26
+ gst_collect_pads_add_pad@Base 0.10.0
+ gst_collect_pads_add_pad_full@Base 0.10.12
+ gst_collect_pads_available@Base 0.10.0
+ gst_collect_pads_collect@Base 0.10.0
+ gst_collect_pads_collect_range@Base 0.10.0
+ gst_collect_pads_flush@Base 0.10.0
+ gst_collect_pads_get_type@Base 0.10.0
+ gst_collect_pads_is_active@Base 0.10.0
+ gst_collect_pads_new@Base 0.10.0
+ gst_collect_pads_peek@Base 0.10.0
+ gst_collect_pads_pop@Base 0.10.0
+ gst_collect_pads_read@Base 0.10.0
+ gst_collect_pads_read_buffer@Base 0.10.18
+ gst_collect_pads_remove_pad@Base 0.10.0
+ gst_collect_pads_set_clip_function@Base 0.10.26
+ gst_collect_pads_set_flushing@Base 0.10.7
+ gst_collect_pads_set_function@Base 0.10.0
+ gst_collect_pads_start@Base 0.10.0
+ gst_collect_pads_stop@Base 0.10.0
+ gst_collect_pads_take_buffer@Base 0.10.18
+ gst_data_queue_drop_head@Base 0.10.11
+ gst_data_queue_flush@Base 0.10.11
+ gst_data_queue_get_level@Base 0.10.14
+ gst_data_queue_get_type@Base 0.10.11
+ gst_data_queue_is_empty@Base 0.10.11
+ gst_data_queue_is_full@Base 0.10.11
+ gst_data_queue_limits_changed@Base 0.10.14
+ gst_data_queue_new@Base 0.10.11
+ gst_data_queue_new_full@Base 0.10.26
+ gst_data_queue_pop@Base 0.10.11
+ gst_data_queue_push@Base 0.10.11
+ gst_data_queue_set_flushing@Base 0.10.11
+ gst_push_src_get_type@Base 0.10.0
+ gst_type_find_helper@Base 0.10.0
+ gst_type_find_helper_for_buffer@Base 0.10.4
+ gst_type_find_helper_for_extension@Base 0.10.23
+ gst_type_find_helper_get_range@Base 0.10.4
+ gst_type_find_helper_get_range_ext@Base 0.10.26
+libgstcheck-0.10.so.0 libgstreamer0.10-0 #MINVER#
+* Build-Depends-Package: libgstreamer0.10-dev
+ _fail_unless@Base 0.10.25
+ _gst_check_expecting_log@Base 0.10.0
+ _gst_check_raised_critical@Base 0.10.0
+ _gst_check_raised_warning@Base 0.10.0
+ _gst_check_run_test_func@Base 0.10.15
+ _gst_check_threads_running@Base 0.10.0
+ _mark_point@Base 0.10.25
+ _tcase_add_test@Base 0.10.25
+ buffers@Base 0.10.0
+ check_cond@Base 0.10.7
+ check_debug@Base 0.10.0
+ check_fork@Base 0.10.25
+ check_major_version@Base 0.10.25
+ check_micro_version@Base 0.10.25
+ check_minor_version@Base 0.10.25
+ check_mutex@Base 0.10.7
+ check_waitpid_and_exit@Base 0.10.25
+ gst_buffer_straw_get_buffer@Base 0.10.10
+ gst_buffer_straw_start_pipeline@Base 0.10.10
+ gst_buffer_straw_stop_pipeline@Base 0.10.10
+ gst_check_abi_list@Base 0.10.7
+ gst_check_caps_equal@Base 0.10.18
+ gst_check_chain_func@Base 0.10.0
+ gst_check_drop_buffers@Base 0.10.18
+ gst_check_element_push_buffer@Base 0.10.18
+ gst_check_element_push_buffer_list@Base 0.10.18
+ gst_check_init@Base 0.10.0
+ gst_check_message_error@Base 0.10.0
+ gst_check_run_suite@Base 0.10.9
+ gst_check_setup_element@Base 0.10.0
+ gst_check_setup_sink_pad@Base 0.10.0
+ gst_check_setup_sink_pad_by_name@Base 0.10.21
+ gst_check_setup_src_pad@Base 0.10.0
+ gst_check_setup_src_pad_by_name@Base 0.10.21
+ gst_check_teardown_element@Base 0.10.0
+ gst_check_teardown_pad_by_name@Base 0.10.21
+ gst_check_teardown_sink_pad@Base 0.10.0
+ gst_check_teardown_src_pad@Base 0.10.0
+ gst_consistency_checker_free@Base 0.10.24
+ gst_consistency_checker_new@Base 0.10.24
+ gst_consistency_checker_reset@Base 0.10.24
+ mutex@Base 0.10.0
+ srunner_add_suite@Base 0.10.25
+ srunner_create@Base 0.10.25
+ srunner_failures@Base 0.10.25
+ srunner_fork_status@Base 0.10.25
+ srunner_free@Base 0.10.25
+ srunner_has_log@Base 0.10.25
+ srunner_has_xml@Base 0.10.25
+ srunner_log_fname@Base 0.10.25
+ srunner_ntests_failed@Base 0.10.25
+ srunner_ntests_run@Base 0.10.25
+ srunner_print@Base 0.10.25
+ srunner_results@Base 0.10.25
+ srunner_run_all@Base 0.10.25
+ srunner_set_fork_status@Base 0.10.25
+ srunner_set_log@Base 0.10.25
+ srunner_set_xml@Base 0.10.25
+ srunner_xml_fname@Base 0.10.25
+ start_cond@Base 0.10.0
+ suite_add_tcase@Base 0.10.25
+ suite_create@Base 0.10.25
+ sync_cond@Base 0.10.0
+ tcase_add_checked_fixture@Base 0.10.25
+ tcase_add_unchecked_fixture@Base 0.10.25
+ tcase_create@Base 0.10.25
+ tcase_fn_start@Base 0.10.25
+ tcase_set_timeout@Base 0.10.25
+ thread_list@Base 0.10.0
+ tr_ctx@Base 0.10.25
+ tr_lfile@Base 0.10.25
+ tr_lno@Base 0.10.25
+ tr_msg@Base 0.10.25
+ tr_rtype@Base 0.10.25
+ tr_tcname@Base 0.10.25
+libgstcontroller-0.10.so.0 libgstreamer0.10-0 #MINVER#
+* Build-Depends-Package: libgstreamer0.10-dev
+ gst_control_source_bind@Base 0.10.14
+ gst_control_source_get_type@Base 0.10.14
+ gst_control_source_get_value@Base 0.10.14
+ gst_control_source_get_value_array@Base 0.10.14
+ gst_controller_get@Base 0.10.0
+ gst_controller_get_all@Base 0.10.0
+ gst_controller_get_control_source@Base 0.10.14
+ gst_controller_get_type@Base 0.10.0
+ gst_controller_get_value_array@Base 0.10.0
+ gst_controller_get_value_arrays@Base 0.10.0
+ gst_controller_init@Base 0.10.0
+ gst_controller_new@Base 0.10.0
+ gst_controller_new_list@Base 0.10.0
+ gst_controller_new_valist@Base 0.10.0
+ gst_controller_remove_properties@Base 0.10.0
+ gst_controller_remove_properties_list@Base 0.10.0
+ gst_controller_remove_properties_valist@Base 0.10.0
+ gst_controller_set@Base 0.10.0
+ gst_controller_set_control_source@Base 0.10.14
+ gst_controller_set_disabled@Base 0.10.14
+ gst_controller_set_from_list@Base 0.10.0
+ gst_controller_set_interpolation_mode@Base 0.10.0
+ gst_controller_set_property_disabled@Base 0.10.14
+ gst_controller_suggest_next_sync@Base 0.10.13
+ gst_controller_sync_values@Base 0.10.0
+ gst_controller_unset@Base 0.10.0
+ gst_controller_unset_all@Base 0.10.5
+ gst_interpolation_control_source_get_all@Base 0.10.14
+ gst_interpolation_control_source_get_count@Base 0.10.14
+ gst_interpolation_control_source_get_type@Base 0.10.14
+ gst_interpolation_control_source_new@Base 0.10.14
+ gst_interpolation_control_source_set@Base 0.10.14
+ gst_interpolation_control_source_set_from_list@Base 0.10.14
+ gst_interpolation_control_source_set_interpolation_mode@Base 0.10.14
+ gst_interpolation_control_source_unset@Base 0.10.14
+ gst_interpolation_control_source_unset_all@Base 0.10.14
+ gst_lfo_control_source_get_type@Base 0.10.15
+ gst_lfo_control_source_new@Base 0.10.15
+ gst_lfo_waveform_get_type@Base 0.10.15
+ gst_object_control_properties@Base 0.10.0
+ gst_object_get_control_rate@Base 0.10.10
+ gst_object_get_control_source@Base 0.10.14
+ gst_object_get_controller@Base 0.10.0
+ gst_object_get_value_array@Base 0.10.0
+ gst_object_get_value_arrays@Base 0.10.0
+ gst_object_set_control_rate@Base 0.10.10
+ gst_object_set_control_source@Base 0.10.14
+ gst_object_set_controller@Base 0.10.0
+ gst_object_suggest_next_sync@Base 0.10.13
+ gst_object_sync_values@Base 0.10.0
+ gst_object_uncontrol_properties@Base 0.10.0
+libgstdataprotocol-0.10.so.0 libgstreamer0.10-0 #MINVER#
+* Build-Depends-Package: libgstreamer0.10-dev
+ gst_dp_buffer_from_header@Base 0.10.0
+ gst_dp_caps_from_packet@Base 0.10.0
+ gst_dp_crc@Base 0.10.7
+ gst_dp_dump_byte_array@Base 0.10.0
+ gst_dp_event_from_packet@Base 0.10.0
+ gst_dp_header_from_buffer@Base 0.10.0
+ gst_dp_header_payload_length@Base 0.10.0
+ gst_dp_header_payload_type@Base 0.10.0
+ gst_dp_init@Base 0.10.0
+ gst_dp_packet_from_caps@Base 0.10.0
+ gst_dp_packet_from_event@Base 0.10.0
+ gst_dp_packetizer_free@Base 0.10.7
+ gst_dp_packetizer_new@Base 0.10.7
+ gst_dp_validate_header@Base 0.10.0
+ gst_dp_validate_packet@Base 0.10.0
+ gst_dp_validate_payload@Base 0.10.0
+ gst_dp_version_get_type@Base 0.10.7
+libgstnet-0.10.so.0 libgstreamer0.10-0 #MINVER#
+* Build-Depends-Package: libgstreamer0.10-dev
+ gst_net_client_clock_get_type@Base 0.10.0
+ gst_net_client_clock_new@Base 0.10.0
+ gst_net_time_packet_new@Base 0.10.0
+ gst_net_time_packet_receive@Base 0.10.0
+ gst_net_time_packet_send@Base 0.10.0
+ gst_net_time_packet_serialize@Base 0.10.0
+ gst_net_time_provider_get_type@Base 0.10.0
+ gst_net_time_provider_new@Base 0.10.0
+libgstreamer-0.10.so.0 libgstreamer0.10-0 #MINVER#
+* Build-Depends-Package: libgstreamer0.10-dev
+ GST_CAT_AUTOPLUG@Base 0.10.0
+ GST_CAT_AUTOPLUG_ATTEMPT@Base 0.10.0
+ GST_CAT_BUFFER@Base 0.10.0
+ GST_CAT_BUFFER_LIST@Base 0.10.24
+ GST_CAT_BUS@Base 0.10.0
+ GST_CAT_CALL_TRACE@Base 0.10.0
+ GST_CAT_CAPS@Base 0.10.0
+ GST_CAT_CLOCK@Base 0.10.0
+ GST_CAT_DEFAULT@Base 0.10.0
+ GST_CAT_ELEMENT_PADS@Base 0.10.0
+ GST_CAT_ERROR_SYSTEM@Base 0.10.0
+ GST_CAT_EVENT@Base 0.10.0
+ GST_CAT_GST_INIT@Base 0.10.0
+ GST_CAT_MESSAGE@Base 0.10.0
+ GST_CAT_NEGOTIATION@Base 0.10.0
+ GST_CAT_PADS@Base 0.10.0
+ GST_CAT_PARAMS@Base 0.10.0
+ GST_CAT_PARENTAGE@Base 0.10.0
+ GST_CAT_PERFORMANCE@Base 0.10.24
+ GST_CAT_PIPELINE@Base 0.10.0
+ GST_CAT_PLUGIN_INFO@Base 0.10.0
+ GST_CAT_PLUGIN_LOADING@Base 0.10.0
+ GST_CAT_PROBE@Base 0.10.0
+ GST_CAT_PROPERTIES@Base 0.10.0
+ GST_CAT_QOS@Base 0.10.5
+ GST_CAT_REFCOUNTING@Base 0.10.0
+ GST_CAT_REGISTRY@Base 0.10.0
+ GST_CAT_SCHEDULING@Base 0.10.0
+ GST_CAT_SIGNAL@Base 0.10.0
+ GST_CAT_STATES@Base 0.10.0
+ GST_CAT_TYPES@Base 0.10.0
+ GST_CAT_XML@Base 0.10.0
+ __gst_debug_enabled@Base 0.10.0
+ __gst_debug_min@Base 0.10.9
+ __gst_element_factory_add_interface@Base 0.10.0
+ __gst_element_factory_add_static_pad_template@Base 0.10.0
+ _gst_alloc_trace_register@Base 0.10.0
+ _gst_buffer_initialize@Base 0.10.0
+ _gst_buffer_list_initialize@Base 0.10.24
+ _gst_debug_bin_to_dot_file@Base 0.10.15
+ _gst_debug_bin_to_dot_file_with_ts@Base 0.10.15
+ _gst_debug_category_new@Base 0.10.0
+ _gst_debug_dump_mem@Base 0.10.23
+ _gst_debug_get_category@Base 0.10.24
+ _gst_debug_init@Base 0.10.0
+ _gst_debug_nameof_funcptr@Base 0.10.0
+ _gst_debug_register_funcptr@Base 0.10.0
+ _gst_disable_registry_cache@Base 0.10.26
+ _gst_element_error_printf@Base 0.10.0
+ _gst_elementclass_factory@Base 0.10.24
+ _gst_event_initialize@Base 0.10.0
+ _gst_format_initialize@Base 0.10.0
+ _gst_message_initialize@Base 0.10.0
+ _gst_parse_launch@Base 0.10.0
+ _gst_parse_yy_create_buffer@Base 0.10.0
+ _gst_parse_yy_delete_buffer@Base 0.10.0
+ _gst_parse_yy_flush_buffer@Base 0.10.0
+ _gst_parse_yy_scan_buffer@Base 0.10.0
+ _gst_parse_yy_scan_bytes@Base 0.10.0
+ _gst_parse_yy_scan_string@Base 0.10.0
+ _gst_parse_yy_switch_to_buffer@Base 0.10.0
+ _gst_parse_yyalloc@Base 0.10.0
+ _gst_parse_yydebug@Base 0.10.13
+ _gst_parse_yyfree@Base 0.10.0
+ _gst_parse_yyget_column@Base 0.10.13
+ _gst_parse_yyget_debug@Base 0.10.0
+ _gst_parse_yyget_extra@Base 0.10.13
+ _gst_parse_yyget_in@Base 0.10.0
+ _gst_parse_yyget_leng@Base 0.10.0
+ _gst_parse_yyget_lineno@Base 0.10.0
+ _gst_parse_yyget_lval@Base 0.10.13
+ _gst_parse_yyget_out@Base 0.10.0
+ _gst_parse_yyget_text@Base 0.10.0
+ _gst_parse_yylex@Base 0.10.0
+ _gst_parse_yylex_destroy@Base 0.10.0
+ _gst_parse_yylex_init@Base 0.10.13
+ _gst_parse_yylex_init_extra@Base 0.10.18
+ _gst_parse_yyparse@Base 0.10.13
+ _gst_parse_yypop_buffer_state@Base 0.10.0
+ _gst_parse_yypush_buffer_state@Base 0.10.0
+ _gst_parse_yyrealloc@Base 0.10.0
+ _gst_parse_yyrestart@Base 0.10.0
+ _gst_parse_yyset_column@Base 0.10.13
+ _gst_parse_yyset_debug@Base 0.10.0
+ _gst_parse_yyset_extra@Base 0.10.13
+ _gst_parse_yyset_in@Base 0.10.0
+ _gst_parse_yyset_lineno@Base 0.10.0
+ _gst_parse_yyset_lval@Base 0.10.13
+ _gst_parse_yyset_out@Base 0.10.0
+ _gst_plugin_initialize@Base 0.10.0
+ _gst_plugin_loader_client_run@Base 0.10.26
+ _gst_plugin_register_static@Base 0.10.0
+ _gst_query_initialize@Base 0.10.0
+ _gst_tag_initialize@Base 0.10.0
+ _gst_trace_add_entry@Base 0.10.0
+ _gst_trace_mutex@Base 0.10.24
+ _gst_trace_on@Base 0.10.0
+ _gst_value_initialize@Base 0.10.0
+ gst_activate_mode_get_type@Base 0.10.0
+ gst_alloc_trace_available@Base 0.10.0
+ gst_alloc_trace_flags_get_type@Base 0.10.0
+ gst_alloc_trace_get@Base 0.10.0
+ gst_alloc_trace_list@Base 0.10.0
+ gst_alloc_trace_live_all@Base 0.10.0
+ gst_alloc_trace_print@Base 0.10.0
+ gst_alloc_trace_print_all@Base 0.10.0
+ gst_alloc_trace_print_live@Base 0.10.0
+ gst_alloc_trace_set_flags@Base 0.10.0
+ gst_alloc_trace_set_flags_all@Base 0.10.0
+ gst_assoc_flags_get_type@Base 0.10.0
+ gst_atomic_int_set@Base 0.10.0
+ gst_atomic_queue_length@Base 0.10.33
+ gst_atomic_queue_new@Base 0.10.33
+ gst_atomic_queue_peek@Base 0.10.33
+ gst_atomic_queue_pop@Base 0.10.33
+ gst_atomic_queue_push@Base 0.10.33
+ gst_atomic_queue_ref@Base 0.10.33
+ gst_atomic_queue_unref@Base 0.10.33
+ gst_bin_add@Base 0.10.0
+ gst_bin_add_many@Base 0.10.0
+ gst_bin_find_unconnected_pad@Base 0.10.3
+ gst_bin_find_unlinked_pad@Base 0.10.20
+ gst_bin_flags_get_type@Base 0.10.0
+ gst_bin_get_by_interface@Base 0.10.0
+ gst_bin_get_by_name@Base 0.10.0
+ gst_bin_get_by_name_recurse_up@Base 0.10.0
+ gst_bin_get_type@Base 0.10.0
+ gst_bin_iterate_all_by_interface@Base 0.10.0
+ gst_bin_iterate_elements@Base 0.10.0
+ gst_bin_iterate_recurse@Base 0.10.0
+ gst_bin_iterate_sinks@Base 0.10.0
+ gst_bin_iterate_sorted@Base 0.10.0
+ gst_bin_iterate_sources@Base 0.10.3
+ gst_bin_new@Base 0.10.0
+ gst_bin_recalculate_latency@Base 0.10.22
+ gst_bin_remove@Base 0.10.0
+ gst_bin_remove_many@Base 0.10.0
+ gst_buffer_copy_flags_get_type@Base 0.10.13
+ gst_buffer_copy_metadata@Base 0.10.13
+ gst_buffer_create_sub@Base 0.10.0
+ gst_buffer_flag_get_type@Base 0.10.0
+ gst_buffer_get_caps@Base 0.10.0
+ gst_buffer_get_type@Base 0.10.0
+ gst_buffer_is_metadata_writable@Base 0.10.3
+ gst_buffer_is_span_fast@Base 0.10.0
+ gst_buffer_join@Base 0.10.0
+ gst_buffer_list_foreach@Base 0.10.24
+ gst_buffer_list_get@Base 0.10.24
+ gst_buffer_list_get_type@Base 0.10.24
+ gst_buffer_list_item_get_type@Base 0.10.24
+ gst_buffer_list_iterate@Base 0.10.24
+ gst_buffer_list_iterator_add@Base 0.10.24
+ gst_buffer_list_iterator_add_group@Base 0.10.24
+ gst_buffer_list_iterator_add_list@Base 0.10.31
+ gst_buffer_list_iterator_do@Base 0.10.24
+ gst_buffer_list_iterator_free@Base 0.10.24
+ gst_buffer_list_iterator_get_type@Base 0.10.33
+ gst_buffer_list_iterator_merge_group@Base 0.10.24
+ gst_buffer_list_iterator_n_buffers@Base 0.10.24
+ gst_buffer_list_iterator_next@Base 0.10.24
+ gst_buffer_list_iterator_next_group@Base 0.10.24
+ gst_buffer_list_iterator_remove@Base 0.10.24
+ gst_buffer_list_iterator_steal@Base 0.10.24
+ gst_buffer_list_iterator_take@Base 0.10.24
+ gst_buffer_list_n_groups@Base 0.10.24
+ gst_buffer_list_new@Base 0.10.24
+ gst_buffer_make_metadata_writable@Base 0.10.3
+ gst_buffer_merge@Base 0.10.0
+ gst_buffer_new@Base 0.10.0
+ gst_buffer_new_and_alloc@Base 0.10.0
+ gst_buffer_set_caps@Base 0.10.0
+ gst_buffer_span@Base 0.10.0
+ gst_buffer_stamp@Base 0.10.0
+ gst_buffer_try_new_and_alloc@Base 0.10.13
+ gst_buffering_mode_get_type@Base 0.10.20
+ gst_bus_add_signal_watch@Base 0.10.0
+ gst_bus_add_signal_watch_full@Base 0.10.0
+ gst_bus_add_watch@Base 0.10.0
+ gst_bus_add_watch_full@Base 0.10.0
+ gst_bus_async_signal_func@Base 0.10.0
+ gst_bus_create_watch@Base 0.10.0
+ gst_bus_disable_sync_message_emission@Base 0.10.4
+ gst_bus_enable_sync_message_emission@Base 0.10.4
+ gst_bus_flags_get_type@Base 0.10.0
+ gst_bus_get_type@Base 0.10.0
+ gst_bus_have_pending@Base 0.10.0
+ gst_bus_new@Base 0.10.0
+ gst_bus_peek@Base 0.10.0
+ gst_bus_poll@Base 0.10.0
+ gst_bus_pop@Base 0.10.0
+ gst_bus_pop_filtered@Base 0.10.15
+ gst_bus_post@Base 0.10.0
+ gst_bus_remove_signal_watch@Base 0.10.0
+ gst_bus_set_flushing@Base 0.10.0
+ gst_bus_set_sync_handler@Base 0.10.0
+ gst_bus_sync_reply_get_type@Base 0.10.0
+ gst_bus_sync_signal_handler@Base 0.10.0
+ gst_bus_timed_pop@Base 0.10.12
+ gst_bus_timed_pop_filtered@Base 0.10.15
+ gst_caps_append@Base 0.10.0
+ gst_caps_append_structure@Base 0.10.0
+ gst_caps_can_intersect@Base 0.10.25
+ gst_caps_copy@Base 0.10.0
+ gst_caps_copy_nth@Base 0.10.0
+ gst_caps_do_simplify@Base 0.10.0
+ gst_caps_flags_get_type@Base 0.10.0
+ gst_caps_from_string@Base 0.10.0
+ gst_caps_get_size@Base 0.10.0
+ gst_caps_get_structure@Base 0.10.0
+ gst_caps_get_type@Base 0.10.0
+ gst_caps_intersect@Base 0.10.0
+ gst_caps_intersect_full@Base 0.10.33
+ gst_caps_intersect_mode_get_type@Base 0.10.33
+ gst_caps_is_always_compatible@Base 0.10.0
+ gst_caps_is_any@Base 0.10.0
+ gst_caps_is_empty@Base 0.10.0
+ gst_caps_is_equal@Base 0.10.0
+ gst_caps_is_equal_fixed@Base 0.10.0
+ gst_caps_is_fixed@Base 0.10.0
+ gst_caps_is_subset@Base 0.10.0
+ gst_caps_load_thyself@Base 0.10.0
+ gst_caps_make_writable@Base 0.10.0
+ gst_caps_merge@Base 0.10.10
+ gst_caps_merge_structure@Base 0.10.10
+ gst_caps_new_any@Base 0.10.0
+ gst_caps_new_empty@Base 0.10.0
+ gst_caps_new_full@Base 0.10.0
+ gst_caps_new_full_valist@Base 0.10.0
+ gst_caps_new_simple@Base 0.10.0
+ gst_caps_normalize@Base 0.10.0
+ gst_caps_ref@Base 0.10.0
+ gst_caps_remove_structure@Base 0.10.0
+ gst_caps_replace@Base 0.10.0
+ gst_caps_save_thyself@Base 0.10.0
+ gst_caps_set_simple@Base 0.10.0
+ gst_caps_set_simple_valist@Base 0.10.0
+ gst_caps_set_value@Base 0.10.26
+ gst_caps_steal_structure@Base 0.10.30
+ gst_caps_subtract@Base 0.10.0
+ gst_caps_to_string@Base 0.10.0
+ gst_caps_truncate@Base 0.10.0
+ gst_caps_union@Base 0.10.0
+ gst_caps_unref@Base 0.10.0
+ gst_child_proxy_child_added@Base 0.10.0
+ gst_child_proxy_child_removed@Base 0.10.0
+ gst_child_proxy_get@Base 0.10.0
+ gst_child_proxy_get_child_by_index@Base 0.10.0
+ gst_child_proxy_get_child_by_name@Base 0.10.0
+ gst_child_proxy_get_children_count@Base 0.10.0
+ gst_child_proxy_get_property@Base 0.10.0
+ gst_child_proxy_get_type@Base 0.10.0
+ gst_child_proxy_get_valist@Base 0.10.0
+ gst_child_proxy_lookup@Base 0.10.0
+ gst_child_proxy_set@Base 0.10.0
+ gst_child_proxy_set_property@Base 0.10.0
+ gst_child_proxy_set_valist@Base 0.10.0
+ gst_class_signal_connect@Base 0.10.0
+ gst_class_signal_emit_by_name@Base 0.10.0
+ gst_clock_add_observation@Base 0.10.0
+ gst_clock_adjust_unlocked@Base 0.10.0
+ gst_clock_entry_type_get_type@Base 0.10.0
+ gst_clock_flags_get_type@Base 0.10.0
+ gst_clock_get_calibration@Base 0.10.0
+ gst_clock_get_internal_time@Base 0.10.0
+ gst_clock_get_master@Base 0.10.0
+ gst_clock_get_resolution@Base 0.10.0
+ gst_clock_get_time@Base 0.10.0
+ gst_clock_get_type@Base 0.10.0
+ gst_clock_id_compare_func@Base 0.10.0
+ gst_clock_id_get_time@Base 0.10.0
+ gst_clock_id_ref@Base 0.10.0
+ gst_clock_id_unref@Base 0.10.0
+ gst_clock_id_unschedule@Base 0.10.0
+ gst_clock_id_wait@Base 0.10.0
+ gst_clock_id_wait_async@Base 0.10.0
+ gst_clock_id_wait_async_full@Base 0.10.30
+ gst_clock_new_periodic_id@Base 0.10.0
+ gst_clock_new_single_shot_id@Base 0.10.0
+ gst_clock_periodic_id_reinit@Base 0.10.33
+ gst_clock_return_get_type@Base 0.10.0
+ gst_clock_set_calibration@Base 0.10.0
+ gst_clock_set_master@Base 0.10.0
+ gst_clock_set_resolution@Base 0.10.0
+ gst_clock_single_shot_id_reinit@Base 0.10.32
+ gst_clock_type_get_type@Base 0.10.23
+ gst_clock_unadjust_unlocked@Base 0.10.13
+ gst_core_error_get_type@Base 0.10.0
+ gst_core_error_quark@Base 0.10.0
+ gst_date_get_type@Base 0.10.0
+ gst_date_time_get_day@Base 0.10.31
+ gst_date_time_get_hour@Base 0.10.31
+ gst_date_time_get_microsecond@Base 0.10.31
+ gst_date_time_get_minute@Base 0.10.31
+ gst_date_time_get_month@Base 0.10.31
+ gst_date_time_get_second@Base 0.10.31
+ gst_date_time_get_time_zone_offset@Base 0.10.31
+ gst_date_time_get_type@Base 0.10.31
+ gst_date_time_get_year@Base 0.10.31
+ gst_date_time_new@Base 0.10.31
+ gst_date_time_new_from_unix_epoch_local_time@Base 0.10.31
+ gst_date_time_new_from_unix_epoch_utc@Base 0.10.31
+ gst_date_time_new_local_time@Base 0.10.31
+ gst_date_time_new_now_local_time@Base 0.10.31
+ gst_date_time_new_now_utc@Base 0.10.31
+ gst_date_time_ref@Base 0.10.31
+ gst_date_time_unref@Base 0.10.31
+ gst_debug_add_log_function@Base 0.10.0
+ gst_debug_category_free@Base 0.10.0
+ gst_debug_category_get_color@Base 0.10.0
+ gst_debug_category_get_description@Base 0.10.0
+ gst_debug_category_get_name@Base 0.10.0
+ gst_debug_category_get_threshold@Base 0.10.0
+ gst_debug_category_reset_threshold@Base 0.10.0
+ gst_debug_category_set_threshold@Base 0.10.0
+ gst_debug_color_flags_get_type@Base 0.10.0
+ gst_debug_construct_term_color@Base 0.10.0
+ gst_debug_construct_win_color@Base 0.10.23
+ gst_debug_get_all_categories@Base 0.10.0
+ gst_debug_get_default_threshold@Base 0.10.0
+ gst_debug_graph_details_get_type@Base 0.10.15
+ gst_debug_is_active@Base 0.10.0
+ gst_debug_is_colored@Base 0.10.0
+ gst_debug_level_get_name@Base 0.10.0
+ gst_debug_level_get_type@Base 0.10.0
+ gst_debug_log@Base 0.10.0
+ gst_debug_log_default@Base 0.10.0
+ gst_debug_log_valist@Base 0.10.0
+ gst_debug_message_get@Base 0.10.0
+ gst_debug_print_stack_trace@Base 0.10.0
+ gst_debug_remove_log_function@Base 0.10.0
+ gst_debug_remove_log_function_by_data@Base 0.10.0
+ gst_debug_set_active@Base 0.10.0
+ gst_debug_set_colored@Base 0.10.0
+ gst_debug_set_default_threshold@Base 0.10.0
+ gst_debug_set_threshold_for_name@Base 0.10.0
+ gst_debug_unset_threshold_for_name@Base 0.10.0
+ gst_default_registry_check_feature_version@Base 0.10.0
+ gst_deinit@Base 0.10.0
+ gst_double_range_get_type@Base 0.10.0
+ gst_element_abort_state@Base 0.10.0
+ gst_element_add_pad@Base 0.10.0
+ gst_element_change_state@Base 0.10.13
+ gst_element_class_add_pad_template@Base 0.10.0
+ gst_element_class_get_pad_template@Base 0.10.0
+ gst_element_class_get_pad_template_list@Base 0.10.0
+ gst_element_class_install_std_props@Base 0.10.0
+ gst_element_class_set_details@Base 0.10.0
+ gst_element_class_set_details_simple@Base 0.10.14
+ gst_element_class_set_documentation_uri@Base 0.10.31
+ gst_element_class_set_icon_name@Base 0.10.31
+ gst_element_continue_state@Base 0.10.0
+ gst_element_create_all_pads@Base 0.10.0
+ gst_element_factory_can_sink_all_caps@Base 0.10.33
+ gst_element_factory_can_sink_any_caps@Base 0.10.33
+ gst_element_factory_can_sink_caps@Base 0.10.0
+ gst_element_factory_can_src_all_caps@Base 0.10.33
+ gst_element_factory_can_src_any_caps@Base 0.10.33
+ gst_element_factory_can_src_caps@Base 0.10.0
+ gst_element_factory_create@Base 0.10.0
+ gst_element_factory_find@Base 0.10.0
+ gst_element_factory_get_author@Base 0.10.0
+ gst_element_factory_get_description@Base 0.10.0
+ gst_element_factory_get_documentation_uri@Base 0.10.31
+ gst_element_factory_get_element_type@Base 0.10.0
+ gst_element_factory_get_icon_name@Base 0.10.31
+ gst_element_factory_get_klass@Base 0.10.0
+ gst_element_factory_get_longname@Base 0.10.0
+ gst_element_factory_get_num_pad_templates@Base 0.10.0
+ gst_element_factory_get_static_pad_templates@Base 0.10.0
+ gst_element_factory_get_type@Base 0.10.0
+ gst_element_factory_get_uri_protocols@Base 0.10.0
+ gst_element_factory_get_uri_type@Base 0.10.0
+ gst_element_factory_has_interface@Base 0.10.14
+ gst_element_factory_list_filter@Base 0.10.31
+ gst_element_factory_list_get_elements@Base 0.10.31
+ gst_element_factory_list_is_type@Base 0.10.31
+ gst_element_factory_make@Base 0.10.0
+ gst_element_flags_get_type@Base 0.10.0
+ gst_element_found_tags@Base 0.10.0
+ gst_element_found_tags_for_pad@Base 0.10.0
+ gst_element_get_base_time@Base 0.10.0
+ gst_element_get_bus@Base 0.10.0
+ gst_element_get_clock@Base 0.10.0
+ gst_element_get_compatible_pad@Base 0.10.0
+ gst_element_get_compatible_pad_template@Base 0.10.0
+ gst_element_get_factory@Base 0.10.0
+ gst_element_get_index@Base 0.10.0
+ gst_element_get_pad@Base 0.10.0
+ gst_element_get_query_types@Base 0.10.0
+ gst_element_get_request_pad@Base 0.10.0
+ gst_element_get_start_time@Base 0.10.24
+ gst_element_get_state@Base 0.10.0
+ gst_element_get_static_pad@Base 0.10.0
+ gst_element_get_type@Base 0.10.0
+ gst_element_implements_interface@Base 0.10.0
+ gst_element_is_indexable@Base 0.10.0
+ gst_element_is_locked_state@Base 0.10.0
+ gst_element_iterate_pads@Base 0.10.0
+ gst_element_iterate_sink_pads@Base 0.10.0
+ gst_element_iterate_src_pads@Base 0.10.0
+ gst_element_link@Base 0.10.0
+ gst_element_link_filtered@Base 0.10.0
+ gst_element_link_many@Base 0.10.0
+ gst_element_link_pads@Base 0.10.0
+ gst_element_link_pads_filtered@Base 0.10.0
+ gst_element_link_pads_full@Base 0.10.30
+ gst_element_lost_state@Base 0.10.0
+ gst_element_lost_state_full@Base 0.10.24
+ gst_element_make_from_uri@Base 0.10.0
+ gst_element_message_full@Base 0.10.0
+ gst_element_no_more_pads@Base 0.10.0
+ gst_element_post_message@Base 0.10.0
+ gst_element_provide_clock@Base 0.10.0
+ gst_element_provides_clock@Base 0.10.0
+ gst_element_query@Base 0.10.0
+ gst_element_query_convert@Base 0.10.0
+ gst_element_query_duration@Base 0.10.0
+ gst_element_query_position@Base 0.10.0
+ gst_element_register@Base 0.10.0
+ gst_element_release_request_pad@Base 0.10.0
+ gst_element_remove_pad@Base 0.10.0
+ gst_element_request_pad@Base 0.10.32
+ gst_element_requires_clock@Base 0.10.0
+ gst_element_seek@Base 0.10.0
+ gst_element_seek_simple@Base 0.10.7
+ gst_element_send_event@Base 0.10.0
+ gst_element_set_base_time@Base 0.10.0
+ gst_element_set_bus@Base 0.10.0
+ gst_element_set_clock@Base 0.10.0
+ gst_element_set_index@Base 0.10.0
+ gst_element_set_locked_state@Base 0.10.0
+ gst_element_set_start_time@Base 0.10.24
+ gst_element_set_state@Base 0.10.0
+ gst_element_state_change_return_get_name@Base 0.10.11
+ gst_element_state_get_name@Base 0.10.0
+ gst_element_sync_state_with_parent@Base 0.10.0
+ gst_element_unlink@Base 0.10.0
+ gst_element_unlink_many@Base 0.10.0
+ gst_element_unlink_pads@Base 0.10.0
+ gst_error_get_message@Base 0.10.0
+ gst_event_get_seqnum@Base 0.10.22
+ gst_event_get_structure@Base 0.10.0
+ gst_event_get_type@Base 0.10.0
+ gst_event_has_name@Base 0.10.20
+ gst_event_new_buffer_size@Base 0.10.0
+ gst_event_new_custom@Base 0.10.0
+ gst_event_new_eos@Base 0.10.0
+ gst_event_new_flush_start@Base 0.10.0
+ gst_event_new_flush_stop@Base 0.10.0
+ gst_event_new_latency@Base 0.10.12
+ gst_event_new_navigation@Base 0.10.0
+ gst_event_new_new_segment@Base 0.10.0
+ gst_event_new_new_segment_full@Base 0.10.6
+ gst_event_new_qos@Base 0.10.0
+ gst_event_new_qos_full@Base 0.10.33
+ gst_event_new_seek@Base 0.10.0
+ gst_event_new_sink_message@Base 0.10.26
+ gst_event_new_step@Base 0.10.24
+ gst_event_new_tag@Base 0.10.0
+ gst_event_parse_buffer_size@Base 0.10.0
+ gst_event_parse_latency@Base 0.10.12
+ gst_event_parse_new_segment@Base 0.10.0
+ gst_event_parse_new_segment_full@Base 0.10.6
+ gst_event_parse_qos@Base 0.10.0
+ gst_event_parse_qos_full@Base 0.10.33
+ gst_event_parse_seek@Base 0.10.0
+ gst_event_parse_sink_message@Base 0.10.26
+ gst_event_parse_step@Base 0.10.24
+ gst_event_parse_tag@Base 0.10.0
+ gst_event_set_seqnum@Base 0.10.22
+ gst_event_type_flags_get_type@Base 0.10.0
+ gst_event_type_get_flags@Base 0.10.0
+ gst_event_type_get_name@Base 0.10.0
+ gst_event_type_get_type@Base 0.10.0
+ gst_event_type_to_quark@Base 0.10.0
+ gst_filename_to_uri@Base 0.10.33
+ gst_filter_run@Base 0.10.0
+ gst_flow_get_name@Base 0.10.0
+ gst_flow_return_get_type@Base 0.10.0
+ gst_flow_to_quark@Base 0.10.0
+ gst_format_get_by_nick@Base 0.10.0
+ gst_format_get_details@Base 0.10.0
+ gst_format_get_name@Base 0.10.0
+ gst_format_get_type@Base 0.10.0
+ gst_format_iterate_definitions@Base 0.10.0
+ gst_format_register@Base 0.10.0
+ gst_format_to_quark@Base 0.10.0
+ gst_formats_contains@Base 0.10.0
+ gst_fourcc_get_type@Base 0.10.0
+ gst_fraction_get_type@Base 0.10.0
+ gst_fraction_range_get_type@Base 0.10.0
+ gst_g_error_get_type@Base 0.10.0
+ gst_ghost_pad_construct@Base 0.10.22
+ gst_ghost_pad_get_target@Base 0.10.0
+ gst_ghost_pad_get_type@Base 0.10.0
+ gst_ghost_pad_new@Base 0.10.0
+ gst_ghost_pad_new_from_template@Base 0.10.10
+ gst_ghost_pad_new_no_target@Base 0.10.0
+ gst_ghost_pad_new_no_target_from_template@Base 0.10.10
+ gst_ghost_pad_set_target@Base 0.10.0
+ gst_implements_interface_cast@Base 0.10.0
+ gst_implements_interface_check@Base 0.10.0
+ gst_implements_interface_get_type@Base 0.10.0
+ gst_index_add_association@Base 0.10.0
+ gst_index_add_associationv@Base 0.10.0
+ gst_index_add_format@Base 0.10.0
+ gst_index_add_id@Base 0.10.0
+ gst_index_add_object@Base 0.10.0
+ gst_index_certainty_get_type@Base 0.10.0
+ gst_index_commit@Base 0.10.0
+ gst_index_entry_assoc_map@Base 0.10.0
+ gst_index_entry_copy@Base 0.10.0
+ gst_index_entry_free@Base 0.10.0
+ gst_index_entry_get_type@Base 0.10.0
+ gst_index_entry_type_get_type@Base 0.10.0
+ gst_index_factory_create@Base 0.10.0
+ gst_index_factory_destroy@Base 0.10.0
+ gst_index_factory_find@Base 0.10.0
+ gst_index_factory_get_type@Base 0.10.0
+ gst_index_factory_make@Base 0.10.0
+ gst_index_factory_new@Base 0.10.0
+ gst_index_flags_get_type@Base 0.10.0
+ gst_index_get_assoc_entry@Base 0.10.0
+ gst_index_get_assoc_entry_full@Base 0.10.0
+ gst_index_get_certainty@Base 0.10.0
+ gst_index_get_group@Base 0.10.0
+ gst_index_get_type@Base 0.10.0
+ gst_index_get_writer_id@Base 0.10.0
+ gst_index_lookup_method_get_type@Base 0.10.0
+ gst_index_new@Base 0.10.0
+ gst_index_new_group@Base 0.10.0
+ gst_index_resolver_method_get_type@Base 0.10.0
+ gst_index_set_certainty@Base 0.10.0
+ gst_index_set_filter@Base 0.10.0
+ gst_index_set_filter_full@Base 0.10.0
+ gst_index_set_group@Base 0.10.0
+ gst_index_set_resolver@Base 0.10.0
+ gst_index_set_resolver_full@Base 0.10.18
+ gst_init@Base 0.10.0
+ gst_init_check@Base 0.10.0
+ gst_init_get_option_group@Base 0.10.0
+ gst_int64_range_get_type@Base 0.10.31
+ gst_int_range_get_type@Base 0.10.0
+ gst_is_initialized@Base 0.10.31
+ gst_is_tag_list@Base 0.10.0
+ gst_iterator_filter@Base 0.10.0
+ gst_iterator_find_custom@Base 0.10.0
+ gst_iterator_fold@Base 0.10.0
+ gst_iterator_foreach@Base 0.10.0
+ gst_iterator_free@Base 0.10.0
+ gst_iterator_item_get_type@Base 0.10.0
+ gst_iterator_new@Base 0.10.0
+ gst_iterator_new_list@Base 0.10.0
+ gst_iterator_new_single@Base 0.10.25
+ gst_iterator_next@Base 0.10.0
+ gst_iterator_push@Base 0.10.0
+ gst_iterator_result_get_type@Base 0.10.0
+ gst_iterator_resync@Base 0.10.0
+ gst_library_error_get_type@Base 0.10.0
+ gst_library_error_quark@Base 0.10.0
+ gst_marshal_BOOLEAN__POINTER@Base 0.10.0
+ gst_marshal_BOOLEAN__VOID@Base 0.10.0
+ gst_marshal_BOXED__BOXED@Base 0.10.0
+ gst_marshal_POINTER__POINTER@Base 0.10.0
+ gst_marshal_VOID__BOXED_OBJECT@Base 0.10.0
+ gst_marshal_VOID__INT64@Base 0.10.0
+ gst_marshal_VOID__INT_INT@Base 0.10.0
+ gst_marshal_VOID__OBJECT_BOXED@Base 0.10.0
+ gst_marshal_VOID__OBJECT_BOXED_STRING@Base 0.10.0
+ gst_marshal_VOID__OBJECT_OBJECT@Base 0.10.0
+ gst_marshal_VOID__OBJECT_OBJECT_STRING@Base 0.10.0
+ gst_marshal_VOID__OBJECT_PARAM@Base 0.10.0
+ gst_marshal_VOID__OBJECT_POINTER@Base 0.10.0
+ gst_marshal_VOID__OBJECT_STRING@Base 0.10.0
+ gst_marshal_VOID__POINTER_OBJECT@Base 0.10.0
+ gst_marshal_VOID__UINT_BOXED@Base 0.10.0
+ gst_message_get_seqnum@Base 0.10.22
+ gst_message_get_stream_status_object@Base 0.10.24
+ gst_message_get_structure@Base 0.10.0
+ gst_message_get_type@Base 0.10.0
+ gst_message_new_application@Base 0.10.0
+ gst_message_new_async_done@Base 0.10.13
+ gst_message_new_async_start@Base 0.10.13
+ gst_message_new_buffering@Base 0.10.11
+ gst_message_new_clock_lost@Base 0.10.0
+ gst_message_new_clock_provide@Base 0.10.0
+ gst_message_new_custom@Base 0.10.0
+ gst_message_new_duration@Base 0.10.0
+ gst_message_new_element@Base 0.10.0
+ gst_message_new_eos@Base 0.10.0
+ gst_message_new_error@Base 0.10.0
+ gst_message_new_info@Base 0.10.12
+ gst_message_new_latency@Base 0.10.12
+ gst_message_new_new_clock@Base 0.10.0
+ gst_message_new_progress@Base 0.10.33
+ gst_message_new_qos@Base 0.10.29
+ gst_message_new_request_state@Base 0.10.23
+ gst_message_new_segment_done@Base 0.10.0
+ gst_message_new_segment_start@Base 0.10.0
+ gst_message_new_state_changed@Base 0.10.0
+ gst_message_new_state_dirty@Base 0.10.0
+ gst_message_new_step_done@Base 0.10.24
+ gst_message_new_step_start@Base 0.10.24
+ gst_message_new_stream_status@Base 0.10.24
+ gst_message_new_structure_change@Base 0.10.22
+ gst_message_new_tag@Base 0.10.0
+ gst_message_new_tag_full@Base 0.10.24
+ gst_message_new_warning@Base 0.10.0
+ gst_message_parse_async_start@Base 0.10.13
+ gst_message_parse_buffering@Base 0.10.11
+ gst_message_parse_buffering_stats@Base 0.10.20
+ gst_message_parse_clock_lost@Base 0.10.0
+ gst_message_parse_clock_provide@Base 0.10.0
+ gst_message_parse_duration@Base 0.10.0
+ gst_message_parse_error@Base 0.10.0
+ gst_message_parse_info@Base 0.10.12
+ gst_message_parse_new_clock@Base 0.10.0
+ gst_message_parse_progress@Base 0.10.33
+ gst_message_parse_qos@Base 0.10.29
+ gst_message_parse_qos_stats@Base 0.10.29
+ gst_message_parse_qos_values@Base 0.10.29
+ gst_message_parse_request_state@Base 0.10.23
+ gst_message_parse_segment_done@Base 0.10.0
+ gst_message_parse_segment_start@Base 0.10.0
+ gst_message_parse_state_changed@Base 0.10.0
+ gst_message_parse_step_done@Base 0.10.24
+ gst_message_parse_step_start@Base 0.10.24
+ gst_message_parse_stream_status@Base 0.10.24
+ gst_message_parse_structure_change@Base 0.10.22
+ gst_message_parse_tag@Base 0.10.0
+ gst_message_parse_tag_full@Base 0.10.24
+ gst_message_parse_warning@Base 0.10.0
+ gst_message_set_buffering_stats@Base 0.10.20
+ gst_message_set_qos_stats@Base 0.10.29
+ gst_message_set_qos_values@Base 0.10.29
+ gst_message_set_seqnum@Base 0.10.22
+ gst_message_set_stream_status_object@Base 0.10.24
+ gst_message_type_get_name@Base 0.10.0
+ gst_message_type_get_type@Base 0.10.0
+ gst_message_type_to_quark@Base 0.10.0
+ gst_mini_object_copy@Base 0.10.0
+ gst_mini_object_flags_get_type@Base 0.10.0
+ gst_mini_object_get_type@Base 0.10.0
+ gst_mini_object_is_writable@Base 0.10.0
+ gst_mini_object_make_writable@Base 0.10.0
+ gst_mini_object_new@Base 0.10.0
+ gst_mini_object_ref@Base 0.10.0
+ gst_mini_object_replace@Base 0.10.0
+ gst_mini_object_unref@Base 0.10.0
+ gst_object_check_uniqueness@Base 0.10.0
+ gst_object_default_deep_notify@Base 0.10.0
+ gst_object_default_error@Base 0.10.0
+ gst_object_flags_get_type@Base 0.10.0
+ gst_object_get_name@Base 0.10.0
+ gst_object_get_name_prefix@Base 0.10.0
+ gst_object_get_parent@Base 0.10.0
+ gst_object_get_path_string@Base 0.10.0
+ gst_object_get_type@Base 0.10.0
+ gst_object_has_ancestor@Base 0.10.0
+ gst_object_ref@Base 0.10.0
+ gst_object_ref_sink@Base 0.10.24
+ gst_object_replace@Base 0.10.0
+ gst_object_restore_thyself@Base 0.10.0
+ gst_object_save_thyself@Base 0.10.0
+ gst_object_set_name@Base 0.10.0
+ gst_object_set_name_prefix@Base 0.10.0
+ gst_object_set_parent@Base 0.10.0
+ gst_object_sink@Base 0.10.0
+ gst_object_unparent@Base 0.10.0
+ gst_object_unref@Base 0.10.0
+ gst_pad_accept_caps@Base 0.10.0
+ gst_pad_activate_pull@Base 0.10.0
+ gst_pad_activate_push@Base 0.10.0
+ gst_pad_add_buffer_probe@Base 0.10.0
+ gst_pad_add_buffer_probe_full@Base 0.10.20
+ gst_pad_add_data_probe@Base 0.10.0
+ gst_pad_add_data_probe_full@Base 0.10.20
+ gst_pad_add_event_probe@Base 0.10.0
+ gst_pad_add_event_probe_full@Base 0.10.20
+ gst_pad_alloc_buffer@Base 0.10.0
+ gst_pad_alloc_buffer_and_set_caps@Base 0.10.0
+ gst_pad_can_link@Base 0.10.0
+ gst_pad_chain@Base 0.10.0
+ gst_pad_chain_list@Base 0.10.24
+ gst_pad_check_pull_range@Base 0.10.0
+ gst_pad_direction_get_type@Base 0.10.0
+ gst_pad_dispatcher@Base 0.10.0
+ gst_pad_event_default@Base 0.10.0
+ gst_pad_fixate_caps@Base 0.10.0
+ gst_pad_flags_get_type@Base 0.10.0
+ gst_pad_get_allowed_caps@Base 0.10.0
+ gst_pad_get_caps@Base 0.10.0
+ gst_pad_get_caps_reffed@Base 0.10.26
+ gst_pad_get_direction@Base 0.10.0
+ gst_pad_get_element_private@Base 0.10.0
+ gst_pad_get_fixed_caps_func@Base 0.10.0
+ gst_pad_get_internal_links@Base 0.10.0
+ gst_pad_get_internal_links_default@Base 0.10.0
+ gst_pad_get_negotiated_caps@Base 0.10.0
+ gst_pad_get_pad_template@Base 0.10.0
+ gst_pad_get_pad_template_caps@Base 0.10.0
+ gst_pad_get_parent_element@Base 0.10.0
+ gst_pad_get_peer@Base 0.10.0
+ gst_pad_get_query_types@Base 0.10.0
+ gst_pad_get_query_types_default@Base 0.10.0
+ gst_pad_get_range@Base 0.10.0
+ gst_pad_get_type@Base 0.10.0
+ gst_pad_is_active@Base 0.10.0
+ gst_pad_is_blocked@Base 0.10.0
+ gst_pad_is_blocking@Base 0.10.11
+ gst_pad_is_linked@Base 0.10.0
+ gst_pad_iterate_internal_links@Base 0.10.21
+ gst_pad_iterate_internal_links_default@Base 0.10.21
+ gst_pad_link@Base 0.10.0
+ gst_pad_link_check_get_type@Base 0.10.30
+ gst_pad_link_full@Base 0.10.30
+ gst_pad_link_return_get_type@Base 0.10.0
+ gst_pad_load_and_link@Base 0.10.0
+ gst_pad_new@Base 0.10.0
+ gst_pad_new_from_static_template@Base 0.10.0
+ gst_pad_new_from_template@Base 0.10.0
+ gst_pad_pause_task@Base 0.10.0
+ gst_pad_peer_accept_caps@Base 0.10.0
+ gst_pad_peer_get_caps@Base 0.10.0
+ gst_pad_peer_get_caps_reffed@Base 0.10.26
+ gst_pad_peer_query@Base 0.10.15
+ gst_pad_presence_get_type@Base 0.10.0
+ gst_pad_proxy_getcaps@Base 0.10.0
+ gst_pad_proxy_setcaps@Base 0.10.0
+ gst_pad_pull_range@Base 0.10.0
+ gst_pad_push@Base 0.10.0
+ gst_pad_push_event@Base 0.10.0
+ gst_pad_push_list@Base 0.10.24
+ gst_pad_query@Base 0.10.0
+ gst_pad_query_convert@Base 0.10.0
+ gst_pad_query_default@Base 0.10.0
+ gst_pad_query_duration@Base 0.10.0
+ gst_pad_query_peer_convert@Base 0.10.5
+ gst_pad_query_peer_duration@Base 0.10.5
+ gst_pad_query_peer_position@Base 0.10.5
+ gst_pad_query_position@Base 0.10.0
+ gst_pad_remove_buffer_probe@Base 0.10.0
+ gst_pad_remove_data_probe@Base 0.10.0
+ gst_pad_remove_event_probe@Base 0.10.0
+ gst_pad_send_event@Base 0.10.0
+ gst_pad_set_acceptcaps_function@Base 0.10.0
+ gst_pad_set_activate_function@Base 0.10.0
+ gst_pad_set_activatepull_function@Base 0.10.0
+ gst_pad_set_activatepush_function@Base 0.10.0
+ gst_pad_set_active@Base 0.10.0
+ gst_pad_set_blocked@Base 0.10.0
+ gst_pad_set_blocked_async@Base 0.10.0
+ gst_pad_set_blocked_async_full@Base 0.10.23
+ gst_pad_set_bufferalloc_function@Base 0.10.0
+ gst_pad_set_caps@Base 0.10.0
+ gst_pad_set_chain_function@Base 0.10.0
+ gst_pad_set_chain_list_function@Base 0.10.24
+ gst_pad_set_checkgetrange_function@Base 0.10.0
+ gst_pad_set_element_private@Base 0.10.0
+ gst_pad_set_event_function@Base 0.10.0
+ gst_pad_set_fixatecaps_function@Base 0.10.0
+ gst_pad_set_getcaps_function@Base 0.10.0
+ gst_pad_set_getrange_function@Base 0.10.0
+ gst_pad_set_internal_link_function@Base 0.10.0
+ gst_pad_set_iterate_internal_links_function@Base 0.10.21
+ gst_pad_set_link_function@Base 0.10.0
+ gst_pad_set_query_function@Base 0.10.0
+ gst_pad_set_query_type_function@Base 0.10.0
+ gst_pad_set_setcaps_function@Base 0.10.0
+ gst_pad_set_unlink_function@Base 0.10.0
+ gst_pad_start_task@Base 0.10.0
+ gst_pad_stop_task@Base 0.10.0
+ gst_pad_template_flags_get_type@Base 0.10.0
+ gst_pad_template_get_caps@Base 0.10.0
+ gst_pad_template_get_type@Base 0.10.0
+ gst_pad_template_new@Base 0.10.0
+ gst_pad_template_pad_created@Base 0.10.0
+ gst_pad_unlink@Base 0.10.0
+ gst_pad_use_fixed_caps@Base 0.10.0
+ gst_param_spec_fraction@Base 0.10.14
+ gst_param_spec_fraction_get_type@Base 0.10.14
+ gst_param_spec_mini_object@Base 0.10.0
+ gst_param_spec_mini_object_get_type@Base 0.10.20
+ gst_parse_bin_from_description@Base 0.10.3
+ gst_parse_bin_from_description_full@Base 0.10.20
+ gst_parse_context_free@Base 0.10.20
+ gst_parse_context_get_type@Base 0.10.33
+ gst_parse_context_get_missing_elements@Base 0.10.20
+ gst_parse_context_new@Base 0.10.20
+ gst_parse_error_get_type@Base 0.10.0
+ gst_parse_error_quark@Base 0.10.0
+ gst_parse_flags_get_type@Base 0.10.20
+ gst_parse_launch@Base 0.10.0
+ gst_parse_launch_full@Base 0.10.20
+ gst_parse_launchv@Base 0.10.0
+ gst_parse_launchv_full@Base 0.10.20
+ gst_pipeline_auto_clock@Base 0.10.0
+ gst_pipeline_flags_get_type@Base 0.10.0
+ gst_pipeline_get_auto_flush_bus@Base 0.10.4
+ gst_pipeline_get_bus@Base 0.10.0
+ gst_pipeline_get_clock@Base 0.10.0
+ gst_pipeline_get_delay@Base 0.10.5
+ gst_pipeline_get_last_stream_time@Base 0.10.0
+ gst_pipeline_get_type@Base 0.10.0
+ gst_pipeline_new@Base 0.10.0
+ gst_pipeline_set_auto_flush_bus@Base 0.10.4
+ gst_pipeline_set_clock@Base 0.10.0
+ gst_pipeline_set_delay@Base 0.10.5
+ gst_pipeline_set_new_stream_time@Base 0.10.0
+ gst_pipeline_use_clock@Base 0.10.0
+ gst_plugin_add_dependency@Base 0.10.22
+ gst_plugin_add_dependency_simple@Base 0.10.22
+ gst_plugin_dependency_flags_get_type@Base 0.10.22
+ gst_plugin_error_get_type@Base 0.10.0
+ gst_plugin_error_quark@Base 0.10.0
+ gst_plugin_feature_check_version@Base 0.10.0
+ gst_plugin_feature_get_name@Base 0.10.0
+ gst_plugin_feature_get_rank@Base 0.10.0
+ gst_plugin_feature_get_type@Base 0.10.0
+ gst_plugin_feature_list_copy@Base 0.10.26
+ gst_plugin_feature_list_debug@Base 0.10.31
+ gst_plugin_feature_list_free@Base 0.10.0
+ gst_plugin_feature_load@Base 0.10.0
+ gst_plugin_feature_rank_compare_func@Base 0.10.31
+ gst_plugin_feature_set_name@Base 0.10.0
+ gst_plugin_feature_set_rank@Base 0.10.0
+ gst_plugin_feature_type_name_filter@Base 0.10.0
+ gst_plugin_flags_get_type@Base 0.10.0
+ gst_plugin_get_cache_data@Base 0.10.24
+ gst_plugin_get_description@Base 0.10.0
+ gst_plugin_get_filename@Base 0.10.0
+ gst_plugin_get_license@Base 0.10.0
+ gst_plugin_get_module@Base 0.10.0
+ gst_plugin_get_name@Base 0.10.0
+ gst_plugin_get_origin@Base 0.10.0
+ gst_plugin_get_package@Base 0.10.0
+ gst_plugin_get_source@Base 0.10.0
+ gst_plugin_get_type@Base 0.10.0
+ gst_plugin_get_version@Base 0.10.0
+ gst_plugin_is_loaded@Base 0.10.0
+ gst_plugin_list_free@Base 0.10.0
+ gst_plugin_load@Base 0.10.0
+ gst_plugin_load_by_name@Base 0.10.0
+ gst_plugin_load_file@Base 0.10.0
+ gst_plugin_name_filter@Base 0.10.0
+ gst_plugin_register_static@Base 0.10.16
+ gst_plugin_register_static_full@Base 0.10.24
+ gst_plugin_set_cache_data@Base 0.10.24
+ gst_poll_add_fd@Base 0.10.18
+ gst_poll_fd_can_read@Base 0.10.18
+ gst_poll_fd_can_write@Base 0.10.18
+ gst_poll_fd_ctl_read@Base 0.10.18
+ gst_poll_fd_ctl_write@Base 0.10.18
+ gst_poll_fd_has_closed@Base 0.10.18
+ gst_poll_fd_has_error@Base 0.10.18
+ gst_poll_fd_ignored@Base 0.10.18
+ gst_poll_fd_init@Base 0.10.18
+ gst_poll_free@Base 0.10.18
+ gst_poll_get_read_gpollfd@Base 0.10.32
+ gst_poll_new@Base 0.10.18
+ gst_poll_new_timer@Base 0.10.23
+ gst_poll_read_control@Base 0.10.23
+ gst_poll_remove_fd@Base 0.10.18
+ gst_poll_restart@Base 0.10.18
+ gst_poll_set_controllable@Base 0.10.18
+ gst_poll_set_flushing@Base 0.10.18
+ gst_poll_wait@Base 0.10.18
+ gst_poll_write_control@Base 0.10.23
+ gst_preset_delete_preset@Base 0.10.20
+ gst_preset_get_meta@Base 0.10.20
+ gst_preset_get_preset_names@Base 0.10.20
+ gst_preset_get_property_names@Base 0.10.20
+ gst_preset_get_type@Base 0.10.20
+ gst_preset_load_preset@Base 0.10.20
+ gst_preset_rename_preset@Base 0.10.20
+ gst_preset_save_preset@Base 0.10.20
+ gst_preset_set_meta@Base 0.10.20
+ gst_print_element_args@Base 0.10.0
+ gst_print_pad_caps@Base 0.10.0
+ gst_progress_type_get_type@Base 0.10.33
+ gst_proxy_pad_get_type@Base 0.10.22
+ gst_qos_type_get_type@Base 0.10.33
+ gst_query_add_buffering_range@Base 0.10.31
+ gst_query_get_n_buffering_ranges@Base 0.10.31
+ gst_query_get_structure@Base 0.10.0
+ gst_query_get_type@Base 0.10.0
+ gst_query_new_application@Base 0.10.0
+ gst_query_new_buffering@Base 0.10.20
+ gst_query_new_convert@Base 0.10.0
+ gst_query_new_duration@Base 0.10.0
+ gst_query_new_formats@Base 0.10.4
+ gst_query_new_latency@Base 0.10.12
+ gst_query_new_position@Base 0.10.0
+ gst_query_new_seeking@Base 0.10.0
+ gst_query_new_segment@Base 0.10.0
+ gst_query_new_uri@Base 0.10.22
+ gst_query_parse_buffering_percent@Base 0.10.20
+ gst_query_parse_buffering_range@Base 0.10.20
+ gst_query_parse_buffering_stats@Base 0.10.20
+ gst_query_parse_convert@Base 0.10.0
+ gst_query_parse_duration@Base 0.10.0
+ gst_query_parse_formats_length@Base 0.10.4
+ gst_query_parse_formats_nth@Base 0.10.4
+ gst_query_parse_latency@Base 0.10.12
+ gst_query_parse_nth_buffering_range@Base 0.10.31
+ gst_query_parse_position@Base 0.10.0
+ gst_query_parse_seeking@Base 0.10.0
+ gst_query_parse_segment@Base 0.10.0
+ gst_query_parse_uri@Base 0.10.22
+ gst_query_set_buffering_percent@Base 0.10.20
+ gst_query_set_buffering_range@Base 0.10.20
+ gst_query_set_buffering_stats@Base 0.10.20
+ gst_query_set_convert@Base 0.10.0
+ gst_query_set_duration@Base 0.10.0
+ gst_query_set_formats@Base 0.10.0
+ gst_query_set_formatsv@Base 0.10.4
+ gst_query_set_latency@Base 0.10.12
+ gst_query_set_position@Base 0.10.0
+ gst_query_set_seeking@Base 0.10.0
+ gst_query_set_segment@Base 0.10.0
+ gst_query_set_uri@Base 0.10.22
+ gst_query_type_get_by_nick@Base 0.10.0
+ gst_query_type_get_details@Base 0.10.0
+ gst_query_type_get_name@Base 0.10.0
+ gst_query_type_get_type@Base 0.10.0
+ gst_query_type_iterate_definitions@Base 0.10.0
+ gst_query_type_register@Base 0.10.0
+ gst_query_type_to_quark@Base 0.10.0
+ gst_query_types_contains@Base 0.10.0
+ gst_rank_get_type@Base 0.10.0
+ gst_registry_add_feature@Base 0.10.0
+ gst_registry_add_path@Base 0.10.0
+ gst_registry_add_plugin@Base 0.10.0
+ gst_registry_binary_read_cache@Base 0.10.18-2~
+ gst_registry_binary_write_cache@Base 0.10.18-2~
+ gst_registry_feature_filter@Base 0.10.0
+ gst_registry_find_feature@Base 0.10.0
+ gst_registry_find_plugin@Base 0.10.0
+ gst_registry_fork_is_enabled@Base 0.10.10
+ gst_registry_fork_set_enabled@Base 0.10.10
+ gst_registry_get_default@Base 0.10.0
+ gst_registry_get_feature_list@Base 0.10.0
+ gst_registry_get_feature_list_by_plugin@Base 0.10.0
+ gst_registry_get_feature_list_cookie@Base 0.10.26
+ gst_registry_get_path_list@Base 0.10.0
+ gst_registry_get_plugin_list@Base 0.10.0
+ gst_registry_get_type@Base 0.10.0
+ gst_registry_lookup@Base 0.10.0
+ gst_registry_lookup_feature@Base 0.10.0
+ gst_registry_plugin_filter@Base 0.10.0
+ gst_registry_remove_feature@Base 0.10.0
+ gst_registry_remove_plugin@Base 0.10.0
+ gst_registry_scan_path@Base 0.10.0
+ gst_registry_xml_read_cache@Base 0.10.0
+ gst_registry_xml_write_cache@Base 0.10.0
+ gst_resource_error_get_type@Base 0.10.0
+ gst_resource_error_quark@Base 0.10.0
+ gst_search_mode_get_type@Base 0.10.23
+ gst_seek_flags_get_type@Base 0.10.0
+ gst_seek_type_get_type@Base 0.10.0
+ gst_segment_clip@Base 0.10.0
+ gst_segment_copy@Base 0.10.20
+ gst_segment_free@Base 0.10.0
+ gst_segment_get_type@Base 0.10.0
+ gst_segment_init@Base 0.10.0
+ gst_segment_new@Base 0.10.0
+ gst_segment_set_duration@Base 0.10.0
+ gst_segment_set_last_stop@Base 0.10.0
+ gst_segment_set_newsegment@Base 0.10.0
+ gst_segment_set_newsegment_full@Base 0.10.6
+ gst_segment_set_running_time@Base 0.10.24
+ gst_segment_set_seek@Base 0.10.0
+ gst_segment_to_position@Base 0.10.24
+ gst_segment_to_running_time@Base 0.10.0
+ gst_segment_to_stream_time@Base 0.10.0
+ gst_segtrap_is_enabled@Base 0.10.10
+ gst_segtrap_set_enabled@Base 0.10.10
+ gst_state_change_get_type@Base 0.10.0
+ gst_state_change_return_get_type@Base 0.10.0
+ gst_state_get_type@Base 0.10.0
+ gst_static_caps_get@Base 0.10.0
+ gst_static_caps_get_type@Base 0.10.1
+ gst_static_pad_template_get@Base 0.10.0
+ gst_static_pad_template_get_caps@Base 0.10.0
+ gst_static_pad_template_get_type@Base 0.10.1
+ gst_stream_error_get_type@Base 0.10.0
+ gst_stream_error_quark@Base 0.10.0
+ gst_stream_status_type_get_type@Base 0.10.24
+ gst_structure_change_type_get_type@Base 0.10.22
+ gst_structure_copy@Base 0.10.0
+ gst_structure_empty_new@Base 0.10.0
+ gst_structure_fixate_field_boolean@Base 0.10.0
+ gst_structure_fixate_field_nearest_double@Base 0.10.0
+ gst_structure_fixate_field_nearest_fraction@Base 0.10.0
+ gst_structure_fixate_field_nearest_int@Base 0.10.0
+ gst_structure_fixate_field_string@Base 0.10.30
+ gst_structure_foreach@Base 0.10.0
+ gst_structure_free@Base 0.10.0
+ gst_structure_from_string@Base 0.10.0
+ gst_structure_get@Base 0.10.24
+ gst_structure_get_boolean@Base 0.10.0
+ gst_structure_get_clock_time@Base 0.10.0
+ gst_structure_get_date@Base 0.10.0
+ gst_structure_get_date_time@Base 0.10.31
+ gst_structure_get_double@Base 0.10.0
+ gst_structure_get_enum@Base 0.10.0
+ gst_structure_get_field_type@Base 0.10.0
+ gst_structure_get_fourcc@Base 0.10.0
+ gst_structure_get_fraction@Base 0.10.0
+ gst_structure_get_int@Base 0.10.0
+ gst_structure_get_name@Base 0.10.0
+ gst_structure_get_name_id@Base 0.10.0
+ gst_structure_get_string@Base 0.10.0
+ gst_structure_get_type@Base 0.10.0
+ gst_structure_get_uint@Base 0.10.15
+ gst_structure_get_valist@Base 0.10.24
+ gst_structure_get_value@Base 0.10.0
+ gst_structure_has_field@Base 0.10.0
+ gst_structure_has_field_typed@Base 0.10.0
+ gst_structure_has_name@Base 0.10.0
+ gst_structure_id_empty_new@Base 0.10.0
+ gst_structure_id_get@Base 0.10.24
+ gst_structure_id_get_valist@Base 0.10.24
+ gst_structure_id_get_value@Base 0.10.0
+ gst_structure_id_has_field@Base 0.10.26
+ gst_structure_id_has_field_typed@Base 0.10.26
+ gst_structure_id_new@Base 0.10.24
+ gst_structure_id_set@Base 0.10.10
+ gst_structure_id_set_valist@Base 0.10.10
+ gst_structure_id_set_value@Base 0.10.0
+ gst_structure_id_take_value@Base 0.10.31
+ gst_structure_map_in_place@Base 0.10.0
+ gst_structure_n_fields@Base 0.10.0
+ gst_structure_new@Base 0.10.0
+ gst_structure_new_valist@Base 0.10.0
+ gst_structure_nth_field_name@Base 0.10.0
+ gst_structure_remove_all_fields@Base 0.10.0
+ gst_structure_remove_field@Base 0.10.0
+ gst_structure_remove_fields@Base 0.10.0
+ gst_structure_remove_fields_valist@Base 0.10.0
+ gst_structure_set@Base 0.10.0
+ gst_structure_set_name@Base 0.10.0
+ gst_structure_set_parent_refcount@Base 0.10.0
+ gst_structure_set_valist@Base 0.10.0
+ gst_structure_set_value@Base 0.10.0
+ gst_structure_take_value@Base 0.10.31
+ gst_structure_to_string@Base 0.10.0
+ gst_system_clock_get_type@Base 0.10.0
+ gst_system_clock_obtain@Base 0.10.0
+ gst_tag_exists@Base 0.10.0
+ gst_tag_flag_get_type@Base 0.10.0
+ gst_tag_get_description@Base 0.10.0
+ gst_tag_get_flag@Base 0.10.0
+ gst_tag_get_nick@Base 0.10.0
+ gst_tag_get_type@Base 0.10.0
+ gst_tag_is_fixed@Base 0.10.0
+ gst_tag_list_add@Base 0.10.0
+ gst_tag_list_add_valist@Base 0.10.0
+ gst_tag_list_add_valist_values@Base 0.10.0
+ gst_tag_list_add_value@Base 0.10.24
+ gst_tag_list_add_values@Base 0.10.0
+ gst_tag_list_copy@Base 0.10.0
+ gst_tag_list_copy_value@Base 0.10.0
+ gst_tag_list_foreach@Base 0.10.0
+ gst_tag_list_free@Base 0.10.0
+ gst_tag_list_get_boolean@Base 0.10.0
+ gst_tag_list_get_boolean_index@Base 0.10.0
+ gst_tag_list_get_buffer@Base 0.10.23
+ gst_tag_list_get_buffer_index@Base 0.10.23
+ gst_tag_list_get_char@Base 0.10.0
+ gst_tag_list_get_char_index@Base 0.10.0
+ gst_tag_list_get_date@Base 0.10.0
+ gst_tag_list_get_date_index@Base 0.10.0
+ gst_tag_list_get_date_time@Base 0.10.31
+ gst_tag_list_get_date_time_index@Base 0.10.31
+ gst_tag_list_get_double@Base 0.10.0
+ gst_tag_list_get_double_index@Base 0.10.0
+ gst_tag_list_get_float@Base 0.10.0
+ gst_tag_list_get_float_index@Base 0.10.0
+ gst_tag_list_get_int64@Base 0.10.0
+ gst_tag_list_get_int64_index@Base 0.10.0
+ gst_tag_list_get_int@Base 0.10.0
+ gst_tag_list_get_int_index@Base 0.10.0
+ gst_tag_list_get_long@Base 0.10.0
+ gst_tag_list_get_long_index@Base 0.10.0
+ gst_tag_list_get_pointer@Base 0.10.0
+ gst_tag_list_get_pointer_index@Base 0.10.0
+ gst_tag_list_get_string@Base 0.10.0
+ gst_tag_list_get_string_index@Base 0.10.0
+ gst_tag_list_get_tag_size@Base 0.10.0
+ gst_tag_list_get_type@Base 0.10.0
+ gst_tag_list_get_uchar@Base 0.10.0
+ gst_tag_list_get_uchar_index@Base 0.10.0
+ gst_tag_list_get_uint64@Base 0.10.0
+ gst_tag_list_get_uint64_index@Base 0.10.0
+ gst_tag_list_get_uint@Base 0.10.0
+ gst_tag_list_get_uint_index@Base 0.10.0
+ gst_tag_list_get_ulong@Base 0.10.0
+ gst_tag_list_get_ulong_index@Base 0.10.0
+ gst_tag_list_get_value_index@Base 0.10.0
+ gst_tag_list_insert@Base 0.10.0
+ gst_tag_list_is_empty@Base 0.10.11
+ gst_tag_list_merge@Base 0.10.0
+ gst_tag_list_new@Base 0.10.0
+ gst_tag_list_new_full@Base 0.10.24
+ gst_tag_list_new_full_valist@Base 0.10.24
+ gst_tag_list_peek_string_index@Base 0.10.30
+ gst_tag_list_remove_tag@Base 0.10.0
+ gst_tag_merge_mode_get_type@Base 0.10.0
+ gst_tag_merge_strings_with_comma@Base 0.10.0
+ gst_tag_merge_use_first@Base 0.10.0
+ gst_tag_register@Base 0.10.0
+ gst_tag_setter_add_tag_valist@Base 0.10.0
+ gst_tag_setter_add_tag_valist_values@Base 0.10.0
+ gst_tag_setter_add_tag_value@Base 0.10.24
+ gst_tag_setter_add_tag_values@Base 0.10.0
+ gst_tag_setter_add_tags@Base 0.10.0
+ gst_tag_setter_get_tag_list@Base 0.10.0
+ gst_tag_setter_get_tag_merge_mode@Base 0.10.0
+ gst_tag_setter_get_type@Base 0.10.0
+ gst_tag_setter_merge_tags@Base 0.10.0
+ gst_tag_setter_reset_tags@Base 0.10.22
+ gst_tag_setter_set_tag_merge_mode@Base 0.10.0
+ gst_task_cleanup_all@Base 0.10.0
+ gst_task_create@Base 0.10.0
+ gst_task_get_pool@Base 0.10.24
+ gst_task_get_state@Base 0.10.0
+ gst_task_get_type@Base 0.10.0
+ gst_task_join@Base 0.10.0
+ gst_task_pause@Base 0.10.0
+ gst_task_pool_cleanup@Base 0.10.24
+ gst_task_pool_get_type@Base 0.10.24
+ gst_task_pool_join@Base 0.10.24
+ gst_task_pool_new@Base 0.10.24
+ gst_task_pool_prepare@Base 0.10.24
+ gst_task_pool_push@Base 0.10.24
+ gst_task_set_lock@Base 0.10.0
+ gst_task_set_pool@Base 0.10.24
+ gst_task_set_priority@Base 0.10.24
+ gst_task_set_state@Base 0.10.24
+ gst_task_set_thread_callbacks@Base 0.10.24
+ gst_task_start@Base 0.10.0
+ gst_task_state_get_type@Base 0.10.0
+ gst_task_stop@Base 0.10.0
+ gst_trace_destroy@Base 0.10.0
+ gst_trace_flush@Base 0.10.0
+ gst_trace_new@Base 0.10.0
+ gst_trace_read_tsc@Base 0.10.0
+ gst_trace_set_default@Base 0.10.0
+ gst_trace_text_flush@Base 0.10.0
+ gst_type_find_factory_call_function@Base 0.10.0
+ gst_type_find_factory_get_caps@Base 0.10.0
+ gst_type_find_factory_get_extensions@Base 0.10.0
+ gst_type_find_factory_get_list@Base 0.10.0
+ gst_type_find_factory_get_type@Base 0.10.0
+ gst_type_find_get_length@Base 0.10.0
+ gst_type_find_get_type@Base 0.10.7
+ gst_type_find_peek@Base 0.10.0
+ gst_type_find_probability_get_type@Base 0.10.0
+ gst_type_find_register@Base 0.10.0
+ gst_type_find_suggest@Base 0.10.0
+ gst_type_find_suggest_simple@Base 0.10.20
+ gst_type_register_static_full@Base 0.10.14
+ gst_update_registry@Base 0.10.12
+ gst_uri_construct@Base 0.10.0
+ gst_uri_get_location@Base 0.10.0
+ gst_uri_get_protocol@Base 0.10.0
+ gst_uri_handler_get_protocols@Base 0.10.0
+ gst_uri_handler_get_type@Base 0.10.0
+ gst_uri_handler_get_uri@Base 0.10.0
+ gst_uri_handler_get_uri_type@Base 0.10.0
+ gst_uri_handler_new_uri@Base 0.10.0
+ gst_uri_handler_set_uri@Base 0.10.0
+ gst_uri_has_protocol@Base 0.10.4
+ gst_uri_is_valid@Base 0.10.0
+ gst_uri_protocol_is_supported@Base 0.10.13
+ gst_uri_protocol_is_valid@Base 0.10.0
+ gst_uri_type_get_type@Base 0.10.0
+ gst_util_array_binary_search@Base 0.10.23
+ gst_util_double_to_fraction@Base 0.10.26
+ gst_util_dump_mem@Base 0.10.0
+ gst_util_fraction_add@Base 0.10.26
+ gst_util_fraction_compare@Base 0.10.31
+ gst_util_fraction_multiply@Base 0.10.26
+ gst_util_fraction_to_double@Base 0.10.26
+ gst_util_gdouble_to_guint64@Base 0.10.0
+ gst_util_get_timestamp@Base 0.10.16
+ gst_util_greatest_common_divisor@Base 0.10.26
+ gst_util_guint64_to_gdouble@Base 0.10.0
+ gst_util_seqnum_compare@Base 0.10.22
+ gst_util_seqnum_next@Base 0.10.22
+ gst_util_set_object_arg@Base 0.10.0
+ gst_util_set_value_from_string@Base 0.10.0
+ gst_util_uint64_scale@Base 0.10.0
+ gst_util_uint64_scale_ceil@Base 0.10.25
+ gst_util_uint64_scale_int@Base 0.10.0
+ gst_util_uint64_scale_int_ceil@Base 0.10.25
+ gst_util_uint64_scale_int_round@Base 0.10.25
+ gst_util_uint64_scale_round@Base 0.10.25
+ gst_value_array_append_value@Base 0.10.0
+ gst_value_array_get_size@Base 0.10.0
+ gst_value_array_get_type@Base 0.10.0
+ gst_value_array_get_value@Base 0.10.0
+ gst_value_array_prepend_value@Base 0.10.0
+ gst_value_can_compare@Base 0.10.0
+ gst_value_can_intersect@Base 0.10.0
+ gst_value_can_subtract@Base 0.10.0
+ gst_value_can_union@Base 0.10.0
+ gst_value_compare@Base 0.10.0
+ gst_value_deserialize@Base 0.10.0
+ gst_value_dup_mini_object@Base 0.10.20
+ gst_value_fraction_multiply@Base 0.10.0
+ gst_value_fraction_subtract@Base 0.10.0
+ gst_value_get_caps@Base 0.10.0
+ gst_value_get_date@Base 0.10.0
+ gst_value_get_double_range_max@Base 0.10.0
+ gst_value_get_double_range_min@Base 0.10.0
+ gst_value_get_fourcc@Base 0.10.0
+ gst_value_get_fraction_denominator@Base 0.10.0
+ gst_value_get_fraction_numerator@Base 0.10.0
+ gst_value_get_fraction_range_max@Base 0.10.0
+ gst_value_get_fraction_range_min@Base 0.10.0
+ gst_value_get_int64_range_max@Base 0.10.31
+ gst_value_get_int64_range_min@Base 0.10.31
+ gst_value_get_int_range_max@Base 0.10.0
+ gst_value_get_int_range_min@Base 0.10.0
+ gst_value_get_mini_object@Base 0.10.0
+ gst_value_get_structure@Base 0.10.15
+ gst_value_init_and_copy@Base 0.10.0
+ gst_value_intersect@Base 0.10.0
+ gst_value_is_fixed@Base 0.10.0
+ gst_value_list_append_value@Base 0.10.0
+ gst_value_list_concat@Base 0.10.0
+ gst_value_list_get_size@Base 0.10.0
+ gst_value_list_get_type@Base 0.10.0
+ gst_value_list_get_value@Base 0.10.0
+ gst_value_list_merge@Base 0.10.32
+ gst_value_list_prepend_value@Base 0.10.0
+ gst_value_register@Base 0.10.0
+ gst_value_register_intersect_func@Base 0.10.0
+ gst_value_register_subtract_func@Base 0.10.0
+ gst_value_register_union_func@Base 0.10.0
+ gst_value_serialize@Base 0.10.0
+ gst_value_set_caps@Base 0.10.0
+ gst_value_set_date@Base 0.10.0
+ gst_value_set_double_range@Base 0.10.0
+ gst_value_set_fourcc@Base 0.10.0
+ gst_value_set_fraction@Base 0.10.0
+ gst_value_set_fraction_range@Base 0.10.0
+ gst_value_set_fraction_range_full@Base 0.10.0
+ gst_value_set_int64_range@Base 0.10.31
+ gst_value_set_int_range@Base 0.10.0
+ gst_value_set_mini_object@Base 0.10.0
+ gst_value_set_structure@Base 0.10.15
+ gst_value_subtract@Base 0.10.0
+ gst_value_take_mini_object@Base 0.10.0
+ gst_value_union@Base 0.10.0
+ gst_version@Base 0.10.0
+ gst_version_string@Base 0.10.0
+ gst_xml_get_element@Base 0.10.0
+ gst_xml_get_topelements@Base 0.10.0
+ gst_xml_get_type@Base 0.10.0
+ gst_xml_make_element@Base 0.10.0
+ gst_xml_new@Base 0.10.0
+ gst_xml_parse_doc@Base 0.10.0
+ gst_xml_parse_file@Base 0.10.0
+ gst_xml_parse_memory@Base 0.10.0
+ gst_xml_write@Base 0.10.0
+ gst_xml_write_file@Base 0.10.0
diff --git a/debian/patches/80_ia32-hack.patch b/debian/patches/80_ia32-hack.patch
new file mode 100644
index 0000000..d5bb9b3
--- /dev/null
+++ b/debian/patches/80_ia32-hack.patch
@@ -0,0 +1,43 @@
+Index: gstreamer0.10-0.10.31.2/gst/gstregistry.c
+===================================================================
+--- gstreamer0.10-0.10.31.2.orig/gst/gstregistry.c	2011-01-06 20:35:59.000000000 +0100
++++ gstreamer0.10-0.10.31.2/gst/gstregistry.c	2011-01-08 17:05:28.959841191 +0100
+@@ -121,6 +121,10 @@
+ #include <stdio.h>
+ #include <string.h>
+ 
++#ifdef HAVE_SYS_UTSNAME_H
++#include <sys/utsname.h>
++#endif
++
+ /* For g_stat () */
+ #include <glib/gstdio.h>
+ 
+@@ -1493,6 +1497,10 @@
+    * path, and the plugins installed in the user's home directory */
+   plugin_path = g_getenv ("GST_PLUGIN_SYSTEM_PATH");
+   if (plugin_path == NULL) {
++#if defined(__linux__) && defined (__i386__)
++    struct utsname uts;
++#endif
++    char *plugindir = PLUGINDIR;
+     char *home_plugins;
+ 
+     GST_DEBUG ("GST_PLUGIN_SYSTEM_PATH not set");
+@@ -1506,8 +1514,14 @@
+     g_free (home_plugins);
+ 
+     /* add the main (installed) library path */
+-    GST_DEBUG ("scanning main plugins %s", PLUGINDIR);
+-    changed |= gst_registry_scan_path_internal (&context, PLUGINDIR);
++#if defined(__linux__) && defined (__i386__)
++    uname(&uts);
++    if (!strcmp("x86_64", uts.machine)
++         && !access("/usr/lib32/gstreamer-0.10", R_OK|X_OK))
++       plugindir = "/usr/lib32/gstreamer-0.10";
++#endif
++    GST_DEBUG ("scanning main plugins %s", plugindir);
++    changed |= gst_registry_scan_path_internal (&context, plugindir);
+ 
+ #ifdef G_OS_WIN32
+     {
diff --git a/debian/patches/99_ltmain_as-needed.patch b/debian/patches/99_ltmain_as-needed.patch
new file mode 100644
index 0000000..0ba3a6a
--- /dev/null
+++ b/debian/patches/99_ltmain_as-needed.patch
@@ -0,0 +1,32 @@
+Index: gstreamer0.10-0.10.31.2/ltmain.sh
+===================================================================
+--- gstreamer0.10-0.10.31.2.orig/ltmain.sh	2011-01-06 19:14:25.000000000 +0100
++++ gstreamer0.10-0.10.31.2/ltmain.sh	2011-01-08 17:05:29.823838983 +0100
+@@ -4716,6 +4716,11 @@
+ 	arg=$func_stripname_result
+ 	;;
+ 
++      -Wl,--as-needed)
++	deplibs="$deplibs $arg"
++	continue
++	;;
++
+       -Wl,*)
+ 	func_stripname '-Wl,' '' "$arg"
+ 	args=$func_stripname_result
+@@ -5070,6 +5075,15 @@
+ 	lib=
+ 	found=no
+ 	case $deplib in
++	-Wl,--as-needed)
++	  if test "$linkmode,$pass" = "prog,link"; then
++	    compile_deplibs="$deplib $compile_deplibs"
++	    finalize_deplibs="$deplib $finalize_deplibs"
++	  else
++	    deplibs="$deplib $deplibs"
++	  fi
++	  continue
++	  ;;
+ 	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
+ 	  if test "$linkmode,$pass" = "prog,link"; then
+ 	    compile_deplibs="$deplib $compile_deplibs"
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..1858e7c
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,2 @@
+80_ia32-hack.patch
+99_ltmain_as-needed.patch
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..ad05520
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,238 @@
+#!/usr/bin/make -f
+
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/autotools.mk
+include /usr/share/cdbs/1/rules/utils.mk
+-include /usr/share/cdbs/1/rules/autoreconf.mk
+include /usr/share/gnome-pkg-tools/1/rules/clean-la.mk
+
+export HOME=$(CURDIR)/fake-home
+
+# make autoreconf not call libtoolize since we ship a patch for ltmain.sh
+export LIBTOOLIZE=true
+# make autoreconf not call autopoint since we ship a patch for po/Makefile.in.in
+export AUTOPOINT=true
+
+CFLAGS += -Wno-error
+CXXFLAGS += -Wno-error
+LDFLAGS += -Wl,-z,defs -Wl,-O1 -Wl,--as-needed
+DEB_MAKE_CHECK_TARGET = check || true
+
+# debian package version
+version=$(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2)
+# upstream version
+gst_version=$(shell echo $(version) | cut -d '-' -f 1)
+gst_major=0
+gst_minor=10
+gst_abi=$(gst_major).$(gst_minor)
+gst_pkgname=gstreamer$(gst_abi)
+gst_lib_prefix=libgstreamer$(gst_abi)
+# gstreamer library package names
+gst_lib=$(gst_lib_prefix)-0
+gst_lib_dev=$(gst_lib_prefix)-dev
+# gstreamer shlibs
+gst_shlibs_dep="$(gst_lib) (>= $(gst_version))"
+
+# debug package
+DEB_DH_STRIP_ARGS := --dbg-package=$(gst_lib)-dbg
+
+DEB_COMPRESS_EXCLUDE = .sgml .devhelp .ps .pdf
+
+DEB_INSTALL_DOCS_$(gst_lib)-dbg += common/gst.supp
+
+# disable all CPU specific optimizations in commands launched by this Makefile
+# using liboil; this is to work around liboil related build failures which
+# are not specially interesting to catch on buildds as these might run very
+# specific hardware
+OIL_CPU_FLAGS=0
+export OIL_CPU_FLAGS
+
+PKGFILES=\
+	debian/$(gst_lib).install \
+	debian/$(gst_lib).symbols \
+	debian/$(gst_lib_dev).install \
+	debian/$(gst_pkgname)-doc.install \
+	debian/$(gst_pkgname)-doc.links \
+	debian/$(gst_pkgname)-doc.lintian \
+	debian/$(gst_pkgname)-tools.install \
+	debian/$(gst_pkgname)-tools.links \
+	debian/$(gst_pkgname)-tools.manpages \
+	debian/gir1.2-gstreamer-$(gst_abi).install
+
+# Let's decide the package name and url depending on the distribution
+DISTRO = "$(shell dpkg-vendor --query vendor)"
+
+GST_PACKAGE_NAME := "GStreamer (unknown Debian derivative)"
+GST_PACKAGE_ORIGIN="http://packages.qa.debian.org/gstreamer$(gst_abi)"
+
+ifeq ($(DISTRO),"Debian")
+GST_PACKAGE_NAME := "GStreamer (Debian)"
+GST_PACKAGE_ORIGIN="http://packages.qa.debian.org/gstreamer$(gst_abi)"
+endif
+
+ifeq ($(DISTRO),"Ubuntu")
+GST_PACKAGE_NAME := "GStreamer (Ubuntu)"
+GST_PACKAGE_ORIGIN="https://launchpad.net/distros/ubuntu/+source/gstreamer$(gst_abi)"
+endif
+
+debian/control:: debian/control.in debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_VERSION@/$(gst_version)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' | \
+		sed 's/@GST_LIB@/$(gst_lib)/g' | \
+		sed 's/@GST_LIB_DEV@/$(gst_lib_dev)/g' \
+		> $@
+
+debian/$(gst_lib).dirs: debian/libgstreamer.dirs debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_lib).install: debian/libgstreamer.install debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_lib).symbols: debian/libgstreamer.symbols debian/rules
+	rm -f $@
+	cp -v $< $@
+
+debian/gir1.2-gstreamer-$(gst_abi).install: debian/gir1.2-gstreamer.install debian/rules
+	rm -f $@
+	cp -v $< $@
+
+debian/$(gst_lib_dev).install: debian/libgstreamer-dev.install debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_pkgname)-doc.install: debian/gstreamer-doc.install debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_pkgname)-doc.links: debian/gstreamer-doc.links debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_pkgname)-doc.lintian: debian/gstreamer-doc.lintian debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_pkgname)-tools.install: debian/gstreamer-tools-abi.install debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_pkgname)-tools.links: debian/gstreamer-tools-abi.links debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+debian/$(gst_pkgname)-tools.manpages: debian/gstreamer-tools-abi.manpages debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_ABI@/$(gst_abi)/g' | \
+		sed 's/@GST_PKGNAME@/$(gst_pkgname)/g' | \
+		sed 's/@GST_LIB_PREFIX@/$(gst_lib_prefix)/g' \
+		> $@
+
+maint: debian/control
+
+pre-build:: $(PKGFILES)
+
+clean::
+	for f in $(PKGFILES); do \
+		rm -f $$f; \
+	done
+	-rm -f debian/shlibs.local
+	-rm -rf $(CURDIR)/fake-home
+
+common_conf_flags = \
+	--disable-failing-tests \
+	--disable-examples \
+	--enable-DEBUG \
+	--enable-debug \
+	--with-package-name=$(GST_PACKAGE_NAME) \
+	--with-package-origin=$(GST_PACKAGE_ORIGIN)
+
+indep_conf_flags = \
+	--with-html-dir=\$${prefix}/share/doc/$(gst_pkgname)-doc
+
+# only build the docs if gtk-doc-tools is installed, i.e. binary-indep is
+# called
+ifeq ($(shell test "`dpkg -l gtk-doc-tools | grep ^ii`" && echo binary-indep),binary-indep)
+indep_conf_flags += --enable-gtk-doc --enable-docbook
+endif
+
+DEB_CONFIGURE_EXTRA_FLAGS := $(common_conf_flags) $(indep_conf_flags)
+
+common-install-indep::
+	# move around the doc dirs
+	mkdir -p debian/tmp/usr/share/doc/$(gst_pkgname)-doc
+	-cp -r debian/tmp/usr/share/doc/gstreamer-$(gst_abi)/pwg \
+	   debian/tmp/usr/share/doc/gstreamer-$(gst_abi)/manual \
+	   debian/tmp/usr/share/doc/gstreamer-$(gst_abi)/faq \
+	   debian/tmp/usr/share/doc/$(gst_pkgname)-doc
+
+	# -doc lintian overrides
+	mkdir -p debian/$(gst_pkgname)-doc/usr/share/lintian/overrides/
+	cp -a debian/$(gst_pkgname)-doc.lintian debian/$(gst_pkgname)-doc/usr/share/lintian/overrides/$(gst_pkgname)-doc
+
+DEB_DH_MAKESHLIBS_ARGS_$(gst_lib) += -X "/usr/lib/gstreamer-$(gst_abi)" -V $(gst_shlibs_dep) -- -c4
+DEB_INSTALL_DOCS_ALL += debian/README.Debian NEWS
+DEB_SHLIBDEPS_INCLUDE += debian/$(gst_lib)/usr/lib
+
+# override shlibs for libraries from this source before computing dependencies
+# of packages generated from this source; we already have inter-dependencies
+# expressed manually in the control file, we do not need the shlibs to add
+# duplicates
+# (this rule runs just before the dh_shlibdeps)
+common-binary-fixup-arch::
+	mkdir -p $(CURDIR)/fake-home
+	HOME=$(CURDIR)/fake-home \
+	dh_girepository -pgir1.2-gstreamer-$(gst_abi)
+	rm -rf $(CURDIR)/fake-home
+	-rm -f debian/shlibs.local
+	cat debian/*/DEBIAN/shlibs | \
+		sed -n -r -e 's/(([^ ]+: )?([^ ]+) ([^ ]+)) .*/\1/p' \
+			> debian/shlibs.local
+
+# (this rules runs just after the dh_shlibdeps)
+common-binary-predeb-arch::
+	-rm -f debian/shlibs.local
+
+install/$(gst_lib_dev)::
+	gcc -o debian/tmp/usr/bin/gst-codec-info-0.10 debian/gst-codec-info.c $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) `pkg-config --libs --cflags glib-2.0 gthread-2.0 gmodule-no-export-2.0 gobject-2.0 libxml-2.0` debian/tmp/usr/lib/libgstreamer-0.10.so -Idebian/tmp/usr/include/gstreamer-0.10
+	perldoc -o man debian/dh_gstscancodecs > debian/tmp/usr/share/man/man1/dh_gstscancodecs.1
+
+.PHONY: maint
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..86412fb
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=2
+http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-(.*)\.tar\.gz
