Imported Upstream version 1.2.2
diff --git a/ChangeLog b/ChangeLog
index c04c7a2..c78c7c9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,267 @@
-=== release 1.2.1 ===
+=== release 1.2.2 ===
 
-2013-11-09  Sebastian Dröge <slomo@coaxion.net>
+2013-12-26  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.2.1
+	  releasing 1.2.2
+
+2013-12-26 16:45:54 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/da.po:
+	* po/de.po:
+	* po/pl.po:
+	* po/ru.po:
+	* po/uk.po:
+	* po/vi.po:
+	  po: Update translations
+
+2013-12-23 14:54:02 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/videoconvert/gstvideoconvertorc.orc:
+	* gst/videoconvert/videoconvert.c:
+	  videoconvert: Fix I420 to BGRA fast-path alpha setting
+	  This fast-path was adding 128 to every component including
+	  alpha while it should only be done for all components except
+	  alpha. This caused wrong alpha values to be generated.
+	  Also remove the high-quality I420 to BGRA fast-path as it needs
+	  the same fix, which causes an additional instruction, which causes
+	  orc to emit more than 96 variables, which then just crashes.
+	  This can only be fixed in orc by breaking ABI and allowing more
+	  variables.
+
+2013-12-16 11:35:12 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/tag/gstvorbistag.c:
+	  vorbistag: Read image-type from the GstSample info struct
+	  But for backwards compatibility keep reading it from the caps and only
+	  use the info struct if the caps don't contain the image-type.
+
+2013-12-13 14:36:41 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/video/gstvideodecoder.c:
+	  videodecoder: gst_video_decoder_release_frame() is available since 1.2.2
+
+2013-12-01 12:37:52 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* docs/libs/gst-plugins-base-libs-sections.txt:
+	* win32/common/libgstvideo.def:
+	  videodecoder: add new API to docs and defs
+
+2013-11-26 20:51:58 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* gst-libs/gst/video/gstvideodecoder.c:
+	  videodecoder: fix spelling error in debug message
+
+2013-11-26 20:50:33 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* gst-libs/gst/video/gstvideodecoder.c:
+	* gst-libs/gst/video/gstvideodecoder.h:
+	  videodecoder: make _release_frame external API
+	  ... so subclasses can release a frame all the way (also from frame list)
+	  without having to pass through _finish_frame or _drop_frame.
+	  The latter may not be applicable, or may or may not have already
+	  been called for the frame in question.
+	  See https://bugzilla.gnome.org/show_bug.cgi?id=693772
+
+2013-12-05 00:27:14 +0900  Justin Joy <justin.joy.9to5@gmail.com>
+
+	* gst-libs/gst/video/convertframe.c:
+	  convertframe: Fix trivial memory leak in debug statement
+	  gst_element_get_name() requires the caller to g_free() the return value
+	  https://bugzilla.gnome.org/show_bug.cgi?id=719850
+	  convertframe: Fix indention
+
+2013-12-04 19:24:08 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* gst-libs/gst/audio/gstaudiodecoder.c:
+	  audiodecoder: no fallback to segment start for reverse playback
+	  See https://bugzilla.gnome.org/show_bug.cgi?id=709965
+
+2013-12-02 20:35:04 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* gst-libs/gst/audio/gstaudiodecoder.c:
+	  audiodecoder: use segment start as fallback ts if no other available
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=709965
+
+2013-11-29 17:26:13 +0100  Wim Taymans <wtaymans@redhat.com>
+
+	* gst/playback/gstdecodebin2.c:
+	  decodebin2: copy sticky events
+
+2013-11-29 17:30:09 +0100  Wim Taymans <wtaymans@redhat.com>
+
+	* gst/playback/gsturidecodebin.c:
+	  uridecodebin: copy sticky events
+
+2013-11-29 13:32:55 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/theora/gsttheoraparse.c:
+	  theoraparse: Fix event handling
+	  Send CAPS event before any SEGMENT events or any other events
+	  that must come in order after the CAPS event.
+
+2013-11-28 16:22:01 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/tcp/gsttcpserversink.c:
+	  tcp: fix compilation with MSVC
+	  error C2440 at line 165 of gsttcpserversink.c
+	  type cast error: cannot convert from GSocket* to GstMultiSinkHandle
+
+2013-11-28 11:25:20 +0100  Wim Taymans <wtaymans@redhat.com>
+
+	* gst/playback/gstdecodebin2.c:
+	  decodebin2: activate ghost pad before targetting
+	  Activate the decodebin2 pad before setting the target. This makes sure
+	  that the events are copied.
+
+2013-11-21 21:33:59 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* gst-libs/gst/video/gstvideodecoder.c:
+	  videodecoder: avoid descending output timestamps
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712796
+
+2013-11-26 12:03:24 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/playback/gstplaysink.c:
+	  playsink: Fix visualizations if no visualization plugin was set
+	  https://bugzilla.gnome.org/show_bug.cgi?id=712280
+
+2013-11-21 22:04:46 +0900  Jihyun Cho <jihyun.jo@gmail.com>
+
+	* gst/subparse/samiparse.c:
+	  subparse: fix null pointer access in sami parser
+	  https://bugzilla.gnome.org/show_bug.cgi?id=712805
+
+2013-11-21 15:19:47 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/subparse/gstssaparse.c:
+	* gst/subparse/gstsubparse.c:
+	  subparse: g_memmove() is deprecated
+	  Just use plain memmove(), g_memmove() is deprecated in
+	  recent GLib versions.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=712811
+
+2013-11-18 19:27:14 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/icles/input-selector-test.c:
+	  tests: fix input-selector-test
+	  Update for pad template name changes.
+
+2013-11-18 16:03:07 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/appsrc.c:
+	  tests: fix appsrc test with latest GLib version
+	  With the latest GLib, g_source_remove() complains about not finding
+	  the timeout source with the given ID here, since it was already
+	  destroyed by returning FALSE from the timeout callback. Also return
+	  FALSE from the bus watches when we don't want to be called any more.
+
+2013-11-14 01:53:31 -0300  Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
+
+	* gst/typefind/gsttypefindfunctions.c:
+	  typefind: Fix identification of some MPEG files
+	  Make sure we begin by peeking at MPEG2_MAX_PROBE_LENGTH
+	  bytes.
+	  Fixes:
+	  https://bugzilla.gnome.org/show_bug.cgi?id=678011
+
+2013-11-13 20:12:48 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/rtp/gstrtpbuffer.c:
+	  rtpbuffer: Fix gst_rtp_buffer_ext_timestamp() with clang 5 on iOS/ARM
+	  The bitwise NOT operator is not defined on signed integers.
+	  Thanks to Wim Taymans for finding the cause.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=711819
+
+2013-11-12 18:58:43 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/streamsynchronizer.c:
+	  tests: fix race in streamsynchronizer test
+	  Wait for thread to exit before starting to free the
+	  to_push list, otherwise thread might check the final
+	  to_push->next node only after we've freed it already.
+
+=== release 1.2.1 ===
+
+2013-11-09 12:15:57 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/inspect/plugin-adder.xml:
+	* docs/plugins/inspect/plugin-alsa.xml:
+	* docs/plugins/inspect/plugin-app.xml:
+	* docs/plugins/inspect/plugin-audioconvert.xml:
+	* docs/plugins/inspect/plugin-audiorate.xml:
+	* docs/plugins/inspect/plugin-audioresample.xml:
+	* docs/plugins/inspect/plugin-audiotestsrc.xml:
+	* docs/plugins/inspect/plugin-cdparanoia.xml:
+	* docs/plugins/inspect/plugin-encoding.xml:
+	* docs/plugins/inspect/plugin-gio.xml:
+	* docs/plugins/inspect/plugin-ivorbisdec.xml:
+	* docs/plugins/inspect/plugin-libvisual.xml:
+	* docs/plugins/inspect/plugin-ogg.xml:
+	* docs/plugins/inspect/plugin-pango.xml:
+	* docs/plugins/inspect/plugin-playback.xml:
+	* docs/plugins/inspect/plugin-subparse.xml:
+	* docs/plugins/inspect/plugin-tcp.xml:
+	* docs/plugins/inspect/plugin-theora.xml:
+	* docs/plugins/inspect/plugin-typefindfunctions.xml:
+	* docs/plugins/inspect/plugin-videoconvert.xml:
+	* docs/plugins/inspect/plugin-videorate.xml:
+	* docs/plugins/inspect/plugin-videoscale.xml:
+	* docs/plugins/inspect/plugin-videotestsrc.xml:
+	* docs/plugins/inspect/plugin-volume.xml:
+	* docs/plugins/inspect/plugin-vorbis.xml:
+	* docs/plugins/inspect/plugin-ximagesink.xml:
+	* docs/plugins/inspect/plugin-xvimagesink.xml:
+	* gst-plugins-base.doap:
+	* win32/common/_stdint.h:
+	* win32/common/config.h:
+	  Release 1.2.1
+
+2013-11-09 12:15:37 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/bg.po:
+	* po/ca.po:
+	* po/cs.po:
+	* po/da.po:
+	* po/de.po:
+	* po/el.po:
+	* po/en_GB.po:
+	* po/eo.po:
+	* po/es.po:
+	* po/eu.po:
+	* po/fi.po:
+	* po/fr.po:
+	* po/gl.po:
+	* po/hr.po:
+	* po/hu.po:
+	* po/id.po:
+	* po/it.po:
+	* po/ja.po:
+	* po/lt.po:
+	* po/lv.po:
+	* po/nb.po:
+	* po/nl.po:
+	* po/or.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/sk.po:
+	* po/sl.po:
+	* po/sq.po:
+	* po/sr.po:
+	* po/sv.po:
+	* po/tr.po:
+	* po/uk.po:
+	* po/vi.po:
+	* po/zh_CN.po:
+	  Update .po files
 
 2013-11-09 12:01:11 +0100  Sebastian Dröge <sebastian@centricular.com>
 
diff --git a/NEWS b/NEWS
index 431499b..55f04d9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,2 +1,2 @@
-This is GStreamer Base Plugins 1.2.1
+This is GStreamer Base Plugins 1.2.2
 
diff --git a/RELEASE b/RELEASE
index 7664d14..277ca69 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,5 +1,5 @@
 
-Release notes for GStreamer Base Plugins 1.2.1
+Release notes for GStreamer Base Plugins 1.2.2
 
 
 The GStreamer team is proud to announce a new bug-fix release
@@ -60,23 +60,15 @@
 
 Bugs fixed in this release
      
-      * 701813 : Reverse playback not working with videotestsrc
-      * 708689 : rtspconnection: RTSP watch is dispatched after closing the connection
-      * 708773 : pbutils: add MPEG 2 AAC description
-      * 708789 : playbin: make sure elements are in null before disposing
-      * 708880 : rtspconnection: Not connecting to proxy when specified
-      * 708952 : audio: change buffer ts when clipping buffer even if data length is same
-      * 708953 : audiorate: clip buffers before pushing them out
-      * 708954 : pbutils: add entry for text/x-raw
-      * 709210 : Hangs on startup getting PulseAudio volume
-      * 709408 : audioconvert: modifies buffer mapped for READ
-      * 709637 : oggmux: Make sure we end up sending EOS if we received EOS on all sinkpads
-      * 709754 : audioringbuffer: Clears need_reorder flag wrongly
-      * 709938 : navigation: Missing gobject-introspection annotations
-      * 710325 : playback: Add subpicture/x-dvb as raw caps
-      * 711003 : videoscale: borders are filled with green when using NV12 pixelformat
-      * 711231 : rtspconnection: allow setting tls certificate validation flags
-      * 711550 : appsrc: Deadlocking because holding mutex while setting caps
+      * 715138 : xvimagesink 1.2 ignores resize events when used on a QWidget
+      * 708200 : multiqueue: Switching audio tracks doesn't work on some files
+      * 707621 : decodebin: stream-id can't be retrieved from autoplug-continue signal
+      * 709965 : vorbisdec: Does not put timestamps on first buffer sometimes
+      * 711819 : rtpbuffer: gst_rtp_buffer_ext_timestamp() returns wrong value when compiled with clang 5 on iOS/ARM
+      * 712280 : playsink: Unable to play audio stream with visualization plugin
+      * 712796 : videodecoder: incorrect timestamps sequence
+      * 712805 : subparse: crashes when loading a sami subtitle
+      * 678011 : typefinding: some mpeg files are not identified as mpeg files
 
 ==== Download ====
 
@@ -113,17 +105,11 @@
         
 Contributors to this release
     
-      * Aleix Conchillo Flaque
-      * Antonio Ospite
-      * Hans Månsson
-      * Matej Knopp
-      * Ognyan Tonchev
+      * Jihyun Cho
+      * Justin Joy
+      * Mark Nauwelaerts
+      * Reynaldo H. Verdejo Pinochet
       * Sebastian Dröge
-      * Stefan Sauer
-      * Stephan Sundermann
-      * Takashi Iwai
-      * Thiago Santos
-      * Thibault Saunier
       * Tim-Philipp Müller
-      * Tom Greenwood
+      * Wim Taymans
  
\ No newline at end of file
diff --git a/configure b/configure
index 24385f6..ce25013 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GStreamer Base Plug-ins 1.2.1.
+# Generated by GNU Autoconf 2.69 for GStreamer Base Plug-ins 1.2.2.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
 #
@@ -591,8 +591,8 @@
 # Identity of this package.
 PACKAGE_NAME='GStreamer Base Plug-ins'
 PACKAGE_TARNAME='gst-plugins-base'
-PACKAGE_VERSION='1.2.1'
-PACKAGE_STRING='GStreamer Base Plug-ins 1.2.1'
+PACKAGE_VERSION='1.2.2'
+PACKAGE_STRING='GStreamer Base Plug-ins 1.2.2'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -1758,7 +1758,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures GStreamer Base Plug-ins 1.2.1 to adapt to many kinds of systems.
+\`configure' configures GStreamer Base Plug-ins 1.2.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1834,7 +1834,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer Base Plug-ins 1.2.1:";;
+     short | recursive ) echo "Configuration of GStreamer Base Plug-ins 1.2.2:";;
    esac
   cat <<\_ACEOF
 
@@ -2115,7 +2115,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer Base Plug-ins configure 1.2.1
+GStreamer Base Plug-ins configure 1.2.2
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2888,7 +2888,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by GStreamer Base Plug-ins $as_me 1.2.1, which was
+It was created by GStreamer Base Plug-ins $as_me 1.2.2, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3867,7 +3867,7 @@
 
 # Define the identity of the package.
  PACKAGE='gst-plugins-base'
- VERSION='1.2.1'
+ VERSION='1.2.2'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4077,9 +4077,9 @@
 fi
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.2.1 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.2.1 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.2.1 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.2.2 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.2.2 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.2.2 | cut -d'.' -f3)
 
 
 
@@ -4090,7 +4090,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.2.1 | cut -d'.' -f4)
+  NANO=$(echo 1.2.2 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -8733,10 +8733,10 @@
 done
 
 
-  GST_CURRENT=201
+  GST_CURRENT=202
   GST_REVISION=0
-  GST_AGE=201
-  GST_LIBVERSION=201:0:201
+  GST_AGE=202
+  GST_LIBVERSION=202:0:202
 
 
 
@@ -32232,7 +32232,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GStreamer Base Plug-ins $as_me 1.2.1, which was
+This file was extended by GStreamer Base Plug-ins $as_me 1.2.2, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -32298,7 +32298,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-GStreamer Base Plug-ins config.status 1.2.1
+GStreamer Base Plug-ins config.status 1.2.2
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 67593c6..364c40c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5,7 +5,7 @@
 dnl initialize autoconf
 dnl releases only do -Wall, git and prerelease does -Werror too
 dnl use a three digit version number for releases, and four for git/prerelease
-AC_INIT([GStreamer Base Plug-ins],[1.2.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
+AC_INIT([GStreamer Base Plug-ins],[1.2.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
 
 AG_GST_INIT
 
@@ -56,7 +56,7 @@
 dnl      1.10.9 (who knows) => 1009
 dnl
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 201, 0, 201)
+AS_LIBTOOL(GST, 202, 0, 202)
 
 dnl *** required versions of GStreamer stuff ***
 GST_REQ=1.2.0
diff --git a/docs/libs/gst-plugins-base-libs-sections.txt b/docs/libs/gst-plugins-base-libs-sections.txt
index 95b8abe..1179cad 100644
--- a/docs/libs/gst-plugins-base-libs-sections.txt
+++ b/docs/libs/gst-plugins-base-libs-sections.txt
@@ -2511,6 +2511,7 @@
 gst_video_decoder_get_buffer_pool
 gst_video_decoder_drop_frame
 gst_video_decoder_finish_frame
+gst_video_decoder_release_frame
 gst_video_decoder_negotiate
 gst_video_decoder_get_frame
 gst_video_decoder_get_frames
diff --git a/docs/libs/html/annotation-glossary.html b/docs/libs/html/annotation-glossary.html
index 00d28f3..7750e64 100644
--- a/docs/libs/html/annotation-glossary.html
+++ b/docs/libs/html/annotation-glossary.html
@@ -20,52 +20,55 @@
 <td> </td>
 </tr>
 <tr><td colspan="5" class="shortcuts">
-<a class="shortcut" href="#glsE">E</a>
+<a class="shortcut" href="#glsT">T</a>
+                      | 
+                   <a class="shortcut" href="#glsE">E</a>
                       | 
                    <a class="shortcut" href="#glsA">A</a>
                       | 
+                   <a class="shortcut" href="#glsC">C</a>
+                      | 
                    <a class="shortcut" href="#glsT">T</a>
                       | 
+                   <a class="shortcut" href="#glsA">A</a>
+                      | 
                    <a class="shortcut" href="#glsO">O</a>
                       | 
                    <a class="shortcut" href="#glsT">T</a>
                       | 
                    <a class="shortcut" href="#glsS">S</a>
-                      | 
-                   <a class="shortcut" href="#glsC">C</a>
-                      | 
-                   <a class="shortcut" href="#glsA">A</a>
 </td></tr>
 </table>
 <div class="glossary">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="annotation-glossary"></a>Annotation Glossary</h1></div></div></div>
+<a name="glsT"></a><h3 class="title">T</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20full"></a>transfer full</span></dt>
+<dd class="glossdef"><p>Free data after the code is done.</p></dd>
 <a name="glsE"></a><h3 class="title">E</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-element-type"></a>element-type</span></dt>
 <dd class="glossdef"><p>Generics and defining elements of containers and arrays.</p></dd>
 <a name="glsA"></a><h3 class="title">A</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
 <dd class="glossdef"><p>NULL is ok, both for passing and for returning.</p></dd>
+<a name="glsC"></a><h3 class="title">C</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-closure"></a>closure</span></dt>
+<dd class="glossdef"><p>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</p></dd>
 <a name="glsT"></a><h3 class="title">T</h3>
-<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20none"></a>transfer none</span></dt>
-<dd class="glossdef"><p>Don't free data after the code is done.</p></dd>
-<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20full"></a>transfer full</span></dt>
-<dd class="glossdef"><p>Free data after the code is done.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-type"></a>type</span></dt>
+<dd class="glossdef"><p>Override the parsed C type with given type.</p></dd>
+<a name="glsA"></a><h3 class="title">A</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-array"></a>array</span></dt>
+<dd class="glossdef"><p>Parameter points to an array of items.</p></dd>
 <a name="glsO"></a><h3 class="title">O</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-out"></a>out</span></dt>
 <dd class="glossdef"><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
 <a name="glsT"></a><h3 class="title">T</h3>
-<dt><span class="glossterm"><a name="annotation-glossterm-type"></a>type</span></dt>
-<dd class="glossdef"><p>Override the parsed C type with given type.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20none"></a>transfer none</span></dt>
+<dd class="glossdef"><p>Don't free data after the code is done.</p></dd>
 <a name="glsS"></a><h3 class="title">S</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-scope%20async"></a>scope async</span></dt>
 <dd class="glossdef"><p>The callback is valid until first called.</p></dd>
-<a name="glsC"></a><h3 class="title">C</h3>
-<dt><span class="glossterm"><a name="annotation-glossterm-closure"></a>closure</span></dt>
-<dd class="glossdef"><p>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</p></dd>
-<a name="glsA"></a><h3 class="title">A</h3>
-<dt><span class="glossterm"><a name="annotation-glossterm-array"></a>array</span></dt>
-<dd class="glossdef"><p>Parameter points to an array of items.</p></dd>
 </div>
 <div class="footer">
 <hr>
diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html
index 4303758..db28d0b 100644
--- a/docs/libs/html/api-index-full.html
+++ b/docs/libs/html/api-index-full.html
@@ -4880,6 +4880,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-release-frame" title="gst_video_decoder_release_frame ()">gst_video_decoder_release_frame</a>, function in <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html" title="GstVideoDecoder">GstVideoDecoder</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-set-estimate-rate" title="gst_video_decoder_set_estimate_rate ()">gst_video_decoder_set_estimate_rate</a>, function in <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html" title="GstVideoDecoder">GstVideoDecoder</a>
 </dt>
 <dd></dd>
diff --git a/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2 b/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2
index eca348f..5f8da15 100644
--- a/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2
+++ b/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2
@@ -1430,6 +1430,7 @@
     <keyword type="function" name="gst_video_decoder_get_buffer_pool ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-buffer-pool"/>
     <keyword type="function" name="gst_video_decoder_drop_frame ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-drop-frame"/>
     <keyword type="function" name="gst_video_decoder_finish_frame ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-finish-frame"/>
+    <keyword type="function" name="gst_video_decoder_release_frame ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-release-frame" since="1.2.2"/>
     <keyword type="function" name="gst_video_decoder_negotiate ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-negotiate"/>
     <keyword type="function" name="gst_video_decoder_get_frame ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-frame"/>
     <keyword type="function" name="gst_video_decoder_get_frames ()" link="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-frames"/>
diff --git a/docs/libs/html/gst-plugins-base-libs-GstVideoDecoder.html b/docs/libs/html/gst-plugins-base-libs-GstVideoDecoder.html
index 4de1e31..6e04233 100644
--- a/docs/libs/html/gst-plugins-base-libs-GstVideoDecoder.html
+++ b/docs/libs/html/gst-plugins-base-libs-GstVideoDecoder.html
@@ -71,6 +71,8 @@
                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame" title="struct GstVideoCodecFrame"><span class="type">GstVideoCodecFrame</span></a> *frame</code></em>);
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>       <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-finish-frame" title="gst_video_decoder_finish_frame ()">gst_video_decoder_finish_frame</a>      (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a> *decoder</code></em>,
                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame" title="struct GstVideoCodecFrame"><span class="type">GstVideoCodecFrame</span></a> *frame</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-release-frame" title="gst_video_decoder_release_frame ()">gst_video_decoder_release_frame</a>     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a> *dec</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame" title="struct GstVideoCodecFrame"><span class="type">GstVideoCodecFrame</span></a> *frame</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-negotiate" title="gst_video_decoder_negotiate ()">gst_video_decoder_negotiate</a>         (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a> *decoder</code></em>);
 <a class="link" href="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame" title="struct GstVideoCodecFrame"><span class="returnvalue">GstVideoCodecFrame</span></a> * <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-frame" title="gst_video_decoder_get_frame ()">gst_video_decoder_get_frame</a>        (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a> *decoder</code></em>,
                                                          <em class="parameter"><code><span class="type">int</span> frame_number</code></em>);
@@ -852,6 +854,36 @@
 </div>
 <hr>
 <div class="refsect2">
+<a name="gst-video-decoder-release-frame"></a><h3>gst_video_decoder_release_frame ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                gst_video_decoder_release_frame     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a> *dec</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame" title="struct GstVideoCodecFrame"><span class="type">GstVideoCodecFrame</span></a> *frame</code></em>);</pre>
+<p>
+Similar to <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-drop-frame" title="gst_video_decoder_drop_frame ()"><code class="function">gst_video_decoder_drop_frame()</code></a>, but simply releases <em class="parameter"><code>frame</code></em>
+without any processing other than removing it from list of pending frames,
+after which it is considered finished and released.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>dec</code></em> :</span></p></td>
+<td>a <a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>frame</code></em> :</span></p></td>
+<td>the <a class="link" href="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame" title="struct GstVideoCodecFrame"><span class="type">GstVideoCodecFrame</span></a> to release. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since 1.2.2</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="gst-video-decoder-negotiate"></a><h3>gst_video_decoder_negotiate ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gst_video_decoder_negotiate         (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideoDecoder.html#GstVideoDecoder" title="struct GstVideoDecoder"><span class="type">GstVideoDecoder</span></a> *decoder</code></em>);</pre>
 <p>
diff --git a/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html b/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
index e234f2c..c93a69b 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
@@ -88,7 +88,7 @@
 <hr>
 <div class="refsect2">
 <a name="GST-PLUGINS-BASE-VERSION-MICRO:CAPS"></a><h3>GST_PLUGINS_BASE_VERSION_MICRO</h3>
-<pre class="programlisting">#define GST_PLUGINS_BASE_VERSION_MICRO (1)
+<pre class="programlisting">#define GST_PLUGINS_BASE_VERSION_MICRO (2)
 </pre>
 <p>
 The micro version of GStreamer's gst-plugins-base libraries at compile time.
diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html
index 2076e2d..63ee425 100644
--- a/docs/libs/html/index.html
+++ b/docs/libs/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Base Plugins 1.0 Library Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Base Library 1.0 (1.2.1)
+      for GStreamer Base Library 1.0 (1.2.2)
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/</a>.
     </p></div>
 </div>
diff --git a/docs/libs/html/index.sgml b/docs/libs/html/index.sgml
index c025242..3db3f00 100644
--- a/docs/libs/html/index.sgml
+++ b/docs/libs/html/index.sgml
@@ -2230,6 +2230,7 @@
 <ANCHOR id="gst-video-decoder-get-buffer-pool" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-buffer-pool">
 <ANCHOR id="gst-video-decoder-drop-frame" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-drop-frame">
 <ANCHOR id="gst-video-decoder-finish-frame" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-finish-frame">
+<ANCHOR id="gst-video-decoder-release-frame" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-release-frame">
 <ANCHOR id="gst-video-decoder-negotiate" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-negotiate">
 <ANCHOR id="gst-video-decoder-get-frame" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-frame">
 <ANCHOR id="gst-video-decoder-get-frames" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-GstVideoDecoder.html#gst-video-decoder-get-frames">
@@ -2314,12 +2315,12 @@
 <ANCHOR id="GstVideoCodecState" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecState">
 <ANCHOR id="gst-video-codec-state-ref" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideoutils.html#gst-video-codec-state-ref">
 <ANCHOR id="gst-video-codec-state-unref" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideoutils.html#gst-video-codec-state-unref">
+<ANCHOR id="annotation-glossterm-transfer full" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-transfer full">
 <ANCHOR id="annotation-glossterm-element-type" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-element-type">
 <ANCHOR id="annotation-glossterm-allow-none" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-allow-none">
-<ANCHOR id="annotation-glossterm-transfer none" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-transfer none">
-<ANCHOR id="annotation-glossterm-transfer full" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-transfer full">
-<ANCHOR id="annotation-glossterm-out" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-out">
-<ANCHOR id="annotation-glossterm-type" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-type">
-<ANCHOR id="annotation-glossterm-scope async" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-scope async">
 <ANCHOR id="annotation-glossterm-closure" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-closure">
+<ANCHOR id="annotation-glossterm-type" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-type">
 <ANCHOR id="annotation-glossterm-array" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-array">
+<ANCHOR id="annotation-glossterm-out" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-out">
+<ANCHOR id="annotation-glossterm-transfer none" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-transfer none">
+<ANCHOR id="annotation-glossterm-scope async" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-scope async">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
index 1919687..c07f2fb 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html
index ec49774..258cda5 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html
index 6d50cb8..aa6dc50 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html
index ebf1b4a..6b57c85 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html
index 5c2c4f5..800070c 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html
index 4ab0998..c9fa3ee 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html
index bfea0e3..cd89285 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html
index 7417af9..159f89b 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html
index 83959df..85fa5e4 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html
index 8827462..a034688 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html
index 051a5c4..b2b7a11 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html
index 305f7af..65b04b9 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html
index ef86a55..371f669 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html
index 25293bc..1adfa84 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html
index 1324d46..2069a6a 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html
index 6513285..a89e0c6 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html
index 865251d..5724e7a 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html
index c2605c0..79135a3 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html
index 7dd9c1e..91a5ee8 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html
index 004f7e7..f6d45a9 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html
index 90c9f0d..c7e7a46 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html
index f0ac8a0..7e1d4e8 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html
index 4c80038..b220b37 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html
index 365144b..e25c90f 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html
index 4f00dda..c5c235e 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html
index ed7cc62..9da4b6b 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html
@@ -41,7 +41,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.2.1</td>
+<td>1.2.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index a3c8a33..2a64a5c 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Base Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Base Plugins 1.0 (1.2.1)
+      for GStreamer Base Plugins 1.0 (1.2.2)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base/html/</a>.
     </p></div>
diff --git a/docs/plugins/inspect/plugin-adder.xml b/docs/plugins/inspect/plugin-adder.xml
index 4b956db..e539070 100644
--- a/docs/plugins/inspect/plugin-adder.xml
+++ b/docs/plugins/inspect/plugin-adder.xml
@@ -3,7 +3,7 @@
   <description>Adds multiple streams</description>
   <filename>../../gst/adder/.libs/libgstadder.so</filename>
   <basename>libgstadder.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alsa.xml b/docs/plugins/inspect/plugin-alsa.xml
index abebd2f..90bb860 100644
--- a/docs/plugins/inspect/plugin-alsa.xml
+++ b/docs/plugins/inspect/plugin-alsa.xml
@@ -3,7 +3,7 @@
   <description>ALSA plugin library</description>
   <filename>../../ext/alsa/.libs/libgstalsa.so</filename>
   <basename>libgstalsa.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-app.xml b/docs/plugins/inspect/plugin-app.xml
index 6b4dc7e..8bab2d5 100644
--- a/docs/plugins/inspect/plugin-app.xml
+++ b/docs/plugins/inspect/plugin-app.xml
@@ -3,7 +3,7 @@
   <description>Elements used to communicate with applications</description>
   <filename>../../gst/app/.libs/libgstapp.so</filename>
   <basename>libgstapp.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audioconvert.xml b/docs/plugins/inspect/plugin-audioconvert.xml
index 09f23ab..96c012e 100644
--- a/docs/plugins/inspect/plugin-audioconvert.xml
+++ b/docs/plugins/inspect/plugin-audioconvert.xml
@@ -3,7 +3,7 @@
   <description>Convert audio to different formats</description>
   <filename>../../gst/audioconvert/.libs/libgstaudioconvert.so</filename>
   <basename>libgstaudioconvert.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiorate.xml b/docs/plugins/inspect/plugin-audiorate.xml
index f2fdeb8..15c0b78 100644
--- a/docs/plugins/inspect/plugin-audiorate.xml
+++ b/docs/plugins/inspect/plugin-audiorate.xml
@@ -3,7 +3,7 @@
   <description>Adjusts audio frames</description>
   <filename>../../gst/audiorate/.libs/libgstaudiorate.so</filename>
   <basename>libgstaudiorate.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audioresample.xml b/docs/plugins/inspect/plugin-audioresample.xml
index dcf3f81..971ba6c 100644
--- a/docs/plugins/inspect/plugin-audioresample.xml
+++ b/docs/plugins/inspect/plugin-audioresample.xml
@@ -3,7 +3,7 @@
   <description>Resamples audio</description>
   <filename>../../gst/audioresample/.libs/libgstaudioresample.so</filename>
   <basename>libgstaudioresample.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiotestsrc.xml b/docs/plugins/inspect/plugin-audiotestsrc.xml
index e65fdff..d0fd330 100644
--- a/docs/plugins/inspect/plugin-audiotestsrc.xml
+++ b/docs/plugins/inspect/plugin-audiotestsrc.xml
@@ -3,7 +3,7 @@
   <description>Creates audio test signals of given frequency and volume</description>
   <filename>../../gst/audiotestsrc/.libs/libgstaudiotestsrc.so</filename>
   <basename>libgstaudiotestsrc.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cdparanoia.xml b/docs/plugins/inspect/plugin-cdparanoia.xml
index 2ba9141..9b0b82c 100644
--- a/docs/plugins/inspect/plugin-cdparanoia.xml
+++ b/docs/plugins/inspect/plugin-cdparanoia.xml
@@ -3,7 +3,7 @@
   <description>Read audio from CD in paranoid mode</description>
   <filename>../../ext/cdparanoia/.libs/libgstcdparanoia.so</filename>
   <basename>libgstcdparanoia.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-encoding.xml b/docs/plugins/inspect/plugin-encoding.xml
index 9ac1184..d637cf0 100644
--- a/docs/plugins/inspect/plugin-encoding.xml
+++ b/docs/plugins/inspect/plugin-encoding.xml
@@ -3,7 +3,7 @@
   <description>various encoding-related elements</description>
   <filename>../../gst/encoding/.libs/libgstencodebin.so</filename>
   <basename>libgstencodebin.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gio.xml b/docs/plugins/inspect/plugin-gio.xml
index 2e41c8f..b0b0fb5 100644
--- a/docs/plugins/inspect/plugin-gio.xml
+++ b/docs/plugins/inspect/plugin-gio.xml
@@ -3,7 +3,7 @@
   <description>GIO elements</description>
   <filename>../../gst/gio/.libs/libgstgio.so</filename>
   <basename>libgstgio.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ivorbisdec.xml b/docs/plugins/inspect/plugin-ivorbisdec.xml
index e0bda1f..166697d 100644
--- a/docs/plugins/inspect/plugin-ivorbisdec.xml
+++ b/docs/plugins/inspect/plugin-ivorbisdec.xml
@@ -3,7 +3,7 @@
   <description>Vorbis Tremor decoder</description>
   <filename>../../ext/vorbis/.libs/libgstivorbisdec.so</filename>
   <basename>libgstivorbisdec.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-libvisual.xml b/docs/plugins/inspect/plugin-libvisual.xml
index f9934d4..e9fe717 100644
--- a/docs/plugins/inspect/plugin-libvisual.xml
+++ b/docs/plugins/inspect/plugin-libvisual.xml
@@ -3,7 +3,7 @@
   <description>libvisual visualization plugins</description>
   <filename>../../ext/libvisual/.libs/libgstlibvisual.so</filename>
   <basename>libgstlibvisual.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ogg.xml b/docs/plugins/inspect/plugin-ogg.xml
index 60a016c..3ad08ac 100644
--- a/docs/plugins/inspect/plugin-ogg.xml
+++ b/docs/plugins/inspect/plugin-ogg.xml
@@ -3,7 +3,7 @@
   <description>ogg stream manipulation (info about ogg: http://xiph.org)</description>
   <filename>../../ext/ogg/.libs/libgstogg.so</filename>
   <basename>libgstogg.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-pango.xml b/docs/plugins/inspect/plugin-pango.xml
index 675ff5a..16ae640 100644
--- a/docs/plugins/inspect/plugin-pango.xml
+++ b/docs/plugins/inspect/plugin-pango.xml
@@ -3,7 +3,7 @@
   <description>Pango-based text rendering and overlay</description>
   <filename>../../ext/pango/.libs/libgstpango.so</filename>
   <basename>libgstpango.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-playback.xml b/docs/plugins/inspect/plugin-playback.xml
index 5f148a6..c8385d8 100644
--- a/docs/plugins/inspect/plugin-playback.xml
+++ b/docs/plugins/inspect/plugin-playback.xml
@@ -3,7 +3,7 @@
   <description>various playback elements</description>
   <filename>../../gst/playback/.libs/libgstplayback.so</filename>
   <basename>libgstplayback.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-subparse.xml b/docs/plugins/inspect/plugin-subparse.xml
index b0cb1f5..bc9a498 100644
--- a/docs/plugins/inspect/plugin-subparse.xml
+++ b/docs/plugins/inspect/plugin-subparse.xml
@@ -3,7 +3,7 @@
   <description>Subtitle parsing</description>
   <filename>../../gst/subparse/.libs/libgstsubparse.so</filename>
   <basename>libgstsubparse.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-tcp.xml b/docs/plugins/inspect/plugin-tcp.xml
index dcd098b..8de13b4 100644
--- a/docs/plugins/inspect/plugin-tcp.xml
+++ b/docs/plugins/inspect/plugin-tcp.xml
@@ -3,7 +3,7 @@
   <description>transfer data over the network via TCP</description>
   <filename>../../gst/tcp/.libs/libgsttcp.so</filename>
   <basename>libgsttcp.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-theora.xml b/docs/plugins/inspect/plugin-theora.xml
index 3aa0f15..e36b181 100644
--- a/docs/plugins/inspect/plugin-theora.xml
+++ b/docs/plugins/inspect/plugin-theora.xml
@@ -3,7 +3,7 @@
   <description>Theora plugin library</description>
   <filename>../../ext/theora/.libs/libgsttheora.so</filename>
   <basename>libgsttheora.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-typefindfunctions.xml b/docs/plugins/inspect/plugin-typefindfunctions.xml
index b7d9124..8385224 100644
--- a/docs/plugins/inspect/plugin-typefindfunctions.xml
+++ b/docs/plugins/inspect/plugin-typefindfunctions.xml
@@ -3,7 +3,7 @@
   <description>default typefind functions</description>
   <filename>../../gst/typefind/.libs/libgsttypefindfunctions.so</filename>
   <basename>libgsttypefindfunctions.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videoconvert.xml b/docs/plugins/inspect/plugin-videoconvert.xml
index 6ee3d7b..57d1e35 100644
--- a/docs/plugins/inspect/plugin-videoconvert.xml
+++ b/docs/plugins/inspect/plugin-videoconvert.xml
@@ -3,7 +3,7 @@
   <description>Colorspace conversion</description>
   <filename>../../gst/videoconvert/.libs/libgstvideoconvert.so</filename>
   <basename>libgstvideoconvert.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videorate.xml b/docs/plugins/inspect/plugin-videorate.xml
index 359c00d..03616e0 100644
--- a/docs/plugins/inspect/plugin-videorate.xml
+++ b/docs/plugins/inspect/plugin-videorate.xml
@@ -3,7 +3,7 @@
   <description>Adjusts video frames</description>
   <filename>../../gst/videorate/.libs/libgstvideorate.so</filename>
   <basename>libgstvideorate.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videoscale.xml b/docs/plugins/inspect/plugin-videoscale.xml
index 4cb12ba..a4fc45c 100644
--- a/docs/plugins/inspect/plugin-videoscale.xml
+++ b/docs/plugins/inspect/plugin-videoscale.xml
@@ -3,7 +3,7 @@
   <description>Resizes video</description>
   <filename>../../gst/videoscale/.libs/libgstvideoscale.so</filename>
   <basename>libgstvideoscale.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videotestsrc.xml b/docs/plugins/inspect/plugin-videotestsrc.xml
index 8b19437..31207c2 100644
--- a/docs/plugins/inspect/plugin-videotestsrc.xml
+++ b/docs/plugins/inspect/plugin-videotestsrc.xml
@@ -3,7 +3,7 @@
   <description>Creates a test video stream</description>
   <filename>../../gst/videotestsrc/.libs/libgstvideotestsrc.so</filename>
   <basename>libgstvideotestsrc.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-volume.xml b/docs/plugins/inspect/plugin-volume.xml
index 8a7c347..0c8d6ee 100644
--- a/docs/plugins/inspect/plugin-volume.xml
+++ b/docs/plugins/inspect/plugin-volume.xml
@@ -3,7 +3,7 @@
   <description>plugin for controlling audio volume</description>
   <filename>../../gst/volume/.libs/libgstvolume.so</filename>
   <basename>libgstvolume.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-vorbis.xml b/docs/plugins/inspect/plugin-vorbis.xml
index 9083bf3..97ae599 100644
--- a/docs/plugins/inspect/plugin-vorbis.xml
+++ b/docs/plugins/inspect/plugin-vorbis.xml
@@ -3,7 +3,7 @@
   <description>Vorbis plugin library</description>
   <filename>../../ext/vorbis/.libs/libgstvorbis.so</filename>
   <basename>libgstvorbis.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ximagesink.xml b/docs/plugins/inspect/plugin-ximagesink.xml
index 8630aeb..8d7f5cc 100644
--- a/docs/plugins/inspect/plugin-ximagesink.xml
+++ b/docs/plugins/inspect/plugin-ximagesink.xml
@@ -3,7 +3,7 @@
   <description>X11 video output element based on standard Xlib calls</description>
   <filename>../../sys/ximage/.libs/libgstximagesink.so</filename>
   <basename>libgstximagesink.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-xvimagesink.xml b/docs/plugins/inspect/plugin-xvimagesink.xml
index c2b8b23..295ba30 100644
--- a/docs/plugins/inspect/plugin-xvimagesink.xml
+++ b/docs/plugins/inspect/plugin-xvimagesink.xml
@@ -3,7 +3,7 @@
   <description>XFree86 video output plugin using Xv extension</description>
   <filename>../../sys/xvimage/.libs/libgstxvimagesink.so</filename>
   <basename>libgstxvimagesink.so</basename>
-  <version>1.2.1</version>
+  <version>1.2.2</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/ext/theora/gsttheoraparse.c b/ext/theora/gsttheoraparse.c
index b1d0727..e4c0f8f 100644
--- a/ext/theora/gsttheoraparse.c
+++ b/ext/theora/gsttheoraparse.c
@@ -367,11 +367,11 @@
 {
   gint i;
 
-  theora_parse_drain_event_queue (parse);
-
   if (!parse->streamheader_received)
     theora_parse_set_streamheader (parse);
 
+  theora_parse_drain_event_queue (parse);
+
   /* ignore return values, we pass along the result of pushing data packets only
    */
   for (i = 0; i < 3; i++) {
@@ -721,7 +721,8 @@
       ret = gst_pad_event_default (pad, parent, event);
       break;
     default:
-      if (parse->send_streamheader && GST_EVENT_IS_SERIALIZED (event))
+      if (parse->send_streamheader && GST_EVENT_IS_SERIALIZED (event)
+          && GST_EVENT_TYPE (event) > GST_EVENT_CAPS)
         ret = theora_parse_queue_event (parse, event);
       else
         ret = gst_pad_event_default (pad, parent, event);
diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c
index d4e1586..03ce253 100644
--- a/gst-libs/gst/audio/gstaudiodecoder.c
+++ b/gst-libs/gst/audio/gstaudiodecoder.c
@@ -1094,6 +1094,12 @@
     GST_DEBUG_OBJECT (dec, "base_ts now %" GST_TIME_FORMAT, GST_TIME_ARGS (ts));
   }
 
+  /* still no valid ts, track the segment one */
+  if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (priv->base_ts)) &&
+      dec->output_segment.rate > 0.0) {
+    priv->base_ts = dec->output_segment.start;
+  }
+
   /* slightly convoluted approach caters for perfect ts if subclass desires */
   if (GST_CLOCK_TIME_IS_VALID (ts)) {
     if (dec->priv->tolerance > 0) {
diff --git a/gst-libs/gst/rtp/gstrtpbuffer.c b/gst-libs/gst/rtp/gstrtpbuffer.c
index 7c32d35..a2379da 100644
--- a/gst-libs/gst/rtp/gstrtpbuffer.c
+++ b/gst-libs/gst/rtp/gstrtpbuffer.c
@@ -1243,7 +1243,7 @@
     result = timestamp;
   } else {
     /* pick wraparound counter from previous timestamp and add to new timestamp */
-    result = timestamp + (ext & ~(G_GINT64_CONSTANT (0xffffffff)));
+    result = timestamp + (ext & ~(G_GUINT64_CONSTANT (0xffffffff)));
 
     /* check for timestamp wraparound */
     if (result < ext)
@@ -1254,7 +1254,7 @@
     if (diff > G_MAXINT32) {
       /* timestamp went backwards more than allowed, we wrap around and get
        * updated extended timestamp. */
-      result += (G_GINT64_CONSTANT (1) << 32);
+      result += (G_GUINT64_CONSTANT (1) << 32);
     }
   }
   *exttimestamp = result;
diff --git a/gst-libs/gst/tag/gstvorbistag.c b/gst-libs/gst/tag/gstvorbistag.c
index ae4702c..130b5b2 100644
--- a/gst-libs/gst/tag/gstvorbistag.c
+++ b/gst-libs/gst/tag/gstvorbistag.c
@@ -568,10 +568,23 @@
     mime_type = "-->";
   mime_type_len = strlen (mime_type);
 
+  /* FIXME 2.0: Remove the image-type reading from the caps, this was
+   * a bug until 1.2.2. The image-type is only supposed to be in the
+   * info structure */
   gst_structure_get (mime_struct, "image-type", GST_TYPE_TAG_IMAGE_TYPE,
       &image_type, "width", G_TYPE_INT, &width, "height", G_TYPE_INT, &height,
       NULL);
 
+  if (image_type == GST_TAG_IMAGE_TYPE_NONE) {
+    const GstStructure *info_struct;
+
+    info_struct = gst_sample_get_info (sample);
+    if (info_struct && gst_structure_has_name (info_struct, "GstTagImageInfo")) {
+      gst_structure_get (info_struct, "image-type", GST_TYPE_TAG_IMAGE_TYPE,
+          &image_type, NULL);
+    }
+  }
+
   metadata_block_len = 32 + mime_type_len + gst_buffer_get_size (buffer);
   gst_byte_writer_init_with_size (&writer, metadata_block_len, TRUE);
 
diff --git a/gst-libs/gst/video/convertframe.c b/gst-libs/gst/video/convertframe.c
index 4abfb5e..aa9c3d3 100644
--- a/gst-libs/gst/video/convertframe.c
+++ b/gst-libs/gst/video/convertframe.c
@@ -96,7 +96,7 @@
   encoder = gst_element_factory_create (factory, NULL);
 
   GST_INFO ("created encoder element %p, %s", encoder,
-      gst_element_get_name (encoder));
+      GST_ELEMENT_NAME (encoder));
 
 fail:
   if (encoders)
diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c
index 77853a4..78f643f 100644
--- a/gst-libs/gst/video/gstvideodecoder.c
+++ b/gst-libs/gst/video/gstvideodecoder.c
@@ -434,8 +434,6 @@
 static GstFlowReturn gst_video_decoder_decode_frame (GstVideoDecoder * decoder,
     GstVideoCodecFrame * frame);
 
-static void gst_video_decoder_release_frame (GstVideoDecoder * dec,
-    GstVideoCodecFrame * frame);
 static GstClockTime gst_video_decoder_get_frame_duration (GstVideoDecoder *
     decoder, GstVideoCodecFrame * frame);
 static GstVideoCodecFrame *gst_video_decoder_new_frame (GstVideoDecoder *
@@ -2275,7 +2273,7 @@
     /* if we detected reordered output, then PTS are void,
      * however those were obtained; bogus input, subclass etc */
     if (priv->reordered_output && !seen_none) {
-      GST_DEBUG_OBJECT (decoder, "invaliding PTS");
+      GST_DEBUG_OBJECT (decoder, "invalidating PTS");
       frame->pts = GST_CLOCK_TIME_NONE;
     }
 
@@ -2314,6 +2312,8 @@
           GST_TIME_FORMAT ")",
           GST_TIME_ARGS (frame->pts), GST_TIME_ARGS (priv->last_timestamp_out));
       priv->reordered_output = TRUE;
+      /* make it a bit less weird downstream */
+      frame->pts = priv->last_timestamp_out;
     }
   }
 
@@ -2329,18 +2329,31 @@
   }
 }
 
-static void
+/**
+ * gst_video_decoder_release_frame:
+ * @dec: a #GstVideoDecoder
+ * @frame: (transfer full): the #GstVideoCodecFrame to release
+ *
+ * Similar to gst_video_decoder_drop_frame(), but simply releases @frame
+ * without any processing other than removing it from list of pending frames,
+ * after which it is considered finished and released.
+ *
+ * Since: 1.2.2
+ */
+void
 gst_video_decoder_release_frame (GstVideoDecoder * dec,
     GstVideoCodecFrame * frame)
 {
   GList *link;
 
   /* unref once from the list */
+  GST_VIDEO_DECODER_STREAM_LOCK (dec);
   link = g_list_find (dec->priv->frames, frame);
   if (link) {
     gst_video_codec_frame_unref (frame);
     dec->priv->frames = g_list_delete_link (dec->priv->frames, link);
   }
+  GST_VIDEO_DECODER_STREAM_UNLOCK (dec);
 
   /* unref because this function takes ownership */
   gst_video_codec_frame_unref (frame);
diff --git a/gst-libs/gst/video/gstvideodecoder.h b/gst-libs/gst/video/gstvideodecoder.h
index 1bdb37d..abe2fbb 100644
--- a/gst-libs/gst/video/gstvideodecoder.h
+++ b/gst-libs/gst/video/gstvideodecoder.h
@@ -366,6 +366,9 @@
 GstFlowReturn    gst_video_decoder_drop_frame (GstVideoDecoder *dec,
 					       GstVideoCodecFrame *frame);
 
+void             gst_video_decoder_release_frame (GstVideoDecoder * dec,
+						  GstVideoCodecFrame * frame);
+
 void             gst_video_decoder_merge_tags (GstVideoDecoder *dec,
                                                const GstTagList *tags,
                                                GstTagMergeMode mode);
diff --git a/gst-libs/gst/video/video-orc-dist.c b/gst-libs/gst/video/video-orc-dist.c
index 5857ea8..8983322 100644
--- a/gst-libs/gst/video/video-orc-dist.c
+++ b/gst-libs/gst/video/video-orc-dist.c
@@ -6809,7 +6809,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 31, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 114, 101, 115,
         97, 109, 112, 108, 101, 95, 98, 105, 108, 105, 110, 101, 97, 114, 95,
-            117,
+        117,
         51, 50, 11, 4, 4, 12, 4, 4, 16, 4, 16, 4, 51, 0, 4, 24,
         25, 2, 0,
       };
diff --git a/gst-plugins-base.doap b/gst-plugins-base.doap
index e4d3e31..fdf2a26 100644
--- a/gst-plugins-base.doap
+++ b/gst-plugins-base.doap
@@ -36,6 +36,16 @@
 
  <release>
   <Version>
+   <revision>1.2.2</revision>
+   <branch>1.2</branch>
+   <name></name>
+   <created>2013-12-26</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.2.2.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.2.1</revision>
    <branch>1.2</branch>
    <name></name>
diff --git a/gst-plugins-base.spec b/gst-plugins-base.spec
index ac57cb5..8476b5e 100644
--- a/gst-plugins-base.spec
+++ b/gst-plugins-base.spec
@@ -4,7 +4,7 @@
 %define gst_minver  0.11.0
 
 Name: 		%{gstreamer}-plugins-base
-Version: 	1.2.1
+Version: 	1.2.2
 Release: 	1.gst
 Summary: 	GStreamer streaming media framework plug-ins
 
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c
index 2d4e930..ea8908d 100644
--- a/gst/playback/gstdecodebin2.c
+++ b/gst/playback/gstdecodebin2.c
@@ -1439,6 +1439,37 @@
 static GstDecodeGroup *gst_decode_chain_get_current_group (GstDecodeChain *
     chain);
 
+static gboolean
+clear_sticky_events (GstPad * pad, GstEvent ** event, gpointer user_data)
+{
+  GST_DEBUG_OBJECT (pad, "clearing sticky event %" GST_PTR_FORMAT, *event);
+  gst_event_unref (*event);
+  *event = NULL;
+  return TRUE;
+}
+
+static gboolean
+copy_sticky_events (GstPad * pad, GstEvent ** event, gpointer user_data)
+{
+  GstPad *gpad = GST_PAD_CAST (user_data);
+
+  GST_DEBUG_OBJECT (gpad, "store sticky event %" GST_PTR_FORMAT, *event);
+  gst_pad_store_sticky_event (gpad, *event);
+
+  return TRUE;
+}
+
+static void
+decode_pad_set_target (GstDecodePad * dpad, GstPad * target)
+{
+  gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), target);
+  if (target == NULL)
+    gst_pad_sticky_events_foreach (GST_PAD_CAST (dpad), clear_sticky_events,
+        NULL);
+  else
+    gst_pad_sticky_events_foreach (target, copy_sticky_events, dpad);
+}
+
 /* called when a new pad is discovered. It will perform some basic actions
  * before trying to link something to it.
  *
@@ -1511,7 +1542,8 @@
     chain->current_pad = gst_decode_pad_new (dbin, chain);
 
   dpad = gst_object_ref (chain->current_pad);
-  gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), pad);
+  gst_pad_set_active (GST_PAD_CAST (dpad), TRUE);
+  decode_pad_set_target (dpad, pad);
 
   /* 1. Emit 'autoplug-continue' the result will tell us if this pads needs
    * further autoplugging. Only do this for fixed caps, for unfixed caps
@@ -1689,12 +1721,12 @@
     gst_element_set_state (delem->capsfilter, GST_STATE_PAUSED);
     gst_bin_add (GST_BIN_CAST (dbin), gst_object_ref (delem->capsfilter));
 
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), NULL);
+    decode_pad_set_target (dpad, NULL);
     p = gst_element_get_static_pad (delem->capsfilter, "sink");
     gst_pad_link_full (pad, p, GST_PAD_LINK_CHECK_NOTHING);
     gst_object_unref (p);
     p = gst_element_get_static_pad (delem->capsfilter, "src");
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), p);
+    decode_pad_set_target (dpad, p);
     pad = p;
 
     if (!gst_caps_is_fixed (caps)) {
@@ -1874,12 +1906,12 @@
         "is a demuxer, connecting the pad through multiqueue '%s'",
         GST_OBJECT_NAME (chain->parent->multiqueue));
 
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), NULL);
+    decode_pad_set_target (dpad, NULL);
     if (!(mqpad = gst_decode_group_control_demuxer_pad (chain->parent, pad)))
       goto beach;
     src = chain->parent->multiqueue;
     pad = mqpad;
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), pad);
+    decode_pad_set_target (dpad, pad);
   }
 
   /* 2. Try to create an element and link to it */
@@ -1895,7 +1927,7 @@
     /* Set dpad target to pad again, it might've been unset
      * below but we came back here because something failed
      */
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), pad);
+    decode_pad_set_target (dpad, pad);
 
     /* take first factory */
     factory = g_value_get_object (g_value_array_get_nth (factories, 0));
@@ -2004,7 +2036,7 @@
     }
 
     /* 2.0. Unlink pad */
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), NULL);
+    decode_pad_set_target (dpad, NULL);
 
     /* 2.1. Try to create an element */
     if ((element = gst_element_factory_create (factory, NULL)) == NULL) {
@@ -2371,11 +2403,11 @@
   if (chain->parent && !chain->elements && src != chain->parent->multiqueue) {
     GST_LOG_OBJECT (src, "connecting the pad through multiqueue");
 
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), NULL);
+    decode_pad_set_target (dpad, NULL);
     if (!(mqpad = gst_decode_group_control_demuxer_pad (chain->parent, pad)))
       goto beach;
     pad = mqpad;
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (dpad), pad);
+    decode_pad_set_target (dpad, pad);
   }
 
   gst_decode_pad_activate (dpad, chain);
@@ -2908,7 +2940,7 @@
           GST_PAD_CAST (chain->endpad));
     }
 
-    gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (chain->endpad), NULL);
+    decode_pad_set_target (chain->endpad, NULL);
     chain->endpad->exposed = FALSE;
     if (!hide) {
       gst_object_unref (chain->endpad);
diff --git a/gst/playback/gstplaysink.c b/gst/playback/gstplaysink.c
index 7f21c68..18e1b56 100644
--- a/gst/playback/gstplaysink.c
+++ b/gst/playback/gstplaysink.c
@@ -2854,6 +2854,8 @@
     GST_DEBUG_OBJECT (playsink, "trying goom");
     elem = gst_element_factory_make ("goom", "vis");
     chain->vis = try_element (playsink, elem, TRUE);
+    gst_object_replace ((GstObject **) & playsink->visualisation,
+        (GstObject *) elem);
   }
   if (chain->vis == NULL)
     goto no_goom;
diff --git a/gst/playback/gsturidecodebin.c b/gst/playback/gsturidecodebin.c
index 561e670..cb053f0 100644
--- a/gst/playback/gsturidecodebin.c
+++ b/gst/playback/gsturidecodebin.c
@@ -1093,6 +1093,18 @@
   return GST_PAD_PROBE_OK;
 }
 
+
+static gboolean
+copy_sticky_events (GstPad * pad, GstEvent ** event, gpointer user_data)
+{
+  GstPad *gpad = GST_PAD_CAST (user_data);
+
+  GST_DEBUG_OBJECT (gpad, "store sticky event %" GST_PTR_FORMAT, *event);
+  gst_pad_store_sticky_event (gpad, *event);
+
+  return TRUE;
+}
+
 /* Called by the signal handlers when a decodebin has found a new raw pad */
 static void
 new_decoded_pad_added_cb (GstElement * element, GstPad * pad,
@@ -1128,6 +1140,7 @@
   GST_URI_DECODE_BIN_UNLOCK (decoder);
 
   gst_pad_set_active (newpad, TRUE);
+  gst_pad_sticky_events_foreach (pad, copy_sticky_events, newpad);
   gst_element_add_pad (GST_ELEMENT_CAST (decoder), newpad);
 }
 
diff --git a/gst/subparse/gstssaparse.c b/gst/subparse/gstssaparse.c
index 6fba00c..06ecef9 100644
--- a/gst/subparse/gstssaparse.c
+++ b/gst/subparse/gstssaparse.c
@@ -234,7 +234,7 @@
       return removed_any;
     }
     /* move terminating NUL character forward as well */
-    g_memmove (t, end + 1, strlen (end + 1) + 1);
+    memmove (t, end + 1, strlen (end + 1) + 1);
     removed_any = TRUE;
   }
 
diff --git a/gst/subparse/gstsubparse.c b/gst/subparse/gstsubparse.c
index 40789e1..a8b8b1f 100644
--- a/gst/subparse/gstsubparse.c
+++ b/gst/subparse/gstsubparse.c
@@ -398,7 +398,7 @@
   len = strlen (ret);
   if (len >= 3 && (guint8) ret[0] == 0xEF && (guint8) ret[1] == 0xBB
       && (guint8) ret[2] == 0xBF)
-    g_memmove (ret, ret + 3, len + 1 - 3);
+    memmove (ret, ret + 3, len + 1 - 3);
 
   return ret;
 }
@@ -674,7 +674,7 @@
       pos[1] = g_ascii_tolower (pos[4]);
       pos[2] = '>';
       /* move NUL terminator as well */
-      g_memmove (pos + 3, pos + 9, strlen (pos + 9) + 1);
+      memmove (pos + 3, pos + 9, strlen (pos + 9) + 1);
       pos += 2;
     }
   }
@@ -688,7 +688,7 @@
       pos[2] = g_ascii_tolower (pos[5]);
       pos[3] = '>';
       /* move NUL terminator as well */
-      g_memmove (pos + 4, pos + 10, strlen (pos + 10) + 1);
+      memmove (pos + 4, pos + 10, strlen (pos + 10) + 1);
       pos += 3;
     }
   }
@@ -711,7 +711,7 @@
   *stop = '\0';
   GST_LOG ("removing unhandled tag '%s'", start);
   *stop = saved;
-  g_memmove (start, stop, strlen (stop) + 1);
+  memmove (start, stop, strlen (stop) + 1);
   return TRUE;
 }
 
@@ -754,7 +754,7 @@
         ++next_tag;
         if (num_open_tags == 0 || open_tags[num_open_tags - 1] != *next_tag) {
           GST_LOG ("broken input, closing tag '%c' is not open", *next_tag);
-          g_memmove (next_tag - 2, next_tag + 2, strlen (next_tag + 2) + 1);
+          memmove (next_tag - 2, next_tag + 2, strlen (next_tag + 2) + 1);
           next_tag -= 2;
         } else {
           /* it's all good, closing tag which is open */
diff --git a/gst/subparse/samiparse.c b/gst/subparse/samiparse.c
index 973192c..517e959 100644
--- a/gst/subparse/samiparse.c
+++ b/gst/subparse/samiparse.c
@@ -490,7 +490,7 @@
 
   attrs = g_new0 (gchar *, (count + 1) * 2);
 
-  for (i = 0; i < count; i += 2) {
+  for (i = 0; i < count && next != NULL; i += 2) {
     gchar *attr_name = NULL, *attr_value = NULL;
     gsize length;
     next = string_token (next + 1, "=", &attr_name);
diff --git a/gst/tcp/gsttcpserversink.c b/gst/tcp/gsttcpserversink.c
index 715ef53..244b576 100644
--- a/gst/tcp/gsttcpserversink.c
+++ b/gst/tcp/gsttcpserversink.c
@@ -152,6 +152,7 @@
 static gboolean
 gst_tcp_server_sink_handle_server_read (GstTCPServerSink * sink)
 {
+  GstMultiSinkHandle handle;
   GSocket *client_socket;
   GError *err = NULL;
 
@@ -161,8 +162,8 @@
   if (!client_socket)
     goto accept_failed;
 
-  gst_multi_handle_sink_add (GST_MULTI_HANDLE_SINK (sink),
-      (GstMultiSinkHandle) client_socket);
+  handle.socket = client_socket;
+  gst_multi_handle_sink_add (GST_MULTI_HANDLE_SINK (sink), handle);
 
 #ifndef GST_DISABLE_GST_DEBUG
   {
diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c
index 93021b4..3135a61 100644
--- a/gst/typefind/gsttypefindfunctions.c
+++ b/gst/typefind/gsttypefindfunctions.c
@@ -2178,10 +2178,13 @@
     gint len;
 
     len = MPEG2_MAX_PROBE_LENGTH;
-    do {
-      len = len / 2;
+
+    while (len >= 16) {
       data = gst_type_find_peek (tf, 0, 5 + len);
-    } while (data == NULL && len >= 32);
+      if (data != NULL)
+        break;
+      len = len / 2;
+    }
 
     if (!data)
       return;
diff --git a/gst/videoconvert/gstvideoconvertorc-dist.c b/gst/videoconvert/gstvideoconvertorc-dist.c
index 4a4f978..4ba952e 100644
--- a/gst/videoconvert/gstvideoconvertorc-dist.c
+++ b/gst/videoconvert/gstvideoconvertorc-dist.c
@@ -207,10 +207,6 @@
 void video_convert_orc_convert_I420_BGRA (guint8 * ORC_RESTRICT d1,
     const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2,
     const guint8 * ORC_RESTRICT s3, int n);
-void video_convert_orc_convert_I420_BGRA_avg (guint8 * ORC_RESTRICT d1,
-    const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2,
-    const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4,
-    const guint8 * ORC_RESTRICT s5, int n);
 void video_convert_orc_getline_I420 (guint8 * ORC_RESTRICT d1,
     const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2,
     const guint8 * ORC_RESTRICT s3, int n);
@@ -9067,7 +9063,12 @@
   const orc_int8 *ORC_RESTRICT ptr4;
   const orc_int8 *ORC_RESTRICT ptr5;
   const orc_int8 *ORC_RESTRICT ptr6;
+  orc_int8 var44;
+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
+  volatile orc_int8 var45;
+#else
   orc_int8 var45;
+#endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
   volatile orc_int8 var46;
 #else
@@ -9079,9 +9080,9 @@
   orc_int8 var47;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var48;
+  volatile orc_union16 var48;
 #else
-  orc_int8 var48;
+  orc_union16 var48;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
   volatile orc_union16 var49;
@@ -9114,9 +9115,9 @@
   orc_int8 var54;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var55;
+  volatile orc_int8 var55;
 #else
-  orc_union32 var55;
+  orc_int8 var55;
 #endif
   orc_union32 var56;
   orc_int8 var57;
@@ -9152,7 +9153,8 @@
   orc_int8 var87;
   orc_union16 var88;
   orc_union16 var89;
-  orc_union32 var90;
+  orc_int8 var90;
+  orc_union16 var91;
 
   ptr0 = (orc_union32 *) d1;
   ptr4 = (orc_int8 *) s1;
@@ -9160,34 +9162,34 @@
   ptr6 = (orc_int8 *) s3;
 
   /* 1: loadpb */
-  var46 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  var45 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 5: loadpb */
-  var47 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  var46 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 9: loadpb */
-  var48 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  var47 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 12: loadpw */
-  var49.i = (int) 0x0000002a;   /* 42 or 2.07508e-322f */
+  var48.i = (int) 0x0000002a;   /* 42 or 2.07508e-322f */
   /* 17: loadpw */
-  var50.i = (int) 0x00000067;   /* 103 or 5.08888e-322f */
+  var49.i = (int) 0x00000067;   /* 103 or 5.08888e-322f */
   /* 24: loadpw */
-  var51.i = (int) 0x00000004;   /* 4 or 1.97626e-323f */
+  var50.i = (int) 0x00000004;   /* 4 or 1.97626e-323f */
   /* 28: loadpw */
-  var52.i = (int) 0x00000064;   /* 100 or 4.94066e-322f */
+  var51.i = (int) 0x00000064;   /* 100 or 4.94066e-322f */
   /* 32: loadpw */
-  var53.i = (int) 0x00000068;   /* 104 or 5.13828e-322f */
+  var52.i = (int) 0x00000068;   /* 104 or 5.13828e-322f */
   /* 41: loadpb */
-  var54 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
-  /* 44: loadpb */
-  var55.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var55.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var55.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var55.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var53.x2[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var53.x2[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  /* 43: loadpb */
+  var54 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  /* 45: loadpb */
+  var55 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
-    var45 = ptr4[i];
+    var44 = ptr4[i];
     /* 2: subb */
-    var57 = var45 - var46;
+    var57 = var44 - var45;
     /* 3: convsbw */
     var58.i = var57;
     /* 4: loadupib */
@@ -9195,7 +9197,7 @@
         (i & 1) ? ((orc_uint8) ptr5[i >> 1] + (orc_uint8) ptr5[(i >> 1) + 1] +
         1) >> 1 : ptr5[i >> 1];
     /* 6: subb */
-    var60 = var59 - var47;
+    var60 = var59 - var46;
     /* 7: convsbw */
     var61.i = var60;
     /* 8: loadupib */
@@ -9203,11 +9205,11 @@
         (i & 1) ? ((orc_uint8) ptr6[i >> 1] + (orc_uint8) ptr6[(i >> 1) + 1] +
         1) >> 1 : ptr6[i >> 1];
     /* 10: subb */
-    var63 = var62 - var48;
+    var63 = var62 - var47;
     /* 11: convsbw */
     var64.i = var63;
     /* 13: mullw */
-    var65.i = (var58.i * var49.i) & 0xffff;
+    var65.i = (var58.i * var48.i) & 0xffff;
     /* 14: shrsw */
     var66.i = var65.i >> 8;
     /* 15: addssw */
@@ -9215,7 +9217,7 @@
     /* 16: addssw */
     var68.i = ORC_CLAMP_SW (var67.i + var64.i);
     /* 18: mullw */
-    var69.i = (var64.i * var50.i) & 0xffff;
+    var69.i = (var64.i * var49.i) & 0xffff;
     /* 19: shrsw */
     var70.i = var69.i >> 8;
     /* 20: subssw */
@@ -9227,19 +9229,19 @@
     /* 23: addssw */
     var74.i = ORC_CLAMP_SW (var73.i + var61.i);
     /* 25: mullw */
-    var75.i = (var61.i * var51.i) & 0xffff;
+    var75.i = (var61.i * var50.i) & 0xffff;
     /* 26: shrsw */
     var76.i = var75.i >> 8;
     /* 27: addssw */
     var77.i = ORC_CLAMP_SW (var74.i + var76.i);
     /* 29: mullw */
-    var78.i = (var61.i * var52.i) & 0xffff;
+    var78.i = (var61.i * var51.i) & 0xffff;
     /* 30: shrsw */
     var79.i = var78.i >> 8;
     /* 31: subssw */
     var80.i = ORC_CLAMP_SW (var67.i - var79.i);
     /* 33: mullw */
-    var81.i = (var64.i * var53.i) & 0xffff;
+    var81.i = (var64.i * var52.i) & 0xffff;
     /* 34: shrsw */
     var82.i = var81.i >> 8;
     /* 35: subssw */
@@ -9259,26 +9261,26 @@
       _dest.x2[1] = var86;
       var88.i = _dest.i;
     }
-    /* 42: mergebw */
+    /* 42: subb */
+    var89.x2[0] = var88.x2[0] - var53.x2[0];
+    var89.x2[1] = var88.x2[1] - var53.x2[1];
+    /* 44: subb */
+    var90 = var85 - var54;
+    /* 46: mergebw */
     {
       orc_union16 _dest;
-      _dest.x2[0] = var85;
-      _dest.x2[1] = var54;
-      var89.i = _dest.i;
+      _dest.x2[0] = var90;
+      _dest.x2[1] = var55;
+      var91.i = _dest.i;
     }
-    /* 43: mergewl */
+    /* 47: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var88.i;
-      _dest.x2[1] = var89.i;
-      var90.i = _dest.i;
+      _dest.x2[0] = var89.i;
+      _dest.x2[1] = var91.i;
+      var56.i = _dest.i;
     }
-    /* 45: addb */
-    var56.x4[0] = var90.x4[0] + var55.x4[0];
-    var56.x4[1] = var90.x4[1] + var55.x4[1];
-    var56.x4[2] = var90.x4[2] + var55.x4[2];
-    var56.x4[3] = var90.x4[3] + var55.x4[3];
-    /* 46: storel */
+    /* 48: storel */
     ptr0[i] = var56;
   }
 
@@ -9294,7 +9296,12 @@
   const orc_int8 *ORC_RESTRICT ptr4;
   const orc_int8 *ORC_RESTRICT ptr5;
   const orc_int8 *ORC_RESTRICT ptr6;
+  orc_int8 var44;
+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
+  volatile orc_int8 var45;
+#else
   orc_int8 var45;
+#endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
   volatile orc_int8 var46;
 #else
@@ -9306,9 +9313,9 @@
   orc_int8 var47;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var48;
+  volatile orc_union16 var48;
 #else
-  orc_int8 var48;
+  orc_union16 var48;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
   volatile orc_union16 var49;
@@ -9341,9 +9348,9 @@
   orc_int8 var54;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var55;
+  volatile orc_int8 var55;
 #else
-  orc_union32 var55;
+  orc_int8 var55;
 #endif
   orc_union32 var56;
   orc_int8 var57;
@@ -9379,7 +9386,8 @@
   orc_int8 var87;
   orc_union16 var88;
   orc_union16 var89;
-  orc_union32 var90;
+  orc_int8 var90;
+  orc_union16 var91;
 
   ptr0 = (orc_union32 *) ex->arrays[0];
   ptr4 = (orc_int8 *) ex->arrays[4];
@@ -9387,34 +9395,34 @@
   ptr6 = (orc_int8 *) ex->arrays[6];
 
   /* 1: loadpb */
-  var46 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  var45 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 5: loadpb */
-  var47 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  var46 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 9: loadpb */
-  var48 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  var47 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 12: loadpw */
-  var49.i = (int) 0x0000002a;   /* 42 or 2.07508e-322f */
+  var48.i = (int) 0x0000002a;   /* 42 or 2.07508e-322f */
   /* 17: loadpw */
-  var50.i = (int) 0x00000067;   /* 103 or 5.08888e-322f */
+  var49.i = (int) 0x00000067;   /* 103 or 5.08888e-322f */
   /* 24: loadpw */
-  var51.i = (int) 0x00000004;   /* 4 or 1.97626e-323f */
+  var50.i = (int) 0x00000004;   /* 4 or 1.97626e-323f */
   /* 28: loadpw */
-  var52.i = (int) 0x00000064;   /* 100 or 4.94066e-322f */
+  var51.i = (int) 0x00000064;   /* 100 or 4.94066e-322f */
   /* 32: loadpw */
-  var53.i = (int) 0x00000068;   /* 104 or 5.13828e-322f */
+  var52.i = (int) 0x00000068;   /* 104 or 5.13828e-322f */
   /* 41: loadpb */
-  var54 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
-  /* 44: loadpb */
-  var55.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var55.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var55.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var55.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var53.x2[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var53.x2[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  /* 43: loadpb */
+  var54 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  /* 45: loadpb */
+  var55 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
-    var45 = ptr4[i];
+    var44 = ptr4[i];
     /* 2: subb */
-    var57 = var45 - var46;
+    var57 = var44 - var45;
     /* 3: convsbw */
     var58.i = var57;
     /* 4: loadupib */
@@ -9422,7 +9430,7 @@
         (i & 1) ? ((orc_uint8) ptr5[i >> 1] + (orc_uint8) ptr5[(i >> 1) + 1] +
         1) >> 1 : ptr5[i >> 1];
     /* 6: subb */
-    var60 = var59 - var47;
+    var60 = var59 - var46;
     /* 7: convsbw */
     var61.i = var60;
     /* 8: loadupib */
@@ -9430,11 +9438,11 @@
         (i & 1) ? ((orc_uint8) ptr6[i >> 1] + (orc_uint8) ptr6[(i >> 1) + 1] +
         1) >> 1 : ptr6[i >> 1];
     /* 10: subb */
-    var63 = var62 - var48;
+    var63 = var62 - var47;
     /* 11: convsbw */
     var64.i = var63;
     /* 13: mullw */
-    var65.i = (var58.i * var49.i) & 0xffff;
+    var65.i = (var58.i * var48.i) & 0xffff;
     /* 14: shrsw */
     var66.i = var65.i >> 8;
     /* 15: addssw */
@@ -9442,7 +9450,7 @@
     /* 16: addssw */
     var68.i = ORC_CLAMP_SW (var67.i + var64.i);
     /* 18: mullw */
-    var69.i = (var64.i * var50.i) & 0xffff;
+    var69.i = (var64.i * var49.i) & 0xffff;
     /* 19: shrsw */
     var70.i = var69.i >> 8;
     /* 20: subssw */
@@ -9454,19 +9462,19 @@
     /* 23: addssw */
     var74.i = ORC_CLAMP_SW (var73.i + var61.i);
     /* 25: mullw */
-    var75.i = (var61.i * var51.i) & 0xffff;
+    var75.i = (var61.i * var50.i) & 0xffff;
     /* 26: shrsw */
     var76.i = var75.i >> 8;
     /* 27: addssw */
     var77.i = ORC_CLAMP_SW (var74.i + var76.i);
     /* 29: mullw */
-    var78.i = (var61.i * var52.i) & 0xffff;
+    var78.i = (var61.i * var51.i) & 0xffff;
     /* 30: shrsw */
     var79.i = var78.i >> 8;
     /* 31: subssw */
     var80.i = ORC_CLAMP_SW (var67.i - var79.i);
     /* 33: mullw */
-    var81.i = (var64.i * var53.i) & 0xffff;
+    var81.i = (var64.i * var52.i) & 0xffff;
     /* 34: shrsw */
     var82.i = var81.i >> 8;
     /* 35: subssw */
@@ -9486,26 +9494,26 @@
       _dest.x2[1] = var86;
       var88.i = _dest.i;
     }
-    /* 42: mergebw */
+    /* 42: subb */
+    var89.x2[0] = var88.x2[0] - var53.x2[0];
+    var89.x2[1] = var88.x2[1] - var53.x2[1];
+    /* 44: subb */
+    var90 = var85 - var54;
+    /* 46: mergebw */
     {
       orc_union16 _dest;
-      _dest.x2[0] = var85;
-      _dest.x2[1] = var54;
-      var89.i = _dest.i;
+      _dest.x2[0] = var90;
+      _dest.x2[1] = var55;
+      var91.i = _dest.i;
     }
-    /* 43: mergewl */
+    /* 47: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var88.i;
-      _dest.x2[1] = var89.i;
-      var90.i = _dest.i;
+      _dest.x2[0] = var89.i;
+      _dest.x2[1] = var91.i;
+      var56.i = _dest.i;
     }
-    /* 45: addb */
-    var56.x4[0] = var90.x4[0] + var55.x4[0];
-    var56.x4[1] = var90.x4[1] + var55.x4[1];
-    var56.x4[2] = var90.x4[2] + var55.x4[2];
-    var56.x4[3] = var90.x4[3] + var55.x4[3];
-    /* 46: storel */
+    /* 48: storel */
     ptr0[i] = var56;
   }
 
@@ -9535,16 +9543,16 @@
         42, 0, 0, 0, 14, 4, 103, 0, 0, 0, 14, 4, 4, 0, 0, 0,
         14, 4, 100, 0, 0, 0, 14, 4, 104, 0, 0, 0, 14, 4, 255, 0,
         0, 0, 20, 2, 20, 2, 20, 1, 20, 2, 20, 2, 20, 2, 20, 2,
-        20, 2, 20, 2, 20, 1, 20, 1, 20, 1, 20, 4, 65, 34, 4, 17,
-        149, 35, 34, 46, 34, 5, 65, 34, 34, 17, 149, 36, 34, 46, 34, 6,
-        65, 34, 34, 17, 149, 37, 34, 89, 32, 35, 18, 94, 32, 32, 16, 71,
-        35, 35, 32, 71, 38, 35, 37, 89, 32, 37, 19, 94, 32, 32, 16, 99,
-        38, 38, 32, 71, 38, 38, 37, 71, 40, 35, 36, 71, 40, 40, 36, 89,
-        32, 36, 20, 94, 32, 32, 16, 71, 40, 40, 32, 89, 32, 36, 21, 94,
-        32, 32, 16, 99, 39, 35, 32, 89, 32, 37, 22, 94, 32, 32, 16, 99,
-        39, 39, 32, 99, 39, 39, 32, 159, 41, 38, 159, 42, 39, 159, 43, 40,
-        196, 32, 43, 42, 196, 33, 41, 23, 195, 44, 32, 33, 21, 2, 33, 0,
-        44, 17, 2, 0,
+        20, 2, 20, 2, 20, 1, 20, 1, 20, 1, 65, 34, 4, 17, 149, 35,
+        34, 46, 34, 5, 65, 34, 34, 17, 149, 36, 34, 46, 34, 6, 65, 34,
+        34, 17, 149, 37, 34, 89, 32, 35, 18, 94, 32, 32, 16, 71, 35, 35,
+        32, 71, 38, 35, 37, 89, 32, 37, 19, 94, 32, 32, 16, 99, 38, 38,
+        32, 71, 38, 38, 37, 71, 40, 35, 36, 71, 40, 40, 36, 89, 32, 36,
+        20, 94, 32, 32, 16, 71, 40, 40, 32, 89, 32, 36, 21, 94, 32, 32,
+        16, 99, 39, 35, 32, 89, 32, 37, 22, 94, 32, 32, 16, 99, 39, 39,
+        32, 99, 39, 39, 32, 159, 41, 38, 159, 42, 39, 159, 43, 40, 196, 32,
+        43, 42, 21, 1, 65, 32, 32, 17, 65, 41, 41, 17, 196, 33, 41, 23,
+        195, 0, 32, 33, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p,
@@ -9578,7 +9586,6 @@
       orc_program_add_temporary (p, 1, "t10");
       orc_program_add_temporary (p, 1, "t11");
       orc_program_add_temporary (p, 1, "t12");
-      orc_program_add_temporary (p, 4, "t13");
 
       orc_program_append_2 (p, "subb", 0, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_C2,
           ORC_VAR_D1);
@@ -9644,11 +9651,13 @@
           ORC_VAR_D1, ORC_VAR_D1);
       orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T1, ORC_VAR_T12,
           ORC_VAR_T11, ORC_VAR_D1);
+      orc_program_append_2 (p, "subb", 1, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C2,
+          ORC_VAR_D1);
+      orc_program_append_2 (p, "subb", 0, ORC_VAR_T10, ORC_VAR_T10, ORC_VAR_C2,
+          ORC_VAR_D1);
       orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T2, ORC_VAR_T10,
           ORC_VAR_C8, ORC_VAR_D1);
-      orc_program_append_2 (p, "mergewl", 0, ORC_VAR_T13, ORC_VAR_T1,
-          ORC_VAR_T2, ORC_VAR_D1);
-      orc_program_append_2 (p, "addb", 2, ORC_VAR_D1, ORC_VAR_T13, ORC_VAR_C2,
+      orc_program_append_2 (p, "mergewl", 0, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2,
           ORC_VAR_D1);
 #endif
 
@@ -9674,681 +9683,6 @@
 #endif
 
 
-/* video_convert_orc_convert_I420_BGRA_avg */
-#ifdef DISABLE_ORC
-void
-video_convert_orc_convert_I420_BGRA_avg (guint8 * ORC_RESTRICT d1,
-    const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2,
-    const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4,
-    const guint8 * ORC_RESTRICT s5, int n)
-{
-  int i;
-  orc_union32 *ORC_RESTRICT ptr0;
-  const orc_int8 *ORC_RESTRICT ptr4;
-  const orc_int8 *ORC_RESTRICT ptr5;
-  const orc_int8 *ORC_RESTRICT ptr6;
-  const orc_int8 *ORC_RESTRICT ptr7;
-  const orc_int8 *ORC_RESTRICT ptr8;
-  orc_int8 var46;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var47;
-#else
-  orc_int8 var47;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var48;
-#else
-  orc_int8 var48;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var49;
-#else
-  orc_int8 var49;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var50;
-#else
-  orc_union16 var50;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var51;
-#else
-  orc_union16 var51;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var52;
-#else
-  orc_union16 var52;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var53;
-#else
-  orc_union16 var53;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var54;
-#else
-  orc_union16 var54;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var55;
-#else
-  orc_int8 var55;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var56;
-#else
-  orc_union32 var56;
-#endif
-  orc_union32 var57;
-  orc_int8 var58;
-  orc_union16 var59;
-  orc_int8 var60;
-  orc_int8 var61;
-  orc_int8 var62;
-  orc_int8 var63;
-  orc_union16 var64;
-  orc_int8 var65;
-  orc_int8 var66;
-  orc_int8 var67;
-  orc_int8 var68;
-  orc_union16 var69;
-  orc_union16 var70;
-  orc_union16 var71;
-  orc_union16 var72;
-  orc_union16 var73;
-  orc_union16 var74;
-  orc_union16 var75;
-  orc_union16 var76;
-  orc_union16 var77;
-  orc_union16 var78;
-  orc_union16 var79;
-  orc_union16 var80;
-  orc_union16 var81;
-  orc_union16 var82;
-  orc_union16 var83;
-  orc_union16 var84;
-  orc_union16 var85;
-  orc_union16 var86;
-  orc_union16 var87;
-  orc_union16 var88;
-  orc_union16 var89;
-  orc_int8 var90;
-  orc_int8 var91;
-  orc_int8 var92;
-  orc_union16 var93;
-  orc_union16 var94;
-  orc_union32 var95;
-
-  ptr0 = (orc_union32 *) d1;
-  ptr4 = (orc_int8 *) s1;
-  ptr5 = (orc_int8 *) s2;
-  ptr6 = (orc_int8 *) s3;
-  ptr7 = (orc_int8 *) s4;
-  ptr8 = (orc_int8 *) s5;
-
-  /* 1: loadpb */
-  var47 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 7: loadpb */
-  var48 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 13: loadpb */
-  var49 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 16: loadpw */
-  var50.i = (int) 0x0000002a;   /* 42 or 2.07508e-322f */
-  /* 21: loadpw */
-  var51.i = (int) 0x00000067;   /* 103 or 5.08888e-322f */
-  /* 28: loadpw */
-  var52.i = (int) 0x00000004;   /* 4 or 1.97626e-323f */
-  /* 32: loadpw */
-  var53.i = (int) 0x00000064;   /* 100 or 4.94066e-322f */
-  /* 36: loadpw */
-  var54.i = (int) 0x00000068;   /* 104 or 5.13828e-322f */
-  /* 45: loadpb */
-  var55 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
-  /* 48: loadpb */
-  var56.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var56.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var56.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var56.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-
-  for (i = 0; i < n; i++) {
-    /* 0: loadb */
-    var46 = ptr4[i];
-    /* 2: subb */
-    var58 = var46 - var47;
-    /* 3: convsbw */
-    var59.i = var58;
-    /* 4: loadupib */
-    var60 =
-        (i & 1) ? ((orc_uint8) ptr5[i >> 1] + (orc_uint8) ptr5[(i >> 1) + 1] +
-        1) >> 1 : ptr5[i >> 1];
-    /* 5: loadupib */
-    var61 =
-        (i & 1) ? ((orc_uint8) ptr6[i >> 1] + (orc_uint8) ptr6[(i >> 1) + 1] +
-        1) >> 1 : ptr6[i >> 1];
-    /* 6: avgub */
-    var62 = ((orc_uint8) var60 + (orc_uint8) var61 + 1) >> 1;
-    /* 8: subb */
-    var63 = var62 - var48;
-    /* 9: convsbw */
-    var64.i = var63;
-    /* 10: loadupib */
-    var65 =
-        (i & 1) ? ((orc_uint8) ptr7[i >> 1] + (orc_uint8) ptr7[(i >> 1) + 1] +
-        1) >> 1 : ptr7[i >> 1];
-    /* 11: loadupib */
-    var66 =
-        (i & 1) ? ((orc_uint8) ptr8[i >> 1] + (orc_uint8) ptr8[(i >> 1) + 1] +
-        1) >> 1 : ptr8[i >> 1];
-    /* 12: avgub */
-    var67 = ((orc_uint8) var65 + (orc_uint8) var66 + 1) >> 1;
-    /* 14: subb */
-    var68 = var67 - var49;
-    /* 15: convsbw */
-    var69.i = var68;
-    /* 17: mullw */
-    var70.i = (var59.i * var50.i) & 0xffff;
-    /* 18: shrsw */
-    var71.i = var70.i >> 8;
-    /* 19: addssw */
-    var72.i = ORC_CLAMP_SW (var59.i + var71.i);
-    /* 20: addssw */
-    var73.i = ORC_CLAMP_SW (var72.i + var69.i);
-    /* 22: mullw */
-    var74.i = (var69.i * var51.i) & 0xffff;
-    /* 23: shrsw */
-    var75.i = var74.i >> 8;
-    /* 24: subssw */
-    var76.i = ORC_CLAMP_SW (var73.i - var75.i);
-    /* 25: addssw */
-    var77.i = ORC_CLAMP_SW (var76.i + var69.i);
-    /* 26: addssw */
-    var78.i = ORC_CLAMP_SW (var72.i + var64.i);
-    /* 27: addssw */
-    var79.i = ORC_CLAMP_SW (var78.i + var64.i);
-    /* 29: mullw */
-    var80.i = (var64.i * var52.i) & 0xffff;
-    /* 30: shrsw */
-    var81.i = var80.i >> 8;
-    /* 31: addssw */
-    var82.i = ORC_CLAMP_SW (var79.i + var81.i);
-    /* 33: mullw */
-    var83.i = (var64.i * var53.i) & 0xffff;
-    /* 34: shrsw */
-    var84.i = var83.i >> 8;
-    /* 35: subssw */
-    var85.i = ORC_CLAMP_SW (var72.i - var84.i);
-    /* 37: mullw */
-    var86.i = (var69.i * var54.i) & 0xffff;
-    /* 38: shrsw */
-    var87.i = var86.i >> 8;
-    /* 39: subssw */
-    var88.i = ORC_CLAMP_SW (var85.i - var87.i);
-    /* 40: subssw */
-    var89.i = ORC_CLAMP_SW (var88.i - var87.i);
-    /* 41: convssswb */
-    var90 = ORC_CLAMP_SB (var77.i);
-    /* 42: convssswb */
-    var91 = ORC_CLAMP_SB (var89.i);
-    /* 43: convssswb */
-    var92 = ORC_CLAMP_SB (var82.i);
-    /* 44: mergebw */
-    {
-      orc_union16 _dest;
-      _dest.x2[0] = var92;
-      _dest.x2[1] = var91;
-      var93.i = _dest.i;
-    }
-    /* 46: mergebw */
-    {
-      orc_union16 _dest;
-      _dest.x2[0] = var90;
-      _dest.x2[1] = var55;
-      var94.i = _dest.i;
-    }
-    /* 47: mergewl */
-    {
-      orc_union32 _dest;
-      _dest.x2[0] = var93.i;
-      _dest.x2[1] = var94.i;
-      var95.i = _dest.i;
-    }
-    /* 49: addb */
-    var57.x4[0] = var95.x4[0] + var56.x4[0];
-    var57.x4[1] = var95.x4[1] + var56.x4[1];
-    var57.x4[2] = var95.x4[2] + var56.x4[2];
-    var57.x4[3] = var95.x4[3] + var56.x4[3];
-    /* 50: storel */
-    ptr0[i] = var57;
-  }
-
-}
-
-#else
-static void
-_backup_video_convert_orc_convert_I420_BGRA_avg (OrcExecutor * ORC_RESTRICT ex)
-{
-  int i;
-  int n = ex->n;
-  orc_union32 *ORC_RESTRICT ptr0;
-  const orc_int8 *ORC_RESTRICT ptr4;
-  const orc_int8 *ORC_RESTRICT ptr5;
-  const orc_int8 *ORC_RESTRICT ptr6;
-  const orc_int8 *ORC_RESTRICT ptr7;
-  const orc_int8 *ORC_RESTRICT ptr8;
-  orc_int8 var46;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var47;
-#else
-  orc_int8 var47;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var48;
-#else
-  orc_int8 var48;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var49;
-#else
-  orc_int8 var49;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var50;
-#else
-  orc_union16 var50;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var51;
-#else
-  orc_union16 var51;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var52;
-#else
-  orc_union16 var52;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var53;
-#else
-  orc_union16 var53;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var54;
-#else
-  orc_union16 var54;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var55;
-#else
-  orc_int8 var55;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var56;
-#else
-  orc_union32 var56;
-#endif
-  orc_union32 var57;
-  orc_int8 var58;
-  orc_union16 var59;
-  orc_int8 var60;
-  orc_int8 var61;
-  orc_int8 var62;
-  orc_int8 var63;
-  orc_union16 var64;
-  orc_int8 var65;
-  orc_int8 var66;
-  orc_int8 var67;
-  orc_int8 var68;
-  orc_union16 var69;
-  orc_union16 var70;
-  orc_union16 var71;
-  orc_union16 var72;
-  orc_union16 var73;
-  orc_union16 var74;
-  orc_union16 var75;
-  orc_union16 var76;
-  orc_union16 var77;
-  orc_union16 var78;
-  orc_union16 var79;
-  orc_union16 var80;
-  orc_union16 var81;
-  orc_union16 var82;
-  orc_union16 var83;
-  orc_union16 var84;
-  orc_union16 var85;
-  orc_union16 var86;
-  orc_union16 var87;
-  orc_union16 var88;
-  orc_union16 var89;
-  orc_int8 var90;
-  orc_int8 var91;
-  orc_int8 var92;
-  orc_union16 var93;
-  orc_union16 var94;
-  orc_union32 var95;
-
-  ptr0 = (orc_union32 *) ex->arrays[0];
-  ptr4 = (orc_int8 *) ex->arrays[4];
-  ptr5 = (orc_int8 *) ex->arrays[5];
-  ptr6 = (orc_int8 *) ex->arrays[6];
-  ptr7 = (orc_int8 *) ex->arrays[7];
-  ptr8 = (orc_int8 *) ex->arrays[8];
-
-  /* 1: loadpb */
-  var47 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 7: loadpb */
-  var48 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 13: loadpb */
-  var49 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 16: loadpw */
-  var50.i = (int) 0x0000002a;   /* 42 or 2.07508e-322f */
-  /* 21: loadpw */
-  var51.i = (int) 0x00000067;   /* 103 or 5.08888e-322f */
-  /* 28: loadpw */
-  var52.i = (int) 0x00000004;   /* 4 or 1.97626e-323f */
-  /* 32: loadpw */
-  var53.i = (int) 0x00000064;   /* 100 or 4.94066e-322f */
-  /* 36: loadpw */
-  var54.i = (int) 0x00000068;   /* 104 or 5.13828e-322f */
-  /* 45: loadpb */
-  var55 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
-  /* 48: loadpb */
-  var56.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var56.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var56.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var56.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-
-  for (i = 0; i < n; i++) {
-    /* 0: loadb */
-    var46 = ptr4[i];
-    /* 2: subb */
-    var58 = var46 - var47;
-    /* 3: convsbw */
-    var59.i = var58;
-    /* 4: loadupib */
-    var60 =
-        (i & 1) ? ((orc_uint8) ptr5[i >> 1] + (orc_uint8) ptr5[(i >> 1) + 1] +
-        1) >> 1 : ptr5[i >> 1];
-    /* 5: loadupib */
-    var61 =
-        (i & 1) ? ((orc_uint8) ptr6[i >> 1] + (orc_uint8) ptr6[(i >> 1) + 1] +
-        1) >> 1 : ptr6[i >> 1];
-    /* 6: avgub */
-    var62 = ((orc_uint8) var60 + (orc_uint8) var61 + 1) >> 1;
-    /* 8: subb */
-    var63 = var62 - var48;
-    /* 9: convsbw */
-    var64.i = var63;
-    /* 10: loadupib */
-    var65 =
-        (i & 1) ? ((orc_uint8) ptr7[i >> 1] + (orc_uint8) ptr7[(i >> 1) + 1] +
-        1) >> 1 : ptr7[i >> 1];
-    /* 11: loadupib */
-    var66 =
-        (i & 1) ? ((orc_uint8) ptr8[i >> 1] + (orc_uint8) ptr8[(i >> 1) + 1] +
-        1) >> 1 : ptr8[i >> 1];
-    /* 12: avgub */
-    var67 = ((orc_uint8) var65 + (orc_uint8) var66 + 1) >> 1;
-    /* 14: subb */
-    var68 = var67 - var49;
-    /* 15: convsbw */
-    var69.i = var68;
-    /* 17: mullw */
-    var70.i = (var59.i * var50.i) & 0xffff;
-    /* 18: shrsw */
-    var71.i = var70.i >> 8;
-    /* 19: addssw */
-    var72.i = ORC_CLAMP_SW (var59.i + var71.i);
-    /* 20: addssw */
-    var73.i = ORC_CLAMP_SW (var72.i + var69.i);
-    /* 22: mullw */
-    var74.i = (var69.i * var51.i) & 0xffff;
-    /* 23: shrsw */
-    var75.i = var74.i >> 8;
-    /* 24: subssw */
-    var76.i = ORC_CLAMP_SW (var73.i - var75.i);
-    /* 25: addssw */
-    var77.i = ORC_CLAMP_SW (var76.i + var69.i);
-    /* 26: addssw */
-    var78.i = ORC_CLAMP_SW (var72.i + var64.i);
-    /* 27: addssw */
-    var79.i = ORC_CLAMP_SW (var78.i + var64.i);
-    /* 29: mullw */
-    var80.i = (var64.i * var52.i) & 0xffff;
-    /* 30: shrsw */
-    var81.i = var80.i >> 8;
-    /* 31: addssw */
-    var82.i = ORC_CLAMP_SW (var79.i + var81.i);
-    /* 33: mullw */
-    var83.i = (var64.i * var53.i) & 0xffff;
-    /* 34: shrsw */
-    var84.i = var83.i >> 8;
-    /* 35: subssw */
-    var85.i = ORC_CLAMP_SW (var72.i - var84.i);
-    /* 37: mullw */
-    var86.i = (var69.i * var54.i) & 0xffff;
-    /* 38: shrsw */
-    var87.i = var86.i >> 8;
-    /* 39: subssw */
-    var88.i = ORC_CLAMP_SW (var85.i - var87.i);
-    /* 40: subssw */
-    var89.i = ORC_CLAMP_SW (var88.i - var87.i);
-    /* 41: convssswb */
-    var90 = ORC_CLAMP_SB (var77.i);
-    /* 42: convssswb */
-    var91 = ORC_CLAMP_SB (var89.i);
-    /* 43: convssswb */
-    var92 = ORC_CLAMP_SB (var82.i);
-    /* 44: mergebw */
-    {
-      orc_union16 _dest;
-      _dest.x2[0] = var92;
-      _dest.x2[1] = var91;
-      var93.i = _dest.i;
-    }
-    /* 46: mergebw */
-    {
-      orc_union16 _dest;
-      _dest.x2[0] = var90;
-      _dest.x2[1] = var55;
-      var94.i = _dest.i;
-    }
-    /* 47: mergewl */
-    {
-      orc_union32 _dest;
-      _dest.x2[0] = var93.i;
-      _dest.x2[1] = var94.i;
-      var95.i = _dest.i;
-    }
-    /* 49: addb */
-    var57.x4[0] = var95.x4[0] + var56.x4[0];
-    var57.x4[1] = var95.x4[1] + var56.x4[1];
-    var57.x4[2] = var95.x4[2] + var56.x4[2];
-    var57.x4[3] = var95.x4[3] + var56.x4[3];
-    /* 50: storel */
-    ptr0[i] = var57;
-  }
-
-}
-
-void
-video_convert_orc_convert_I420_BGRA_avg (guint8 * ORC_RESTRICT d1,
-    const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2,
-    const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4,
-    const guint8 * ORC_RESTRICT s5, int n)
-{
-  OrcExecutor _ex, *ex = &_ex;
-  static volatile int p_inited = 0;
-  static OrcCode *c = 0;
-  void (*func) (OrcExecutor *);
-
-  if (!p_inited) {
-    orc_once_mutex_lock ();
-    if (!p_inited) {
-      OrcProgram *p;
-
-#if 1
-      static const orc_uint8 bc[] = {
-        1, 9, 39, 118, 105, 100, 101, 111, 95, 99, 111, 110, 118, 101, 114, 116,
-        95, 111, 114, 99, 95, 99, 111, 110, 118, 101, 114, 116, 95, 73, 52, 50,
-        48, 95, 66, 71, 82, 65, 95, 97, 118, 103, 11, 4, 4, 12, 1, 1,
-        12, 1, 1, 12, 1, 1, 12, 1, 1, 12, 1, 1, 14, 1, 8, 0,
-        0, 0, 14, 1, 128, 0, 0, 0, 14, 4, 42, 0, 0, 0, 14, 4,
-        103, 0, 0, 0, 14, 4, 4, 0, 0, 0, 14, 4, 100, 0, 0, 0,
-        14, 4, 104, 0, 0, 0, 14, 4, 255, 0, 0, 0, 20, 2, 20, 2,
-        20, 1, 20, 1, 20, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 2,
-        20, 1, 20, 1, 20, 1, 20, 4, 65, 34, 4, 17, 149, 36, 34, 46,
-        34, 5, 46, 35, 6, 39, 34, 34, 35, 65, 34, 34, 17, 149, 37, 34,
-        46, 34, 7, 46, 35, 8, 39, 34, 34, 35, 65, 34, 34, 17, 149, 38,
-        34, 89, 32, 36, 18, 94, 32, 32, 16, 71, 36, 36, 32, 71, 39, 36,
-        38, 89, 32, 38, 19, 94, 32, 32, 16, 99, 39, 39, 32, 71, 39, 39,
-        38, 71, 41, 36, 37, 71, 41, 41, 37, 89, 32, 37, 20, 94, 32, 32,
-        16, 71, 41, 41, 32, 89, 32, 37, 21, 94, 32, 32, 16, 99, 40, 36,
-        32, 89, 32, 38, 22, 94, 32, 32, 16, 99, 40, 40, 32, 99, 40, 40,
-        32, 159, 42, 39, 159, 43, 40, 159, 44, 41, 196, 32, 44, 43, 196, 33,
-        42, 23, 195, 45, 32, 33, 21, 2, 33, 0, 45, 17, 2, 0,
-      };
-      p = orc_program_new_from_static_bytecode (bc);
-      orc_program_set_backup_function (p,
-          _backup_video_convert_orc_convert_I420_BGRA_avg);
-#else
-      p = orc_program_new ();
-      orc_program_set_name (p, "video_convert_orc_convert_I420_BGRA_avg");
-      orc_program_set_backup_function (p,
-          _backup_video_convert_orc_convert_I420_BGRA_avg);
-      orc_program_add_destination (p, 4, "d1");
-      orc_program_add_source (p, 1, "s1");
-      orc_program_add_source (p, 1, "s2");
-      orc_program_add_source (p, 1, "s3");
-      orc_program_add_source (p, 1, "s4");
-      orc_program_add_source (p, 1, "s5");
-      orc_program_add_constant (p, 1, 0x00000008, "c1");
-      orc_program_add_constant (p, 1, 0x00000080, "c2");
-      orc_program_add_constant (p, 4, 0x0000002a, "c3");
-      orc_program_add_constant (p, 4, 0x00000067, "c4");
-      orc_program_add_constant (p, 4, 0x00000004, "c5");
-      orc_program_add_constant (p, 4, 0x00000064, "c6");
-      orc_program_add_constant (p, 4, 0x00000068, "c7");
-      orc_program_add_constant (p, 4, 0x000000ff, "c8");
-      orc_program_add_temporary (p, 2, "t1");
-      orc_program_add_temporary (p, 2, "t2");
-      orc_program_add_temporary (p, 1, "t3");
-      orc_program_add_temporary (p, 1, "t4");
-      orc_program_add_temporary (p, 2, "t5");
-      orc_program_add_temporary (p, 2, "t6");
-      orc_program_add_temporary (p, 2, "t7");
-      orc_program_add_temporary (p, 2, "t8");
-      orc_program_add_temporary (p, 2, "t9");
-      orc_program_add_temporary (p, 2, "t10");
-      orc_program_add_temporary (p, 1, "t11");
-      orc_program_add_temporary (p, 1, "t12");
-      orc_program_add_temporary (p, 1, "t13");
-      orc_program_add_temporary (p, 4, "t14");
-
-      orc_program_append_2 (p, "subb", 0, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_C2,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "convsbw", 0, ORC_VAR_T5, ORC_VAR_T3, ORC_VAR_D1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "loadupib", 0, ORC_VAR_T3, ORC_VAR_S2,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "loadupib", 0, ORC_VAR_T4, ORC_VAR_S3,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "avgub", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_T4,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "subb", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_C2,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "convsbw", 0, ORC_VAR_T6, ORC_VAR_T3, ORC_VAR_D1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "loadupib", 0, ORC_VAR_T3, ORC_VAR_S4,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "loadupib", 0, ORC_VAR_T4, ORC_VAR_S5,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "avgub", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_T4,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "subb", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_C2,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "convsbw", 0, ORC_VAR_T7, ORC_VAR_T3, ORC_VAR_D1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "mullw", 0, ORC_VAR_T1, ORC_VAR_T5, ORC_VAR_C3,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "addssw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_T1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "addssw", 0, ORC_VAR_T8, ORC_VAR_T5, ORC_VAR_T7,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "mullw", 0, ORC_VAR_T1, ORC_VAR_T7, ORC_VAR_C4,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "subssw", 0, ORC_VAR_T8, ORC_VAR_T8, ORC_VAR_T1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "addssw", 0, ORC_VAR_T8, ORC_VAR_T8, ORC_VAR_T7,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "addssw", 0, ORC_VAR_T10, ORC_VAR_T5, ORC_VAR_T6,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "addssw", 0, ORC_VAR_T10, ORC_VAR_T10,
-          ORC_VAR_T6, ORC_VAR_D1);
-      orc_program_append_2 (p, "mullw", 0, ORC_VAR_T1, ORC_VAR_T6, ORC_VAR_C5,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "addssw", 0, ORC_VAR_T10, ORC_VAR_T10,
-          ORC_VAR_T1, ORC_VAR_D1);
-      orc_program_append_2 (p, "mullw", 0, ORC_VAR_T1, ORC_VAR_T6, ORC_VAR_C6,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "subssw", 0, ORC_VAR_T9, ORC_VAR_T5, ORC_VAR_T1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "mullw", 0, ORC_VAR_T1, ORC_VAR_T7, ORC_VAR_C7,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "subssw", 0, ORC_VAR_T9, ORC_VAR_T9, ORC_VAR_T1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "subssw", 0, ORC_VAR_T9, ORC_VAR_T9, ORC_VAR_T1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T11, ORC_VAR_T8,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T12, ORC_VAR_T9,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T13, ORC_VAR_T10,
-          ORC_VAR_D1, ORC_VAR_D1);
-      orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T1, ORC_VAR_T13,
-          ORC_VAR_T12, ORC_VAR_D1);
-      orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T2, ORC_VAR_T11,
-          ORC_VAR_C8, ORC_VAR_D1);
-      orc_program_append_2 (p, "mergewl", 0, ORC_VAR_T14, ORC_VAR_T1,
-          ORC_VAR_T2, ORC_VAR_D1);
-      orc_program_append_2 (p, "addb", 2, ORC_VAR_D1, ORC_VAR_T14, ORC_VAR_C2,
-          ORC_VAR_D1);
-#endif
-
-      orc_program_compile (p);
-      c = orc_program_take_code (p);
-      orc_program_free (p);
-    }
-    p_inited = TRUE;
-    orc_once_mutex_unlock ();
-  }
-  ex->arrays[ORC_VAR_A2] = c;
-  ex->program = 0;
-
-  ex->n = n;
-  ex->arrays[ORC_VAR_D1] = d1;
-  ex->arrays[ORC_VAR_S1] = (void *) s1;
-  ex->arrays[ORC_VAR_S2] = (void *) s2;
-  ex->arrays[ORC_VAR_S3] = (void *) s3;
-  ex->arrays[ORC_VAR_S4] = (void *) s4;
-  ex->arrays[ORC_VAR_S5] = (void *) s5;
-
-  func = c->exec;
-  func (ex);
-}
-#endif
-
-
 /* video_convert_orc_getline_I420 */
 #ifdef DISABLE_ORC
 void
diff --git a/gst/videoconvert/gstvideoconvertorc-dist.h b/gst/videoconvert/gstvideoconvertorc-dist.h
index b08ed58..abc0c87 100644
--- a/gst/videoconvert/gstvideoconvertorc-dist.h
+++ b/gst/videoconvert/gstvideoconvertorc-dist.h
@@ -115,7 +115,6 @@
 void video_convert_orc_convert_AYUV_ABGR (guint8 * ORC_RESTRICT d1, int d1_stride, const guint8 * ORC_RESTRICT s1, int s1_stride, int n, int m);
 void video_convert_orc_convert_AYUV_RGBA (guint8 * ORC_RESTRICT d1, int d1_stride, const guint8 * ORC_RESTRICT s1, int s1_stride, int n, int m);
 void video_convert_orc_convert_I420_BGRA (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, int n);
-void video_convert_orc_convert_I420_BGRA_avg (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, const guint8 * ORC_RESTRICT s4, const guint8 * ORC_RESTRICT s5, int n);
 void video_convert_orc_getline_I420 (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, int n);
 void video_convert_orc_getline_YUV9 (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, const guint8 * ORC_RESTRICT s2, const guint8 * ORC_RESTRICT s3, int n);
 void video_convert_orc_getline_YUY2 (guint8 * ORC_RESTRICT d1, const guint8 * ORC_RESTRICT s1, int n);
diff --git a/gst/videoconvert/gstvideoconvertorc.orc b/gst/videoconvert/gstvideoconvertorc.orc
index c040395..c055ce2 100644
--- a/gst/videoconvert/gstvideoconvertorc.orc
+++ b/gst/videoconvert/gstvideoconvertorc.orc
@@ -725,7 +725,6 @@
 .temp 1 r
 .temp 1 g
 .temp 1 b
-.temp 4 x
 .const 1 c8 8
 .const 1 c128 128
 
@@ -767,81 +766,10 @@
 convssswb b, wb
 
 mergebw t1, b, g
+x2 subb t1, t1, c128
+subb    r, r, c128
 mergebw t2, r, 255
-mergewl x, t1, t2
-x4 addb argb, x, c128
-
-
-
-.function video_convert_orc_convert_I420_BGRA_avg
-.dest 4 argb guint8
-.source 1 y guint8
-.source 1 u1 guint8
-.source 1 u2 guint8
-.source 1 v1 guint8
-.source 1 v2 guint8
-.temp 2 t1
-.temp 2 t2
-.temp 1 t3
-.temp 1 t4
-.temp 2 wy
-.temp 2 wu
-.temp 2 wv
-.temp 2 wr
-.temp 2 wg
-.temp 2 wb
-.temp 1 r
-.temp 1 g
-.temp 1 b
-.temp 4 x
-.const 1 c8 8
-.const 1 c128 128
-
-subb t3, y, c128
-convsbw wy, t3
-loadupib t3, u1
-loadupib t4, u2
-avgub t3, t3, t4
-subb t3, t3, c128
-convsbw wu, t3
-loadupib t3, v1
-loadupib t4, v2
-avgub t3, t3, t4
-subb t3, t3, c128
-convsbw wv, t3
-
-mullw t1, wy, 42
-shrsw t1, t1, c8
-addssw wy, wy, t1
-
-addssw wr, wy, wv
-mullw t1, wv, 103
-shrsw t1, t1, c8
-subssw wr, wr, t1
-addssw wr, wr, wv
-
-addssw wb, wy, wu
-addssw wb, wb, wu
-mullw t1, wu, 4
-shrsw t1, t1, c8
-addssw wb, wb, t1
-
-mullw t1, wu, 100
-shrsw t1, t1, c8
-subssw wg, wy, t1
-mullw t1, wv, 104
-shrsw t1, t1, c8
-subssw wg, wg, t1
-subssw wg, wg, t1
-
-convssswb r, wr
-convssswb g, wg
-convssswb b, wb
-
-mergebw t1, b, g
-mergebw t2, r, 255
-mergewl x, t1, t2
-x4 addb argb, x, c128
+mergewl argb, t1, t2
 
 
 
diff --git a/gst/videoconvert/videoconvert.c b/gst/videoconvert/videoconvert.c
index 23232ae..916f632 100644
--- a/gst/videoconvert/videoconvert.c
+++ b/gst/videoconvert/videoconvert.c
@@ -1246,33 +1246,13 @@
     const GstVideoFrame * src)
 {
   int i;
-  int quality = 0;
   gint width = convert->width;
   gint height = convert->height;
 
-  if (quality > 3) {
-    for (i = 0; i < height; i++) {
-      if (i & 1) {
-        video_convert_orc_convert_I420_BGRA_avg (FRAME_GET_LINE (dest, i),
-            FRAME_GET_Y_LINE (src, i),
-            FRAME_GET_U_LINE (src, i >> 1),
-            FRAME_GET_U_LINE (src, (i >> 1) + 1),
-            FRAME_GET_V_LINE (src, i >> 1),
-            FRAME_GET_V_LINE (src, (i >> 1) + 1), width);
-      } else {
-        video_convert_orc_convert_I420_BGRA (FRAME_GET_LINE (dest, i),
-            FRAME_GET_Y_LINE (src, i),
-            FRAME_GET_U_LINE (src, i >> 1),
-            FRAME_GET_V_LINE (src, i >> 1), width);
-      }
-    }
-  } else {
-    for (i = 0; i < height; i++) {
-      video_convert_orc_convert_I420_BGRA (FRAME_GET_LINE (dest, i),
-          FRAME_GET_Y_LINE (src, i),
-          FRAME_GET_U_LINE (src, i >> 1),
-          FRAME_GET_V_LINE (src, i >> 1), width);
-    }
+  for (i = 0; i < height; i++) {
+    video_convert_orc_convert_I420_BGRA (FRAME_GET_LINE (dest, i),
+        FRAME_GET_Y_LINE (src, i),
+        FRAME_GET_U_LINE (src, i >> 1), FRAME_GET_V_LINE (src, i >> 1), width);
   }
 }
 #endif
diff --git a/gst/videoscale/gstvideoscaleorc-dist.c b/gst/videoscale/gstvideoscaleorc-dist.c
index c627d0c..0ecc1fa 100644
--- a/gst/videoscale/gstvideoscaleorc-dist.c
+++ b/gst/videoscale/gstvideoscaleorc-dist.c
@@ -319,7 +319,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 31, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 109, 101, 114, 103, 101, 95, 108, 105, 110, 101, 97, 114,
-            95,
+        95,
         117, 56, 11, 1, 1, 12, 1, 1, 12, 1, 1, 14, 4, 128, 0, 0,
         0, 16, 1, 20, 2, 20, 2, 20, 1, 20, 1, 43, 34, 4, 150, 32,
         4, 150, 33, 5, 98, 33, 33, 32, 89, 33, 33, 24, 70, 33, 33, 16,
@@ -502,7 +502,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 32, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 109, 101, 114, 103, 101, 95, 108, 105, 110, 101, 97, 114,
-            95,
+        95,
         117, 49, 54, 11, 2, 2, 12, 2, 2, 12, 2, 2, 14, 4, 16, 0,
         0, 0, 16, 2, 16, 2, 20, 4, 20, 4, 177, 32, 4, 24, 177, 33,
         5, 25, 103, 32, 32, 33, 126, 32, 32, 16, 163, 0, 32, 2, 0,
@@ -955,7 +955,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 29, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 100, 111, 119, 110, 115, 97, 109, 112, 108, 101, 95, 117,
-            56,
+        56,
         11, 1, 1, 12, 2, 2, 20, 1, 20, 1, 199, 32, 33, 4, 39, 0,
         32, 33, 2, 0,
       };
@@ -1087,7 +1087,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 30, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 100, 111, 119, 110, 115, 97, 109, 112, 108, 101, 95, 117,
-            49,
+        49,
         54, 11, 2, 2, 12, 4, 4, 20, 2, 20, 2, 198, 32, 33, 4, 76,
         0, 32, 33, 2, 0,
       };
@@ -1225,7 +1225,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 30, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 100, 111, 119, 110, 115, 97, 109, 112, 108, 101, 95, 117,
-            51,
+        51,
         50, 11, 4, 4, 12, 8, 8, 20, 4, 20, 4, 197, 32, 33, 4, 21,
         2, 39, 0, 32, 33, 2, 0,
       };
@@ -1479,7 +1479,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 31, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 100, 111, 119, 110, 115, 97, 109, 112, 108, 101, 95, 121,
-            117,
+        117,
         121, 118, 11, 4, 4, 12, 8, 8, 20, 4, 20, 4, 20, 2, 20, 2,
         20, 2, 20, 2, 21, 2, 199, 32, 33, 4, 21, 1, 199, 34, 35, 32,
         21, 1, 39, 36, 34, 35, 198, 34, 35, 33, 21, 1, 39, 37, 34, 35,
@@ -1601,7 +1601,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 35, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 114, 101, 115, 97, 109, 112, 108, 101, 95, 110, 101, 97,
-            114,
+        114,
         101, 115, 116, 95, 117, 56, 11, 1, 1, 12, 1, 1, 16, 4, 16, 4,
         48, 0, 4, 24, 25, 2, 0,
       };
@@ -1719,7 +1719,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 36, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 114, 101, 115, 97, 109, 112, 108, 101, 95, 98, 105, 108,
-            105,
+        105,
         110, 101, 97, 114, 95, 117, 56, 11, 1, 1, 12, 1, 1, 16, 4, 16,
         4, 50, 0, 4, 24, 25, 2, 0,
       };
@@ -1827,7 +1827,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 36, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 114, 101, 115, 97, 109, 112, 108, 101, 95, 110, 101, 97,
-            114,
+        114,
         101, 115, 116, 95, 117, 51, 50, 11, 4, 4, 12, 4, 4, 16, 4, 16,
         4, 49, 0, 4, 24, 25, 2, 0,
       };
@@ -1967,7 +1967,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 37, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 114, 101, 115, 97, 109, 112, 108, 101, 95, 98, 105, 108,
-            105,
+        105,
         110, 101, 97, 114, 95, 117, 51, 50, 11, 4, 4, 12, 4, 4, 16, 4,
         16, 4, 51, 0, 4, 24, 25, 2, 0,
       };
@@ -2212,7 +2212,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 118, 105, 100, 101, 111, 95, 115, 99, 97, 108, 101, 95, 111,
         114, 99, 95, 114, 101, 115, 97, 109, 112, 108, 101, 95, 109, 101, 114,
-            103,
+        103,
         101, 95, 98, 105, 108, 105, 110, 101, 97, 114, 95, 117, 51, 50, 11, 4,
         4, 11, 4, 4, 12, 4, 4, 12, 4, 4, 16, 4, 16, 4, 16, 4,
         20, 4, 20, 4, 20, 4, 20, 8, 20, 8, 51, 33, 5, 25, 26, 128,
diff --git a/gst/volume/gstvolumeorc-dist.c b/gst/volume/gstvolumeorc-dist.c
index 80c9f8b..1a3f519 100644
--- a/gst/volume/gstvolumeorc-dist.c
+++ b/gst/volume/gstvolumeorc-dist.c
@@ -258,7 +258,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 32, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 115, 99,
         97, 108, 97, 114, 109, 117, 108, 116, 105, 112, 108, 121, 95, 102, 54,
-            52,
+        52,
         95, 110, 115, 11, 8, 8, 18, 8, 214, 0, 0, 24, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
@@ -388,7 +388,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 32, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 115, 99,
         97, 108, 97, 114, 109, 117, 108, 116, 105, 112, 108, 121, 95, 102, 51,
-            50,
+        50,
         95, 110, 115, 11, 4, 4, 17, 4, 202, 0, 0, 24, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
@@ -1142,7 +1142,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 29, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 105, 110, 116, 56, 95, 99, 108, 97, 109,
-            112,
+        112,
         11, 1, 1, 14, 4, 3, 0, 0, 0, 16, 1, 20, 2, 174, 32, 0,
         24, 94, 32, 32, 16, 159, 0, 32, 2, 0,
       };
@@ -1564,7 +1564,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 37, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 102, 54, 52, 95, 49, 99, 104, 11, 8, 8, 12, 8, 8, 214, 0,
         0, 4, 2, 0,
       };
@@ -1714,7 +1714,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 37, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 102, 51, 50, 95, 49, 99, 104, 11, 4, 4, 12, 8, 8, 20, 4,
         225, 32, 4, 202, 0, 0, 32, 2, 0,
       };
@@ -1901,7 +1901,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 37, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 102, 51, 50, 95, 50, 99, 104, 11, 8, 8, 12, 8, 8, 20, 4,
         20, 8, 225, 32, 4, 194, 33, 32, 32, 21, 1, 202, 0, 0, 33, 2,
         0,
@@ -2064,7 +2064,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 105, 110, 116, 51, 50, 95, 49, 99, 104, 11, 4, 4, 12, 8, 8,
         20, 8, 223, 32, 0, 214, 32, 32, 4, 222, 0, 32, 2, 0,
       };
@@ -2255,7 +2255,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 105, 110, 116, 49, 54, 95, 49, 99, 104, 11, 2, 2, 12, 8, 8,
         20, 4, 20, 4, 153, 32, 0, 211, 32, 32, 225, 33, 4, 202, 32, 32,
         33, 210, 32, 32, 165, 0, 32, 2, 0,
@@ -2508,7 +2508,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 105, 110, 116, 49, 54, 95, 50, 99, 104, 11, 4, 4, 12, 8, 8,
         20, 8, 20, 4, 20, 8, 21, 1, 153, 32, 0, 21, 1, 211, 32, 32,
         225, 33, 4, 194, 34, 33, 33, 21, 1, 202, 34, 34, 32, 21, 1, 210,
@@ -2723,7 +2723,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 38, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 105, 110, 116, 56, 95, 49, 99, 104, 11, 1, 1, 12, 8, 8, 20,
         2, 20, 4, 20, 4, 149, 32, 0, 153, 33, 32, 211, 33, 33, 225, 34,
         4, 202, 33, 33, 34, 210, 33, 33, 163, 32, 33, 159, 0, 32, 2, 0,
@@ -2998,7 +2998,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 38, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
-            100,
+        100,
         95, 105, 110, 116, 56, 95, 50, 99, 104, 11, 2, 2, 12, 8, 8, 20,
         4, 20, 8, 20, 8, 21, 1, 149, 32, 0, 21, 1, 153, 33, 32, 21,
         1, 211, 33, 33, 225, 32, 4, 194, 34, 32, 32, 21, 1, 202, 33, 33,
diff --git a/po/af.gmo b/po/af.gmo
index 4deaeab..674113e 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index df0d82a..e76a6ac 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.7.6\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2004-03-18 14:16+0200\n"
 "Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
 "Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/po/az.gmo b/po/az.gmo
index 6ec87b3..f63873a 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index 3d44cce..04a912b 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2004-03-19 18:29+0200\n"
 "Last-Translator: Metin Amiroff <metin@karegen.com>\n"
 "Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
diff --git a/po/bg.gmo b/po/bg.gmo
index 1f74dde..43c6bc8 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index b26b576..a7af7e6 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2011-04-26 22:31+0300\n"
 "Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
diff --git a/po/ca.gmo b/po/ca.gmo
index 21526aa..7252730 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index e9e9475..4ae7403 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2012-01-01 14:19+0100\n"
 "Last-Translator: Gil Forcada <gforcada@gnome.org>\n"
 "Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/po/cs.gmo b/po/cs.gmo
index 94b3a53..042a70b 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 0d6131b..763b77f 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.1.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-09-18 09:38+0200\n"
 "Last-Translator: Marek Černocký <marek@manet.cz>\n"
 "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/po/da.gmo b/po/da.gmo
index fc93c05..05f8b91 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index 4ad7fd6..8490838 100644
--- a/po/da.po
+++ b/po/da.po
@@ -31,10 +31,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base 1.0.3\n"
+"Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
-"PO-Revision-Date: 2013-01-01 16:38+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
+"PO-Revision-Date: 2013-12-08 16:38+0100\n"
 "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
 "Language: da\n"
@@ -63,7 +63,7 @@
 msgstr "Kunne ikke åbne lydenhed til afspilning."
 
 msgid "Error outputting to audio device. The device has been disconnected."
-msgstr ""
+msgstr "Kunne ikke sende til lydenhed. Enheden er blevet frakoblet."
 
 msgid "Could not open device for recording in mono mode."
 msgstr "Kunne ikke optage fra enheden i mono-tilstand."
@@ -85,7 +85,7 @@
 msgstr "Kunne ikke åbne lydenhed til optagelse."
 
 msgid "Error recording from audio device. The device has been disconnected."
-msgstr ""
+msgstr "Kunne ikke optage fra lydenhed. Enheden er blevet frakoblet."
 
 msgid "Could not open CD device for reading."
 msgstr "Kunne ikke læse fra cd-enhed."
@@ -101,7 +101,7 @@
 
 #, c-format
 msgid "Missing element '%s' - check your GStreamer installation."
-msgstr "'%s' elementet mangler - check din GStreamer installation."
+msgstr "Elementet »%s« mangler - kontroller din GStreamer-installation."
 
 #, c-format
 msgid "A %s plugin is required to play this stream, but not installed."
@@ -116,7 +116,7 @@
 msgstr "Denne fremstår som en tekstfil"
 
 msgid "Could not create \"uridecodebin\" element."
-msgstr ""
+msgstr "Kunne ikke oprette elementet »uridecodebin«."
 
 #, c-format
 msgid "Both autovideosink and %s elements are missing."
@@ -165,14 +165,14 @@
 
 #, c-format
 msgid "No decoder available for type '%s'."
-msgstr "Ingen dekoder tilgængelig for type '%s'."
+msgstr "Ingen dekoder tilgængelig for type »%s«."
 
 msgid "No URI specified to play from."
 msgstr "Ingen angivet URI til afspilning."
 
 #, c-format
 msgid "Invalid URI \"%s\"."
-msgstr "Ugyldig URI \"%s\"."
+msgstr "Ugyldig URI »%s«."
 
 msgid "This stream type cannot be played yet."
 msgstr "Denne type lydstrøm kan ikke afspilles endnu."
@@ -180,14 +180,14 @@
 # har beholdt »er«
 #, c-format
 msgid "No URI handler implemented for \"%s\"."
-msgstr "Ingen URI-håndtering er implementeret for \"%s\"."
+msgstr "Ingen URI-håndtering er implementeret for »%s«."
 
 msgid "Source element is invalid."
 msgstr "Kildeelement er ugyldigt."
 
 #, c-format
 msgid "Error while sending data to \"%s:%d\"."
-msgstr "Der opstod en fejl under data-overførsel til \"%s:%d\"."
+msgstr "Der opstod en fejl under data-overførsel til »%s:%d«."
 
 msgid "Can't record audio fast enough"
 msgstr "Kan ikke optage lyd hurtigt nok"
@@ -229,7 +229,7 @@
 msgstr "Kørsels-længde indkodning"
 
 msgid "Timed Text"
-msgstr ""
+msgstr "Tidsplanlagt tekst"
 
 msgid "Subtitle"
 msgstr "Undertekst"
@@ -258,25 +258,27 @@
 msgid "Uncompressed gray"
 msgstr "Ukomprimeret gråtone"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed packed YUV %s"
-msgstr "Ukomprimeret %s YUV %s"
+msgstr "Ukomprimeret pakket YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed semi-planar YUV %s"
-msgstr "Ukomprimeret %s YUV %s"
+msgstr "Ukomprimeret semi-planar YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed planar YUV %s"
-msgstr "Ukomprimeret %s YUV %s"
+msgstr "Ukomprimeret planar YUV %s"
 
-#, fuzzy, c-format
+# (transitive, computer graphics) To encode (an image) efficiently by mapping its pixels to a palette
+# containing only those colours that are actually present in the image.
+#, c-format
 msgid "Uncompressed palettized %d-bit %s"
-msgstr "Ukomprimeret %s%d-bit %s"
+msgstr "Ukomprimeret paletoptimeret %d-bit %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed %d-bit %s"
-msgstr "Ukomprimeret %s%d-bit %s"
+msgstr "Ukomprimeret %d-bit %s"
 
 #, c-format
 msgid "DivX MPEG-4 Version %d"
@@ -544,29 +546,29 @@
 msgstr "ufortolket id3v2-mærkeramme"
 
 msgid "musical-key"
-msgstr ""
+msgstr "musik-nøgle"
 
 msgid "Initial key in which the sound starts"
-msgstr ""
+msgstr "Oprindelig nøgle hvor musikken starter"
 
 msgid "Buffering..."
-msgstr ""
+msgstr "Mellemlagrer ..."
 
 msgid "Print version information and exit"
-msgstr ""
+msgstr "Vis versionsinformation og afslut"
 
 msgid "Video sink to use (default is autovideosink)"
-msgstr ""
+msgstr "Brug denne videokanal (standard er autovideosink)"
 
 msgid "Audio sink to use (default is autoaudiosink)"
-msgstr ""
+msgstr "Brud denne lydkanal (standard er autoaudiosink)"
 
 msgid "Enable gapless playback"
-msgstr ""
+msgstr "Aktiver afspilning uden huller"
 
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
-msgstr ""
+msgstr "Brug: %s FIL1|URI1 [FIL2|URI2] [FIL3|URI3] ..."
 
 msgid "You must provide at least one filename or URI to play."
-msgstr ""
+msgstr "Du skal angive mindst et filnavn eller en adresse for at afspille."
diff --git a/po/de.gmo b/po/de.gmo
index a068f41..8c63cd3 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 8ffd185..d54e865 100644
--- a/po/de.po
+++ b/po/de.po
@@ -1,4 +1,4 @@
-# German messages for gst-plugins-base 1.1.4
+# German messages for gst-plugins-base 1.2.1
 # Copyright © 2006 Karl Eichwalder
 # This file is distributed under the same license as the gst-plugins-base package.
 # Karl Eichwalder <ke@suse.de>, 2006.
@@ -7,10 +7,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base 1.1.4\n"
+"Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
-"PO-Revision-Date: 2013-09-21 12:26+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
+"PO-Revision-Date: 2013-12-16 00:25+0100\n"
 "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
 "Language: de\n"
@@ -209,7 +209,7 @@
 msgstr "RLE-Codierung"
 
 msgid "Timed Text"
-msgstr ""
+msgstr "Zeitlich abgepasster Text"
 
 msgid "Subtitle"
 msgstr "Untertitel"
@@ -238,25 +238,25 @@
 msgid "Uncompressed gray"
 msgstr "Unkomprimiertes Grau"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed packed YUV %s"
-msgstr "Unkomprimiertes gepacktes YUV 4:2:2"
+msgstr "Unkomprimiertes gepacktes YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed semi-planar YUV %s"
-msgstr "Unkomprimiertes ungepacktes YUV 4:2:0"
+msgstr "Unkomprimiertes halbflaches YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed planar YUV %s"
-msgstr "Unkomprimiertes ungepacktes YUV 4:2:0"
+msgstr "Unkomprimiertes flaches YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed palettized %d-bit %s"
-msgstr "Unkomprimiertes %s%d-Bit %s"
+msgstr "Unkomprimiertes palletiertes %d-Bit %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed %d-bit %s"
-msgstr "Unkomprimiertes %s%d-Bit %s"
+msgstr "Unkomprimiertes %d-Bit %s"
 
 #, c-format
 msgid "DivX MPEG-4 Version %d"
@@ -519,26 +519,28 @@
 msgstr "Anfänglicher Schlüssel, in dem der Ton startet"
 
 msgid "Buffering..."
-msgstr ""
+msgstr "Zwischenspeichern …"
 
 msgid "Print version information and exit"
-msgstr ""
+msgstr "Versionsinformationen ausgeben und beenden"
 
 msgid "Video sink to use (default is autovideosink)"
-msgstr ""
+msgstr "Zu verwendende Video-Ziel (Voreinstellung ist »autovideosink«)"
 
 msgid "Audio sink to use (default is autoaudiosink)"
-msgstr ""
+msgstr "Zu verwendende Audio-Ziel (Voreinstellung ist »autoaudiosink«)"
 
 msgid "Enable gapless playback"
-msgstr ""
+msgstr "Lückenlose Wiedergabe einschalten"
 
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
-msgstr ""
+msgstr "Aufruf: %s DATEI1|URI1 [DATEI2|URI2] [DATEI3|URI3] ..."
 
 msgid "You must provide at least one filename or URI to play."
 msgstr ""
+"Sie müssen mindestens einen Dateinamen oder eine Adresse zur Wiedergabe "
+"angeben."
 
 #~ msgid "Uncompressed %s YUV %s"
 #~ msgstr "Unkomprimiertes %s YUV %s"
diff --git a/po/el.gmo b/po/el.gmo
index afef7a4..ef71c79 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index 82431ef..20473ad 100644
--- a/po/el.po
+++ b/po/el.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2012-05-05 19:13+0100\n"
 "Last-Translator: Savvas Radevic <vicedar@gmail.com>\n"
 "Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index a1d573b..958f6ed 100644
--- a/po/en_GB.gmo
+++ b/po/en_GB.gmo
Binary files differ
diff --git a/po/en_GB.po b/po/en_GB.po
index 732f5ff..0eb330e 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.8.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2004-04-26 10:41-0400\n"
 "Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
 "Language-Team: English (British) <en_gb@li.org>\n"
diff --git a/po/eo.gmo b/po/eo.gmo
index 0228276..d3f4b4d 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index ea51263..83ecc93 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2011-06-04 21:11+0100\n"
 "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
 "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/po/es.gmo b/po/es.gmo
index 8c6faef..c732a59 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index cde5ed0..832463f 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2011-10-02 15:46+0200\n"
 "Last-Translator: Jorge González González <aloriel@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
diff --git a/po/eu.gmo b/po/eu.gmo
index e774708..54f5ff7 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 048978d..25dcdca 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-0.10.26.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-03-25 12:32+0100\n"
 "Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
 "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index 12d0e43..ba9afd1 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 4c0f787..6e98ff7 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -12,7 +12,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-12-31 23:21+0200\n"
 "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index be50924..3efdabf 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index d15f566..8f858a5 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2011-04-28 09:19+0200\n"
 "Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
 "Language-Team: French <traduc@traduc.org>\n"
diff --git a/po/gl.gmo b/po/gl.gmo
index 5e31e86..73ea559 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index 2a7fe4d..c500ff6 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2012-12-15 03:40+0200\n"
 "Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n"
 "Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/po/gst-plugins-base-1.0.pot b/po/gst-plugins-base-1.0.pot
index b290943..e476beb 100644
--- a/po/gst-plugins-base-1.0.pot
+++ b/po/gst-plugins-base-1.0.pot
@@ -5,9 +5,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.2.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -91,26 +91,26 @@
 #: gst/playback/gstplaysink.c:1706 gst/playback/gstplaysink.c:2269
 #: gst/playback/gstplaysink.c:2318 gst/playback/gstplaysink.c:2333
 #: gst/playback/gstplaysink.c:2358 gst/playback/gstplaysink.c:2390
-#: gst/playback/gstplaysink.c:2520 gst/playback/gstplaysink.c:2892
-#: gst/playback/gstplaysink.c:2901 gst/playback/gstplaysink.c:2910
-#: gst/playback/gstplaysink.c:2919 gst/playback/gstplaysink.c:4116
+#: gst/playback/gstplaysink.c:2520 gst/playback/gstplaysink.c:2894
+#: gst/playback/gstplaysink.c:2903 gst/playback/gstplaysink.c:2912
+#: gst/playback/gstplaysink.c:2921 gst/playback/gstplaysink.c:4118
 #: gst/playback/gstplaysinkconvertbin.c:97
 #: gst/playback/gstplaysinkconvertbin.c:117
-#: gst/playback/gsturidecodebin.c:1448
+#: gst/playback/gsturidecodebin.c:1461
 #, c-format
 msgid "Missing element '%s' - check your GStreamer installation."
 msgstr ""
 
-#: gst/playback/gstdecodebin2.c:1776
+#: gst/playback/gstdecodebin2.c:1808
 #, c-format
 msgid "A %s plugin is required to play this stream, but not installed."
 msgstr ""
 
-#: gst/playback/gstdecodebin2.c:1783
+#: gst/playback/gstdecodebin2.c:1815
 msgid "Could not determine type of stream"
 msgstr ""
 
-#: gst/playback/gstdecodebin2.c:2450
+#: gst/playback/gstdecodebin2.c:2482
 msgid "This appears to be a text file"
 msgstr ""
 
@@ -172,7 +172,7 @@
 msgid "The autoaudiosink element is not working."
 msgstr ""
 
-#: gst/playback/gstplaysink.c:2995 gst/playback/gstplaysink.c:3000
+#: gst/playback/gstplaysink.c:2997 gst/playback/gstplaysink.c:3002
 msgid "Can't play a text file without video or visualizations."
 msgstr ""
 
@@ -181,25 +181,25 @@
 msgid "No decoder available for type '%s'."
 msgstr ""
 
-#: gst/playback/gsturidecodebin.c:1354
+#: gst/playback/gsturidecodebin.c:1367
 msgid "No URI specified to play from."
 msgstr ""
 
-#: gst/playback/gsturidecodebin.c:1360
+#: gst/playback/gsturidecodebin.c:1373
 #, c-format
 msgid "Invalid URI \"%s\"."
 msgstr ""
 
-#: gst/playback/gsturidecodebin.c:1367
+#: gst/playback/gsturidecodebin.c:1380
 msgid "This stream type cannot be played yet."
 msgstr ""
 
-#: gst/playback/gsturidecodebin.c:1385
+#: gst/playback/gsturidecodebin.c:1398
 #, c-format
 msgid "No URI handler implemented for \"%s\"."
 msgstr ""
 
-#: gst/playback/gsturidecodebin.c:2238
+#: gst/playback/gsturidecodebin.c:2251
 msgid "Source element is invalid."
 msgstr ""
 
diff --git a/po/hr.gmo b/po/hr.gmo
index 3585d58..c22becd 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index 9a72657..66b579f 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2012-04-16 04:19+0200\n"
 "Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
 "Language-Team: Croatian <lokalizacija@linux.hr>\n"
diff --git a/po/hu.gmo b/po/hu.gmo
index cc4b99f..fda334f 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index 48dbfea..be282c6 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2012-11-29 14:05+0100\n"
 "Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/po/id.gmo b/po/id.gmo
index 460b0da..2747140 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index b151842..c90754d 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.1.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-10-15 16:11+0700\n"
 "Last-Translator: Andika Triwidada <andika@gmail.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
diff --git a/po/it.gmo b/po/it.gmo
index 28870d7..697dd1b 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index c74cea0..29c6579 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.28.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-04-28 14:27+0200\n"
 "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/po/ja.gmo b/po/ja.gmo
index 0b66884..b9a6815 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 9da35ef..78bf85a 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-10-25 10:27+0900\n"
 "Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/po/lt.gmo b/po/lt.gmo
index 7b21ff4..feae18f 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 499469a..d9aab74 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-0.10.15.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2008-03-07 23:43+0200\n"
 "Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n"
 "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
diff --git a/po/lv.gmo b/po/lv.gmo
index ac7f450..7f2755b 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index 84c7845..180640a 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2011-09-02 12:02-0000\n"
 "Last-Translator: Rihards Priedītis <rprieditis@gmail.com>\n"
 "Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
diff --git a/po/nb.gmo b/po/nb.gmo
index 9aea449..fc38f43 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index 0b65ddc..00e939e 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2012-12-21 21:43+0100\n"
 "Last-Translator: Johnny A. Solbu <johnny@solbu.net>\n"
 "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
diff --git a/po/nl.gmo b/po/nl.gmo
index 70d93ac..15c9e00 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 2175e9e..7c6c222 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.1.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-09-15 13:29+0200\n"
 "Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
diff --git a/po/or.gmo b/po/or.gmo
index a7d0104..f2df31c 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index c57065c..afdcee5 100644
--- a/po/or.po
+++ b/po/or.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2004-09-27 13:32+0530\n"
 "Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n"
 "Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index 3bc7c23..98cbed0 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 0b07a21..c134009 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -4,10 +4,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base 1.1.4\n"
+"Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
-"PO-Revision-Date: 2013-09-15 10:32+0200\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
+"PO-Revision-Date: 2013-12-08 08:58+0100\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
 "Language: pl\n"
@@ -213,7 +213,7 @@
 msgstr "Kodowanie RLE"
 
 msgid "Timed Text"
-msgstr ""
+msgstr "Tekst w czasie"
 
 msgid "Subtitle"
 msgstr "Podpisy"
@@ -242,25 +242,25 @@
 msgid "Uncompressed gray"
 msgstr "Nieskompresowane szarości"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed packed YUV %s"
-msgstr "Nieskompresowany %s YUV %s"
+msgstr "Nieskompresowany upakowany YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed semi-planar YUV %s"
-msgstr "Nieskompresowany %s YUV %s"
+msgstr "Nieskompresowany dwuwarstwowy YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed planar YUV %s"
-msgstr "Nieskompresowany %s YUV %s"
+msgstr "Nieskompresowany warstwowy YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed palettized %d-bit %s"
-msgstr "Nieskompresowany %s%d-bitowy %s"
+msgstr "Nieskompresowany z paletą %d-bitowy %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed %d-bit %s"
-msgstr "Nieskompresowany %s%d-bitowy %s"
+msgstr "Nieskompresowany %d-bitowy %s"
 
 #, c-format
 msgid "DivX MPEG-4 Version %d"
@@ -518,23 +518,23 @@
 msgstr "Początkowy klucz, w którym zaczyna się dźwięk"
 
 msgid "Buffering..."
-msgstr ""
+msgstr "Buforowanie..."
 
 msgid "Print version information and exit"
-msgstr ""
+msgstr "Wypisanie informacji o wersji i zakończenie"
 
 msgid "Video sink to use (default is autovideosink)"
-msgstr ""
+msgstr "Element pochłaniający obraz (domyślny to autovideosink)"
 
 msgid "Audio sink to use (default is autoaudiosink)"
-msgstr ""
+msgstr "Element pochłaniający dźwięk (domyślny to autoaudiosink)"
 
 msgid "Enable gapless playback"
-msgstr ""
+msgstr "Włączenie odtwarzania bez przerw"
 
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
-msgstr ""
+msgstr "Składnia: %s PLIK1|URI1 [PLIK2|URI2] [PLIK3|URI3] ..."
 
 msgid "You must provide at least one filename or URI to play."
-msgstr ""
+msgstr "Trzeba podać przynajmniej jedną nazwę pliku lub URI do odtworzenia."
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 13d44fe..b9e0612 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 696a595..c7f3e50 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-08-20 00:39-0300\n"
 "Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
diff --git a/po/ro.gmo b/po/ro.gmo
index e603121..da1f7f3 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index 3e9f2a6..2f6f4c9 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.29.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-08-16 01:21+0300\n"
 "Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/po/ru.gmo b/po/ru.gmo
index a0459b4..c0d5b41 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index c88baa1..a8c9553 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -6,10 +6,10 @@
 # Yuri Kozlov <yuray@komyakino.ru>, 2010, 2011, 2012, 2013.
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base 1.1.4\n"
+"Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
-"PO-Revision-Date: 2013-09-15 08:46+0400\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
+"PO-Revision-Date: 2013-12-08 12:52+0400\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@mx.ru>\n"
 "Language: ru\n"
@@ -208,7 +208,7 @@
 msgstr "RLE-сжатие"
 
 msgid "Timed Text"
-msgstr ""
+msgstr "Timed Text"
 
 msgid "Subtitle"
 msgstr "Субтитры"
@@ -237,25 +237,25 @@
 msgid "Uncompressed gray"
 msgstr "Несжатый серый"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed packed YUV %s"
-msgstr "Несжатый смешанный YUV 4:2:2"
+msgstr "Несжатый смешанный YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed semi-planar YUV %s"
-msgstr "Несжатый планарный YUV 4:2:0"
+msgstr "Несжатый полу-планарный YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed planar YUV %s"
-msgstr "Несжатый планарный YUV 4:2:0"
+msgstr "Несжатый планарный YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed palettized %d-bit %s"
-msgstr "Несжатое %s%d-битное %s"
+msgstr "Несжатое %d-битное %s с палитрой"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed %d-bit %s"
-msgstr "Несжатое %s%d-битное %s"
+msgstr "Несжатое %d-битное %s"
 
 #, c-format
 msgid "DivX MPEG-4 Version %d"
@@ -515,26 +515,26 @@
 msgstr "Начальный ключ, с которого начинается звук"
 
 msgid "Buffering..."
-msgstr ""
+msgstr "Буферизация…"
 
 msgid "Print version information and exit"
-msgstr ""
+msgstr "Вывод информации о версии и выход из программы"
 
 msgid "Video sink to use (default is autovideosink)"
-msgstr ""
+msgstr "Используемый приёмник видео (по умолчанию autovideosink)"
 
 msgid "Audio sink to use (default is autoaudiosink)"
-msgstr ""
+msgstr "Используемый приёмник аудио (по умолчанию autoaudiosink)"
 
 msgid "Enable gapless playback"
-msgstr ""
+msgstr "Включить непрерывное воспроизведение"
 
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
-msgstr ""
+msgstr "Использование: %s ФАЙЛ1|URI1 [ФАЙЛ2|URI2] [ФАЙЛ3|URI3] …"
 
 msgid "You must provide at least one filename or URI to play."
-msgstr ""
+msgstr "Вы должны указать не менее одного имени файла или URI."
 
 #~ msgid "Uncompressed %s YUV %s"
 #~ msgstr "Несжатый %s YUV %s"
diff --git a/po/sk.gmo b/po/sk.gmo
index 5996aa1..6ff5b18 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index 5b506b2..796ed81 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-11-08 15:34+0100\n"
 "Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index 41146c2..38b21ba 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index 79d71a1..1e057be 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-01-05 10:10+0100\n"
 "Last-Translator: Klemen Košir <klemen913@gmail.com>\n"
 "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/po/sq.gmo b/po/sq.gmo
index ed8ed3e..7ea6b69 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index 698c722..4e67b23 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2004-08-07 20:29+0200\n"
 "Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
 "Language-Team: Albanian <begraj@hotmail.com>\n"
diff --git a/po/sr.gmo b/po/sr.gmo
index 8e1a2f7..fa33169 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index 076ae10..9085673 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.1.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-10-04 12:00+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
diff --git a/po/sv.gmo b/po/sv.gmo
index 5519ae1..7836328 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index bb44bd3..a84244c 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.28.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2010-06-07 18:17+0100\n"
 "Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index dc6b72c..517671a 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index 20795a1..9de2083 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2013-03-10 12:46+0200\n"
 "Last-Translator: Server Acim <serveracim@gmail.com>\n"
 "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/po/uk.gmo b/po/uk.gmo
index 2db92dc..ab99a28 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index b849385..6e70431 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -6,10 +6,10 @@
 # Yuri Chornoivan <yurchor@ukr.net>, 2010, 2011, 2012, 2013.
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base 1.1.4\n"
+"Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
-"PO-Revision-Date: 2013-09-14 22:27+0300\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
+"PO-Revision-Date: 2013-12-07 22:59+0200\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
 "Language: uk\n"
@@ -210,7 +210,7 @@
 msgstr "Кодування Run-length"
 
 msgid "Timed Text"
-msgstr ""
+msgstr "Timed Text"
 
 msgid "Subtitle"
 msgstr "Субтитри"
@@ -239,25 +239,25 @@
 msgid "Uncompressed gray"
 msgstr "Нестиснене сіре зображення"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed packed YUV %s"
-msgstr "Нестиснений пакетний YUV 4:2:2"
+msgstr "Нестиснений пакетний YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed semi-planar YUV %s"
-msgstr "Нестиснений планарний YUV 4:2:0"
+msgstr "Нестиснений напівпланарний YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed planar YUV %s"
-msgstr "Нестиснений планарний YUV 4:2:0"
+msgstr "Нестиснений планарний YUV %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed palettized %d-bit %s"
-msgstr "Нестиснене %s%d-бітове %s"
+msgstr "Нестиснений пакетний %d-бітовий %s"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed %d-bit %s"
-msgstr "Нестиснене %s%d-бітове %s"
+msgstr "Нестиснений %d-бітовий %s"
 
 #, c-format
 msgid "DivX MPEG-4 Version %d"
@@ -526,26 +526,27 @@
 msgstr "Початкова тональність, якою розпочинається звук"
 
 msgid "Buffering..."
-msgstr ""
+msgstr "Буферизація…"
 
 msgid "Print version information and exit"
-msgstr ""
+msgstr "Показати дані щодо версії і завершити роботу"
 
 msgid "Video sink to use (default is autovideosink)"
-msgstr ""
+msgstr "Приймач відеоданих, яким слід скористатися (типовим є autovideosink)"
 
 msgid "Audio sink to use (default is autoaudiosink)"
-msgstr ""
+msgstr "Приймач аудіоданих, яким слід скористатися (типовим є autoaudiosink)"
 
 msgid "Enable gapless playback"
-msgstr ""
+msgstr "Увімкнути неперервне відтворення"
 
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
-msgstr ""
+msgstr "Користування: %s ФАЙЛ1|АДРЕСА1 [ФАЙЛ2|АДРЕСА2] [ФАЙЛ3|АДРЕСА3] ..."
 
 msgid "You must provide at least one filename or URI to play."
 msgstr ""
+"Вам слід вказати принаймні одну назву файла або адресу для відтворення."
 
 #~ msgid "Uncompressed %s YUV %s"
 #~ msgstr "Нестиснене %s, YUV %s"
diff --git a/po/vi.gmo b/po/vi.gmo
index 929205b..0d89dfd 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 713db06..fea28cb 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -1,23 +1,24 @@
 # Vietnamese Translation for GST Plugins Base.
-# Copyright © 2012 Free Software Foundation, Inc.
+# Bản dịch tiếng Việt dành cho GST Plugins Base.
+# Copyright © 2013 Free Software Foundation, Inc.
 # This file is distributed under the same license as the gst-plugins-base package.
 # Clytie Siddall <clytie@riverland.net.au>, 2005-2010.
-# Trần Ngọc Quân <vnwildman@gmail.com>, 2012.
+# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-20013.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-base-1.1.4\n"
+"Project-Id-Version: gst-plugins-base-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
-"PO-Revision-Date: 2013-09-16 14:15+0700\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
+"PO-Revision-Date: 2013-12-11 07:50+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
 "Language: vi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Team-Website: <http://translationproject.org/team/vi.html>\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
+"X-Language-Team-Website: <http://translationproject.org/team/vi.html>\n"
 "X-Generator: LocFactoryEditor 1.8\n"
 "X-Poedit-SourceCharset: UTF-8\n"
 "X-Poedit-Language: Vietnamese\n"
@@ -147,7 +148,7 @@
 msgstr "Không có bộ giải mã sẵn sàng cho kiểu “%s”."
 
 msgid "No URI specified to play from."
-msgstr "Chưa ghi rõ URI từ đó cần phát."
+msgstr "Chưa chỉ định URI cần phát."
 
 #, c-format
 msgid "Invalid URI \"%s\"."
@@ -209,7 +210,7 @@
 msgstr "Mã hoá độ dài chạy (Run-Length Encoding: RLE)"
 
 msgid "Timed Text"
-msgstr ""
+msgstr "Chữ được định thời"
 
 msgid "Subtitle"
 msgstr "Phụ đề"
@@ -236,27 +237,27 @@
 msgstr "Video không nén"
 
 msgid "Uncompressed gray"
-msgstr "Màu xám không nén"
+msgstr "Đen trắng không nén"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed packed YUV %s"
-msgstr "YUV 4:2:2 đóng gói không nén"
+msgstr "YUV %s đóng gói không nén"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed semi-planar YUV %s"
-msgstr "YUV 4:2:0 phẳng không nén"
+msgstr "%s YUV nửa phẳng không nén"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed planar YUV %s"
-msgstr "YUV 4:2:0 phẳng không nén"
+msgstr "%s YUV phẳng không nén"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed palettized %d-bit %s"
-msgstr "%s %d-bit %s không nén"
+msgstr "%2$s %1$d-bit pha màu không nén"
 
-#, fuzzy, c-format
+#, c-format
 msgid "Uncompressed %d-bit %s"
-msgstr "%s %d-bit %s không nén"
+msgstr "%2$s %1$d-bit không nén"
 
 #, c-format
 msgid "DivX MPEG-4 Version %d"
@@ -267,7 +268,7 @@
 
 #, c-format
 msgid "Raw %d-bit %s audio"
-msgstr "Âm thanh %d-bit %s thô"
+msgstr "Âm thanh %2$s %1$d-bit thô"
 
 msgid "Audio CD source"
 msgstr "Nguồn đĩa CD âm thanh"
@@ -290,15 +291,15 @@
 
 #, c-format
 msgid "%s video RTP depayloader"
-msgstr "depayloader (bộ trừ trọng tải?) RTP phim %s"
+msgstr "phần mang trọng tải RTP phim %s"
 
 #, c-format
 msgid "%s audio RTP depayloader"
-msgstr "depayloader (bộ trừ trọng tải?) RTP âm thanh %s"
+msgstr "phần mang trọng tải RTP âm thanh %s"
 
 #, c-format
 msgid "%s RTP depayloader"
-msgstr "depayloader (bộ trừ trọng tải?) RTP %s"
+msgstr "phần mang trọng tải RTP %s"
 
 #, c-format
 msgid "%s demuxer"
@@ -310,15 +311,15 @@
 
 #, c-format
 msgid "%s video RTP payloader"
-msgstr "payloader (bộ cộng trọng tải?) RTP phim %s"
+msgstr "phần trọng tải RTP phim %s"
 
 #, c-format
 msgid "%s audio RTP payloader"
-msgstr "payloader (bộ cộng trọng tải?) RTP âm thanh %s"
+msgstr "phần trọng tải RTP âm thanh %s"
 
 #, c-format
 msgid "%s RTP payloader"
-msgstr "payloader (bộ cộng trọng tải?) RTP %s"
+msgstr "phần trọng tải RTP %s"
 
 #, c-format
 msgid "%s muxer"
@@ -519,26 +520,26 @@
 msgstr "Khóa khởi tạo trong cái mà âm thanh khởi chạy"
 
 msgid "Buffering..."
-msgstr ""
+msgstr "Đang đệm..."
 
 msgid "Print version information and exit"
-msgstr ""
+msgstr "In ra thông tin phiên bản và thoát"
 
 msgid "Video sink to use (default is autovideosink)"
-msgstr ""
+msgstr "Bộ chứa video được dùng (mặc định là autovideosink)"
 
 msgid "Audio sink to use (default is autoaudiosink)"
-msgstr ""
+msgstr "Bộ chứa âm thanh được dùng (mặc định là autoaudiosink)"
 
 msgid "Enable gapless playback"
-msgstr ""
+msgstr "Bật phát lại không khe"
 
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
-msgstr ""
+msgstr "Cách dùng: %s TẬP-TIN1|URI1 [TẬP-TIN2|URI2] [TẬP-TIN3|URI3] ..."
 
 msgid "You must provide at least one filename or URI to play."
-msgstr ""
+msgstr "Bạn phải cung cấp ít nhất là một tên tập tin hay URI để phát."
 
 #~ msgid "Uncompressed %s YUV %s"
 #~ msgstr "%s YUV %s không nén"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index 0b462af..16811c8 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index d0b42c2..7995bf9 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 0.10.21.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2013-11-09 12:14+0100\n"
+"POT-Creation-Date: 2013-12-26 17:36+0100\n"
 "PO-Revision-Date: 2009-01-14 12:41+0800\n"
 "Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/tests/check/elements/appsrc.c b/tests/check/elements/appsrc.c
index 541f481..c31ed4c 100644
--- a/tests/check/elements/appsrc.c
+++ b/tests/check/elements/appsrc.c
@@ -143,6 +143,7 @@
 on_source_message (GstBus * bus, GstMessage * message, ProgramData * data)
 {
   GstElement *source;
+  gboolean ret = TRUE;
 
   switch (GST_MESSAGE_TYPE (message)) {
     case GST_MESSAGE_EOS:
@@ -152,29 +153,34 @@
       break;
     case GST_MESSAGE_ERROR:
       g_main_loop_quit (data->loop);
+      ret = FALSE;
       break;
     default:
       break;
   }
-  return TRUE;
+  return ret;
 }
 
 static gboolean
 on_sink_message (GstBus * bus, GstMessage * message, ProgramData * data)
 {
+  gboolean ret = TRUE;
+
   switch (GST_MESSAGE_TYPE (message)) {
     case GST_MESSAGE_EOS:
       g_main_loop_quit (data->loop);
+      ret = FALSE;
       break;
     case GST_MESSAGE_ERROR:
       ASSERT_SET_STATE (data->sink, GST_STATE_NULL, GST_STATE_CHANGE_SUCCESS);
       ASSERT_SET_STATE (data->source, GST_STATE_NULL, GST_STATE_CHANGE_SUCCESS);
       g_main_loop_quit (data->loop);
+      ret = FALSE;
       break;
     default:
       break;
   }
-  return TRUE;
+  return ret;
 }
 
 static gboolean
@@ -208,8 +214,6 @@
     GstBus *bus = NULL;
     GstElement *testsink = NULL;
 
-    gint tout;
-
     data = g_new0 (ProgramData, 1);
 
     data->loop = g_main_loop_new (NULL, FALSE);
@@ -242,7 +246,7 @@
     gst_bus_add_watch (bus, (GstBusFunc) on_sink_message, data);
     gst_object_unref (bus);
 
-    tout = g_timeout_add (150, (GSourceFunc) error_timeout, data);
+    g_timeout_add (150, (GSourceFunc) error_timeout, data);
 
     ASSERT_SET_STATE (data->sink, GST_STATE_PLAYING, GST_STATE_CHANGE_ASYNC);
     ASSERT_SET_STATE (data->source, GST_STATE_PLAYING, GST_STATE_CHANGE_ASYNC);
@@ -252,7 +256,6 @@
     ASSERT_SET_STATE (data->sink, GST_STATE_NULL, GST_STATE_CHANGE_SUCCESS);
     ASSERT_SET_STATE (data->source, GST_STATE_NULL, GST_STATE_CHANGE_SUCCESS);
 
-    g_source_remove (tout);
     gst_object_unref (data->source);
     gst_object_unref (data->sink);
     g_main_loop_unref (data->loop);
diff --git a/tests/check/elements/streamsynchronizer.c b/tests/check/elements/streamsynchronizer.c
index c723591..87a14ff 100644
--- a/tests/check/elements/streamsynchronizer.c
+++ b/tests/check/elements/streamsynchronizer.c
@@ -162,7 +162,7 @@
   return TRUE;
 }
 
-static void
+static gpointer
 my_push_thread (MyPushInfo * pushinfo)
 {
   GList *tmp;
@@ -174,6 +174,9 @@
     else
       gst_pad_push (pushinfo->pad, GST_BUFFER (tmp->data));
   }
+
+  GST_INFO ("leaving thread");
+  return NULL;
 }
 
 GST_START_TEST (test_basic)
@@ -272,6 +275,9 @@
 
   fail_if (expected != NULL);
 
+  /* wait for thread to exit before freeing things */
+  g_thread_join (thread);
+
   /* Cleanup */
   g_list_free (to_push);
   gst_element_release_request_pad (synchr, sinkpad);
diff --git a/tests/icles/input-selector-test.c b/tests/icles/input-selector-test.c
index 996f33c..5c7cf25 100644
--- a/tests/icles/input-selector-test.c
+++ b/tests/icles/input-selector-test.c
@@ -76,10 +76,10 @@
   g_object_get (G_OBJECT (video_switch), "active-pad", &active_pad, NULL);
 
   active_name = gst_pad_get_name (active_pad);
-  if (strcmp (active_name, "sink0") == 0) {
-    new_pad = gst_element_get_static_pad (video_switch, "sink1");
+  if (strcmp (active_name, "sink_0") == 0) {
+    new_pad = gst_element_get_static_pad (video_switch, "sink_1");
   } else {
-    new_pad = gst_element_get_static_pad (video_switch, "sink0");
+    new_pad = gst_element_get_static_pad (video_switch, "sink_0");
   }
   g_object_set (G_OBJECT (video_switch), "active-pad", new_pad, NULL);
   g_free (active_name);
diff --git a/win32/common/_stdint.h b/win32/common/_stdint.h
index faba5f9..627efd6 100644
--- a/win32/common/_stdint.h
+++ b/win32/common/_stdint.h
@@ -1,8 +1,8 @@
 #ifndef _GST_PLUGINS_BASE__STDINT_H
 #define _GST_PLUGINS_BASE__STDINT_H 1
 #ifndef _GENERATED_STDINT_H
-#define _GENERATED_STDINT_H "gst-plugins-base 1.2.1"
-/* generated using gnu compiler gcc (Debian 4.8.2-2) 4.8.2 */
+#define _GENERATED_STDINT_H "gst-plugins-base 1.2.2"
+/* generated using gnu compiler gcc (Debian 4.8.2-10) 4.8.2 */
 #define _STDINT_HAVE_STDINT_H 1
 #include <stdint.h>
 #endif
diff --git a/win32/common/config.h b/win32/common/config.h
index b6cbda7..798813e 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -84,7 +84,7 @@
 #define GST_PACKAGE_ORIGIN "Unknown package origin"
 
 /* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2013-11-09"
+#define GST_PACKAGE_RELEASE_DATETIME "2013-12-26"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -322,7 +322,7 @@
 #define PACKAGE_NAME "GStreamer Base Plug-ins"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer Base Plug-ins 1.2.1"
+#define PACKAGE_STRING "GStreamer Base Plug-ins 1.2.2"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gst-plugins-base"
@@ -331,7 +331,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.2.1"
+#define PACKAGE_VERSION "1.2.2"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -365,7 +365,7 @@
 #undef USE_TREMOLO
 
 /* Version number of package */
-#define VERSION "1.2.1"
+#define VERSION "1.2.2"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */
diff --git a/win32/common/libgstvideo.def b/win32/common/libgstvideo.def
index 13abc6e..616f138 100644
--- a/win32/common/libgstvideo.def
+++ b/win32/common/libgstvideo.def
@@ -103,6 +103,7 @@
 	gst_video_decoder_have_frame
 	gst_video_decoder_merge_tags
 	gst_video_decoder_negotiate
+	gst_video_decoder_release_frame
 	gst_video_decoder_set_estimate_rate
 	gst_video_decoder_set_latency
 	gst_video_decoder_set_max_errors