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..500d717
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,2362 @@
+gstreamer1.0 (1.0.9-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 16 Aug 2013 10:46:36 +0200
+
+gstreamer1.0 (1.0.8-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sat, 13 Jul 2013 11:28:24 +0200
+
+gstreamer1.0 (1.0.7-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 26 Apr 2013 14:04:38 +0200
+
+gstreamer1.0 (1.0.6-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 22 Mar 2013 18:11:46 +0100
+
+gstreamer1.0 (1.0.5-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 08 Jan 2013 13:38:27 +0100
+
+gstreamer1.0 (1.0.4-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 19 Dec 2012 10:25:15 +0100
+
+gstreamer1.0 (1.0.3-1) unstable; urgency=low
+
+  * New upstream bugfix release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 21 Nov 2012 14:45:04 +0100
+
+gstreamer1.0 (1.0.2-1) unstable; urgency=low
+
+  * New upstream stable release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Thu, 25 Oct 2012 13:23:04 +0200
+
+gstreamer1.0 (1.0.1-1) unstable; urgency=low
+
+  * New upstream stable release:
+    + debian/libgstreamer.symbols:
+      - Add new symbols.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 08 Oct 2012 09:59:20 +0200
+
+gstreamer1.0 (1.0.0-1) unstable; urgency=low
+
+  * New upstream stable release:
+    + debian/libgstreamer.symbols:
+      - Update symbols file.
+    + debian/*:
+      - Change remaining parts from 0.11 to 1.0.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 24 Sep 2012 16:28:50 +0200
+
+gstreamer1.0 (0.11.99-1) experimental; urgency=low
+
+  * New upstream release.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 18 Sep 2012 08:55:08 +0200
+
+gstreamer1.0 (0.11.94-1) experimental; urgency=low
+
+  * New upstream release:
+    + debian/libgstreamer.symbols:
+      - Update symbols file.
+    + debian/control.in:
+      - Build-depend on gtk-doc >= 1.12.
+    + debian/patches/0001-netclientclock-simplify-by-using-g_socket_condition_.patch:
+      - Dropped, merged upstream.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 14 Sep 2012 09:04:41 +0200
+
+gstreamer1.0 (0.11.93-2) experimental; urgency=low
+
+  * debian/control.in:
+    + Build-depend on GLIB >= 2.23.
+  * debian/patches/0001-netclientclock-simplify-by-using-g_socket_condition_.patch:
+    + Fix unit test hang that causes the build to fail sometimes.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 10 Aug 2012 12:59:53 +0200
+
+gstreamer1.0 (0.11.93-1) experimental; urgency=low
+
+  * New upstream release:
+    + debian/libgstreamer.symbols:
+      - Update symbols file.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 08 Aug 2012 18:12:33 +0200
+
+gstreamer1.0 (0.11.92-1) experimental; urgency=low
+
+  * debian/control.in:
+    + Update automake, autoconf and libtool build dependencies.
+  * New upstream release, "High Hopes":
+    + debian/libgstreamer.symbols:
+      - Update symbols file.
+  * debian/gst-codec-info.c:
+    + Updated for API changes.
+
+ -- Sebastian Dröge <slomo@debian.org>  Fri, 08 Jun 2012 09:38:04 +0200
+
+gstreamer1.0 (0.11.91-1) experimental; urgency=low
+
+  * New upstream release, "I will give you five magic beans!":
+    + debian/libgstreamer.symbols:
+      - Update symbols file.
+  * debian/libgstreamer-dev.install:
+    + Don't ship useless .la file for the core plugins.
+    + Don't ship .a and .la files for the library.
+  * debian/control.in:
+    + Update debhelper dependency version and Standards-Version.
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 21 May 2012 11:14:06 +0200
+
+gstreamer1.0 (0.11.90-1) experimental; urgency=low
+
+  [ Olivier Naudan ]
+  * Imported Upstream version 0.11.90
+  * debian/rules and debian/changelog: migration to 1.0
+  * debian/control*: aligned libglib2.0-dev version requirement with configure.ac
+  * gst-codec-info.c: migration to gst 1.0
+  * Updated debian/patches to use GST_API_VERSION
+  * Refreshed 99_ltmain_as-needed.patch to apply cleanly again
+  * debian/control: updated package names with 1.0
+  * Updated debian/libgstreamer.symbols based on upstream 0.11.90
+  * debian/control*: added a new build-dep on libxml2-dev
+
+  [ Sebastian Dröge ]
+  * Fix symbols file versions.
+  * 79_multiarch-backwards-compat.patch: Dropped, there's no need for
+    backwards compatibility anymore.
+  * Remove libxml2-dev build-dependency again.
+  * Update copyright.
+  * 80_ia32-hack.patch: Dropped, shouldn't be needed anymore.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 02 May 2012 17:27:44 +0200
+
+gstreamer0.11 (0.11.1-3) UNRELEASED; urgency=low
+
+  [ Sebastian Dröge ]
+  * debian/control.in:
+    + Don't (build-) depend on libxml2.
+    + Build-depend on automake (>= 1.10), autoconf (>= 2.60) and
+      libtool (>= 2.0) to make dh-autoreconf actually work.
+
+  [ Loïc Minier ]
+  * Only track 0.11.* versions in watch file.
+  * Update my email address in control.
+
+ -- Sebastian Dröge <slomo@debian.org>  Wed, 14 Dec 2011 12:18:43 +0100
+
+gstreamer0.11 (0.11.1-2) experimental; urgency=low
+
+  * debian/control.in:
+    + Build-depend on GLib 2.26.
+  * debian/dh_gstscancodecs:
+    + Fix for multi-arch to look in the correct directories.
+      Patch by YunQiang Su <wzssyqa@gmail.com>.
+
+ -- Sebastian Dröge <slomo@debian.org>  Tue, 13 Dec 2011 10:11:55 +0100
+
+gstreamer0.11 (0.11.1-1) experimental; urgency=low
+
+  [ Nicolas Dechesne ]
+  * New upstream release.
+    + debian/libstreamer.symbols
+    + debian/control.in
+      - removed unversioned gstreamer-tools since removed upstream
+      - removed old Replaces/Conflicts which no longer make sense on 0.11
+    + debian/rules
+      - updated abi number
+    + misc
+      - removed xmllaunch, feedback and xmlinspect
+      - replaced reference to GST_PLUGIN_FEATURE_NAME to GST_OBJECT_NAME
+
+  [ Sebastian Dröge ]
+  * debian/copyright:
+    + Clean up, fix and complete copyright file.
+  * Merge 0.10.35.2-1.
+  * Upload to experimental
+
+ -- Sebastian Dröge <slomo@debian.org>  Mon, 12 Dec 2011 11:44:42 +0100
+
+gstreamer0.10 (0.10.35.2-1) experimental; urgency=low
+
+  * New upstream pre-release:
+    + debian/control.in:
+      - Build-depend on GLib >= 2.24.
+    + debian/patches/99_ltmain_as-needed.patch:
+      - Refreshed to apply cleanly again.
+    + debian/libgstreamer.symbols:
+      - Update symbols file with new API.
+  * debian/rules:
+    + Remove all dependency_libs from the .la files (Closes: #633319).
+  * debian/control.in:
+    + Put GI package into section introspection.
+  * debian/compat,
+    debian/control.in,
+    debian/gir1.2-gstreamer.install,
+    debian/libgstreamer-dev.install,
+    debian/libgstreamer.install,
+    debian/patches/79_multiarch-backwards-compat.patch,
+    debian/patches/80_ia32-hack.patch,
+    debian/rules:
+    + Transition package to multi-arch (Closes: #647481).
+      Patch taken from the Ubuntu package.
+
+ -- Sebastian Dröge <slomo@debian.org>  Sun, 11 Dec 2011 18:52:12 +0100
+
+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..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..d8d726b
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,166 @@
+Source: gstreamer1.0
+Section: libs
+Priority: optional
+Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>
+Uploaders: Loïc Minier <lool@debian.org>,
+           Sebastien Bacher <seb128@debian.org>,
+           Sebastian Dröge <slomo@debian.org>,
+           Sjoerd Simons <sjoerd@debian.org>
+Build-Depends: debhelper (>= 9),
+               cdbs (>= 0.4.93~),
+               gnome-pkg-tools (>= 0.7),
+               autotools-dev,
+               automake (>= 1.11),
+               autoconf (>= 2.62),
+               libtool (>= 2.2.6),
+               dh-autoreconf,
+               autopoint (>= 0.17),
+               zlib1g-dev (>= 1:1.1.4),
+               libglib2.0-dev (>= 2.32),
+               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 (>= 1.12),
+                     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,
+                     libglib2.0-doc
+Standards-Version: 3.9.3
+Homepage: http://gstreamer.freedesktop.org
+
+Package: libgstreamer1.0-0
+Architecture: any
+Multi-Arch: same
+Section: libs
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Suggests: gstreamer1.0-tools,
+          gstreamer1.0-plugins-base
+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: libgstreamer1.0-0-dbg
+Architecture: any
+Multi-Arch: same
+Section: debug
+Priority: extra
+Depends: libgstreamer1.0-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: libgstreamer1.0-dev
+Architecture: any
+Section: libdevel
+Depends: libgstreamer1.0-0 (= ${binary:Version}),
+         libc6-dev | libc-dev,
+         pkg-config,
+         libglib2.0-dev,
+         ${shlibs:Depends},
+         ${misc:Depends},
+         gir1.2-gstreamer-1.0 (= ${binary:Version})
+Recommends: debhelper
+Suggests: gstreamer1.0-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: gstreamer1.0-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends},
+         libglib2.0-doc
+Recommends: libgstreamer1.0-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: gstreamer1.0-tools
+Architecture: any
+Section: utils
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         pkg-config,
+         libgstreamer1.0-0 (>= 0.11.94)
+Suggests: gstreamer1.0-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: gir1.2-gstreamer-1.0
+Section: introspection
+Architecture: any
+Depends: ${gir:Depends},
+         ${shlibs:Depends},
+         ${misc:Depends},
+         ${gir:Depends}
+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..a6f5e12
--- /dev/null
+++ b/debian/control.in
@@ -0,0 +1,166 @@
+Source: @GST_PKGNAME@
+Section: libs
+Priority: optional
+Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>
+Uploaders: Loïc Minier <lool@debian.org>,
+           Sebastien Bacher <seb128@debian.org>,
+           Sebastian Dröge <slomo@debian.org>,
+           Sjoerd Simons <sjoerd@debian.org>
+Build-Depends: debhelper (>= 9),
+               cdbs (>= 0.4.93~),
+               gnome-pkg-tools (>= 0.7),
+               autotools-dev,
+               automake (>= 1.11),
+               autoconf (>= 2.62),
+               libtool (>= 2.2.6),
+               dh-autoreconf,
+               autopoint (>= 0.17),
+               zlib1g-dev (>= 1:1.1.4),
+               libglib2.0-dev (>= 2.32),
+               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 (>= 1.12),
+                     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,
+                     libglib2.0-doc
+Standards-Version: 3.9.3
+Homepage: http://gstreamer.freedesktop.org
+
+Package: @GST_LIB@
+Architecture: any
+Multi-Arch: same
+Section: libs
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Suggests: @GST_PKGNAME@-tools,
+          @GST_PKGNAME@-plugins-base
+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
+Multi-Arch: same
+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,
+         ${shlibs:Depends},
+         ${misc:Depends},
+         gir1.2-gstreamer-@GST_ABI@ (= ${binary:Version})
+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},
+         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: gir1.2-gstreamer-@GST_ABI@
+Section: introspection
+Architecture: any
+Depends: ${gir:Depends},
+         ${shlibs:Depends},
+         ${misc:Depends},
+         ${gir:Depends}
+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..1e1e2b3
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,745 @@
+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/>.
+
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: GStreamer core 1.0
+Upstream-Contact: gstreamer-devel@lists.freedesktop.org
+Source: http://gstreamer.freedesktop.org
+
+Files: gst/gst.c
+ gst/gst.h
+ gst/gst_private.h
+ gst/gstbin.c
+ gst/gstbin.h
+ gst/gstbuffer.c
+ gst/gstbuffer.h
+ gst/gstclock.c
+ gst/gstclock.h
+ gst/gstcompat.h
+ gst/gstelement.c
+ gst/gstelement.h
+ gst/gstelementfactory.c
+ gst/gstelementfactory.h
+ gst/gstelementmetadata.h
+ gst/gstevent.c
+ gst/gstevent.h
+ gst/gstformat.c
+ gst/gstformat.h
+ gst/gstghostpad.c
+ gst/gstghostpad.h
+ gst/gstinfo.h
+ gst/gstobject.c
+ gst/gstobject.h
+ gst/gstpad.c
+ gst/gstpad.h
+ gst/gstpadtemplate.c
+ gst/gstpadtemplate.h
+ gst/gstparse.c
+ gst/gstparse.h
+ gst/gstpipeline.c
+ gst/gstpipeline.h
+ gst/gstplugin.c
+ gst/gstplugin.h
+ gst/gstpluginfeature.c
+ gst/gstpluginfeature.h
+ gst/gstquery.c
+ gst/gstquery.h
+ gst/gstregistry.c
+ gst/gstregistry.h
+ gst/gstsample.h
+ gst/gstsystemclock.c
+ gst/gstsystemclock.h
+ gst/gsttask.c
+ gst/gsttrace.c
+ gst/gsttrace.h
+ gst/gsturi.h
+ gst/gstutils.c
+ gst/gstutils.h
+ libs/gst/base/gstbasesink.h
+ libs/gst/base/gstbasesrc.c
+ libs/gst/base/gstbasesrc.h
+ libs/gst/base/gstbasetransform.c
+ libs/gst/base/gstbasetransform.h
+ libs/gst/base/gstindex.h
+ libs/gst/base/gstpushsrc.c
+ libs/gst/base/gstpushsrc.h
+ plugins/elements/gstcapsfilter.c
+ plugins/elements/gstcapsfilter.h
+ plugins/elements/gstelements.c
+ plugins/elements/gstfakesink.c
+ plugins/elements/gstfakesink.h
+ plugins/elements/gstfakesrc.c
+ plugins/elements/gstfakesrc.h
+ plugins/elements/gstfdsink.c
+ plugins/elements/gstfdsink.h
+ plugins/elements/gstfdsrc.c
+ plugins/elements/gstfdsrc.h
+ plugins/elements/gstfilesink.c
+ plugins/elements/gstfilesink.h
+ plugins/elements/gstfilesrc.c
+ plugins/elements/gstfilesrc.h
+ plugins/elements/gstidentity.c
+ plugins/elements/gstidentity.h
+ plugins/elements/gstqueue.c
+ plugins/elements/gstqueue.h
+ plugins/elements/gstqueue2.c
+ plugins/elements/gstqueue2.h
+ plugins/elements/gsttee.c
+ plugins/elements/gsttee.h
+ tools/gst-inspect.c
+ tools/gst-launch.c
+ win32/common/gstconfig.h
+ win32/common/gstversion.h
+Copyright: 1999-2000, Erik Walthinsen <omega@cse.ogi.edu>
+License: LGPL-2+
+
+Files: libs/gst/check/libcheck/check.c
+ libs/gst/check/libcheck/check.h
+ libs/gst/check/libcheck/check_error.c
+ libs/gst/check/libcheck/check_error.h
+ libs/gst/check/libcheck/check_impl.h
+ libs/gst/check/libcheck/check_list.c
+ libs/gst/check/libcheck/check_list.h
+ libs/gst/check/libcheck/check_log.c
+ libs/gst/check/libcheck/check_log.h
+ libs/gst/check/libcheck/check_msg.c
+ libs/gst/check/libcheck/check_msg.h
+ libs/gst/check/libcheck/check_pack.c
+ libs/gst/check/libcheck/check_pack.h
+ libs/gst/check/libcheck/check_print.c
+ libs/gst/check/libcheck/check_print.h
+ libs/gst/check/libcheck/check_run.c
+ libs/gst/check/libcheck/check_str.c
+ libs/gst/check/libcheck/check_str.h
+Copyright: 2001, 2002, Arien Malec
+  2001-2002, Arien Malec
+License: LGPL-2.1+
+
+Files: gst/gstparamspecs.c
+ gst/gstparamspecs.h
+ gst/math-compat.h
+ libs/gst/base/gstbytereader-docs.h
+ tests/check/elements/multiqueue.c
+ tests/check/elements/queue2.c
+ tests/check/gst/gstinfo.c
+ tests/check/gst/gstparamspecs.c
+ tests/check/gst/gstregistry.c
+ tests/check/gst/gsttagsetter.c
+ tests/check/gst/gsturi.c
+ tests/check/libs/basesrc.c
+ tests/check/libs/gstlibscpp.cc
+ tests/check/libs/typefindhelper.c
+ tests/check/pipelines/parse-disabled.c
+Copyright: 2006, Tim-Philipp Müller <tim centricular net>
+  2007, Tim-Philipp Müller <tim centricular net>
+  2009, Tim-Philipp Müller <tim centricular net>
+  2010, Tim-Philipp Müller <tim centricular net>
+  2011, Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: gst/gsttaglist.c
+ gst/gsttaglist.h
+ gst/gsttagsetter.c
+ gst/gsttagsetter.h
+ gst/gsttypefind.c
+ gst/gsttypefind.h
+ gst/gsttypefindfactory.c
+ gst/gsttypefindfactory.h
+ plugins/elements/gsttypefindelement.c
+ plugins/elements/gsttypefindelement.h
+ tests/check/gst/gsttag.c
+Copyright: 2003, Benjamin Otte <in7y118@public.uni-hamburg.de>
+License: LGPL-2+
+
+Files: debian/gst-codec-info.c
+ libs/gst/base/gstbitreader-docs.h
+ libs/gst/base/gstbitreader.c
+ libs/gst/base/gstbitreader.h
+ libs/gst/base/gstbytewriter-docs.h
+ libs/gst/base/gstbytewriter.c
+ libs/gst/base/gstbytewriter.h
+ libs/gst/controller/gstinterpolationcontrolsource.c
+ libs/gst/controller/gstlfocontrolsource.c
+ libs/gst/controller/gsttimedvaluecontrolsource.c
+ libs/gst/controller/gsttriggercontrolsource.c
+Copyright: 2007,2009, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+  2007,2010, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+  2008, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+  2009, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+  2010, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: gst/gstchildproxy.c
+ gst/gstchildproxy.h
+ gst/gstdebugutils.c
+ gst/gstdebugutils.h
+ gst/gstpreset.c
+ gst/gstpreset.h
+ tests/benchmarks/capsnego.c
+ tests/benchmarks/controller.c
+ tests/check/gst/gstchildproxy.c
+ tests/check/gst/gstelementfactory.c
+Copyright: 2005, Stefan Kost <ensonic@users.sf.net>
+  2006, Stefan Kost <ensonic@users.sf.net>
+  2007, Stefan Kost <ensonic@users.sf.net>
+  2009, Stefan Kost <ensonic@users.sf.net>
+  2010, Stefan Kost <ensonic@users.sf.net>
+  2011, Stefan Kost <ensonic@users.sf.net>
+License: LGPL-2+
+
+Files: tests/check/elements/fakesink.c
+ tests/check/elements/fakesrc.c
+ tests/check/elements/identity.c
+ tests/check/generic/states.c
+ tests/check/gst/gst.c
+ tests/check/gst/gstbuffer.c
+ tests/check/gst/gstpad.c
+ tests/check/gst/gststructure.c
+ tests/check/pipelines/cleanup.c
+Copyright: <2005> Thomas Vander Stichele <thomas at apestaart dot org>
+License: LGPL-2+
+
+Files: libs/gst/net/gstnet.h
+ libs/gst/net/gstnettimepacket.h
+ libs/gst/net/gstnettimeprovider.c
+ tests/benchmarks/caps.c
+ tests/check/gst/gstiterator.c
+ tests/check/libs/gstnetclientclock.c
+ tests/check/libs/gstnettimeprovider.c
+ tests/check/pipelines/simple-launch-lines.c
+ tests/check/pipelines/stress.c
+Copyright: 2005, Andy Wingo <wingo@pobox.com>
+License: LGPL-2+
+
+Files: gst/gstbufferpool.c
+ gst/gstbufferpool.h
+ gst/gstmeta.c
+ gst/gstsample.c
+ gst/gsttaskpool.c
+ libs/gst/base/gstbasesink.c
+ tests/check/libs/transform1.c
+ tests/examples/streams/testrtpool.c
+Copyright: 2005-2007, Wim Taymans <wim.taymans@gmail.com>
+  2008, Wim Taymans <wim.taymans@gmail.com>
+  2009, Wim Taymans <wim.taymans@gmail.com>
+  2010, Wim Taymans <wim.taymans@gmail.com>
+  2011, Wim Taymans <wim.taymans@gmail.com>
+License: LGPL-2+
+
+Files: gst/gstbus.c
+ gst/gstbus.h
+ gst/gstmessage.c
+ gst/gstmessage.h
+ gst/gstsegment.c
+ gst/gstsegment.h
+ tests/check/gst/gstghostpad.c
+ tests/check/gst/gstsystemclock.c
+Copyright: 2004, Wim Taymans <wim@fluendo.com>
+  2005, Wim Taymans <wim@fluendo.com>
+License: LGPL-2+
+
+Files: gst/gsttoc.c
+ gst/gsttoc.h
+ gst/gsttocsetter.c
+ gst/gsttocsetter.h
+ tests/check/gst/gsttoc.c
+ tests/check/gst/gsttocsetter.c
+Copyright: 2010, 2012 Alexander Saprykin <xelfium@gmail.com>
+License: LGPL-2+
+
+Files: gst/gstcontrolsource.c
+ gst/gstcontrolsource.h
+ libs/gst/controller/gstinterpolationcontrolsource.h
+ libs/gst/controller/gstlfocontrolsource.h
+ libs/gst/controller/gsttimedvaluecontrolsource.h
+ libs/gst/controller/gsttriggercontrolsource.h
+Copyright: 2007, Sebastian Dröge <slomo@circular-chaos.org>
+License: LGPL-2+
+
+Files: gst/gstcontrolbinding.c
+ gst/gstcontrolbinding.h
+ libs/gst/controller/gstargbcontrolbinding.c
+ libs/gst/controller/gstargbcontrolbinding.h
+ libs/gst/controller/gstdirectcontrolbinding.c
+ libs/gst/controller/gstdirectcontrolbinding.h
+Copyright: 2011, Stefan Sauer <ensonic@users.sf.net>
+License: LGPL-2+
+
+Files: gst/gsterror.h
+ tests/check/elements/filesrc.c
+ tests/check/gst/gstelement.c
+ tests/check/gst/gstpipeline.c
+ tests/check/gst/gsttask.c
+Copyright: 2004, Thomas Vander Stichele <thomas at apestaart dot org>
+  2005, Thomas Vander Stichele <thomas at apestaart dot org>
+  2006, Thomas Vander Stichele <thomas at apestaart dot org>
+License: LGPL-2+
+
+Files: gst/gstcaps.c
+ gst/gsterror.c
+ gst/gstvalue.c
+ gst/gstvalue.h
+Copyright: <2003> David A. Schleef <ds@schleef.org>
+License: LGPL-2+
+
+Files: libs/gst/base/gstadapter.c
+ libs/gst/base/gstadapter.h
+ tests/benchmarks/mass-elements.c
+ tools/tools.h
+Copyright: 2004, Benjamin Otte <otte@gnome.org>
+  2005, Benjamin Otte <otte@gnome.org>
+License: LGPL-2+
+
+Files: gst/gst-i18n-app.h
+ gst/gst-i18n-lib.h
+ tests/examples/metadata/read-metadata.c
+ tools/gst-typefind.c
+Copyright: 2003, Thomas Vander Stichele <thomas@apestaart.org>
+  2004, Thomas Vander Stichele <thomas@apestaart.org>
+License: LGPL-2+
+
+Files: common/coverage/coverage-report-entry.pl
+ common/coverage/coverage-report.pl
+ common/coverage/coverage-report.xsl
+Copyright: 2006, Daniel Berrange
+License: GPL-2+
+
+Files: gst/gstmacros.h
+ gst/gsttask.h
+ libs/gst/base/gstmemindex.c
+Copyright: <1999> Erik Walthinsen <omega@cse.ogi.edu>
+License: LGPL-2+
+
+Files: tests/check/generic/sinks.c
+ tests/check/gst/gstmessage.c
+ tests/check/libs/adapter.c
+Copyright: <2005> Wim Taymans <wim at fluendo dot com>
+License: LGPL-2+
+
+Files: gst/gsttaskpool.h
+ tests/check/gst/gstmeta.c
+ tests/examples/streams/testrtpool.h
+Copyright: <2009> Wim Taymans <wim.taymans@gmail.com>
+License: LGPL-2+
+
+Files: gst/gstbufferlist.c
+ gst/gstbufferlist.h
+ tests/check/gst/gstbufferlist.c
+Copyright: 2009, Axis Communications <dev-gstreamer at axis dot com>
+License: LGPL-2+
+
+Files: gst/gstcaps.h
+ gst/gststructure.c
+ gst/gststructure.h
+Copyright: 2003, David A. Schleef <ds@schleef.org>
+License: LGPL-2+
+
+Files: gst/glib-compat-private.h
+ gst/gstminiobject.c
+ gst/gstminiobject.h
+Copyright: 2005, David Schleef <ds@schleef.org>
+License: LGPL-2+
+
+Files: plugins/elements/gstdataqueue.c
+ plugins/elements/gstdataqueue.h
+ plugins/elements/gstmultiqueue.h
+Copyright: 2006, Edward Hervey <edward@fluendo.com>
+License: LGPL-2+
+
+Files: gst/gstpluginloader.c
+ gst/gstpluginloader.h
+ libs/gst/helpers/gst-plugin-scanner.c
+Copyright: 2008, Jan Schmidt <jan.schmidt@sun.com>
+License: LGPL-2+
+
+Files: plugins/elements/gstoutputselector.c
+ plugins/elements/gstoutputselector.h
+ tests/check/elements/selector.c
+Copyright: 2008, Nokia Corporation. (contact <stefan.kost@nokia.com>)
+License: LGPL-2+
+
+Files: gst/gstmemory.c
+ gst/gstmemory.h
+ gst/gstmeta.h
+Copyright: 2009, Wim Taymans <wim.taymans@gmail.be>
+  2011, Wim Taymans <wim.taymans@gmail.be>
+License: LGPL-2+
+
+Files: tests/check/gst/gstcontroller.c
+ tests/check/libs/controller.c
+Copyright: <2005> Stefan Kost <ensonic at users dot sf dot net>
+  <2006-2007> Sebastian Dröge <slomo@circular-chaos.org>
+License: LGPL-2+
+
+Files: tests/check/libs/bitreader.c
+ tests/check/libs/bytereader.c
+Copyright: <2008> Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: libs/gst/net/gstnetaddressmeta.c
+ libs/gst/net/gstnetaddressmeta.h
+Copyright: <2011> Wim Taymans <wim.taymans@gmail.com>
+License: LGPL-2+
+
+Files: tests/check/gst/gstclock.c
+ tests/check/libs/basesink.c
+Copyright: 2010, Alessandro Decina <alessandro.decina@collabora.co.uk>
+License: LGPL-2+
+
+Files: libs/gst/check/gstbufferstraw.c
+ libs/gst/check/gstbufferstraw.h
+Copyright: 2006, Andy Wingo <wingo at pobox.com>
+License: LGPL-2+
+
+Files: plugins/elements/gstvalve.c
+ plugins/elements/gstvalve.h
+Copyright: 2007, Collabora Ltd
+  2007, Nokia Corporation
+  2007-2009, Collabora Ltd
+  2007-2009, Nokia Corporation
+License: LGPL-2+
+
+Files: libs/gst/net/gstnetclientclock.c
+ libs/gst/net/gstnetclientclock.h
+Copyright: 1999-2000, Erik Walthinsen <omega@cse.ogi.edu>
+  2012, Collabora Ltd. <tim.muller@collabora.co.uk>
+License: LGPL-2+
+
+Files: gst/gstatomicqueue.c
+ libs/gst/check/gstconsistencychecker.h
+Copyright: 2009, Edward Hervey <bilboed@bilboed.com>
+License: LGPL-2+
+
+Files: gst/gstinfo.c
+ gst/gsturi.c
+Copyright: 1999-2000, Erik Walthinsen <omega@cse.ogi.edu>
+  2008-2009, Tim-Philipp Müller <tim centricular net>
+  2011, Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: libs/gst/base/gsttypefindhelper.c
+ libs/gst/base/gsttypefindhelper.h
+Copyright: 1999-2000, Erik Walthinsen <omega@cse.ogi.edu>
+  2000,2005, Wim Taymans <wim@fluendo.com>
+  2006, Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstevent.c
+ tests/check/gst/gstsegment.c
+Copyright: 2005, Jan Schmidt <thaytan@mad.scientist.com>
+License: LGPL-2+
+
+Files: gst/gstquark.c
+ gst/gstquark.h
+Copyright: 2006, Jan Schmidt <thaytan@noraisin.net>
+License: LGPL-2+
+
+Files: gst/gstregistrybinary.c
+ gst/gstregistrychunks.c
+Copyright: 2006, Josep Torra <josep@fluendo.com>
+License: LGPL-2+
+
+Files: gst/gstregistrybinary.h
+ gst/gstregistrychunks.h
+Copyright: 2006, Josep Torra <josep@fluendo.com>
+  2006, Mathieu Garcia <matthieu@fluendo.com>
+  2006, Stefan Kost <ensonic@sonicpulse.de>
+License: LGPL-2+
+
+Files: libs/gst/base/gstbytereader.c
+ libs/gst/base/gstbytereader.h
+Copyright: 2008, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+  2009, Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: gst/gstiterator.c
+ gst/gstiterator.h
+Copyright: 2004, Wim Taymans <wim@fluendo.com>
+  2011, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: gst/gstdatetime.c
+ gst/gstdatetime.h
+Copyright: 2010, Thiago Santos <thiago.sousa.santos@collabora.co.uk>
+License: LGPL-2+
+
+Files: plugins/elements/gstfunnel.c
+ plugins/elements/gstfunnel.h
+Copyright: 2007, Collabora Ltd
+  2007, Nokia Corp
+License: LGPL-2.1+
+
+Files: ltmain.sh
+Copyright: 1996-2001, 2003-2006
+License: GPL-2+
+
+Files: gst/parse/grammar.tab.h
+Copyright: 1984, 1989-1990, 2000-2011, Free Software Foundation, Inc
+License: GPL-3+
+
+Files: tests/check/gst/gstquery.c
+Copyright: *No copyright*
+License: LGPL-2+
+
+Files: tests/benchmarks/gstpollstress.c
+Copyright: <1999> Erik Walthinsen <omega@cse.ogi.edu>
+  <2004> Thomas Vander Stichele <thomas at apestaart dot org>
+License: LGPL-2+
+
+Files: tests/check/gst/gstvalue.c
+Copyright: <2004> David Schleef <david at schleef dot org>
+  <2005> Thomas Vander Stichele <thomas at apestaart dot org>
+License: LGPL-2+
+
+Files: tests/check/gst/gstobject.c
+Copyright: <2004> Thomas Vander Stichele <thomas at apestaart dot org>
+License: LGPL-2+
+
+Files: libs/gst/check/gstcheck.h
+Copyright: <2004> Thomas Vander Stichele <thomas at apestaart dot org>
+  <2008> Thijs Vermeir <thijsvermeir@gmail.com>
+License: LGPL-2+
+
+Files: tests/check/elements/fdsrc.c
+Copyright: <2005> Jan Schmidt <thaytan at mad dot scientist dot com>
+License: LGPL-2+
+
+Files: tests/examples/typefind/typefind.c
+Copyright: <2005> Stefan Kost
+  <2006> Tim-Philipp Müller
+License: LGPL-2+
+
+Files: tests/check/gst/gstminiobject.c
+Copyright: <2005> Thomas Vander Stichele <thomas at apestaart dot org>
+  <2005> Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstutils.c
+Copyright: <2005> Thomas Vander Stichele <thomas at apestaart dot org>
+  <2006> Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/pipelines/parse-launch.c
+Copyright: <2005> Thomas Vander Stichele <thomas at apestaart dot org>
+  <2008> Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstcaps.c
+Copyright: 2005, Andy Wingo <wingo@pobox.com>
+  <2005> Thomas Vander Stichele <thomas at apestaart dot org>
+License: LGPL-2+
+
+Files: tests/check/elements/queue.c
+Copyright: <2006> Stefan Kost <ensonic@users.sf.net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstpoll.c
+Copyright: <2007> Peter Kjellerstedt <pkj@axis.com>
+License: LGPL-2+
+
+Files: tests/check/elements/tee.c
+Copyright: <2007> Wim Taymans <wim dot taymans at gmail dot com>
+  <2008> Christian Berentsen <christian.berentsen@tandberg.com>
+  <2008> Ole Andr? Vadla Ravnås <ole.andre.ravnas@tandberg.com>
+License: LGPL-2+
+
+Files: tests/check/elements/capsfilter.c
+Copyright: <2008> Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/benchmarks/gstbufferstress.c
+Copyright: <2009> Edward Hervey <bilboed@bilboed.com>
+License: LGPL-2+
+
+Files: tests/check/libs/bytewriter.c
+Copyright: <2009> Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: tests/benchmarks/gstclockstress.c
+Copyright: <2009> Wim Taymans <wim taymans at gmail dot com>
+License: LGPL-2+
+
+Files: tests/check/gst/gstatomicqueue.c
+Copyright: <2011> Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstmemory.c
+Copyright: <2012> Wim Taymans <wim.taymans at gmail.com>
+License: LGPL-2+
+
+Files: tests/check/libs/collectpads2.c
+Copyright: 2006, Alessandro Decina <alessandro@nnva.org>
+License: LGPL-2+
+
+Files: tests/benchmarks/complexity.c
+Copyright: 2004, Benjamin Otte <otte@gnome.org>
+  2005, Andy Wingo <wingo@pobox.com>
+License: LGPL-2+
+
+Files: libs/gst/net/gstnettimeprovider.h
+Copyright: 2005, Andy Wingo <wingo@pobox.com>
+  2012, Collabora Ltd. <tim.muller@collabora.co.uk>
+License: LGPL-2+
+
+Files: libs/gst/net/gstnettimepacket.c
+Copyright: 2005, Andy Wingo <wingo@pobox.com>
+  2010, Tim-Philipp Müller <tim centricular net>
+  2012, Collabora Ltd. <tim.muller@collabora.co.uk>
+License: LGPL-2+
+
+Files: plugins/elements/gstinputselector.c
+Copyright: 2003, Julien Moutte <julien@moutte.net>
+  2005, Jan Schmidt <thaytan@mad.scientist.com>
+  2005, Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+  2007, Andy Wingo <wingo@pobox.com>
+  2007, Wim Taymans <wim.taymans@gmail.com>
+  2008, Nokia Corporation. (contact <stefan.kost@nokia.com>)
+  2011, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: tests/check/gst/gstbus.c
+Copyright: 2005, Andy Wingo <wingo@pobox.com>
+  2007, Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstdatetime.c
+Copyright: 2010, Christian Hergert <chris@dronelabs.com>
+  2010, Thiago Santos <thiago.sousa.santos@collabora.co.uk>
+License: LGPL-2+
+
+Files: tests/check/pipelines/seek.c
+Copyright: 2012, Collabora Ltd
+License: LGPL-2+
+
+Files: tests/check/elements/valve.c
+Copyright: 2009, Collabora Ltd
+  2009, Nokia Corp
+License: LGPL-2+
+
+Files: tests/check/gst/gstplugin.c
+Copyright: 2004, Thomas Vander Stichele <thomas at apestaart dot org>
+  2005, David Schleef <ds@schleef.org>
+License: LGPL-2+
+
+Files: libs/gst/check/gstconsistencychecker.c
+Copyright: 2009, Edward Hervey <bilboed@bilboed.com>
+  2012, Stefan Sauer <ensonic@users.sf.net>
+License: LGPL-2+
+
+Files: gst/gstatomicqueue.h
+Copyright: 2009-2010, Edward Hervey <bilboed@bilboed.com>
+  2011, Wim Taymans <wim.taymans@gmail.com>
+License: LGPL-2+
+
+Files: plugins/elements/gstmultiqueue.c
+Copyright: 2006, Edward Hervey <edward@fluendo.com>
+  2007, Jan Schmidt <jan@fluendo.com>
+  2007, Wim Taymans <wim@fluendo.com>
+  2011, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: gst/gstpoll.c
+Copyright: 1999, Erik Walthinsen <omega@cse.ogi.edu>
+  2004, Wim Taymans <wim.taymans@gmail.com>
+  2007, Peter Kjellerstedt <pkj@axis.com>
+  2008, Ole Andr? Vadla Ravn?s <ole.andre.ravnas@tandberg.com>
+License: LGPL-2+
+
+Files: gst/gstpoll.h
+Copyright: 1999, Erik Walthinsen <omega@cse.ogi.edu>
+  2004, Wim Taymans <wim.taymans@gmail.com>
+  2007, Peter Kjellerstedt <pkj@axis.com>
+License: LGPL-2+
+
+Files: gst/gettext.h
+Copyright: 1995-1998, 2000-2002, Free Software Foundation, Inc
+License: LGPL-2+
+
+Files: libs/gst/base/gstbaseparse.c
+Copyright: 2008, Nokia Corporation.
+  2008, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+  2011, Hewlett-Packard Development Company, L.P
+License: LGPL-2+
+
+Files: plugins/elements/gstinputselector.h
+Copyright: 2003, Julien Moutte <julien@moutte.net>
+  2005, Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+  2008, Nokia Corporation. (contact <stefan.kost@nokia.com>)
+License: LGPL-2+
+
+Files: tests/check/pipelines/queue-error.c
+Copyright: 2007, Tim-Philipp Müller <tim centricular net>
+  2009, Mark Nauwelaerts <mnauw users sourceforge net>
+License: LGPL-2+
+
+Files: libs/gst/base/gstcollectpads2.c
+Copyright: 2005, Wim Taymans <wim@fluendo.com>
+  2008, Mark Nauwelaerts <mnauw@users.sourceforge.net>
+  2010, Sebastian Dröge <sebastian.droege@collabora.co.uk>
+License: LGPL-2+
+
+Files: libs/gst/base/gstcollectpads2.h
+Copyright: 2005, Wim Taymans <wim@fluendo.com>
+  2008, Mark Nauwelaerts <mnauw@users.sourceforge.net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstpreset.c
+Copyright: 2008, Nokia Corporation and its subsidary(-ies)
+License: LGPL-2+
+
+Files: libs/gst/base/gstbaseparse.h
+Copyright: 2008, Nokia Corporation.
+License: LGPL-2+
+
+Files: gst/glib-compat.h
+Copyright: 1995-1997, Peter Mattis, Spencer Kimball and Josh MacDonald
+License: LGPL-2+
+
+Files: libs/gst/base/gstindex.c
+Copyright: 2001, RidgeRun (http://www.ridgerun.com/)
+License: LGPL-2+
+
+Files: tests/benchmarks/init.c
+Copyright: 2006, Stefan Kost <stefan.kost@nokia.com>
+License: LGPL-2+
+
+Files: libs/gst/check/gstcheck.c
+Copyright: 2004,2006, Thomas Vander Stichele <thomas at apestaart dot org>
+  2008, Thijs Vermeir <thijsvermeir@gmail.com>
+License: LGPL-2+
+
+Files: tests/check/elements/filesink.c
+Copyright: 2006, Thomas Vander Stichele <thomas at apestaart dot org>
+  2007, Tim-Philipp Müller <tim centricular net>
+License: LGPL-2+
+
+Files: tests/check/gst/gstbin.c
+Copyright: 2005, Thomas Vander Stichele <thomas at apestaart dot org>
+  2005, Wim Taymans <wim@fluendo.com>
+License: LGPL-2+
+
+Files: tests/check/elements/funnel.c
+Copyright: 2008, Collabora, Nokia
+License: LGPL-2.1+
+
+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..b25a6e6
--- /dev/null
+++ b/debian/dh_gstscancodecs
@@ -0,0 +1,132 @@
+#!/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-1.0/*.so and
+/usr/lib/$DEB_HOST_MULTIARCH/gstreamer-1.0/*.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();
+
+my $deb_host_multiarch = `dpkg-architecture -qDEB_HOST_MULTIARCH`;
+chop $deb_host_multiarch;
+$::pluginlibdirprefix = '/usr/lib/'.$deb_host_multiarch.'/gstreamer-';
+$::pluginlibdirlegacy = '/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* $tmp$::pluginlibdirlegacy*") {
+    my $gstversion = $sodir;
+    $gstversion =~ s/^$tmp$::pluginlibdirprefix//;
+    $gstversion =~ s/^$tmp$::pluginlibdirlegacy//;
+    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..9803e33
--- /dev/null
+++ b/debian/gir1.2-gstreamer.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/*/girepository-* usr/lib
diff --git a/debian/gst-codec-info.c b/debian/gst-codec-info.c
new file mode 100644
index 0000000..c0d2ba3
--- /dev/null
+++ b/debian/gst-codec-info.c
@@ -0,0 +1,453 @@
+/* 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[] = {
+  "gstreamer1.0-audiosink",
+  "gstreamer1.0-audiosource",
+  "gstreamer1.0-videosink",
+  "gstreamer1.0-videosource",
+  "gstreamer1.0-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)
+    encoders = gst_caps_simplify (encoders);
+
+  if (decoders)
+    decoders = gst_caps_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)
+{
+  const gchar *const *protocols, *const *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;
+    default:
+      break;
+  }
+}
+
+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_OBJECT_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 (),
+      GST_TYPE_ELEMENT_FACTORY);
+
+  for (l = features; l; l = l->next) {
+    GstPluginFeature *feature = GST_PLUGIN_FEATURE (l->data);
+    GstElementFactory *factory = GST_ELEMENT_FACTORY (feature);
+    GstPlugin *f_plugin = gst_plugin_feature_get_plugin (feature);
+
+    if (!f_plugin)
+      continue;
+    if (!g_str_equal (plugin_name, gst_plugin_get_name (f_plugin))) {
+      gst_object_unref (f_plugin);
+      continue;
+    }
+    gst_object_unref (f_plugin);
+
+    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..6850f86
--- /dev/null
+++ b/debian/gstreamer-tools-abi.install
@@ -0,0 +1,5 @@
+debian/tmp/usr/bin/gst-inspect-@GST_ABI@
+debian/tmp/usr/bin/gst-launch-@GST_ABI@
+debian/tmp/usr/bin/gst-typefind-@GST_ABI@
+
+
diff --git a/debian/gstreamer-tools-abi.links b/debian/gstreamer-tools-abi.links
new file mode 100644
index 0000000..139597f
--- /dev/null
+++ b/debian/gstreamer-tools-abi.links
@@ -0,0 +1,2 @@
+
+
diff --git a/debian/gstreamer-tools-abi.manpages b/debian/gstreamer-tools-abi.manpages
new file mode 100644
index 0000000..72d086d
--- /dev/null
+++ b/debian/gstreamer-tools-abi.manpages
@@ -0,0 +1,4 @@
+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
+
diff --git a/debian/gstreamer1.0-doc.doc-base.core-ref b/debian/gstreamer1.0-doc.doc-base.core-ref
new file mode 100644
index 0000000..e21f828
--- /dev/null
+++ b/debian/gstreamer1.0-doc.doc-base.core-ref
@@ -0,0 +1,8 @@
+Document: gstreamer-1.0-core-ref
+Title: GStreamer 1.0 Core Reference Manual
+Abstract: API documentation for the core of GStreamer 1.0.
+Section: Programming/C
+
+Format: HTML
+Files: /usr/share/doc/gstreamer1.0-doc/gstreamer-1.0/*.html
+Index: /usr/share/doc/gstreamer1.0-doc/gstreamer-1.0/index.html
diff --git a/debian/gstreamer1.0-doc.doc-base.faq b/debian/gstreamer1.0-doc.doc-base.faq
new file mode 100644
index 0000000..ab0fe7e
--- /dev/null
+++ b/debian/gstreamer1.0-doc.doc-base.faq
@@ -0,0 +1,9 @@
+Document: gstreamer-1.0-faq
+Title: GStreamer 1.0 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/gstreamer1.0-doc/faq/html/*.html
+Index: /usr/share/doc/gstreamer1.0-doc/faq/html/index.html
diff --git a/debian/gstreamer1.0-doc.doc-base.libs-ref b/debian/gstreamer1.0-doc.doc-base.libs-ref
new file mode 100644
index 0000000..6e854da
--- /dev/null
+++ b/debian/gstreamer1.0-doc.doc-base.libs-ref
@@ -0,0 +1,8 @@
+Document: gstreamer-1.0-libs-ref
+Title: GStreamer 1.0 Library Reference Manual
+Abstract: API documentation for libraries from GStreamer 1.0.
+Section: Programming/C
+
+Format: HTML
+Files: /usr/share/doc/gstreamer1.0-doc/gstreamer-libs-1.0/*.html
+Index: /usr/share/doc/gstreamer1.0-doc/gstreamer-libs-1.0/index.html
diff --git a/debian/gstreamer1.0-doc.doc-base.manual b/debian/gstreamer1.0-doc.doc-base.manual
new file mode 100644
index 0000000..20f99a3
--- /dev/null
+++ b/debian/gstreamer1.0-doc.doc-base.manual
@@ -0,0 +1,11 @@
+Document: gstreamer-1.0-manual
+Title: GStreamer 1.0 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/gstreamer1.0-doc/manual/html/*.html
+Index: /usr/share/doc/gstreamer1.0-doc/manual/html/index.html
diff --git a/debian/gstreamer1.0-doc.doc-base.pwg b/debian/gstreamer1.0-doc.doc-base.pwg
new file mode 100644
index 0000000..2c2789e
--- /dev/null
+++ b/debian/gstreamer1.0-doc.doc-base.pwg
@@ -0,0 +1,14 @@
+Document: gstreamer-1.0-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/gstreamer1.0-doc/pwg/html/*.html
+Index: /usr/share/doc/gstreamer1.0-doc/pwg/html/index.html
diff --git a/debian/libgstreamer-dev.install b/debian/libgstreamer-dev.install
new file mode 100644
index 0000000..1f7959f
--- /dev/null
+++ b/debian/libgstreamer-dev.install
@@ -0,0 +1,8 @@
+debian/tmp/usr/include
+debian/tmp/usr/lib/*/*.so
+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-dev.postrm b/debian/libgstreamer-dev.postrm
new file mode 100644
index 0000000..8b918aa
--- /dev/null
+++ b/debian/libgstreamer-dev.postrm
@@ -0,0 +1,15 @@
+#!/bin/sh
+set -e
+
+rm_diversion() {
+  dpkg-divert --package @GST_LIB_DEV@ --rename --remove "$1"
+}
+
+if [ "$1" = "remove" -o "$1" = "abort-install" -o "$1" = "disappear" ] ; then
+  rm_diversion /usr/bin/dh_gstscancodecs
+  rm_diversion /usr/share/man/man1/dh_gstscancodecs.1.gz
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libgstreamer-dev.preinst b/debian/libgstreamer-dev.preinst
new file mode 100644
index 0000000..86fd91c
--- /dev/null
+++ b/debian/libgstreamer-dev.preinst
@@ -0,0 +1,16 @@
+#!/bin/sh
+set -e
+
+add_diversion() {
+  dpkg-divert --package @GST_LIB_DEV@ --add --rename \
+    --divert "$1-gst0.10" "$1"
+}
+
+if [ "$1" = "upgrade" ] || [ "$1" = "install" ]; then
+  add_diversion /usr/bin/dh_gstscancodecs
+  add_diversion /usr/share/man/man1/dh_gstscancodecs.1.gz
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libgstreamer.install b/debian/libgstreamer.install
new file mode 100644
index 0000000..b2cfb9b
--- /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..04681f8
--- /dev/null
+++ b/debian/libgstreamer.symbols
@@ -0,0 +1,1650 @@
+libgstbase-1.0.so.0 libgstreamer1.0-0 #MINVER#
+ gst_adapter_available@Base 1.0.0
+ gst_adapter_available_fast@Base 1.0.0
+ gst_adapter_clear@Base 1.0.0
+ gst_adapter_copy@Base 1.0.0
+ gst_adapter_flush@Base 1.0.0
+ gst_adapter_get_type@Base 1.0.0
+ gst_adapter_map@Base 1.0.0
+ gst_adapter_masked_scan_uint32@Base 1.0.0
+ gst_adapter_masked_scan_uint32_peek@Base 1.0.0
+ gst_adapter_new@Base 1.0.0
+ gst_adapter_prev_dts@Base 1.0.0
+ gst_adapter_prev_pts@Base 1.0.0
+ gst_adapter_push@Base 1.0.0
+ gst_adapter_take@Base 1.0.0
+ gst_adapter_take_buffer@Base 1.0.0
+ gst_adapter_take_list@Base 1.0.0
+ gst_adapter_unmap@Base 1.0.0
+ gst_base_parse_add_index_entry@Base 1.0.0
+ gst_base_parse_convert_default@Base 1.0.0
+ gst_base_parse_finish_frame@Base 1.0.0
+ gst_base_parse_frame_free@Base 1.0.0
+ gst_base_parse_frame_get_type@Base 1.0.0
+ gst_base_parse_frame_init@Base 1.0.0
+ gst_base_parse_frame_new@Base 1.0.0
+ gst_base_parse_get_type@Base 1.0.0
+ gst_base_parse_push_frame@Base 1.0.0
+ gst_base_parse_set_average_bitrate@Base 1.0.0
+ gst_base_parse_set_duration@Base 1.0.0
+ gst_base_parse_set_frame_rate@Base 1.0.0
+ gst_base_parse_set_has_timing_info@Base 1.0.0
+ gst_base_parse_set_latency@Base 1.0.0
+ gst_base_parse_set_min_frame_size@Base 1.0.0
+ gst_base_parse_set_passthrough@Base 1.0.0
+ gst_base_parse_set_pts_interpolation@Base 1.0.0
+ gst_base_parse_set_syncable@Base 1.0.0
+ gst_base_sink_do_preroll@Base 1.0.0
+ gst_base_sink_get_blocksize@Base 1.0.0
+ gst_base_sink_get_last_sample@Base 1.0.0
+ gst_base_sink_get_latency@Base 1.0.0
+ gst_base_sink_get_max_lateness@Base 1.0.0
+ gst_base_sink_get_render_delay@Base 1.0.0
+ gst_base_sink_get_sync@Base 1.0.0
+ gst_base_sink_get_throttle_time@Base 1.0.0
+ gst_base_sink_get_ts_offset@Base 1.0.0
+ gst_base_sink_get_type@Base 1.0.0
+ gst_base_sink_is_async_enabled@Base 1.0.0
+ gst_base_sink_is_last_sample_enabled@Base 1.0.0
+ gst_base_sink_is_qos_enabled@Base 1.0.0
+ gst_base_sink_query_latency@Base 1.0.0
+ gst_base_sink_set_async_enabled@Base 1.0.0
+ gst_base_sink_set_blocksize@Base 1.0.0
+ gst_base_sink_set_last_sample_enabled@Base 1.0.0
+ gst_base_sink_set_max_lateness@Base 1.0.0
+ gst_base_sink_set_qos_enabled@Base 1.0.0
+ gst_base_sink_set_render_delay@Base 1.0.0
+ gst_base_sink_set_sync@Base 1.0.0
+ gst_base_sink_set_throttle_time@Base 1.0.0
+ gst_base_sink_set_ts_offset@Base 1.0.0
+ gst_base_sink_wait@Base 1.0.0
+ gst_base_sink_wait_clock@Base 1.0.0
+ gst_base_sink_wait_preroll@Base 1.0.0
+ gst_base_src_get_allocator@Base 1.0.0
+ gst_base_src_get_blocksize@Base 1.0.0
+ gst_base_src_get_buffer_pool@Base 1.0.0
+ gst_base_src_get_do_timestamp@Base 1.0.0
+ gst_base_src_get_type@Base 1.0.0
+ gst_base_src_is_async@Base 1.0.0
+ gst_base_src_is_live@Base 1.0.0
+ gst_base_src_new_seamless_segment@Base 1.0.0
+ gst_base_src_query_latency@Base 1.0.0
+ gst_base_src_set_async@Base 1.0.0
+ gst_base_src_set_blocksize@Base 1.0.0
+ gst_base_src_set_caps@Base 1.0.0
+ gst_base_src_set_do_timestamp@Base 1.0.0
+ gst_base_src_set_dynamic_size@Base 1.0.0
+ gst_base_src_set_format@Base 1.0.0
+ gst_base_src_set_live@Base 1.0.0
+ gst_base_src_start_complete@Base 1.0.0
+ gst_base_src_start_wait@Base 1.0.0
+ gst_base_src_wait_playing@Base 1.0.0
+ gst_base_transform_get_allocator@Base 1.0.0
+ gst_base_transform_get_buffer_pool@Base 1.0.0
+ gst_base_transform_get_type@Base 1.0.0
+ gst_base_transform_is_in_place@Base 1.0.0
+ gst_base_transform_is_passthrough@Base 1.0.0
+ gst_base_transform_is_qos_enabled@Base 1.0.0
+ gst_base_transform_reconfigure_sink@Base 1.0.0
+ gst_base_transform_reconfigure_src@Base 1.0.0
+ gst_base_transform_set_gap_aware@Base 1.0.0
+ gst_base_transform_set_in_place@Base 1.0.0
+ gst_base_transform_set_passthrough@Base 1.0.0
+ gst_base_transform_set_prefer_passthrough@Base 1.0.0
+ gst_base_transform_set_qos_enabled@Base 1.0.0
+ gst_base_transform_update_qos@Base 1.0.0
+ gst_bit_reader_free@Base 1.0.0
+ gst_bit_reader_get_bits_uint16@Base 1.0.0
+ gst_bit_reader_get_bits_uint32@Base 1.0.0
+ gst_bit_reader_get_bits_uint64@Base 1.0.0
+ gst_bit_reader_get_bits_uint8@Base 1.0.0
+ gst_bit_reader_get_pos@Base 1.0.0
+ gst_bit_reader_get_remaining@Base 1.0.0
+ gst_bit_reader_get_size@Base 1.0.0
+ gst_bit_reader_init@Base 1.0.0
+ gst_bit_reader_new@Base 1.0.0
+ gst_bit_reader_peek_bits_uint16@Base 1.0.0
+ gst_bit_reader_peek_bits_uint32@Base 1.0.0
+ gst_bit_reader_peek_bits_uint64@Base 1.0.0
+ gst_bit_reader_peek_bits_uint8@Base 1.0.0
+ gst_bit_reader_set_pos@Base 1.0.0
+ gst_bit_reader_skip@Base 1.0.0
+ gst_bit_reader_skip_to_byte@Base 1.0.0
+ gst_byte_reader_dup_data@Base 1.0.0
+ gst_byte_reader_dup_string_utf16@Base 1.0.0
+ gst_byte_reader_dup_string_utf32@Base 1.0.0
+ gst_byte_reader_dup_string_utf8@Base 1.0.0
+ gst_byte_reader_free@Base 1.0.0
+ gst_byte_reader_get_data@Base 1.0.0
+ gst_byte_reader_get_float32_be@Base 1.0.0
+ gst_byte_reader_get_float32_le@Base 1.0.0
+ gst_byte_reader_get_float64_be@Base 1.0.0
+ gst_byte_reader_get_float64_le@Base 1.0.0
+ gst_byte_reader_get_int16_be@Base 1.0.0
+ gst_byte_reader_get_int16_le@Base 1.0.0
+ gst_byte_reader_get_int24_be@Base 1.0.0
+ gst_byte_reader_get_int24_le@Base 1.0.0
+ gst_byte_reader_get_int32_be@Base 1.0.0
+ gst_byte_reader_get_int32_le@Base 1.0.0
+ gst_byte_reader_get_int64_be@Base 1.0.0
+ gst_byte_reader_get_int64_le@Base 1.0.0
+ gst_byte_reader_get_int8@Base 1.0.0
+ gst_byte_reader_get_pos@Base 1.0.0
+ gst_byte_reader_get_remaining@Base 1.0.0
+ gst_byte_reader_get_size@Base 1.0.0
+ gst_byte_reader_get_string_utf8@Base 1.0.0
+ gst_byte_reader_get_uint16_be@Base 1.0.0
+ gst_byte_reader_get_uint16_le@Base 1.0.0
+ gst_byte_reader_get_uint24_be@Base 1.0.0
+ gst_byte_reader_get_uint24_le@Base 1.0.0
+ gst_byte_reader_get_uint32_be@Base 1.0.0
+ gst_byte_reader_get_uint32_le@Base 1.0.0
+ gst_byte_reader_get_uint64_be@Base 1.0.0
+ gst_byte_reader_get_uint64_le@Base 1.0.0
+ gst_byte_reader_get_uint8@Base 1.0.0
+ gst_byte_reader_init@Base 1.0.0
+ gst_byte_reader_masked_scan_uint32@Base 1.0.0
+ gst_byte_reader_new@Base 1.0.0
+ gst_byte_reader_peek_data@Base 1.0.0
+ gst_byte_reader_peek_float32_be@Base 1.0.0
+ gst_byte_reader_peek_float32_le@Base 1.0.0
+ gst_byte_reader_peek_float64_be@Base 1.0.0
+ gst_byte_reader_peek_float64_le@Base 1.0.0
+ gst_byte_reader_peek_int16_be@Base 1.0.0
+ gst_byte_reader_peek_int16_le@Base 1.0.0
+ gst_byte_reader_peek_int24_be@Base 1.0.0
+ gst_byte_reader_peek_int24_le@Base 1.0.0
+ gst_byte_reader_peek_int32_be@Base 1.0.0
+ gst_byte_reader_peek_int32_le@Base 1.0.0
+ gst_byte_reader_peek_int64_be@Base 1.0.0
+ gst_byte_reader_peek_int64_le@Base 1.0.0
+ gst_byte_reader_peek_int8@Base 1.0.0
+ gst_byte_reader_peek_string_utf8@Base 1.0.0
+ gst_byte_reader_peek_uint16_be@Base 1.0.0
+ gst_byte_reader_peek_uint16_le@Base 1.0.0
+ gst_byte_reader_peek_uint24_be@Base 1.0.0
+ gst_byte_reader_peek_uint24_le@Base 1.0.0
+ gst_byte_reader_peek_uint32_be@Base 1.0.0
+ gst_byte_reader_peek_uint32_le@Base 1.0.0
+ gst_byte_reader_peek_uint64_be@Base 1.0.0
+ gst_byte_reader_peek_uint64_le@Base 1.0.0
+ gst_byte_reader_peek_uint8@Base 1.0.0
+ gst_byte_reader_set_pos@Base 1.0.0
+ gst_byte_reader_skip@Base 1.0.0
+ gst_byte_reader_skip_string_utf16@Base 1.0.0
+ gst_byte_reader_skip_string_utf32@Base 1.0.0
+ gst_byte_reader_skip_string_utf8@Base 1.0.0
+ gst_byte_writer_ensure_free_space@Base 1.0.0
+ gst_byte_writer_fill@Base 1.0.0
+ gst_byte_writer_free@Base 1.0.0
+ gst_byte_writer_free_and_get_buffer@Base 1.0.0
+ gst_byte_writer_free_and_get_data@Base 1.0.0
+ gst_byte_writer_get_remaining@Base 1.0.0
+ gst_byte_writer_init@Base 1.0.0
+ gst_byte_writer_init_with_data@Base 1.0.0
+ gst_byte_writer_init_with_size@Base 1.0.0
+ gst_byte_writer_new@Base 1.0.0
+ gst_byte_writer_new_with_data@Base 1.0.0
+ gst_byte_writer_new_with_size@Base 1.0.0
+ gst_byte_writer_put_data@Base 1.0.0
+ gst_byte_writer_put_float32_be@Base 1.0.0
+ gst_byte_writer_put_float32_le@Base 1.0.0
+ gst_byte_writer_put_float64_be@Base 1.0.0
+ gst_byte_writer_put_float64_le@Base 1.0.0
+ gst_byte_writer_put_int16_be@Base 1.0.0
+ gst_byte_writer_put_int16_le@Base 1.0.0
+ gst_byte_writer_put_int24_be@Base 1.0.0
+ gst_byte_writer_put_int24_le@Base 1.0.0
+ gst_byte_writer_put_int32_be@Base 1.0.0
+ gst_byte_writer_put_int32_le@Base 1.0.0
+ gst_byte_writer_put_int64_be@Base 1.0.0
+ gst_byte_writer_put_int64_le@Base 1.0.0
+ gst_byte_writer_put_int8@Base 1.0.0
+ gst_byte_writer_put_string_utf16@Base 1.0.0
+ gst_byte_writer_put_string_utf32@Base 1.0.0
+ gst_byte_writer_put_string_utf8@Base 1.0.0
+ gst_byte_writer_put_uint16_be@Base 1.0.0
+ gst_byte_writer_put_uint16_le@Base 1.0.0
+ gst_byte_writer_put_uint24_be@Base 1.0.0
+ gst_byte_writer_put_uint24_le@Base 1.0.0
+ gst_byte_writer_put_uint32_be@Base 1.0.0
+ gst_byte_writer_put_uint32_le@Base 1.0.0
+ gst_byte_writer_put_uint64_be@Base 1.0.0
+ gst_byte_writer_put_uint64_le@Base 1.0.0
+ gst_byte_writer_put_uint8@Base 1.0.0
+ gst_byte_writer_reset@Base 1.0.0
+ gst_byte_writer_reset_and_get_buffer@Base 1.0.0
+ gst_byte_writer_reset_and_get_data@Base 1.0.0
+ gst_collect_pads_add_pad@Base 1.0.0
+ gst_collect_pads_available@Base 1.0.0
+ gst_collect_pads_clip_running_time@Base 1.0.0
+ gst_collect_pads_event_default@Base 1.0.0
+ gst_collect_pads_flush@Base 1.0.0
+ gst_collect_pads_get_type@Base 1.0.0
+ gst_collect_pads_new@Base 1.0.0
+ gst_collect_pads_peek@Base 1.0.0
+ gst_collect_pads_pop@Base 1.0.0
+ gst_collect_pads_query_default@Base 1.0.0
+ gst_collect_pads_read_buffer@Base 1.0.0
+ gst_collect_pads_remove_pad@Base 1.0.0
+ gst_collect_pads_set_buffer_function@Base 1.0.0
+ gst_collect_pads_set_clip_function@Base 1.0.0
+ gst_collect_pads_set_compare_function@Base 1.0.0
+ gst_collect_pads_set_event_function@Base 1.0.0
+ gst_collect_pads_set_flushing@Base 1.0.0
+ gst_collect_pads_set_function@Base 1.0.0
+ gst_collect_pads_set_query_function@Base 1.0.0
+ gst_collect_pads_set_waiting@Base 1.0.0
+ gst_collect_pads_start@Base 1.0.0
+ gst_collect_pads_stop@Base 1.0.0
+ gst_collect_pads_take_buffer@Base 1.0.0
+ gst_push_src_get_type@Base 1.0.0
+ gst_type_find_helper@Base 1.0.0
+ gst_type_find_helper_for_buffer@Base 1.0.0
+ gst_type_find_helper_for_data@Base 1.0.0
+ gst_type_find_helper_for_extension@Base 1.0.0
+ gst_type_find_helper_get_range@Base 1.0.0
+libgstcheck-1.0.so.0 libgstreamer1.0-0 #MINVER#
+ _fail_unless@Base 1.0.0
+ _gst_check_expecting_log@Base 1.0.0
+ _gst_check_raised_critical@Base 1.0.0
+ _gst_check_raised_warning@Base 1.0.0
+ _gst_check_run_test_func@Base 1.0.0
+ _gst_check_threads_running@Base 1.0.0
+ _mark_point@Base 1.0.0
+ _tcase_add_test@Base 1.0.0
+ buffers@Base 1.0.0
+ check_cond@Base 1.0.0
+ check_debug@Base 1.0.0
+ check_fork@Base 1.0.0
+ check_major_version@Base 1.0.0
+ check_micro_version@Base 1.0.0
+ check_minor_version@Base 1.0.0
+ check_mutex@Base 1.0.0
+ check_waitpid_and_exit@Base 1.0.0
+ gst_buffer_straw_get_buffer@Base 1.0.0
+ gst_buffer_straw_start_pipeline@Base 1.0.0
+ gst_buffer_straw_stop_pipeline@Base 1.0.0
+ gst_check_abi_list@Base 1.0.0
+ gst_check_buffer_data@Base 1.0.0
+ gst_check_caps_equal@Base 1.0.0
+ gst_check_chain_func@Base 1.0.0
+ gst_check_drop_buffers@Base 1.0.0
+ gst_check_element_push_buffer@Base 1.0.0
+ gst_check_element_push_buffer_list@Base 1.0.0
+ gst_check_init@Base 1.0.0
+ gst_check_message_error@Base 1.0.0
+ gst_check_run_suite@Base 1.0.0
+ gst_check_setup_element@Base 1.0.0
+ gst_check_setup_sink_pad@Base 1.0.0
+ gst_check_setup_sink_pad_by_name@Base 1.0.0
+ gst_check_setup_src_pad@Base 1.0.0
+ gst_check_setup_src_pad_by_name@Base 1.0.0
+ gst_check_teardown_element@Base 1.0.0
+ gst_check_teardown_pad_by_name@Base 1.0.0
+ gst_check_teardown_sink_pad@Base 1.0.0
+ gst_check_teardown_src_pad@Base 1.0.0
+ gst_consistency_checker_add_pad@Base 1.0.0
+ gst_consistency_checker_free@Base 1.0.0
+ gst_consistency_checker_new@Base 1.0.0
+ gst_consistency_checker_reset@Base 1.0.0
+ mutex@Base 1.0.0
+ srunner_add_suite@Base 1.0.0
+ srunner_create@Base 1.0.0
+ srunner_failures@Base 1.0.0
+ srunner_fork_status@Base 1.0.0
+ srunner_free@Base 1.0.0
+ srunner_has_log@Base 1.0.0
+ srunner_has_xml@Base 1.0.0
+ srunner_log_fname@Base 1.0.0
+ srunner_ntests_failed@Base 1.0.0
+ srunner_ntests_run@Base 1.0.0
+ srunner_print@Base 1.0.0
+ srunner_results@Base 1.0.0
+ srunner_run_all@Base 1.0.0
+ srunner_set_fork_status@Base 1.0.0
+ srunner_set_log@Base 1.0.0
+ srunner_set_xml@Base 1.0.0
+ srunner_xml_fname@Base 1.0.0
+ start_cond@Base 1.0.0
+ suite_add_tcase@Base 1.0.0
+ suite_create@Base 1.0.0
+ sync_cond@Base 1.0.0
+ tcase_add_checked_fixture@Base 1.0.0
+ tcase_add_unchecked_fixture@Base 1.0.0
+ tcase_create@Base 1.0.0
+ tcase_fn_start@Base 1.0.0
+ tcase_set_timeout@Base 1.0.0
+ thread_list@Base 1.0.0
+ tr_ctx@Base 1.0.0
+ tr_lfile@Base 1.0.0
+ tr_lno@Base 1.0.0
+ tr_msg@Base 1.0.0
+ tr_rtype@Base 1.0.0
+ tr_tcname@Base 1.0.0
+libgstcontroller-1.0.so.0 libgstreamer1.0-0 #MINVER#
+ gst_argb_control_binding_get_type@Base 1.0.0
+ gst_argb_control_binding_new@Base 1.0.0
+ gst_direct_control_binding_get_type@Base 1.0.0
+ gst_direct_control_binding_new@Base 1.0.0
+ gst_interpolation_control_source_get_type@Base 1.0.0
+ gst_interpolation_control_source_new@Base 1.0.0
+ gst_interpolation_mode_get_type@Base 1.0.0
+ gst_lfo_control_source_get_type@Base 1.0.0
+ gst_lfo_control_source_new@Base 1.0.0
+ gst_lfo_waveform_get_type@Base 1.0.0
+ gst_timed_value_control_invalidate_cache@Base 1.0.0
+ gst_timed_value_control_source_find_control_point_iter@Base 1.0.0
+ gst_timed_value_control_source_get_all@Base 1.0.0
+ gst_timed_value_control_source_get_count@Base 1.0.0
+ gst_timed_value_control_source_get_type@Base 1.0.0
+ gst_timed_value_control_source_set@Base 1.0.0
+ gst_timed_value_control_source_set_from_list@Base 1.0.0
+ gst_timed_value_control_source_unset@Base 1.0.0
+ gst_timed_value_control_source_unset_all@Base 1.0.0
+ gst_trigger_control_source_get_type@Base 1.0.0
+ gst_trigger_control_source_new@Base 1.0.0
+libgstnet-1.0.so.0 libgstreamer1.0-0 #MINVER#
+ gst_buffer_add_net_address_meta@Base 1.0.0
+ gst_net_address_meta_api_get_type@Base 1.0.0
+ gst_net_address_meta_get_info@Base 1.0.0
+ gst_net_client_clock_get_type@Base 1.0.0
+ gst_net_client_clock_new@Base 1.0.0
+ gst_net_time_packet_copy@Base 1.0.0
+ gst_net_time_packet_free@Base 1.0.0
+ gst_net_time_packet_get_type@Base 1.0.0
+ gst_net_time_packet_new@Base 1.0.0
+ gst_net_time_packet_receive@Base 1.0.0
+ gst_net_time_packet_send@Base 1.0.0
+ gst_net_time_packet_serialize@Base 1.0.0
+ gst_net_time_provider_get_type@Base 1.0.0
+ gst_net_time_provider_new@Base 1.0.0
+libgstreamer-1.0.so.0 libgstreamer1.0-0 #MINVER#
+ GST_CAT_BUFFER@Base 1.0.0
+ GST_CAT_BUFFER_LIST@Base 1.0.0
+ GST_CAT_BUS@Base 1.0.0
+ GST_CAT_CALL_TRACE@Base 1.0.0
+ GST_CAT_CAPS@Base 1.0.0
+ GST_CAT_CLOCK@Base 1.0.0
+ GST_CAT_DEFAULT@Base 1.0.0
+ GST_CAT_ELEMENT_PADS@Base 1.0.0
+ GST_CAT_ERROR_SYSTEM@Base 1.0.0
+ GST_CAT_EVENT@Base 1.0.0
+ GST_CAT_GST_INIT@Base 1.0.0
+ GST_CAT_LOCKING@Base 1.0.0
+ GST_CAT_MEMORY@Base 1.0.0
+ GST_CAT_MESSAGE@Base 1.0.0
+ GST_CAT_META@Base 1.0.0
+ GST_CAT_NEGOTIATION@Base 1.0.0
+ GST_CAT_PADS@Base 1.0.0
+ GST_CAT_PARAMS@Base 1.0.0
+ GST_CAT_PARENTAGE@Base 1.0.0
+ GST_CAT_PERFORMANCE@Base 1.0.0
+ GST_CAT_PIPELINE@Base 1.0.0
+ GST_CAT_PLUGIN_INFO@Base 1.0.0
+ GST_CAT_PLUGIN_LOADING@Base 1.0.0
+ GST_CAT_PROBE@Base 1.0.0
+ GST_CAT_PROPERTIES@Base 1.0.0
+ GST_CAT_QOS@Base 1.0.0
+ GST_CAT_REFCOUNTING@Base 1.0.0
+ GST_CAT_REGISTRY@Base 1.0.0
+ GST_CAT_SCHEDULING@Base 1.0.0
+ GST_CAT_SIGNAL@Base 1.0.0
+ GST_CAT_STATES@Base 1.0.0
+ _gst_buffer_list_type@Base 1.0.0
+ _gst_buffer_type@Base 1.0.0
+ _gst_caps_any@Base 1.0.0
+ _gst_caps_none@Base 1.0.0
+ _gst_caps_type@Base 1.0.0
+ _gst_debug_category_new@Base 1.0.0
+ _gst_debug_dump_mem@Base 1.0.0
+ _gst_debug_enabled@Base 1.0.0
+ _gst_debug_get_category@Base 1.0.0
+ _gst_debug_min@Base 1.0.0
+ _gst_debug_nameof_funcptr@Base 1.0.0
+ _gst_debug_register_funcptr@Base 1.0.0
+ _gst_disable_registry_cache@Base 1.0.0
+ _gst_element_error_printf@Base 1.0.0
+ _gst_event_type@Base 1.0.0
+ _gst_meta_tag_memory@Base 1.0.0
+ _gst_meta_transform_copy@Base 1.0.0
+ _gst_plugin_loader_client_run@Base 1.0.0
+ _gst_sample_type@Base 1.0.0
+ _gst_structure_type@Base 1.0.0
+ _gst_trace_mutex@Base 1.0.0
+ gst_allocation_params_copy@Base 1.0.0
+ gst_allocation_params_free@Base 1.0.0
+ gst_allocation_params_get_type@Base 1.0.0
+ gst_allocation_params_init@Base 1.0.0
+ gst_allocator_alloc@Base 1.0.0
+ gst_allocator_find@Base 1.0.0
+ gst_allocator_flags_get_type@Base 1.0.0
+ gst_allocator_free@Base 1.0.0
+ gst_allocator_get_type@Base 1.0.0
+ gst_allocator_register@Base 1.0.0
+ gst_allocator_set_default@Base 1.0.0
+ gst_atomic_queue_get_type@Base 1.0.0
+ gst_atomic_queue_length@Base 1.0.0
+ gst_atomic_queue_new@Base 1.0.0
+ gst_atomic_queue_peek@Base 1.0.0
+ gst_atomic_queue_pop@Base 1.0.0
+ gst_atomic_queue_push@Base 1.0.0
+ gst_atomic_queue_ref@Base 1.0.0
+ gst_atomic_queue_unref@Base 1.0.0
+ gst_bin_add@Base 1.0.0
+ gst_bin_add_many@Base 1.0.0
+ gst_bin_find_unlinked_pad@Base 1.0.0
+ gst_bin_flags_get_type@Base 1.0.0
+ gst_bin_get_by_interface@Base 1.0.0
+ gst_bin_get_by_name@Base 1.0.0
+ gst_bin_get_by_name_recurse_up@Base 1.0.0
+ gst_bin_get_type@Base 1.0.0
+ gst_bin_iterate_all_by_interface@Base 1.0.0
+ gst_bin_iterate_elements@Base 1.0.0
+ gst_bin_iterate_recurse@Base 1.0.0
+ gst_bin_iterate_sinks@Base 1.0.0
+ gst_bin_iterate_sorted@Base 1.0.0
+ gst_bin_iterate_sources@Base 1.0.0
+ gst_bin_new@Base 1.0.0
+ gst_bin_recalculate_latency@Base 1.0.0
+ gst_bin_remove@Base 1.0.0
+ gst_bin_remove_many@Base 1.0.0
+ gst_bitmask_get_type@Base 1.0.0
+ gst_buffer_add_meta@Base 1.0.0
+ gst_buffer_append@Base 1.0.0
+ gst_buffer_append_memory@Base 1.0.0
+ gst_buffer_append_region@Base 1.0.0
+ gst_buffer_copy_flags_get_type@Base 1.0.0
+ gst_buffer_copy_into@Base 1.0.0
+ gst_buffer_copy_region@Base 1.0.0
+ gst_buffer_extract@Base 1.0.0
+ gst_buffer_fill@Base 1.0.0
+ gst_buffer_find_memory@Base 1.0.0
+ gst_buffer_flags_get_type@Base 1.0.0
+ gst_buffer_foreach_meta@Base 1.0.0
+ gst_buffer_get_all_memory@Base 1.0.0
+ gst_buffer_get_memory@Base 1.0.0
+ gst_buffer_get_memory_range@Base 1.0.0
+ gst_buffer_get_meta@Base 1.0.0
+ gst_buffer_get_size@Base 1.0.0
+ gst_buffer_get_sizes@Base 1.0.0
+ gst_buffer_get_sizes_range@Base 1.0.0
+ gst_buffer_get_type@Base 1.0.0
+ gst_buffer_insert_memory@Base 1.0.0
+ gst_buffer_iterate_meta@Base 1.0.0
+ gst_buffer_list_foreach@Base 1.0.0
+ gst_buffer_list_get@Base 1.0.0
+ gst_buffer_list_get_type@Base 1.0.0
+ gst_buffer_list_insert@Base 1.0.0
+ gst_buffer_list_length@Base 1.0.0
+ gst_buffer_list_new@Base 1.0.0
+ gst_buffer_list_new_sized@Base 1.0.0
+ gst_buffer_list_remove@Base 1.0.0
+ gst_buffer_map@Base 1.0.0
+ gst_buffer_map_range@Base 1.0.0
+ gst_buffer_memcmp@Base 1.0.0
+ gst_buffer_memset@Base 1.0.0
+ gst_buffer_n_memory@Base 1.0.0
+ gst_buffer_new@Base 1.0.0
+ gst_buffer_new_allocate@Base 1.0.0
+ gst_buffer_new_wrapped@Base 1.0.0
+ gst_buffer_new_wrapped_full@Base 1.0.0
+ gst_buffer_peek_memory@Base 1.0.0
+ gst_buffer_pool_acquire_buffer@Base 1.0.0
+ gst_buffer_pool_acquire_flags_get_type@Base 1.0.0
+ gst_buffer_pool_config_add_option@Base 1.0.0
+ gst_buffer_pool_config_get_allocator@Base 1.0.0
+ gst_buffer_pool_config_get_option@Base 1.0.0
+ gst_buffer_pool_config_get_params@Base 1.0.0
+ gst_buffer_pool_config_has_option@Base 1.0.0
+ gst_buffer_pool_config_n_options@Base 1.0.0
+ gst_buffer_pool_config_set_allocator@Base 1.0.0
+ gst_buffer_pool_config_set_params@Base 1.0.0
+ gst_buffer_pool_get_config@Base 1.0.0
+ gst_buffer_pool_get_options@Base 1.0.0
+ gst_buffer_pool_get_type@Base 1.0.0
+ gst_buffer_pool_has_option@Base 1.0.0
+ gst_buffer_pool_is_active@Base 1.0.0
+ gst_buffer_pool_new@Base 1.0.0
+ gst_buffer_pool_release_buffer@Base 1.0.0
+ gst_buffer_pool_set_active@Base 1.0.0
+ gst_buffer_pool_set_config@Base 1.0.0
+ gst_buffer_prepend_memory@Base 1.0.0
+ gst_buffer_remove_all_memory@Base 1.0.0
+ gst_buffer_remove_memory@Base 1.0.0
+ gst_buffer_remove_memory_range@Base 1.0.0
+ gst_buffer_remove_meta@Base 1.0.0
+ gst_buffer_replace_all_memory@Base 1.0.0
+ gst_buffer_replace_memory@Base 1.0.0
+ gst_buffer_replace_memory_range@Base 1.0.0
+ gst_buffer_resize@Base 1.0.0
+ gst_buffer_resize_range@Base 1.0.0
+ gst_buffer_set_size@Base 1.0.0
+ gst_buffer_unmap@Base 1.0.0
+ gst_buffering_mode_get_type@Base 1.0.0
+ gst_bus_add_signal_watch@Base 1.0.0
+ gst_bus_add_signal_watch_full@Base 1.0.0
+ gst_bus_add_watch@Base 1.0.0
+ gst_bus_add_watch_full@Base 1.0.0
+ gst_bus_async_signal_func@Base 1.0.0
+ gst_bus_create_watch@Base 1.0.0
+ gst_bus_disable_sync_message_emission@Base 1.0.0
+ gst_bus_enable_sync_message_emission@Base 1.0.0
+ gst_bus_flags_get_type@Base 1.0.0
+ gst_bus_get_type@Base 1.0.0
+ gst_bus_have_pending@Base 1.0.0
+ gst_bus_new@Base 1.0.0
+ gst_bus_peek@Base 1.0.0
+ gst_bus_poll@Base 1.0.0
+ gst_bus_pop@Base 1.0.0
+ gst_bus_pop_filtered@Base 1.0.0
+ gst_bus_post@Base 1.0.0
+ gst_bus_remove_signal_watch@Base 1.0.0
+ gst_bus_set_flushing@Base 1.0.0
+ gst_bus_set_sync_handler@Base 1.0.0
+ gst_bus_sync_reply_get_type@Base 1.0.0
+ gst_bus_sync_signal_handler@Base 1.0.0
+ gst_bus_timed_pop@Base 1.0.0
+ gst_bus_timed_pop_filtered@Base 1.0.0
+ gst_caps_append@Base 1.0.0
+ gst_caps_append_structure@Base 1.0.0
+ gst_caps_can_intersect@Base 1.0.0
+ gst_caps_copy_nth@Base 1.0.0
+ gst_caps_fixate@Base 1.0.0
+ gst_caps_flags_get_type@Base 1.0.0
+ gst_caps_from_string@Base 1.0.0
+ gst_caps_get_size@Base 1.0.0
+ gst_caps_get_structure@Base 1.0.0
+ gst_caps_get_type@Base 1.0.0
+ gst_caps_intersect@Base 1.0.0
+ gst_caps_intersect_full@Base 1.0.0
+ gst_caps_intersect_mode_get_type@Base 1.0.0
+ gst_caps_is_always_compatible@Base 1.0.0
+ gst_caps_is_any@Base 1.0.0
+ gst_caps_is_empty@Base 1.0.0
+ gst_caps_is_equal@Base 1.0.0
+ gst_caps_is_equal_fixed@Base 1.0.0
+ gst_caps_is_fixed@Base 1.0.0
+ gst_caps_is_strictly_equal@Base 1.0.0
+ gst_caps_is_subset@Base 1.0.0
+ gst_caps_is_subset_structure@Base 1.0.0
+ gst_caps_merge@Base 1.0.0
+ gst_caps_merge_structure@Base 1.0.0
+ gst_caps_new_any@Base 1.0.0
+ gst_caps_new_empty@Base 1.0.0
+ gst_caps_new_empty_simple@Base 1.0.0
+ gst_caps_new_full@Base 1.0.0
+ gst_caps_new_full_valist@Base 1.0.0
+ gst_caps_new_simple@Base 1.0.0
+ gst_caps_normalize@Base 1.0.0
+ gst_caps_remove_structure@Base 1.0.0
+ gst_caps_set_simple@Base 1.0.0
+ gst_caps_set_simple_valist@Base 1.0.0
+ gst_caps_set_value@Base 1.0.0
+ gst_caps_simplify@Base 1.0.0
+ gst_caps_steal_structure@Base 1.0.0
+ gst_caps_subtract@Base 1.0.0
+ gst_caps_to_string@Base 1.0.0
+ gst_caps_truncate@Base 1.0.0
+ gst_child_proxy_child_added@Base 1.0.0
+ gst_child_proxy_child_removed@Base 1.0.0
+ gst_child_proxy_get@Base 1.0.0
+ gst_child_proxy_get_child_by_index@Base 1.0.0
+ gst_child_proxy_get_child_by_name@Base 1.0.0
+ gst_child_proxy_get_children_count@Base 1.0.0
+ gst_child_proxy_get_property@Base 1.0.0
+ gst_child_proxy_get_type@Base 1.0.0
+ gst_child_proxy_get_valist@Base 1.0.0
+ gst_child_proxy_lookup@Base 1.0.0
+ gst_child_proxy_set@Base 1.0.0
+ gst_child_proxy_set_property@Base 1.0.0
+ gst_child_proxy_set_valist@Base 1.0.0
+ gst_clock_add_observation@Base 1.0.0
+ gst_clock_adjust_unlocked@Base 1.0.0
+ gst_clock_entry_type_get_type@Base 1.0.0
+ gst_clock_flags_get_type@Base 1.0.0
+ gst_clock_get_calibration@Base 1.0.0
+ gst_clock_get_internal_time@Base 1.0.0
+ gst_clock_get_master@Base 1.0.0
+ gst_clock_get_resolution@Base 1.0.0
+ gst_clock_get_time@Base 1.0.0
+ gst_clock_get_timeout@Base 1.0.0
+ gst_clock_get_type@Base 1.0.0
+ gst_clock_id_compare_func@Base 1.0.0
+ gst_clock_id_get_time@Base 1.0.0
+ gst_clock_id_ref@Base 1.0.0
+ gst_clock_id_unref@Base 1.0.0
+ gst_clock_id_unschedule@Base 1.0.0
+ gst_clock_id_wait@Base 1.0.0
+ gst_clock_id_wait_async@Base 1.0.0
+ gst_clock_new_periodic_id@Base 1.0.0
+ gst_clock_new_single_shot_id@Base 1.0.0
+ gst_clock_periodic_id_reinit@Base 1.0.0
+ gst_clock_return_get_type@Base 1.0.0
+ gst_clock_set_calibration@Base 1.0.0
+ gst_clock_set_master@Base 1.0.0
+ gst_clock_set_resolution@Base 1.0.0
+ gst_clock_set_timeout@Base 1.0.0
+ gst_clock_single_shot_id_reinit@Base 1.0.0
+ gst_clock_type_get_type@Base 1.0.0
+ gst_clock_unadjust_unlocked@Base 1.0.0
+ gst_control_binding_get_g_value_array@Base 1.0.0
+ gst_control_binding_get_type@Base 1.0.0
+ gst_control_binding_get_value@Base 1.0.0
+ gst_control_binding_get_value_array@Base 1.0.0
+ gst_control_binding_is_disabled@Base 1.0.0
+ gst_control_binding_set_disabled@Base 1.0.0
+ gst_control_binding_sync_values@Base 1.0.0
+ gst_control_source_get_type@Base 1.0.0
+ gst_control_source_get_value@Base 1.0.0
+ gst_control_source_get_value_array@Base 1.0.0
+ gst_core_error_get_type@Base 1.0.0
+ gst_core_error_quark@Base 1.0.0
+ gst_date_time_get_day@Base 1.0.0
+ gst_date_time_get_hour@Base 1.0.0
+ gst_date_time_get_microsecond@Base 1.0.0
+ gst_date_time_get_minute@Base 1.0.0
+ gst_date_time_get_month@Base 1.0.0
+ gst_date_time_get_second@Base 1.0.0
+ gst_date_time_get_time_zone_offset@Base 1.0.0
+ gst_date_time_get_type@Base 1.0.0
+ gst_date_time_get_year@Base 1.0.0
+ gst_date_time_has_day@Base 1.0.0
+ gst_date_time_has_month@Base 1.0.0
+ gst_date_time_has_second@Base 1.0.0
+ gst_date_time_has_time@Base 1.0.0
+ gst_date_time_has_year@Base 1.0.0
+ gst_date_time_new@Base 1.0.0
+ gst_date_time_new_from_g_date_time@Base 1.0.0
+ gst_date_time_new_from_iso8601_string@Base 1.0.0
+ gst_date_time_new_from_unix_epoch_local_time@Base 1.0.0
+ gst_date_time_new_from_unix_epoch_utc@Base 1.0.0
+ gst_date_time_new_local_time@Base 1.0.0
+ gst_date_time_new_now_local_time@Base 1.0.0
+ gst_date_time_new_now_utc@Base 1.0.0
+ gst_date_time_new_y@Base 1.0.0
+ gst_date_time_new_ym@Base 1.0.0
+ gst_date_time_new_ymd@Base 1.0.0
+ gst_date_time_ref@Base 1.0.0
+ gst_date_time_to_g_date_time@Base 1.0.0
+ gst_date_time_to_iso8601_string@Base 1.0.0
+ gst_date_time_unref@Base 1.0.0
+ gst_debug_add_log_function@Base 1.0.0
+ gst_debug_bin_to_dot_file@Base 1.0.0
+ gst_debug_bin_to_dot_file_with_ts@Base 1.0.0
+ gst_debug_category_free@Base 1.0.0
+ gst_debug_category_get_color@Base 1.0.0
+ gst_debug_category_get_description@Base 1.0.0
+ gst_debug_category_get_name@Base 1.0.0
+ gst_debug_category_get_threshold@Base 1.0.0
+ gst_debug_category_reset_threshold@Base 1.0.0
+ gst_debug_category_set_threshold@Base 1.0.0
+ gst_debug_color_flags_get_type@Base 1.0.0
+ gst_debug_construct_term_color@Base 1.0.0
+ gst_debug_construct_win_color@Base 1.0.0
+ gst_debug_get_all_categories@Base 1.0.0
+ gst_debug_get_default_threshold@Base 1.0.0
+ gst_debug_graph_details_get_type@Base 1.0.0
+ gst_debug_is_active@Base 1.0.0
+ gst_debug_is_colored@Base 1.0.0
+ gst_debug_level_get_name@Base 1.0.0
+ gst_debug_level_get_type@Base 1.0.0
+ gst_debug_log@Base 1.0.0
+ gst_debug_log_default@Base 1.0.0
+ gst_debug_log_valist@Base 1.0.0
+ gst_debug_message_get@Base 1.0.0
+ gst_debug_print_stack_trace@Base 1.0.0
+ gst_debug_remove_log_function@Base 1.0.0
+ gst_debug_remove_log_function_by_data@Base 1.0.0
+ gst_debug_set_active@Base 1.0.0
+ gst_debug_set_colored@Base 1.0.0
+ gst_debug_set_default_threshold@Base 1.0.0
+ gst_debug_set_threshold_for_name@Base 1.0.0
+ gst_debug_unset_threshold_for_name@Base 1.0.0
+ gst_default_allocator_get_type@Base 1.0.0
+ gst_deinit@Base 1.0.0
+ gst_double_range_get_type@Base 1.0.0
+ gst_element_abort_state@Base 1.0.0
+ gst_element_add_pad@Base 1.0.0
+ gst_element_change_state@Base 1.0.0
+ gst_element_class_add_metadata@Base 1.0.0
+ gst_element_class_add_pad_template@Base 1.0.0
+ gst_element_class_add_static_metadata@Base 1.0.0
+ gst_element_class_get_metadata@Base 1.0.0
+ gst_element_class_get_pad_template@Base 1.0.0
+ gst_element_class_get_pad_template_list@Base 1.0.0
+ gst_element_class_set_metadata@Base 1.0.0
+ gst_element_class_set_static_metadata@Base 1.0.0
+ gst_element_continue_state@Base 1.0.0
+ gst_element_create_all_pads@Base 1.0.0
+ gst_element_factory_can_sink_all_caps@Base 1.0.0
+ gst_element_factory_can_sink_any_caps@Base 1.0.0
+ gst_element_factory_can_src_all_caps@Base 1.0.0
+ gst_element_factory_can_src_any_caps@Base 1.0.0
+ gst_element_factory_create@Base 1.0.0
+ gst_element_factory_find@Base 1.0.0
+ gst_element_factory_get_element_type@Base 1.0.0
+ gst_element_factory_get_metadata@Base 1.0.0
+ gst_element_factory_get_metadata_keys@Base 1.0.0
+ gst_element_factory_get_num_pad_templates@Base 1.0.0
+ gst_element_factory_get_static_pad_templates@Base 1.0.0
+ gst_element_factory_get_type@Base 1.0.0
+ gst_element_factory_get_uri_protocols@Base 1.0.0
+ gst_element_factory_get_uri_type@Base 1.0.0
+ gst_element_factory_has_interface@Base 1.0.0
+ gst_element_factory_list_filter@Base 1.0.0
+ gst_element_factory_list_get_elements@Base 1.0.0
+ gst_element_factory_list_is_type@Base 1.0.0
+ gst_element_factory_make@Base 1.0.0
+ gst_element_flags_get_type@Base 1.0.0
+ gst_element_get_base_time@Base 1.0.0
+ gst_element_get_bus@Base 1.0.0
+ gst_element_get_clock@Base 1.0.0
+ gst_element_get_compatible_pad@Base 1.0.0
+ gst_element_get_compatible_pad_template@Base 1.0.0
+ gst_element_get_factory@Base 1.0.0
+ gst_element_get_request_pad@Base 1.0.0
+ gst_element_get_start_time@Base 1.0.0
+ gst_element_get_state@Base 1.0.0
+ gst_element_get_static_pad@Base 1.0.0
+ gst_element_get_type@Base 1.0.0
+ gst_element_is_locked_state@Base 1.0.0
+ gst_element_iterate_pads@Base 1.0.0
+ gst_element_iterate_sink_pads@Base 1.0.0
+ gst_element_iterate_src_pads@Base 1.0.0
+ gst_element_link@Base 1.0.0
+ gst_element_link_filtered@Base 1.0.0
+ gst_element_link_many@Base 1.0.0
+ gst_element_link_pads@Base 1.0.0
+ gst_element_link_pads_filtered@Base 1.0.0
+ gst_element_link_pads_full@Base 1.0.0
+ gst_element_lost_state@Base 1.0.0
+ gst_element_make_from_uri@Base 1.0.0
+ gst_element_message_full@Base 1.0.0
+ gst_element_no_more_pads@Base 1.0.0
+ gst_element_post_message@Base 1.0.0
+ gst_element_provide_clock@Base 1.0.0
+ gst_element_query@Base 1.0.0
+ gst_element_query_convert@Base 1.0.0
+ gst_element_query_duration@Base 1.0.0
+ gst_element_query_position@Base 1.0.0
+ gst_element_register@Base 1.0.0
+ gst_element_release_request_pad@Base 1.0.0
+ gst_element_remove_pad@Base 1.0.0
+ gst_element_request_pad@Base 1.0.0
+ gst_element_seek@Base 1.0.0
+ gst_element_seek_simple@Base 1.0.0
+ gst_element_send_event@Base 1.0.0
+ gst_element_set_base_time@Base 1.0.0
+ gst_element_set_bus@Base 1.0.0
+ gst_element_set_clock@Base 1.0.0
+ gst_element_set_locked_state@Base 1.0.0
+ gst_element_set_start_time@Base 1.0.0
+ gst_element_set_state@Base 1.0.0
+ gst_element_state_change_return_get_name@Base 1.0.0
+ gst_element_state_get_name@Base 1.0.0
+ gst_element_sync_state_with_parent@Base 1.0.0
+ gst_element_unlink@Base 1.0.0
+ gst_element_unlink_many@Base 1.0.0
+ gst_element_unlink_pads@Base 1.0.0
+ gst_error_get_message@Base 1.0.0
+ gst_event_copy_segment@Base 1.0.0
+ gst_event_get_seqnum@Base 1.0.0
+ gst_event_get_structure@Base 1.0.0
+ gst_event_get_type@Base 1.0.0
+ gst_event_has_name@Base 1.0.0
+ gst_event_new_buffer_size@Base 1.0.0
+ gst_event_new_caps@Base 1.0.0
+ gst_event_new_custom@Base 1.0.0
+ gst_event_new_eos@Base 1.0.0
+ gst_event_new_flush_start@Base 1.0.0
+ gst_event_new_flush_stop@Base 1.0.0
+ gst_event_new_gap@Base 1.0.0
+ gst_event_new_latency@Base 1.0.0
+ gst_event_new_navigation@Base 1.0.0
+ gst_event_new_qos@Base 1.0.0
+ gst_event_new_reconfigure@Base 1.0.0
+ gst_event_new_seek@Base 1.0.0
+ gst_event_new_segment@Base 1.0.0
+ gst_event_new_segment_done@Base 1.0.0
+ gst_event_new_sink_message@Base 1.0.0
+ gst_event_new_step@Base 1.0.0
+ gst_event_new_stream_start@Base 1.0.0
+ gst_event_new_tag@Base 1.0.0
+ gst_event_new_toc@Base 1.0.0
+ gst_event_new_toc_select@Base 1.0.0
+ gst_event_parse_buffer_size@Base 1.0.0
+ gst_event_parse_caps@Base 1.0.0
+ gst_event_parse_flush_stop@Base 1.0.0
+ gst_event_parse_gap@Base 1.0.0
+ gst_event_parse_latency@Base 1.0.0
+ gst_event_parse_qos@Base 1.0.0
+ gst_event_parse_seek@Base 1.0.0
+ gst_event_parse_segment@Base 1.0.0
+ gst_event_parse_segment_done@Base 1.0.0
+ gst_event_parse_sink_message@Base 1.0.0
+ gst_event_parse_step@Base 1.0.0
+ gst_event_parse_stream_start@Base 1.0.0
+ gst_event_parse_tag@Base 1.0.0
+ gst_event_parse_toc@Base 1.0.0
+ gst_event_parse_toc_select@Base 1.0.0
+ gst_event_set_seqnum@Base 1.0.0
+ gst_event_type_flags_get_type@Base 1.0.0
+ gst_event_type_get_flags@Base 1.0.0
+ gst_event_type_get_name@Base 1.0.0
+ gst_event_type_get_type@Base 1.0.0
+ gst_event_type_to_quark@Base 1.0.0
+ gst_event_writable_structure@Base 1.0.0
+ gst_filename_to_uri@Base 1.0.0
+ gst_flow_get_name@Base 1.0.0
+ gst_flow_return_get_type@Base 1.0.0
+ gst_flow_to_quark@Base 1.0.0
+ gst_format_get_by_nick@Base 1.0.0
+ gst_format_get_details@Base 1.0.0
+ gst_format_get_name@Base 1.0.0
+ gst_format_get_type@Base 1.0.0
+ gst_format_iterate_definitions@Base 1.0.0
+ gst_format_register@Base 1.0.0
+ gst_format_to_quark@Base 1.0.0
+ gst_formats_contains@Base 1.0.0
+ gst_fraction_get_type@Base 1.0.0
+ gst_fraction_range_get_type@Base 1.0.0
+ gst_ghost_pad_activate_mode_default@Base 1.0.0
+ gst_ghost_pad_construct@Base 1.0.0
+ gst_ghost_pad_get_target@Base 1.0.0
+ gst_ghost_pad_get_type@Base 1.0.0
+ gst_ghost_pad_internal_activate_mode_default@Base 1.0.0
+ gst_ghost_pad_new@Base 1.0.0
+ gst_ghost_pad_new_from_template@Base 1.0.0
+ gst_ghost_pad_new_no_target@Base 1.0.0
+ gst_ghost_pad_new_no_target_from_template@Base 1.0.0
+ gst_ghost_pad_set_target@Base 1.0.0
+ gst_init@Base 1.0.0
+ gst_init_check@Base 1.0.0
+ gst_init_get_option_group@Base 1.0.0
+ gst_int64_range_get_type@Base 1.0.0
+ gst_int_range_get_type@Base 1.0.0
+ gst_is_initialized@Base 1.0.0
+ gst_iterator_copy@Base 1.0.0
+ gst_iterator_filter@Base 1.0.0
+ gst_iterator_find_custom@Base 1.0.0
+ gst_iterator_fold@Base 1.0.0
+ gst_iterator_foreach@Base 1.0.0
+ gst_iterator_free@Base 1.0.0
+ gst_iterator_get_type@Base 1.0.0
+ gst_iterator_item_get_type@Base 1.0.0
+ gst_iterator_new@Base 1.0.0
+ gst_iterator_new_list@Base 1.0.0
+ gst_iterator_new_single@Base 1.0.0
+ gst_iterator_next@Base 1.0.0
+ gst_iterator_push@Base 1.0.0
+ gst_iterator_result_get_type@Base 1.0.0
+ gst_iterator_resync@Base 1.0.0
+ gst_library_error_get_type@Base 1.0.0
+ gst_library_error_quark@Base 1.0.0
+ gst_lock_flags_get_type@Base 1.0.0
+ gst_map_flags_get_type@Base 1.0.0
+ gst_memory_alignment@Base 1.0.0
+ gst_memory_copy@Base 1.0.0
+ gst_memory_flags_get_type@Base 1.0.0
+ gst_memory_get_sizes@Base 1.0.0
+ gst_memory_get_type@Base 1.0.0
+ gst_memory_init@Base 1.0.0
+ gst_memory_is_span@Base 1.0.0
+ gst_memory_make_mapped@Base 1.0.0
+ gst_memory_map@Base 1.0.0
+ gst_memory_new_wrapped@Base 1.0.0
+ gst_memory_resize@Base 1.0.0
+ gst_memory_share@Base 1.0.0
+ gst_memory_unmap@Base 1.0.0
+ gst_message_get_seqnum@Base 1.0.0
+ gst_message_get_stream_status_object@Base 1.0.0
+ gst_message_get_structure@Base 1.0.0
+ gst_message_get_type@Base 1.0.0
+ gst_message_has_name@Base 1.0.0
+ gst_message_new_application@Base 1.0.0
+ gst_message_new_async_done@Base 1.0.0
+ gst_message_new_async_start@Base 1.0.0
+ gst_message_new_buffering@Base 1.0.0
+ gst_message_new_clock_lost@Base 1.0.0
+ gst_message_new_clock_provide@Base 1.0.0
+ gst_message_new_custom@Base 1.0.0
+ gst_message_new_duration_changed@Base 1.0.0
+ gst_message_new_element@Base 1.0.0
+ gst_message_new_eos@Base 1.0.0
+ gst_message_new_error@Base 1.0.0
+ gst_message_new_info@Base 1.0.0
+ gst_message_new_latency@Base 1.0.0
+ gst_message_new_new_clock@Base 1.0.0
+ gst_message_new_progress@Base 1.0.0
+ gst_message_new_qos@Base 1.0.0
+ gst_message_new_request_state@Base 1.0.0
+ gst_message_new_reset_time@Base 1.0.0
+ gst_message_new_segment_done@Base 1.0.0
+ gst_message_new_segment_start@Base 1.0.0
+ gst_message_new_state_changed@Base 1.0.0
+ gst_message_new_state_dirty@Base 1.0.0
+ gst_message_new_step_done@Base 1.0.0
+ gst_message_new_step_start@Base 1.0.0
+ gst_message_new_stream_start@Base 1.0.0
+ gst_message_new_stream_status@Base 1.0.0
+ gst_message_new_structure_change@Base 1.0.0
+ gst_message_new_tag@Base 1.0.0
+ gst_message_new_toc@Base 1.0.0
+ gst_message_new_warning@Base 1.0.0
+ gst_message_parse_async_done@Base 1.0.0
+ gst_message_parse_buffering@Base 1.0.0
+ gst_message_parse_buffering_stats@Base 1.0.0
+ gst_message_parse_clock_lost@Base 1.0.0
+ gst_message_parse_clock_provide@Base 1.0.0
+ gst_message_parse_error@Base 1.0.0
+ gst_message_parse_info@Base 1.0.0
+ gst_message_parse_new_clock@Base 1.0.0
+ gst_message_parse_progress@Base 1.0.0
+ gst_message_parse_qos@Base 1.0.0
+ gst_message_parse_qos_stats@Base 1.0.0
+ gst_message_parse_qos_values@Base 1.0.0
+ gst_message_parse_request_state@Base 1.0.0
+ gst_message_parse_reset_time@Base 1.0.0
+ gst_message_parse_segment_done@Base 1.0.0
+ gst_message_parse_segment_start@Base 1.0.0
+ gst_message_parse_state_changed@Base 1.0.0
+ gst_message_parse_step_done@Base 1.0.0
+ gst_message_parse_step_start@Base 1.0.0
+ gst_message_parse_stream_status@Base 1.0.0
+ gst_message_parse_structure_change@Base 1.0.0
+ gst_message_parse_tag@Base 1.0.0
+ gst_message_parse_toc@Base 1.0.0
+ gst_message_parse_warning@Base 1.0.0
+ gst_message_set_buffering_stats@Base 1.0.0
+ gst_message_set_qos_stats@Base 1.0.0
+ gst_message_set_qos_values@Base 1.0.0
+ gst_message_set_seqnum@Base 1.0.0
+ gst_message_set_stream_status_object@Base 1.0.0
+ gst_message_type_get_name@Base 1.0.0
+ gst_message_type_get_type@Base 1.0.0
+ gst_message_type_to_quark@Base 1.0.0
+ gst_meta_api_type_has_tag@Base 1.0.0
+ gst_meta_api_type_register@Base 1.0.0
+ gst_meta_flags_get_type@Base 1.0.0
+ gst_meta_get_info@Base 1.0.0
+ gst_meta_register@Base 1.0.0
+ gst_mini_object_copy@Base 1.0.0
+ gst_mini_object_flags_get_type@Base 1.0.0
+ gst_mini_object_get_qdata@Base 1.0.0
+ gst_mini_object_init@Base 1.0.0
+ gst_mini_object_is_writable@Base 1.0.0
+ gst_mini_object_lock@Base 1.0.0
+ gst_mini_object_make_writable@Base 1.0.0
+ gst_mini_object_ref@Base 1.0.0
+ gst_mini_object_replace@Base 1.0.0
+ gst_mini_object_set_qdata@Base 1.0.0
+ gst_mini_object_steal@Base 1.0.0
+ gst_mini_object_steal_qdata@Base 1.0.0
+ gst_mini_object_take@Base 1.0.0
+ gst_mini_object_unlock@Base 1.0.0
+ gst_mini_object_unref@Base 1.0.0
+ gst_mini_object_weak_ref@Base 1.0.0
+ gst_mini_object_weak_unref@Base 1.0.0
+ gst_object_add_control_binding@Base 1.0.0
+ gst_object_check_uniqueness@Base 1.0.0
+ gst_object_default_deep_notify@Base 1.0.0
+ gst_object_default_error@Base 1.0.0
+ gst_object_flags_get_type@Base 1.0.0
+ gst_object_get_control_binding@Base 1.0.0
+ gst_object_get_control_rate@Base 1.0.0
+ gst_object_get_g_value_array@Base 1.0.0
+ gst_object_get_name@Base 1.0.0
+ gst_object_get_parent@Base 1.0.0
+ gst_object_get_path_string@Base 1.0.0
+ gst_object_get_type@Base 1.0.0
+ gst_object_get_value@Base 1.0.0
+ gst_object_get_value_array@Base 1.0.0
+ gst_object_has_active_control_bindings@Base 1.0.0
+ gst_object_has_ancestor@Base 1.0.0
+ gst_object_ref@Base 1.0.0
+ gst_object_ref_sink@Base 1.0.0
+ gst_object_remove_control_binding@Base 1.0.0
+ gst_object_replace@Base 1.0.0
+ gst_object_set_control_binding_disabled@Base 1.0.0
+ gst_object_set_control_bindings_disabled@Base 1.0.0
+ gst_object_set_control_rate@Base 1.0.0
+ gst_object_set_name@Base 1.0.0
+ gst_object_set_parent@Base 1.0.0
+ gst_object_suggest_next_sync@Base 1.0.0
+ gst_object_sync_values@Base 1.0.0
+ gst_object_unparent@Base 1.0.0
+ gst_object_unref@Base 1.0.0
+ gst_pad_activate_mode@Base 1.0.0
+ gst_pad_add_probe@Base 1.0.0
+ gst_pad_can_link@Base 1.0.0
+ gst_pad_chain@Base 1.0.0
+ gst_pad_chain_list@Base 1.0.0
+ gst_pad_check_reconfigure@Base 1.0.0
+ gst_pad_create_stream_id@Base 1.0.0
+ gst_pad_create_stream_id_printf@Base 1.0.0
+ gst_pad_create_stream_id_printf_valist@Base 1.0.0
+ gst_pad_direction_get_type@Base 1.0.0
+ gst_pad_event_default@Base 1.0.0
+ gst_pad_flags_get_type@Base 1.0.0
+ gst_pad_forward@Base 1.0.0
+ gst_pad_get_allowed_caps@Base 1.0.0
+ gst_pad_get_current_caps@Base 1.0.0
+ gst_pad_get_direction@Base 1.0.0
+ gst_pad_get_element_private@Base 1.0.0
+ gst_pad_get_offset@Base 1.0.0
+ gst_pad_get_pad_template@Base 1.0.0
+ gst_pad_get_pad_template_caps@Base 1.0.0
+ gst_pad_get_parent_element@Base 1.0.0
+ gst_pad_get_peer@Base 1.0.0
+ gst_pad_get_range@Base 1.0.0
+ gst_pad_get_sticky_event@Base 1.0.0
+ gst_pad_get_type@Base 1.0.0
+ gst_pad_has_current_caps@Base 1.0.0
+ gst_pad_is_active@Base 1.0.0
+ gst_pad_is_blocked@Base 1.0.0
+ gst_pad_is_blocking@Base 1.0.0
+ gst_pad_is_linked@Base 1.0.0
+ gst_pad_iterate_internal_links@Base 1.0.0
+ gst_pad_iterate_internal_links_default@Base 1.0.0
+ gst_pad_link@Base 1.0.0
+ gst_pad_link_check_get_type@Base 1.0.0
+ gst_pad_link_full@Base 1.0.0
+ gst_pad_link_return_get_type@Base 1.0.0
+ gst_pad_mark_reconfigure@Base 1.0.0
+ gst_pad_mode_get_name@Base 1.0.0
+ gst_pad_mode_get_type@Base 1.0.0
+ gst_pad_needs_reconfigure@Base 1.0.0
+ gst_pad_new@Base 1.0.0
+ gst_pad_new_from_static_template@Base 1.0.0
+ gst_pad_new_from_template@Base 1.0.0
+ gst_pad_pause_task@Base 1.0.0
+ gst_pad_peer_query@Base 1.0.0
+ gst_pad_peer_query_accept_caps@Base 1.0.0
+ gst_pad_peer_query_caps@Base 1.0.0
+ gst_pad_peer_query_convert@Base 1.0.0
+ gst_pad_peer_query_duration@Base 1.0.0
+ gst_pad_peer_query_position@Base 1.0.0
+ gst_pad_presence_get_type@Base 1.0.0
+ gst_pad_probe_info_get_buffer@Base 1.0.0
+ gst_pad_probe_info_get_buffer_list@Base 1.0.0
+ gst_pad_probe_info_get_event@Base 1.0.0
+ gst_pad_probe_info_get_query@Base 1.0.0
+ gst_pad_probe_return_get_type@Base 1.0.0
+ gst_pad_probe_type_get_type@Base 1.0.0
+ gst_pad_proxy_query_accept_caps@Base 1.0.0
+ gst_pad_proxy_query_caps@Base 1.0.0
+ gst_pad_pull_range@Base 1.0.0
+ gst_pad_push@Base 1.0.0
+ gst_pad_push_event@Base 1.0.0
+ gst_pad_push_list@Base 1.0.0
+ gst_pad_query@Base 1.0.0
+ gst_pad_query_accept_caps@Base 1.0.0
+ gst_pad_query_caps@Base 1.0.0
+ gst_pad_query_convert@Base 1.0.0
+ gst_pad_query_default@Base 1.0.0
+ gst_pad_query_duration@Base 1.0.0
+ gst_pad_query_position@Base 1.0.0
+ gst_pad_remove_probe@Base 1.0.0
+ gst_pad_send_event@Base 1.0.0
+ gst_pad_set_activate_function_full@Base 1.0.0
+ gst_pad_set_activatemode_function_full@Base 1.0.0
+ gst_pad_set_active@Base 1.0.0
+ gst_pad_set_chain_function_full@Base 1.0.0
+ gst_pad_set_chain_list_function_full@Base 1.0.0
+ gst_pad_set_element_private@Base 1.0.0
+ gst_pad_set_event_function_full@Base 1.0.0
+ gst_pad_set_getrange_function_full@Base 1.0.0
+ gst_pad_set_iterate_internal_links_function_full@Base 1.0.0
+ gst_pad_set_link_function_full@Base 1.0.0
+ gst_pad_set_offset@Base 1.0.0
+ gst_pad_set_query_function_full@Base 1.0.0
+ gst_pad_set_unlink_function_full@Base 1.0.0
+ gst_pad_start_task@Base 1.0.0
+ gst_pad_sticky_events_foreach@Base 1.0.0
+ gst_pad_stop_task@Base 1.0.0
+ gst_pad_template_flags_get_type@Base 1.0.0
+ gst_pad_template_get_caps@Base 1.0.0
+ gst_pad_template_get_type@Base 1.0.0
+ gst_pad_template_new@Base 1.0.0
+ gst_pad_template_pad_created@Base 1.0.0
+ gst_pad_unlink@Base 1.0.0
+ gst_pad_use_fixed_caps@Base 1.0.0
+ gst_param_spec_fraction@Base 1.0.0
+ gst_param_spec_fraction_get_type@Base 1.0.0
+ gst_parse_bin_from_description@Base 1.0.0
+ gst_parse_bin_from_description_full@Base 1.0.0
+ gst_parse_context_free@Base 1.0.0
+ gst_parse_context_get_missing_elements@Base 1.0.0
+ gst_parse_context_get_type@Base 1.0.0
+ gst_parse_context_new@Base 1.0.0
+ gst_parse_error_get_type@Base 1.0.0
+ gst_parse_error_quark@Base 1.0.0
+ gst_parse_flags_get_type@Base 1.0.0
+ gst_parse_launch@Base 1.0.0
+ gst_parse_launch_full@Base 1.0.0
+ gst_parse_launchv@Base 1.0.0
+ gst_parse_launchv_full@Base 1.0.0
+ gst_pipeline_auto_clock@Base 1.0.0
+ gst_pipeline_flags_get_type@Base 1.0.0
+ gst_pipeline_get_auto_flush_bus@Base 1.0.0
+ gst_pipeline_get_bus@Base 1.0.0
+ gst_pipeline_get_clock@Base 1.0.0
+ gst_pipeline_get_delay@Base 1.0.0
+ gst_pipeline_get_type@Base 1.0.0
+ gst_pipeline_new@Base 1.0.0
+ gst_pipeline_set_auto_flush_bus@Base 1.0.0
+ gst_pipeline_set_clock@Base 1.0.0
+ gst_pipeline_set_delay@Base 1.0.0
+ gst_pipeline_use_clock@Base 1.0.0
+ gst_plugin_add_dependency@Base 1.0.0
+ gst_plugin_add_dependency_simple@Base 1.0.0
+ gst_plugin_dependency_flags_get_type@Base 1.0.0
+ gst_plugin_error_get_type@Base 1.0.0
+ gst_plugin_error_quark@Base 1.0.0
+ gst_plugin_feature_check_version@Base 1.0.0
+ gst_plugin_feature_get_plugin@Base 1.0.0
+ gst_plugin_feature_get_rank@Base 1.0.0
+ gst_plugin_feature_get_type@Base 1.0.0
+ gst_plugin_feature_list_copy@Base 1.0.0
+ gst_plugin_feature_list_debug@Base 1.0.0
+ gst_plugin_feature_list_free@Base 1.0.0
+ gst_plugin_feature_load@Base 1.0.0
+ gst_plugin_feature_rank_compare_func@Base 1.0.0
+ gst_plugin_feature_set_rank@Base 1.0.0
+ gst_plugin_flags_get_type@Base 1.0.0
+ gst_plugin_get_cache_data@Base 1.0.0
+ gst_plugin_get_description@Base 1.0.0
+ gst_plugin_get_filename@Base 1.0.0
+ gst_plugin_get_license@Base 1.0.0
+ gst_plugin_get_name@Base 1.0.0
+ gst_plugin_get_origin@Base 1.0.0
+ gst_plugin_get_package@Base 1.0.0
+ gst_plugin_get_release_date_string@Base 1.0.0
+ gst_plugin_get_source@Base 1.0.0
+ gst_plugin_get_type@Base 1.0.0
+ gst_plugin_get_version@Base 1.0.0
+ gst_plugin_is_loaded@Base 1.0.0
+ gst_plugin_list_free@Base 1.0.0
+ gst_plugin_load@Base 1.0.0
+ gst_plugin_load_by_name@Base 1.0.0
+ gst_plugin_load_file@Base 1.0.0
+ gst_plugin_register_static@Base 1.0.0
+ gst_plugin_register_static_full@Base 1.0.0
+ gst_plugin_set_cache_data@Base 1.0.0
+ gst_poll_add_fd@Base 1.0.0
+ gst_poll_fd_can_read@Base 1.0.0
+ gst_poll_fd_can_write@Base 1.0.0
+ gst_poll_fd_ctl_read@Base 1.0.0
+ gst_poll_fd_ctl_write@Base 1.0.0
+ gst_poll_fd_has_closed@Base 1.0.0
+ gst_poll_fd_has_error@Base 1.0.0
+ gst_poll_fd_ignored@Base 1.0.0
+ gst_poll_fd_init@Base 1.0.0
+ gst_poll_free@Base 1.0.0
+ gst_poll_get_read_gpollfd@Base 1.0.0
+ gst_poll_new@Base 1.0.0
+ gst_poll_new_timer@Base 1.0.0
+ gst_poll_read_control@Base 1.0.0
+ gst_poll_remove_fd@Base 1.0.0
+ gst_poll_restart@Base 1.0.0
+ gst_poll_set_controllable@Base 1.0.0
+ gst_poll_set_flushing@Base 1.0.0
+ gst_poll_wait@Base 1.0.0
+ gst_poll_write_control@Base 1.0.0
+ gst_preset_delete_preset@Base 1.0.0
+ gst_preset_get_app_dir@Base 1.0.0
+ gst_preset_get_meta@Base 1.0.0
+ gst_preset_get_preset_names@Base 1.0.0
+ gst_preset_get_property_names@Base 1.0.0
+ gst_preset_get_type@Base 1.0.0
+ gst_preset_load_preset@Base 1.0.0
+ gst_preset_rename_preset@Base 1.0.0
+ gst_preset_save_preset@Base 1.0.0
+ gst_preset_set_app_dir@Base 1.0.0
+ gst_preset_set_meta@Base 1.0.0
+ gst_progress_type_get_type@Base 1.0.0
+ gst_proxy_pad_chain_default@Base 1.0.0
+ gst_proxy_pad_chain_list_default@Base 1.0.0
+ gst_proxy_pad_get_internal@Base 1.0.0
+ gst_proxy_pad_get_type@Base 1.0.0
+ gst_proxy_pad_getrange_default@Base 1.0.0
+ gst_proxy_pad_iterate_internal_links_default@Base 1.0.0
+ gst_qos_type_get_type@Base 1.0.0
+ gst_query_add_allocation_meta@Base 1.0.0
+ gst_query_add_allocation_param@Base 1.0.0
+ gst_query_add_allocation_pool@Base 1.0.0
+ gst_query_add_buffering_range@Base 1.0.0
+ gst_query_add_scheduling_mode@Base 1.0.0
+ gst_query_find_allocation_meta@Base 1.0.0
+ gst_query_get_n_allocation_metas@Base 1.0.0
+ gst_query_get_n_allocation_params@Base 1.0.0
+ gst_query_get_n_allocation_pools@Base 1.0.0
+ gst_query_get_n_buffering_ranges@Base 1.0.0
+ gst_query_get_n_scheduling_modes@Base 1.0.0
+ gst_query_get_structure@Base 1.0.0
+ gst_query_get_type@Base 1.0.0
+ gst_query_has_scheduling_mode@Base 1.0.0
+ gst_query_has_scheduling_mode_with_flags@Base 1.0.0
+ gst_query_new_accept_caps@Base 1.0.0
+ gst_query_new_allocation@Base 1.0.0
+ gst_query_new_buffering@Base 1.0.0
+ gst_query_new_caps@Base 1.0.0
+ gst_query_new_convert@Base 1.0.0
+ gst_query_new_custom@Base 1.0.0
+ gst_query_new_drain@Base 1.0.0
+ gst_query_new_duration@Base 1.0.0
+ gst_query_new_formats@Base 1.0.0
+ gst_query_new_latency@Base 1.0.0
+ gst_query_new_position@Base 1.0.0
+ gst_query_new_scheduling@Base 1.0.0
+ gst_query_new_seeking@Base 1.0.0
+ gst_query_new_segment@Base 1.0.0
+ gst_query_new_uri@Base 1.0.0
+ gst_query_parse_accept_caps@Base 1.0.0
+ gst_query_parse_accept_caps_result@Base 1.0.0
+ gst_query_parse_allocation@Base 1.0.0
+ gst_query_parse_buffering_percent@Base 1.0.0
+ gst_query_parse_buffering_range@Base 1.0.0
+ gst_query_parse_buffering_stats@Base 1.0.0
+ gst_query_parse_caps@Base 1.0.0
+ gst_query_parse_caps_result@Base 1.0.0
+ gst_query_parse_convert@Base 1.0.0
+ gst_query_parse_duration@Base 1.0.0
+ gst_query_parse_latency@Base 1.0.0
+ gst_query_parse_n_formats@Base 1.0.0
+ gst_query_parse_nth_allocation_meta@Base 1.0.0
+ gst_query_parse_nth_allocation_param@Base 1.0.0
+ gst_query_parse_nth_allocation_pool@Base 1.0.0
+ gst_query_parse_nth_buffering_range@Base 1.0.0
+ gst_query_parse_nth_format@Base 1.0.0
+ gst_query_parse_nth_scheduling_mode@Base 1.0.0
+ gst_query_parse_position@Base 1.0.0
+ gst_query_parse_scheduling@Base 1.0.0
+ gst_query_parse_seeking@Base 1.0.0
+ gst_query_parse_segment@Base 1.0.0
+ gst_query_parse_uri@Base 1.0.0
+ gst_query_remove_nth_allocation_meta@Base 1.0.0
+ gst_query_set_accept_caps_result@Base 1.0.0
+ gst_query_set_buffering_percent@Base 1.0.0
+ gst_query_set_buffering_range@Base 1.0.0
+ gst_query_set_buffering_stats@Base 1.0.0
+ gst_query_set_caps_result@Base 1.0.0
+ gst_query_set_convert@Base 1.0.0
+ gst_query_set_duration@Base 1.0.0
+ gst_query_set_formats@Base 1.0.0
+ gst_query_set_formatsv@Base 1.0.0
+ gst_query_set_latency@Base 1.0.0
+ gst_query_set_nth_allocation_param@Base 1.0.0
+ gst_query_set_nth_allocation_pool@Base 1.0.0
+ gst_query_set_position@Base 1.0.0
+ gst_query_set_scheduling@Base 1.0.0
+ gst_query_set_seeking@Base 1.0.0
+ gst_query_set_segment@Base 1.0.0
+ gst_query_set_uri@Base 1.0.0
+ gst_query_type_flags_get_type@Base 1.0.0
+ gst_query_type_get_flags@Base 1.0.0
+ gst_query_type_get_name@Base 1.0.0
+ gst_query_type_get_type@Base 1.0.0
+ gst_query_type_to_quark@Base 1.0.0
+ gst_query_writable_structure@Base 1.0.0
+ gst_rank_get_type@Base 1.0.0
+ gst_registry_add_feature@Base 1.0.0
+ gst_registry_add_plugin@Base 1.0.0
+ gst_registry_check_feature_version@Base 1.0.0
+ gst_registry_feature_filter@Base 1.0.0
+ gst_registry_find_feature@Base 1.0.0
+ gst_registry_find_plugin@Base 1.0.0
+ gst_registry_fork_is_enabled@Base 1.0.0
+ gst_registry_fork_set_enabled@Base 1.0.0
+ gst_registry_get@Base 1.0.0
+ gst_registry_get_feature_list@Base 1.0.0
+ gst_registry_get_feature_list_by_plugin@Base 1.0.0
+ gst_registry_get_feature_list_cookie@Base 1.0.0
+ gst_registry_get_plugin_list@Base 1.0.0
+ gst_registry_get_type@Base 1.0.0
+ gst_registry_lookup@Base 1.0.0
+ gst_registry_lookup_feature@Base 1.0.0
+ gst_registry_plugin_filter@Base 1.0.0
+ gst_registry_remove_feature@Base 1.0.0
+ gst_registry_remove_plugin@Base 1.0.0
+ gst_registry_scan_path@Base 1.0.0
+ gst_resource_error_get_type@Base 1.0.0
+ gst_resource_error_quark@Base 1.0.0
+ gst_sample_get_buffer@Base 1.0.0
+ gst_sample_get_caps@Base 1.0.0
+ gst_sample_get_info@Base 1.0.0
+ gst_sample_get_segment@Base 1.0.0
+ gst_sample_get_type@Base 1.0.0
+ gst_sample_new@Base 1.0.0
+ gst_scheduling_flags_get_type@Base 1.0.0
+ gst_search_mode_get_type@Base 1.0.0
+ gst_seek_flags_get_type@Base 1.0.0
+ gst_seek_type_get_type@Base 1.0.0
+ gst_segment_clip@Base 1.0.0
+ gst_segment_copy@Base 1.0.0
+ gst_segment_copy_into@Base 1.0.0
+ gst_segment_do_seek@Base 1.0.0
+ gst_segment_flags_get_type@Base 1.0.0
+ gst_segment_free@Base 1.0.0
+ gst_segment_get_type@Base 1.0.0
+ gst_segment_init@Base 1.0.0
+ gst_segment_new@Base 1.0.0
+ gst_segment_set_running_time@Base 1.0.0
+ gst_segment_to_position@Base 1.0.0
+ gst_segment_to_running_time@Base 1.0.0
+ gst_segment_to_stream_time@Base 1.0.0
+ gst_segtrap_is_enabled@Base 1.0.0
+ gst_segtrap_set_enabled@Base 1.0.0
+ gst_state_change_get_type@Base 1.0.0
+ gst_state_change_return_get_type@Base 1.0.0
+ gst_state_get_type@Base 1.0.0
+ gst_static_caps_cleanup@Base 1.0.0
+ gst_static_caps_get@Base 1.0.0
+ gst_static_caps_get_type@Base 1.0.0
+ gst_static_pad_template_get@Base 1.0.0
+ gst_static_pad_template_get_caps@Base 1.0.0
+ gst_static_pad_template_get_type@Base 1.0.0
+ gst_stream_error_get_type@Base 1.0.0
+ gst_stream_error_quark@Base 1.0.0
+ gst_stream_status_type_get_type@Base 1.0.0
+ gst_structure_can_intersect@Base 1.0.0
+ gst_structure_change_type_get_type@Base 1.0.0
+ gst_structure_copy@Base 1.0.0
+ gst_structure_fixate@Base 1.0.0
+ gst_structure_fixate_field@Base 1.0.0
+ gst_structure_fixate_field_boolean@Base 1.0.0
+ gst_structure_fixate_field_nearest_double@Base 1.0.0
+ gst_structure_fixate_field_nearest_fraction@Base 1.0.0
+ gst_structure_fixate_field_nearest_int@Base 1.0.0
+ gst_structure_fixate_field_string@Base 1.0.0
+ gst_structure_foreach@Base 1.0.0
+ gst_structure_free@Base 1.0.0
+ gst_structure_from_string@Base 1.0.0
+ gst_structure_get@Base 1.0.0
+ gst_structure_get_boolean@Base 1.0.0
+ gst_structure_get_clock_time@Base 1.0.0
+ gst_structure_get_date@Base 1.0.0
+ gst_structure_get_date_time@Base 1.0.0
+ gst_structure_get_double@Base 1.0.0
+ gst_structure_get_enum@Base 1.0.0
+ gst_structure_get_field_type@Base 1.0.0
+ gst_structure_get_fraction@Base 1.0.0
+ gst_structure_get_int@Base 1.0.0
+ gst_structure_get_name@Base 1.0.0
+ gst_structure_get_name_id@Base 1.0.0
+ gst_structure_get_string@Base 1.0.0
+ gst_structure_get_type@Base 1.0.0
+ gst_structure_get_uint@Base 1.0.0
+ gst_structure_get_valist@Base 1.0.0
+ gst_structure_get_value@Base 1.0.0
+ gst_structure_has_field@Base 1.0.0
+ gst_structure_has_field_typed@Base 1.0.0
+ gst_structure_has_name@Base 1.0.0
+ gst_structure_id_get@Base 1.0.0
+ gst_structure_id_get_valist@Base 1.0.0
+ gst_structure_id_get_value@Base 1.0.0
+ gst_structure_id_has_field@Base 1.0.0
+ gst_structure_id_has_field_typed@Base 1.0.0
+ gst_structure_id_set@Base 1.0.0
+ gst_structure_id_set_valist@Base 1.0.0
+ gst_structure_id_set_value@Base 1.0.0
+ gst_structure_id_take_value@Base 1.0.0
+ gst_structure_intersect@Base 1.0.0
+ gst_structure_is_equal@Base 1.0.0
+ gst_structure_is_subset@Base 1.0.0
+ gst_structure_map_in_place@Base 1.0.0
+ gst_structure_n_fields@Base 1.0.0
+ gst_structure_new@Base 1.0.0
+ gst_structure_new_empty@Base 1.0.0
+ gst_structure_new_id@Base 1.0.0
+ gst_structure_new_id_empty@Base 1.0.0
+ gst_structure_new_valist@Base 1.0.0
+ gst_structure_nth_field_name@Base 1.0.0
+ gst_structure_remove_all_fields@Base 1.0.0
+ gst_structure_remove_field@Base 1.0.0
+ gst_structure_remove_fields@Base 1.0.0
+ gst_structure_remove_fields_valist@Base 1.0.0
+ gst_structure_set@Base 1.0.0
+ gst_structure_set_name@Base 1.0.0
+ gst_structure_set_parent_refcount@Base 1.0.0
+ gst_structure_set_valist@Base 1.0.0
+ gst_structure_set_value@Base 1.0.0
+ gst_structure_take_value@Base 1.0.0
+ gst_structure_to_string@Base 1.0.0
+ gst_system_clock_get_type@Base 1.0.0
+ gst_system_clock_obtain@Base 1.0.0
+ gst_tag_exists@Base 1.0.0
+ gst_tag_flag_get_type@Base 1.0.0
+ gst_tag_get_description@Base 1.0.0
+ gst_tag_get_flag@Base 1.0.0
+ gst_tag_get_nick@Base 1.0.0
+ gst_tag_get_type@Base 1.0.0
+ gst_tag_is_fixed@Base 1.0.0
+ gst_tag_list_add@Base 1.0.0
+ gst_tag_list_add_valist@Base 1.0.0
+ gst_tag_list_add_valist_values@Base 1.0.0
+ gst_tag_list_add_value@Base 1.0.0
+ gst_tag_list_add_values@Base 1.0.0
+ gst_tag_list_copy_value@Base 1.0.0
+ gst_tag_list_foreach@Base 1.0.0
+ gst_tag_list_get_boolean@Base 1.0.0
+ gst_tag_list_get_boolean_index@Base 1.0.0
+ gst_tag_list_get_date@Base 1.0.0
+ gst_tag_list_get_date_index@Base 1.0.0
+ gst_tag_list_get_date_time@Base 1.0.0
+ gst_tag_list_get_date_time_index@Base 1.0.0
+ gst_tag_list_get_double@Base 1.0.0
+ gst_tag_list_get_double_index@Base 1.0.0
+ gst_tag_list_get_float@Base 1.0.0
+ gst_tag_list_get_float_index@Base 1.0.0
+ gst_tag_list_get_int64@Base 1.0.0
+ gst_tag_list_get_int64_index@Base 1.0.0
+ gst_tag_list_get_int@Base 1.0.0
+ gst_tag_list_get_int_index@Base 1.0.0
+ gst_tag_list_get_pointer@Base 1.0.0
+ gst_tag_list_get_pointer_index@Base 1.0.0
+ gst_tag_list_get_sample@Base 1.0.0
+ gst_tag_list_get_sample_index@Base 1.0.0
+ gst_tag_list_get_scope@Base 1.0.0
+ gst_tag_list_get_string@Base 1.0.0
+ gst_tag_list_get_string_index@Base 1.0.0
+ gst_tag_list_get_tag_size@Base 1.0.0
+ gst_tag_list_get_type@Base 1.0.0
+ gst_tag_list_get_uint64@Base 1.0.0
+ gst_tag_list_get_uint64_index@Base 1.0.0
+ gst_tag_list_get_uint@Base 1.0.0
+ gst_tag_list_get_uint_index@Base 1.0.0
+ gst_tag_list_get_value_index@Base 1.0.0
+ gst_tag_list_insert@Base 1.0.0
+ gst_tag_list_is_empty@Base 1.0.0
+ gst_tag_list_is_equal@Base 1.0.0
+ gst_tag_list_merge@Base 1.0.0
+ gst_tag_list_n_tags@Base 1.0.0
+ gst_tag_list_new@Base 1.0.0
+ gst_tag_list_new_empty@Base 1.0.0
+ gst_tag_list_new_from_string@Base 1.0.0
+ gst_tag_list_new_valist@Base 1.0.0
+ gst_tag_list_nth_tag_name@Base 1.0.0
+ gst_tag_list_peek_string_index@Base 1.0.0
+ gst_tag_list_remove_tag@Base 1.0.0
+ gst_tag_list_set_scope@Base 1.0.0
+ gst_tag_list_to_string@Base 1.0.0
+ gst_tag_merge_mode_get_type@Base 1.0.0
+ gst_tag_merge_strings_with_comma@Base 1.0.0
+ gst_tag_merge_use_first@Base 1.0.0
+ gst_tag_register@Base 1.0.0
+ gst_tag_register_static@Base 1.0.0
+ gst_tag_scope_get_type@Base 1.0.0
+ gst_tag_setter_add_tag_valist@Base 1.0.0
+ gst_tag_setter_add_tag_valist_values@Base 1.0.0
+ gst_tag_setter_add_tag_value@Base 1.0.0
+ gst_tag_setter_add_tag_values@Base 1.0.0
+ gst_tag_setter_add_tags@Base 1.0.0
+ gst_tag_setter_get_tag_list@Base 1.0.0
+ gst_tag_setter_get_tag_merge_mode@Base 1.0.0
+ gst_tag_setter_get_type@Base 1.0.0
+ gst_tag_setter_merge_tags@Base 1.0.0
+ gst_tag_setter_reset_tags@Base 1.0.0
+ gst_tag_setter_set_tag_merge_mode@Base 1.0.0
+ gst_task_cleanup_all@Base 1.0.0
+ gst_task_get_pool@Base 1.0.0
+ gst_task_get_state@Base 1.0.0
+ gst_task_get_type@Base 1.0.0
+ gst_task_join@Base 1.0.0
+ gst_task_new@Base 1.0.0
+ gst_task_pause@Base 1.0.0
+ gst_task_pool_cleanup@Base 1.0.0
+ gst_task_pool_get_type@Base 1.0.0
+ gst_task_pool_join@Base 1.0.0
+ gst_task_pool_new@Base 1.0.0
+ gst_task_pool_prepare@Base 1.0.0
+ gst_task_pool_push@Base 1.0.0
+ gst_task_set_enter_callback@Base 1.0.0
+ gst_task_set_leave_callback@Base 1.0.0
+ gst_task_set_lock@Base 1.0.0
+ gst_task_set_pool@Base 1.0.0
+ gst_task_set_state@Base 1.0.0
+ gst_task_start@Base 1.0.0
+ gst_task_state_get_type@Base 1.0.0
+ gst_task_stop@Base 1.0.0
+ gst_toc_append_entry@Base 1.0.0
+ gst_toc_dump@Base 1.0.0
+ gst_toc_entry_append_sub_entry@Base 1.0.0
+ gst_toc_entry_get_entry_type@Base 1.0.0
+ gst_toc_entry_get_parent@Base 1.0.0
+ gst_toc_entry_get_start_stop_times@Base 1.0.0
+ gst_toc_entry_get_sub_entries@Base 1.0.0
+ gst_toc_entry_get_tags@Base 1.0.0
+ gst_toc_entry_get_toc@Base 1.0.0
+ gst_toc_entry_get_type@Base 1.0.0
+ gst_toc_entry_get_uid@Base 1.0.0
+ gst_toc_entry_is_alternative@Base 1.0.0
+ gst_toc_entry_is_sequence@Base 1.0.0
+ gst_toc_entry_merge_tags@Base 1.0.0
+ gst_toc_entry_new@Base 1.0.0
+ gst_toc_entry_set_start_stop_times@Base 1.0.0
+ gst_toc_entry_set_tags@Base 1.0.0
+ gst_toc_entry_type_get_nick@Base 1.0.0
+ gst_toc_entry_type_get_type@Base 1.0.0
+ gst_toc_find_entry@Base 1.0.0
+ gst_toc_get_entries@Base 1.0.0
+ gst_toc_get_scope@Base 1.0.0
+ gst_toc_get_tags@Base 1.0.0
+ gst_toc_get_type@Base 1.0.0
+ gst_toc_merge_tags@Base 1.0.0
+ gst_toc_new@Base 1.0.0
+ gst_toc_scope_get_type@Base 1.0.0
+ gst_toc_set_tags@Base 1.0.0
+ gst_toc_setter_get_toc@Base 1.0.0
+ gst_toc_setter_get_type@Base 1.0.0
+ gst_toc_setter_reset@Base 1.0.0
+ gst_toc_setter_set_toc@Base 1.0.0
+ gst_type_find_factory_call_function@Base 1.0.0
+ gst_type_find_factory_get_caps@Base 1.0.0
+ gst_type_find_factory_get_extensions@Base 1.0.0
+ gst_type_find_factory_get_list@Base 1.0.0
+ gst_type_find_factory_get_type@Base 1.0.0
+ gst_type_find_factory_has_function@Base 1.0.0
+ gst_type_find_get_length@Base 1.0.0
+ gst_type_find_get_type@Base 1.0.0
+ gst_type_find_peek@Base 1.0.0
+ gst_type_find_probability_get_type@Base 1.0.0
+ gst_type_find_register@Base 1.0.0
+ gst_type_find_suggest@Base 1.0.0
+ gst_type_find_suggest_simple@Base 1.0.0
+ gst_update_registry@Base 1.0.0
+ gst_uri_construct@Base 1.0.0
+ gst_uri_error_get_type@Base 1.0.0
+ gst_uri_error_quark@Base 1.0.0
+ gst_uri_get_location@Base 1.0.0
+ gst_uri_get_protocol@Base 1.0.0
+ gst_uri_handler_get_protocols@Base 1.0.0
+ gst_uri_handler_get_type@Base 1.0.0
+ gst_uri_handler_get_uri@Base 1.0.0
+ gst_uri_handler_get_uri_type@Base 1.0.0
+ gst_uri_handler_set_uri@Base 1.0.0
+ gst_uri_has_protocol@Base 1.0.0
+ gst_uri_is_valid@Base 1.0.0
+ gst_uri_protocol_is_supported@Base 1.0.0
+ gst_uri_protocol_is_valid@Base 1.0.0
+ gst_uri_type_get_type@Base 1.0.0
+ gst_util_array_binary_search@Base 1.0.0
+ gst_util_double_to_fraction@Base 1.0.0
+ gst_util_dump_mem@Base 1.0.0
+ gst_util_fraction_add@Base 1.0.0
+ gst_util_fraction_compare@Base 1.0.0
+ gst_util_fraction_multiply@Base 1.0.0
+ gst_util_fraction_to_double@Base 1.0.0
+ gst_util_gdouble_to_guint64@Base 1.0.0
+ gst_util_get_timestamp@Base 1.0.0
+ gst_util_greatest_common_divisor@Base 1.0.0
+ gst_util_greatest_common_divisor_int64@Base 1.0.0
+ gst_util_guint64_to_gdouble@Base 1.0.0
+ gst_util_seqnum_compare@Base 1.0.0
+ gst_util_seqnum_next@Base 1.0.0
+ gst_util_set_object_arg@Base 1.0.0
+ gst_util_set_value_from_string@Base 1.0.0
+ gst_util_uint64_scale@Base 1.0.0
+ gst_util_uint64_scale_ceil@Base 1.0.0
+ gst_util_uint64_scale_int@Base 1.0.0
+ gst_util_uint64_scale_int_ceil@Base 1.0.0
+ gst_util_uint64_scale_int_round@Base 1.0.0
+ gst_util_uint64_scale_round@Base 1.0.0
+ gst_value_array_append_value@Base 1.0.0
+ gst_value_array_get_size@Base 1.0.0
+ gst_value_array_get_type@Base 1.0.0
+ gst_value_array_get_value@Base 1.0.0
+ gst_value_array_prepend_value@Base 1.0.0
+ gst_value_can_compare@Base 1.0.0
+ gst_value_can_intersect@Base 1.0.0
+ gst_value_can_subtract@Base 1.0.0
+ gst_value_can_union@Base 1.0.0
+ gst_value_compare@Base 1.0.0
+ gst_value_deserialize@Base 1.0.0
+ gst_value_fixate@Base 1.0.0
+ gst_value_fraction_multiply@Base 1.0.0
+ gst_value_fraction_subtract@Base 1.0.0
+ gst_value_get_bitmask@Base 1.0.0
+ gst_value_get_caps@Base 1.0.0
+ gst_value_get_double_range_max@Base 1.0.0
+ gst_value_get_double_range_min@Base 1.0.0
+ gst_value_get_fraction_denominator@Base 1.0.0
+ gst_value_get_fraction_numerator@Base 1.0.0
+ gst_value_get_fraction_range_max@Base 1.0.0
+ gst_value_get_fraction_range_min@Base 1.0.0
+ gst_value_get_int64_range_max@Base 1.0.0
+ gst_value_get_int64_range_min@Base 1.0.0
+ gst_value_get_int64_range_step@Base 1.0.0
+ gst_value_get_int_range_max@Base 1.0.0
+ gst_value_get_int_range_min@Base 1.0.0
+ gst_value_get_int_range_step@Base 1.0.0
+ gst_value_get_structure@Base 1.0.0
+ gst_value_init_and_copy@Base 1.0.0
+ gst_value_intersect@Base 1.0.0
+ gst_value_is_fixed@Base 1.0.0
+ gst_value_is_subset@Base 1.0.0
+ gst_value_list_append_value@Base 1.0.0
+ gst_value_list_concat@Base 1.0.0
+ gst_value_list_get_size@Base 1.0.0
+ gst_value_list_get_type@Base 1.0.0
+ gst_value_list_get_value@Base 1.0.0
+ gst_value_list_merge@Base 1.0.0
+ gst_value_list_prepend_value@Base 1.0.0
+ gst_value_register@Base 1.0.0
+ gst_value_serialize@Base 1.0.0
+ gst_value_set_bitmask@Base 1.0.0
+ gst_value_set_caps@Base 1.0.0
+ gst_value_set_double_range@Base 1.0.0
+ gst_value_set_fraction@Base 1.0.0
+ gst_value_set_fraction_range@Base 1.0.0
+ gst_value_set_fraction_range_full@Base 1.0.0
+ gst_value_set_int64_range@Base 1.0.0
+ gst_value_set_int64_range_step@Base 1.0.0
+ gst_value_set_int_range@Base 1.0.0
+ gst_value_set_int_range_step@Base 1.0.0
+ gst_value_set_structure@Base 1.0.0
+ gst_value_subtract@Base 1.0.0
+ gst_value_union@Base 1.0.0
+ gst_version@Base 1.0.0
+ gst_version_string@Base 1.0.0
diff --git a/debian/patches/99_ltmain_as-needed.patch b/debian/patches/99_ltmain_as-needed.patch
new file mode 100644
index 0000000..73f5f2f
--- /dev/null
+++ b/debian/patches/99_ltmain_as-needed.patch
@@ -0,0 +1,32 @@
+diff --git a/ltmain.sh b/ltmain.sh
+index c7d06c3..7bc27f2 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -5800,6 +5800,11 @@ func_mode_link ()
+ 	arg=$func_stripname_result
+ 	;;
+ 
++      -Wl,--as-needed)
++	deplibs="$deplibs $arg"
++	continue
++	;;
++
+       -Wl,*)
+ 	func_stripname '-Wl,' '' "$arg"
+ 	args=$func_stripname_result
+@@ -6163,6 +6168,15 @@ func_mode_link ()
+ 	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|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
+ 	  if test "$linkmode,$pass" = "prog,link"; then
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..2497acb
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+99_ltmain_as-needed.patch
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..4485fb8
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,254 @@
+#!/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=1
+gst_minor=0
+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_lib_dev).preinst \
+	debian/$(gst_lib_dev).postrm \
+	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_lib_dev).preinst: debian/libgstreamer-dev.preinst debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_LIB_DEV@/$(gst_lib_dev)/g' \
+		> $@
+
+debian/$(gst_lib_dev).postrm: debian/libgstreamer-dev.postrm debian/rules
+	rm -f $@
+	cat $< | \
+		sed 's/@GST_LIB_DEV@/$(gst_lib_dev)/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 \
+	--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
+	--libexecdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)/gstreamer$(gst_abi) \
+	--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/$(DEB_HOST_MULTIARCH)/gstreamer-$(gst_abi)" -V $(gst_shlibs_dep) -- -c4
+DEB_INSTALL_DOCS_ALL += debian/README.Debian NEWS
+DEB_SHLIBDEPS_INCLUDE += debian/$(gst_lib)/usr/lib/$(DEB_HOST_MULTIARCH)
+
+# 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-1.0 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` debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libgstreamer-1.0.so -Idebian/tmp/usr/include/gstreamer-1.0
+	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..3e5e786
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=2
+http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-(0\.11\.[\d\.]+)\.tar\.gz
