Imported Upstream version 1.4.5
diff --git a/ChangeLog b/ChangeLog
index 6f113af..9478081 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,297 @@
-=== release 1.4.4 ===
+=== release 1.4.5 ===
 
-2014-11-06  Sebastian Dröge <slomo@coaxion.net>
+2014-12-18  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.4.4
+	  releasing 1.4.5
+
+2014-12-09 22:47:31 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* gst-libs/gst/audio/gstaudiodecoder.c:
+	  audiodecoder: do not use fixed caps on source pad
+	  decoders can change the caps on their source pads, so they don't
+	  use fixed caps. Having fixed caps can cause renegotiation issues.
+
+2014-12-09 22:46:42 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* gst-libs/gst/video/gstvideodecoder.c:
+	  videodecoder: do not use fixed caps on source pad
+	  decoders can change the caps on their source pads, so they don't
+	  use fixed caps. Having fixed caps can cause renegotiation issues.
+
+2014-12-16 15:03:55 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst-libs/gst/video/gstvideosink.c:
+	* tests/check/libs/video.c:
+	  Revert "video: Fix non-default usage of gst_video_sink_center_rect"
+	  This reverts commit 899461d722e45f591eeddf33c405677170d63de4.
+	  There seems to be a lot of code out there that does not properly initialize
+	  the rectangles and then causes undefined behaviour. Including our video sinks.
+	  Let's keep this out of 1.4, fix everything everywhere and keep it in 1.6
+
+2014-12-16 12:57:55 +0100  Wim Taymans <wtaymans@redhat.com>
+
+	* sys/ximage/ximagesink.c:
+	* sys/xvimage/xvimagesink.c:
+	  ximagesink: clear src and dest rectangles
+	  Now that the center function also takes into account the x and y
+	  coordinates of the dest rectangle, better clear all the fields before
+	  using them.
+
+2014-12-16 12:10:53 +0100  Song Bing <b06498@freescale.com>
+
+	* gst-libs/gst/video/gstvideopool.c:
+	* sys/ximage/ximagepool.c:
+	* sys/xvimage/xvimagepool.c:
+	  videopool: update buffer size after video alignment
+	  Update the new buffer size after alignment in the pool configuration
+	  before calling the parent set_config. This ensures that the parent knows
+	  about the buffer size that we will allocate and makes the size check
+	  work in the release_buffer method.
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741420
+
+2014-12-15 14:10:17 +0100  Edward Hervey <bilboed@bilboed.com>
+
+	* gst-libs/gst/video/gstvideosink.c:
+	* tests/check/libs/video.c:
+	  video: Fix non-default usage of gst_video_sink_center_rect
+	  Make sure we take into account non-0 x/y destination rectangles
+
+2014-12-15 09:45:43 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/playback/gstdecodebin2.c:
+	  Revert "decodebin: Only emit the drain signal for the main decode chain, not any subchains"
+	  This reverts commit a391dfe17f1a325f60e1d51a6d40c1a68eb196de.
+	  It breaks gapless playback: https://bugzilla.gnome.org/show_bug.cgi?id=740045
+
+2014-11-28 13:29:37 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/Makefile.am:
+	  tests: don't run orc/* tests under valgrind
+	  They just seem to blow up for some reason that needs investigating.
+
+2014-12-12 14:56:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/libs/audiodecoder.c:
+	  tests: audiodecoder: fix broken refcounting in unit test
+	  The set_format vfunc does not pass ownership of the caps
+	  to the decoder, so we mustn't unref the caps there.
+	  gst_event_new_caps() does not take ownership of the caps
+	  passed, so we must unref the caps afterwards.
+	  Fixes leaks when running test in valgrind in 1.4 branch.
+
+2014-12-11 13:45:38 +0100  Thibault Saunier <tsaunier@gnome.org>
+
+	* gst/playback/gstplaybin2.c:
+	  playbin: Do not mix up stream type when getting stream combiner element
+	  We were always returning the video stream combiner whatever stream type
+	  combiner was wanted.
+
+2014-12-10 13:23:23 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* gst/playback/gstplaybin2.c:
+	  playbin2: always unref the combiner sinkpad when removing the srcpad
+	  Create a function to do the pad cleanup of the GstSourceCombine struct
+	  and use it to not forget to also cleanup the sink pad and fix a memory
+	  leak.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=741198
+
+2014-12-11 01:53:15 +1100  Jan Schmidt <jan@centricular.com>
+
+	* gst-libs/gst/video/gstvideodecoder.h:
+	  videodecoder: Add GST_VIDEO_DECODER_CAST macro
+	  It's used in some macros already, so let's make it exist.
+
+2014-11-25 13:31:48 +0100  Göran Jönsson <goranjn@axis.com>
+
+	* gst-libs/gst/rtsp/gstrtspconnection.c:
+	  rtspconnection: No remove child if destroyed.
+	  Fixes https://bugzilla.gnome.org/show_bug.cgi?id=740730
+
+2014-11-28 15:06:27 +0100  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+	* gst-libs/gst/audio/gstaudiodecoder.c:
+	* tests/check/libs/audiodecoder.c:
+	  audiodecoder: Push pending events before sending EOS.
+	  Segments are added to the pending events, and pushing a segment
+	  is mandatory before sending EOS.
+	  + Adds a test.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=740853
+
+2014-12-02 15:58:00 -0500  Chad <crh184@psu.edu>
+
+	* gst/audiorate/gstaudiorate.c:
+	  audiorate: Use gst_util_uint64_scale_int_round()
+	  Using gst_util_uint64_scale_int() causes slight drift
+	  which accumulates over time.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=741045
+
+2014-12-01 22:28:52 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* tools/gst-play.c:
+	  gst-play: do not set system's volume to 100% by default
+	  Only change the volume if requested
+
+2014-12-01 09:50:24 +0100  Thomas Klausner <wiz@danbala.tuwien.ac.at>
+
+	* ext/alsa/gstalsasink.c:
+	* ext/alsa/gstalsasrc.c:
+	  alsa: Use EPIPE instead of ESTRPIPE if the latter does not exist
+	  NetBSD does not have ESTRPIPE.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=740952
+
+2014-11-25 11:38:34 +0300  Andrei Sarakeev <sarakusha@gmail.com>
+
+	* gst/playback/gstplaysink.c:
+	  playsink: Reset mute property of the sink to playsink's value when setting up the audio chain
+	  Otherwise the following can happen:
+	  1. set mute=true
+	  2. play media1 (Ok)
+	  3. play media without audio (audiochain removed)
+	  4. play media2 (audiochain created, mute=*false*)
+	  https://bugzilla.gnome.org/show_bug.cgi?id=740675
+
+2014-11-25 11:38:34 +0300  Andrei Sarakeev <sarakusha@gmail.com>
+
+	* gst-libs/gst/pbutils/gstdiscoverer.h:
+	  discoverer: fix typo in header file
+	  https://bugzilla.gnome.org/show_bug.cgi?id=740675
+
+2014-11-25 09:08:18 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst-libs/gst/pbutils/descriptions.c:
+	  pbutils: add description for audio/x-audible
+
+2014-11-25 01:02:28 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/typefind/gsttypefindfunctions.c:
+	  typefind: improve 'audible' audio typefinder a little
+	  Don't return NEARLY_CERTAIN just based on 4 bytes.
+	  Also change media type to audio/x-audible.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=715050
+
+2013-11-23 11:36:43 +1000  Jonathan Matthew <jonathan@d14n.org>
+
+	* gst/typefind/gsttypefindfunctions.c:
+	  typefindfunctions: add audio/audible typefinder
+	  https://bugzilla.gnome.org/show_bug.cgi?id=715050
+
+2014-11-22 21:51:33 +0100  Matej Knopp <matej.knopp@gmail.com>
+
+	* gst-libs/gst/video/gstvideoencoder.c:
+	  videoencoder: don't complain about PTS != DTS on keyframes
+	  It is valid for streams with b-frames
+	  https://bugzilla.gnome.org/show_bug.cgi?id=740556
+
+2014-07-26 14:52:01 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/playback/gstplaybin2.c:
+	  playbin: fix 'attempt to unlock mutex that was not locked' in error code path
+	  Fixes playbin unit test with latest GLib.
+
+2014-11-09 14:44:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst-libs/gst/pbutils/descriptions.c:
+	  pbutils: add description for Apple Core Audio Format
+	  https://bugzilla.gnome.org/show_bug.cgi?id=739840
+
+2014-11-09 12:53:32 +0100  Peter G. Baum <peter@dr-baum.net>
+
+	* gst/typefind/gsttypefindfunctions.c:
+	  typefind: recognize Apple Core Audio Format
+	  (CAF) Specification 1.0
+	  https://bugzilla.gnome.org/show_bug.cgi?id=739840
+
+2014-11-06 14:14:22 +0000  William Manley <will@williammanley.net>
+
+	* gst/tcp/gstmultihandlesink.c:
+	* gst/tcp/gsttcpserversink.c:
+	  tcpserversink: Don't leak a `GSocket` and a `GInetSocketAddress`
+	  when accepting a connection.
+	  Discovered by `make check-valgrind` with the new `socketintegrationtest`.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=739544
+
+=== release 1.4.4 ===
+
+2014-11-06 12:52:52 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/gst-plugins-base-plugins.hierarchy:
+	* 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-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.4.4
+
+2014-11-06 12:36:18 +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
 
 2014-11-06 09:39:08 +0000  Tim-Philipp Müller <tim@centricular.com>
 
diff --git a/Makefile.in b/Makefile.in
index 15fc508..e1eec36 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -97,7 +97,7 @@
 	$(top_srcdir)/configure $(am__configure_deps) \
 	$(srcdir)/config.h.in $(srcdir)/gst-plugins-base.spec.in \
 	ABOUT-NLS COPYING COPYING.LIB compile config.guess \
-	config.rpath config.sub install-sh missing ltmain.sh
+	config.rpath config.sub depcomp install-sh missing ltmain.sh
 subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
diff --git a/NEWS b/NEWS
index cb3b6fd..a428115 100644
--- a/NEWS
+++ b/NEWS
@@ -1,2 +1,2 @@
-This is GStreamer Base Plugins 1.4.4
+This is GStreamer Base Plugins 1.4.5
 
diff --git a/RELEASE b/RELEASE
index 2c98829..d588243 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,5 +1,5 @@
 
-Release notes for GStreamer Base Plugins 1.4.4
+Release notes for GStreamer Base Plugins 1.4.5
 
 The GStreamer team is pleased to announce a bugfix release of the stable
 1.4 release series. The 1.4 release series is adding new features on top
@@ -71,12 +71,17 @@
 
 Bugs fixed in this release
      
-      * 736969 : queue2: dead lock when buffering
-      * 737055 : audiosink: Setting URI on playbin at about-to-finish when playing AAC and using an alsasink causes delayed playback
-      * 737706 : videoencoder: release frame in finish_frame when no output state is configured
-      * 737742 : vorbisdec: Crashes when handling more than 8 channels
-      * 737752 : rtsp-client: crash when cleaning up session
-      * 738064 : decodebin: The “drained” signal is emitted multiple times, first time too early (~1s)
+      * 741420 : video pools: should update size in configuration after applying alignment
+      * 715050 : add typefinder for audio/x-audible
+      * 739544 : tcp: Add test and fix memory leak in tcp elements
+      * 739840 : typefind should recognize Apple Core Audio Format (CAF)
+      * 740556 : videodecoder: don't complain when DTS != PTS on keyframes
+      * 740675 : playsink: continues playback, reset mute property
+      * 740730 : rtspconnection: don't remove child source if parent source is already destroyed
+      * 740853 : audiodecoder: Push pending events before sending EOS.
+      * 740952 : alsa: NetBSD fixes
+      * 741045 : audiorate can can lose timestamp precision in some cases
+      * 741198 : playbin: leaks GstPads
 
 ==== Download ====
 
@@ -113,11 +118,21 @@
         
 Contributors to this release
     
-      * Aleix Conchillo Flaqué
       * Andrei Sarakeev
-      * Aurélien Zanelli
-      * Heinrich Fink
+      * Chad
+      * Edward Hervey
+      * Göran Jönsson
+      * Jan Schmidt
+      * Jonathan Matthew
+      * Matej Knopp
+      * Mathieu Duponchelle
+      * Peter G. Baum
       * Sebastian Dröge
+      * Song Bing
       * Thiago Santos
+      * Thibault Saunier
+      * Thomas Klausner
       * Tim-Philipp Müller
+      * William Manley
+      * Wim Taymans
  
\ No newline at end of file
diff --git a/configure b/configure
index 1a16f58..01815cf 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.4.4.
+# Generated by GNU Autoconf 2.69 for GStreamer Base Plug-ins 1.4.5.
 #
 # 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.4.4'
-PACKAGE_STRING='GStreamer Base Plug-ins 1.4.4'
+PACKAGE_VERSION='1.4.5'
+PACKAGE_STRING='GStreamer Base Plug-ins 1.4.5'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -1762,7 +1762,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.4.4 to adapt to many kinds of systems.
+\`configure' configures GStreamer Base Plug-ins 1.4.5 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1838,7 +1838,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer Base Plug-ins 1.4.4:";;
+     short | recursive ) echo "Configuration of GStreamer Base Plug-ins 1.4.5:";;
    esac
   cat <<\_ACEOF
 
@@ -2119,7 +2119,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer Base Plug-ins configure 1.4.4
+GStreamer Base Plug-ins configure 1.4.5
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2892,7 +2892,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.4.4, which was
+It was created by GStreamer Base Plug-ins $as_me 1.4.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3871,7 +3871,7 @@
 
 # Define the identity of the package.
  PACKAGE='gst-plugins-base'
- VERSION='1.4.4'
+ VERSION='1.4.5'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4082,9 +4082,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.4.4 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.4.4 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.4.4 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.4.5 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.4.5 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.4.5 | cut -d'.' -f3)
 
 
 
@@ -4095,7 +4095,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.4.4 | cut -d'.' -f4)
+  NANO=$(echo 1.4.5 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -8744,10 +8744,10 @@
 done
 
 
-  GST_CURRENT=404
+  GST_CURRENT=405
   GST_REVISION=0
-  GST_AGE=404
-  GST_LIBVERSION=404:0:404
+  GST_AGE=405
+  GST_LIBVERSION=405:0:405
 
 
 
@@ -32331,7 +32331,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.4.4, which was
+This file was extended by GStreamer Base Plug-ins $as_me 1.4.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -32397,7 +32397,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.4.4
+GStreamer Base Plug-ins config.status 1.4.5
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index f367994..4633c84 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.4.4],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
+AC_INIT([GStreamer Base Plug-ins],[1.4.5],[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, 404, 0, 404)
+AS_LIBTOOL(GST, 405, 0, 405)
 
 dnl *** required versions of GStreamer stuff ***
 GST_REQ=1.4.0
diff --git a/docs/libs/html/gst-plugins-base-libs-gstdiscoverer.html b/docs/libs/html/gst-plugins-base-libs-gstdiscoverer.html
index ef6db20..1d0d775 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstdiscoverer.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstdiscoverer.html
@@ -993,7 +993,7 @@
 <hr>
 <div class="refsect2">
 <a name="gst-discoverer-info-ref"></a><h3>gst_discoverer_info_ref()</h3>
-<pre class="programlisting">#define gst_discoverer_info_ref(info) (g_object_ref((Gbject*)info))
+<pre class="programlisting">#define gst_discoverer_info_ref(info) (g_object_ref((GObject*)info))
 </pre>
 <p>Increments the reference count of <em class="parameter"><code>info</code></em>
 .</p>
diff --git a/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html b/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
index 2b387c3..3ee77fe 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
@@ -111,7 +111,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 (4)
+<pre class="programlisting">#define GST_PLUGINS_BASE_VERSION_MICRO (5)
 </pre>
 <p>The micro version of GStreamer's gst-plugins-base libraries at compile time.</p>
 </div>
diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html
index 020aa97..da3ccd2 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.4.4)
+      for GStreamer Base Library 1.0 (1.4.5)
       <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/plugins/html/gst-plugins-base-plugins-plugin-adder.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
index 4a9422a..d750f1d 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.4.4</td>
+<td>1.4.5</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 038f4c9..91538f9 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.4.4</td>
+<td>1.4.5</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 53b9356..d3bf3af 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.4.4</td>
+<td>1.4.5</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 5157e5e..870ca4f 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.4.4</td>
+<td>1.4.5</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 7092a8b..effe1d6 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.4.4</td>
+<td>1.4.5</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 dd36bc6..2c62ac6 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.4.4</td>
+<td>1.4.5</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 b3eb500..353aea6 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.4.4</td>
+<td>1.4.5</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 fc90786..e9cd65a 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.4.4</td>
+<td>1.4.5</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 23662fd..29bbf9a 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.4.4</td>
+<td>1.4.5</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 88206ba..57183bb 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.4.4</td>
+<td>1.4.5</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 8a55bf1..aa9ec47 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.4.4</td>
+<td>1.4.5</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 110a48e..27df494 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.4.4</td>
+<td>1.4.5</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 4b6c77b..dd6f75a 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.4.4</td>
+<td>1.4.5</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 5a42f3a..d8b6502 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.4.4</td>
+<td>1.4.5</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 eb6b044..4b913cc 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.4.4</td>
+<td>1.4.5</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 3d839d1..5e55c47 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.4.4</td>
+<td>1.4.5</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 9a8e5ad..b0d8e6f 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.4.4</td>
+<td>1.4.5</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 e9cd38e..feb864c 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.4.4</td>
+<td>1.4.5</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 4c63a41..51d8c16 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.4.4</td>
+<td>1.4.5</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 b7eeabc..eaadc97 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.4.4</td>
+<td>1.4.5</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 74ea7d2..8c70a7c 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.4.4</td>
+<td>1.4.5</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 73f9f82..efbee54 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.4.4</td>
+<td>1.4.5</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 c7f3e7d..04e4c0c 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.4.4</td>
+<td>1.4.5</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 fc93293..7a7f209 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.4.4</td>
+<td>1.4.5</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 793d237..b3f632a 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.4.4</td>
+<td>1.4.5</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 7e1e6a8..5b6d18c 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.4.4</td>
+<td>1.4.5</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 13e8e6f..e9d19f8 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.4.4)
+      for GStreamer Base Plugins 1.0 (1.4.5)
       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 3512319..939a772 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.4.4</version>
+  <version>1.4.5</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 3b63fb1..f61707e 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.4.4</version>
+  <version>1.4.5</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 54db605..45a9525 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.4.4</version>
+  <version>1.4.5</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 d7e24f0..5179a05 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.4.4</version>
+  <version>1.4.5</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 f83e2f7..20294f3 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.4.4</version>
+  <version>1.4.5</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 cb20331..8713609 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.4.4</version>
+  <version>1.4.5</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 667351c..cf912a3 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.4.4</version>
+  <version>1.4.5</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 9f1e9d1..381f4e7 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.4.4</version>
+  <version>1.4.5</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 e60c871..5d3b66c 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.4.4</version>
+  <version>1.4.5</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 c6212e2..731b634 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.4.4</version>
+  <version>1.4.5</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 ab242e9..9154ca2 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.4.4</version>
+  <version>1.4.5</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 c509b5d..f012757 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.4.4</version>
+  <version>1.4.5</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 e8e38c9..a5a557b 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.4.4</version>
+  <version>1.4.5</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 bcb1874..de56494 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.4.4</version>
+  <version>1.4.5</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 f70689d..6089257 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.4.4</version>
+  <version>1.4.5</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 76e0254..621cc0b 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.4.4</version>
+  <version>1.4.5</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 e1594a7..bc27442 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.4.4</version>
+  <version>1.4.5</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 f3c2e7d..71cfe45 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.4.4</version>
+  <version>1.4.5</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 e03625c..1b73604 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.4.4</version>
+  <version>1.4.5</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 9167688..e7382b6 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.4.4</version>
+  <version>1.4.5</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 4bad5de..7941dcb 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.4.4</version>
+  <version>1.4.5</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 9194b51..a0bc660 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.4.4</version>
+  <version>1.4.5</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 9b9d1f7..552a549 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.4.4</version>
+  <version>1.4.5</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 9147a4b..62a11d9 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.4.4</version>
+  <version>1.4.5</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 0b12b60..609fe39 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.4.4</version>
+  <version>1.4.5</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 ba3c91a..a08ba54 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.4.4</version>
+  <version>1.4.5</version>
   <license>LGPL</license>
   <source>gst-plugins-base</source>
   <package>GStreamer Base Plug-ins source release</package>
diff --git a/ext/alsa/gstalsasink.c b/ext/alsa/gstalsasink.c
index 7d7b443..ad8803a 100644
--- a/ext/alsa/gstalsasink.c
+++ b/ext/alsa/gstalsasink.c
@@ -52,6 +52,10 @@
 #include <gst/audio/gstaudioiec61937.h>
 #include <gst/gst-i18n-plugin.h>
 
+#ifndef ESTRPIPE
+#define ESTRPIPE EPIPE
+#endif
+
 #define DEFAULT_DEVICE		"default"
 #define DEFAULT_DEVICE_NAME	""
 #define DEFAULT_CARD_NAME	""
diff --git a/ext/alsa/gstalsasrc.c b/ext/alsa/gstalsasrc.c
index 43b82b1..28bc498 100644
--- a/ext/alsa/gstalsasrc.c
+++ b/ext/alsa/gstalsasrc.c
@@ -49,6 +49,10 @@
 
 #include <gst/gst-i18n-plugin.h>
 
+#ifndef ESTRPIPE
+#define ESTRPIPE EPIPE
+#endif
+
 #define DEFAULT_PROP_DEVICE		"default"
 #define DEFAULT_PROP_DEVICE_NAME	""
 #define DEFAULT_PROP_CARD_NAME	        ""
diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c
index df53c0c..fca1abd 100644
--- a/gst-libs/gst/audio/gstaudiodecoder.c
+++ b/gst-libs/gst/audio/gstaudiodecoder.c
@@ -502,7 +502,6 @@
       GST_DEBUG_FUNCPTR (gst_audio_decoder_src_event));
   gst_pad_set_query_function (dec->srcpad,
       GST_DEBUG_FUNCPTR (gst_audio_decoder_src_query));
-  gst_pad_use_fixed_caps (dec->srcpad);
   gst_element_add_pad (GST_ELEMENT (dec), dec->srcpad);
   GST_DEBUG_OBJECT (dec, "srcpad created");
 
@@ -2130,6 +2129,8 @@
 
       /* Forward EOS because no buffer or serialized event will come after
        * EOS and nothing could trigger another _finish_frame() call. */
+      if (dec->priv->pending_events)
+        send_pending_events (dec);
       ret = gst_audio_decoder_push_event (dec, event);
       break;
 
diff --git a/gst-libs/gst/audio/gstaudiopack-dist.c b/gst-libs/gst/audio/gstaudiopack-dist.c
index 004e203..4f8c124 100644
--- a/gst-libs/gst/audio/gstaudiopack-dist.c
+++ b/gst-libs/gst/audio/gstaudiopack-dist.c
@@ -250,7 +250,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << 24;
+    var39.i = ((orc_uint32) var38.i) << 24;
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -292,7 +292,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << 24;
+    var39.i = ((orc_uint32) var38.i) << 24;
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -391,7 +391,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << 24;
+    var35.i = ((orc_uint32) var37.i) << 24;
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -423,7 +423,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << 24;
+    var35.i = ((orc_uint32) var37.i) << 24;
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -522,7 +522,7 @@
     /* 1: convuwl */
     var36.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var37.i = var36.i << 16;
+    var37.i = ((orc_uint32) var36.i) << 16;
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -561,7 +561,7 @@
     /* 1: convuwl */
     var36.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var37.i = var36.i << 16;
+    var37.i = ((orc_uint32) var36.i) << 16;
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -654,7 +654,7 @@
     /* 1: convuwl */
     var35.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var34.i = var35.i << 16;
+    var34.i = ((orc_uint32) var35.i) << 16;
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -683,7 +683,7 @@
     /* 1: convuwl */
     var35.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var34.i = var35.i << 16;
+    var34.i = ((orc_uint32) var35.i) << 16;
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -781,7 +781,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << 16;
+    var39.i = ((orc_uint32) var38.i) << 16;
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -823,7 +823,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << 16;
+    var39.i = ((orc_uint32) var38.i) << 16;
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -923,7 +923,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << 16;
+    var35.i = ((orc_uint32) var37.i) << 16;
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -955,7 +955,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << 16;
+    var35.i = ((orc_uint32) var37.i) << 16;
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -1051,7 +1051,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var36.i = var33.i << 8;
+    var36.i = ((orc_uint32) var33.i) << 8;
     /* 3: xorl */
     var35.i = var36.i ^ var34.i;
     /* 4: storel */
@@ -1087,7 +1087,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var36.i = var33.i << 8;
+    var36.i = ((orc_uint32) var33.i) << 8;
     /* 3: xorl */
     var35.i = var36.i ^ var34.i;
     /* 4: storel */
@@ -1175,7 +1175,7 @@
     /* 0: loadl */
     var32 = ptr4[i];
     /* 1: shll */
-    var33.i = var32.i << 8;
+    var33.i = ((orc_uint32) var32.i) << 8;
     /* 2: storel */
     ptr0[i] = var33;
   }
@@ -1201,7 +1201,7 @@
     /* 0: loadl */
     var32 = ptr4[i];
     /* 1: shll */
-    var33.i = var32.i << 8;
+    var33.i = ((orc_uint32) var32.i) << 8;
     /* 2: storel */
     ptr0[i] = var33;
   }
@@ -1293,7 +1293,7 @@
     /* 1: swapl */
     var36.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var37.i = var36.i << 8;
+    var37.i = ((orc_uint32) var36.i) << 8;
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -1332,7 +1332,7 @@
     /* 1: swapl */
     var36.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var37.i = var36.i << 8;
+    var37.i = ((orc_uint32) var36.i) << 8;
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -1426,7 +1426,7 @@
     /* 1: swapl */
     var35.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var34.i = var35.i << 8;
+    var34.i = ((orc_uint32) var35.i) << 8;
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -1455,7 +1455,7 @@
     /* 1: swapl */
     var35.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var34.i = var35.i << 8;
+    var34.i = ((orc_uint32) var35.i) << 8;
     /* 3: storel */
     ptr0[i] = var34;
   }
diff --git a/gst-libs/gst/pbutils/descriptions.c b/gst-libs/gst/pbutils/descriptions.c
index fcb0f1b..b34ae98 100644
--- a/gst-libs/gst/pbutils/descriptions.c
+++ b/gst-libs/gst/pbutils/descriptions.c
@@ -133,6 +133,8 @@
   {"audio/x-amr-wb-sh", "Adaptive Multi Rate WideBand (AMR-WB)",
       AUDIO_CONTAINER, "amr"},
   {"audio/x-au", "Sun .au", AUDIO_CONTAINER, "au"},
+  {"audio/x-audible", "Audible Audio", AUDIO_CONTAINER, "aa"},
+  {"audio/x-caf", "Apple Core Audio Format", AUDIO_CONTAINER, "caf"},
   {"audio/x-celt", "Constrained Energy Lapped Transform (CELT)", FLAG_AUDIO,
       ""},
   {"audio/x-cinepak", "Cinepak Audio", FLAG_AUDIO, ""},
diff --git a/gst-libs/gst/pbutils/gstdiscoverer.h b/gst-libs/gst/pbutils/gstdiscoverer.h
index 26d5ac4..bb3db24 100644
--- a/gst-libs/gst/pbutils/gstdiscoverer.h
+++ b/gst-libs/gst/pbutils/gstdiscoverer.h
@@ -191,7 +191,7 @@
 GType gst_discoverer_info_get_type (void);
 
 #define gst_discoverer_info_unref(info) (g_object_unref((GObject*)info))
-#define gst_discoverer_info_ref(info) (g_object_ref((Gbject*)info))
+#define gst_discoverer_info_ref(info) (g_object_ref((GObject*)info))
 
 GstDiscovererInfo*        gst_discoverer_info_copy (GstDiscovererInfo * ptr);
 
diff --git a/gst-libs/gst/rtsp/gstrtspconnection.c b/gst-libs/gst/rtsp/gstrtspconnection.c
index bfc7455..bea1645 100644
--- a/gst-libs/gst/rtsp/gstrtspconnection.c
+++ b/gst-libs/gst/rtsp/gstrtspconnection.c
@@ -3129,7 +3129,8 @@
   else if (G_UNLIKELY (res == GST_RTSP_EEOF)) {
     g_mutex_lock (&watch->mutex);
     if (watch->readsrc) {
-      g_source_remove_child_source ((GSource *) watch, watch->readsrc);
+      if (!g_source_is_destroyed ((GSource *) watch))
+        g_source_remove_child_source ((GSource *) watch, watch->readsrc);
       g_source_unref (watch->readsrc);
       watch->readsrc = NULL;
     }
@@ -3292,7 +3293,8 @@
       rec = g_queue_pop_tail (watch->messages);
       if (rec == NULL) {
         if (watch->writesrc) {
-          g_source_remove_child_source ((GSource *) watch, watch->writesrc);
+          if (!g_source_is_destroyed ((GSource *) watch))
+            g_source_remove_child_source ((GSource *) watch, watch->writesrc);
           g_source_unref (watch->writesrc);
           watch->writesrc = NULL;
           /* we create and add the write source again when we actually have
diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c
index c29ddc7..03640f5 100644
--- a/gst-libs/gst/video/gstvideodecoder.c
+++ b/gst-libs/gst/video/gstvideodecoder.c
@@ -556,7 +556,6 @@
       GST_DEBUG_FUNCPTR (gst_video_decoder_src_event));
   gst_pad_set_query_function (pad,
       GST_DEBUG_FUNCPTR (gst_video_decoder_src_query));
-  gst_pad_use_fixed_caps (pad);
   gst_element_add_pad (GST_ELEMENT (decoder), decoder->srcpad);
 
   gst_segment_init (&decoder->input_segment, GST_FORMAT_TIME);
diff --git a/gst-libs/gst/video/gstvideodecoder.h b/gst-libs/gst/video/gstvideodecoder.h
index 04b6245..e5e3efe 100644
--- a/gst-libs/gst/video/gstvideodecoder.h
+++ b/gst-libs/gst/video/gstvideodecoder.h
@@ -42,6 +42,7 @@
   (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_VIDEO_DECODER))
 #define GST_IS_VIDEO_DECODER_CLASS(obj) \
   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_VIDEO_DECODER))
+#define GST_VIDEO_DECODER_CAST(obj) ((GstVideoDecoder *)(obj))
 
 /**
  * GST_VIDEO_DECODER_SINK_NAME:
diff --git a/gst-libs/gst/video/gstvideoencoder.c b/gst-libs/gst/video/gstvideoencoder.c
index 684f556..614ba2d 100644
--- a/gst-libs/gst/video/gstvideoencoder.c
+++ b/gst-libs/gst/video/gstvideoencoder.c
@@ -1970,11 +1970,9 @@
   if (GST_VIDEO_CODEC_FRAME_IS_SYNC_POINT (frame)) {
     priv->distance_from_sync = 0;
     GST_BUFFER_FLAG_UNSET (frame->output_buffer, GST_BUFFER_FLAG_DELTA_UNIT);
-    /* For keyframes, DTS = PTS */
+    /* For keyframes, DTS = PTS, if decoder doesn't decide otherwise */
     if (!GST_CLOCK_TIME_IS_VALID (frame->dts)) {
       frame->dts = frame->pts;
-    } else if (GST_CLOCK_TIME_IS_VALID (frame->pts) && frame->pts != frame->dts) {
-      GST_WARNING_OBJECT (encoder, "keyframe PTS != DTS");
     }
   } else {
     GST_BUFFER_FLAG_SET (frame->output_buffer, GST_BUFFER_FLAG_DELTA_UNIT);
diff --git a/gst-libs/gst/video/gstvideopool.c b/gst-libs/gst/video/gstvideopool.c
index 4475f45..546a465 100644
--- a/gst-libs/gst/video/gstvideopool.c
+++ b/gst-libs/gst/video/gstvideopool.c
@@ -122,11 +122,13 @@
   GstVideoBufferPoolPrivate *priv = vpool->priv;
   GstVideoInfo info;
   GstCaps *caps;
+  guint size, min_buffers, max_buffers;
   gint width, height;
   GstAllocator *allocator;
   GstAllocationParams params;
 
-  if (!gst_buffer_pool_config_get_params (config, &caps, NULL, NULL, NULL))
+  if (!gst_buffer_pool_config_get_params (config, &caps, &size, &min_buffers,
+          &max_buffers))
     goto wrong_config;
 
   if (caps == NULL)
@@ -170,6 +172,9 @@
   }
   priv->info = info;
 
+  gst_buffer_pool_config_set_params (config, caps, info.size, min_buffers,
+      max_buffers);
+
   return GST_BUFFER_POOL_CLASS (parent_class)->set_config (pool, config);
 
   /* ERRORS */
diff --git a/gst-libs/gst/video/video-orc-dist.c b/gst-libs/gst/video/video-orc-dist.c
index 13e7f8f..98a02c9 100644
--- a/gst-libs/gst/video/video-orc-dist.c
+++ b/gst-libs/gst/video/video-orc-dist.c
@@ -259,8 +259,9 @@
     var42 = var41.i;
     /* 3: splatbl */
     var43.i =
-        ((var42 & 0xff) << 24) | ((var42 & 0xff) << 16) | ((var42 & 0xff) << 8)
-        | (var42 & 0xff);
+        ((((orc_uint32) var42) & 0xff) << 24) | ((((orc_uint32) var42) & 0xff)
+        << 16) | ((((orc_uint32) var42) & 0xff) << 8) | (((orc_uint32) var42) &
+        0xff);
     /* 4: convubw */
     var44.x4[0] = (orc_uint8) var43.x4[0];
     var44.x4[1] = (orc_uint8) var43.x4[1];
@@ -368,8 +369,9 @@
     var42 = var41.i;
     /* 3: splatbl */
     var43.i =
-        ((var42 & 0xff) << 24) | ((var42 & 0xff) << 16) | ((var42 & 0xff) << 8)
-        | (var42 & 0xff);
+        ((((orc_uint32) var42) & 0xff) << 24) | ((((orc_uint32) var42) & 0xff)
+        << 16) | ((((orc_uint32) var42) & 0xff) << 8) | (((orc_uint32) var42) &
+        0xff);
     /* 4: convubw */
     var44.x4[0] = (orc_uint8) var43.x4[0];
     var44.x4[1] = (orc_uint8) var43.x4[1];
@@ -451,7 +453,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 22, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 98, 108, 101,
         110, 100, 95, 108, 105, 116, 116, 108, 101, 11, 4, 4, 12, 4, 4, 14,
-        4, 255, 0, 0, 0, 14, 4, 8, 0, 0, 0, 20, 4, 20, 2, 20,
+        4, 255, 0, 0, 0, 14, 2, 8, 0, 0, 0, 20, 4, 20, 2, 20,
         1, 20, 4, 20, 8, 20, 8, 20, 8, 113, 32, 4, 163, 33, 32, 157,
         34, 33, 152, 35, 34, 21, 2, 150, 38, 35, 21, 2, 95, 38, 38, 17,
         21, 2, 150, 37, 32, 113, 32, 0, 21, 2, 150, 36, 32, 21, 2, 98,
@@ -468,7 +470,7 @@
       orc_program_add_destination (p, 4, "d1");
       orc_program_add_source (p, 4, "s1");
       orc_program_add_constant (p, 4, 0x000000ff, "c1");
-      orc_program_add_constant (p, 4, 0x00000008, "c2");
+      orc_program_add_constant (p, 2, 0x00000008, "c2");
       orc_program_add_temporary (p, 4, "t1");
       orc_program_add_temporary (p, 2, "t2");
       orc_program_add_temporary (p, 1, "t3");
@@ -579,8 +581,9 @@
     var44 = var43.i;
     /* 4: splatbl */
     var45.i =
-        ((var44 & 0xff) << 24) | ((var44 & 0xff) << 16) | ((var44 & 0xff) << 8)
-        | (var44 & 0xff);
+        ((((orc_uint32) var44) & 0xff) << 24) | ((((orc_uint32) var44) & 0xff)
+        << 16) | ((((orc_uint32) var44) & 0xff) << 8) | (((orc_uint32) var44) &
+        0xff);
     /* 5: convubw */
     var46.x4[0] = (orc_uint8) var45.x4[0];
     var46.x4[1] = (orc_uint8) var45.x4[1];
@@ -691,8 +694,9 @@
     var44 = var43.i;
     /* 4: splatbl */
     var45.i =
-        ((var44 & 0xff) << 24) | ((var44 & 0xff) << 16) | ((var44 & 0xff) << 8)
-        | (var44 & 0xff);
+        ((((orc_uint32) var44) & 0xff) << 24) | ((((orc_uint32) var44) & 0xff)
+        << 16) | ((((orc_uint32) var44) & 0xff) << 8) | (((orc_uint32) var44) &
+        0xff);
     /* 5: convubw */
     var46.x4[0] = (orc_uint8) var45.x4[0];
     var46.x4[1] = (orc_uint8) var45.x4[1];
@@ -774,7 +778,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 19, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 98, 108, 101,
         110, 100, 95, 98, 105, 103, 11, 4, 4, 12, 4, 4, 14, 4, 0, 0,
-        0, 255, 14, 4, 24, 0, 0, 0, 14, 4, 8, 0, 0, 0, 20, 4,
+        0, 255, 14, 4, 24, 0, 0, 0, 14, 2, 8, 0, 0, 0, 20, 4,
         20, 4, 20, 2, 20, 1, 20, 4, 20, 8, 20, 8, 20, 8, 113, 32,
         4, 126, 33, 32, 17, 163, 34, 33, 157, 35, 34, 152, 36, 35, 21, 2,
         150, 39, 36, 21, 2, 95, 39, 39, 18, 21, 2, 150, 38, 32, 113, 32,
@@ -792,7 +796,7 @@
       orc_program_add_source (p, 4, "s1");
       orc_program_add_constant (p, 4, 0xff000000, "c1");
       orc_program_add_constant (p, 4, 0x00000018, "c2");
-      orc_program_add_constant (p, 4, 0x00000008, "c3");
+      orc_program_add_constant (p, 2, 0x00000008, "c3");
       orc_program_add_temporary (p, 4, "t1");
       orc_program_add_temporary (p, 4, "t2");
       orc_program_add_temporary (p, 2, "t3");
@@ -6997,7 +7001,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 25, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 109, 101, 114,
         103, 101, 95, 108, 105, 110, 101, 97, 114, 95, 117, 56, 11, 1, 1, 12,
-        1, 1, 12, 1, 1, 14, 4, 128, 0, 0, 0, 16, 1, 20, 2, 20,
+        1, 1, 12, 1, 1, 14, 2, 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, 158, 35, 33, 33, 0, 35,
         34, 2, 0,
@@ -7011,7 +7015,7 @@
       orc_program_add_destination (p, 1, "d1");
       orc_program_add_source (p, 1, "s1");
       orc_program_add_source (p, 1, "s2");
-      orc_program_add_constant (p, 4, 0x00000080, "c1");
+      orc_program_add_constant (p, 2, 0x00000080, "c1");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
       orc_program_add_temporary (p, 2, "t2");
diff --git a/gst-plugins-base.doap b/gst-plugins-base.doap
index 8dd5b90..a7b81f9 100644
--- a/gst-plugins-base.doap
+++ b/gst-plugins-base.doap
@@ -36,6 +36,16 @@
 
  <release>
   <Version>
+   <revision>1.4.5</revision>
+   <branch>1.4</branch>
+   <name></name>
+   <created>2014-12-18</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.4.5.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.4.4</revision>
    <branch>1.4</branch>
    <name></name>
diff --git a/gst-plugins-base.spec b/gst-plugins-base.spec
index 43ae7f4..3c64e16 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.4.4
+Version: 	1.4.5
 Release: 	1.gst
 Summary: 	GStreamer streaming media framework plug-ins
 
diff --git a/gst/adder/gstadderorc-dist.c b/gst/adder/gstadderorc-dist.c
index 7d6e502..a35abd6 100644
--- a/gst/adder/gstadderorc-dist.c
+++ b/gst/adder/gstadderorc-dist.c
@@ -1121,16 +1121,11 @@
   orc_int8 var35;
 #endif
   orc_int8 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var37;
-#else
   orc_int8 var37;
-#endif
   orc_int8 var38;
-  orc_int8 var39;
+  orc_union16 var39;
   orc_union16 var40;
-  orc_union16 var41;
-  orc_int8 var42;
+  orc_int8 var41;
 
   ptr0 = (orc_int8 *) d1;
 
@@ -1138,24 +1133,22 @@
   var35 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 3: loadpb */
   var36 = p1;
-  /* 7: loadpb */
-  var37 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
     var34 = ptr0[i];
     /* 2: xorb */
-    var39 = var34 ^ var35;
+    var38 = var34 ^ var35;
     /* 4: mulsbw */
-    var40.i = var39 * var36;
+    var39.i = var38 * var36;
     /* 5: shrsw */
-    var41.i = var40.i >> 3;
+    var40.i = var39.i >> 3;
     /* 6: convssswb */
-    var42 = ORC_CLAMP_SB (var41.i);
-    /* 8: xorb */
-    var38 = var42 ^ var37;
-    /* 9: storeb */
-    ptr0[i] = var38;
+    var41 = ORC_CLAMP_SB (var40.i);
+    /* 7: xorb */
+    var37 = var41 ^ var35;
+    /* 8: storeb */
+    ptr0[i] = var37;
   }
 
 }
@@ -1174,16 +1167,11 @@
   orc_int8 var35;
 #endif
   orc_int8 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var37;
-#else
   orc_int8 var37;
-#endif
   orc_int8 var38;
-  orc_int8 var39;
+  orc_union16 var39;
   orc_union16 var40;
-  orc_union16 var41;
-  orc_int8 var42;
+  orc_int8 var41;
 
   ptr0 = (orc_int8 *) ex->arrays[0];
 
@@ -1191,24 +1179,22 @@
   var35 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 3: loadpb */
   var36 = ex->params[24];
-  /* 7: loadpb */
-  var37 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
     var34 = ptr0[i];
     /* 2: xorb */
-    var39 = var34 ^ var35;
+    var38 = var34 ^ var35;
     /* 4: mulsbw */
-    var40.i = var39 * var36;
+    var39.i = var38 * var36;
     /* 5: shrsw */
-    var41.i = var40.i >> 3;
+    var40.i = var39.i >> 3;
     /* 6: convssswb */
-    var42 = ORC_CLAMP_SB (var41.i);
-    /* 8: xorb */
-    var38 = var42 ^ var37;
-    /* 9: storeb */
-    ptr0[i] = var38;
+    var41 = ORC_CLAMP_SB (var40.i);
+    /* 7: xorb */
+    var37 = var41 ^ var35;
+    /* 8: storeb */
+    ptr0[i] = var37;
   }
 
 }
@@ -1230,7 +1216,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 19, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 118, 111, 108,
         117, 109, 101, 95, 117, 56, 11, 1, 1, 14, 1, 128, 0, 0, 0, 14,
-        4, 3, 0, 0, 0, 16, 1, 20, 2, 20, 1, 68, 33, 0, 16, 174,
+        2, 3, 0, 0, 0, 16, 1, 20, 2, 20, 1, 68, 33, 0, 16, 174,
         32, 33, 24, 94, 32, 32, 17, 159, 33, 32, 68, 0, 33, 16, 2, 0,
 
       };
@@ -1242,7 +1228,7 @@
       orc_program_set_backup_function (p, _backup_adder_orc_volume_u8);
       orc_program_add_destination (p, 1, "d1");
       orc_program_add_constant (p, 1, 0x00000080, "c1");
-      orc_program_add_constant (p, 4, 0x00000003, "c2");
+      orc_program_add_constant (p, 2, 0x00000003, "c2");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
       orc_program_add_temporary (p, 1, "t2");
@@ -1361,7 +1347,7 @@
 #if 1
       static const orc_uint8 bc[] = {
         1, 9, 19, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 118, 111, 108,
-        117, 109, 101, 95, 115, 56, 11, 1, 1, 14, 4, 3, 0, 0, 0, 16,
+        117, 109, 101, 95, 115, 56, 11, 1, 1, 14, 2, 3, 0, 0, 0, 16,
         1, 20, 2, 174, 32, 0, 24, 94, 32, 32, 16, 159, 0, 32, 2, 0,
 
       };
@@ -1372,7 +1358,7 @@
       orc_program_set_name (p, "adder_orc_volume_s8");
       orc_program_set_backup_function (p, _backup_adder_orc_volume_s8);
       orc_program_add_destination (p, 1, "d1");
-      orc_program_add_constant (p, 4, 0x00000003, "c1");
+      orc_program_add_constant (p, 2, 0x00000003, "c1");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
 
@@ -1418,16 +1404,11 @@
   orc_union16 var35;
 #endif
   orc_union16 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var37;
-#else
   orc_union16 var37;
-#endif
   orc_union16 var38;
-  orc_union16 var39;
+  orc_union32 var39;
   orc_union32 var40;
-  orc_union32 var41;
-  orc_union16 var42;
+  orc_union16 var41;
 
   ptr0 = (orc_union16 *) d1;
 
@@ -1435,24 +1416,22 @@
   var35.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
   /* 3: loadpw */
   var36.i = p1;
-  /* 7: loadpw */
-  var37.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadw */
     var34 = ptr0[i];
     /* 2: xorw */
-    var39.i = var34.i ^ var35.i;
+    var38.i = var34.i ^ var35.i;
     /* 4: mulswl */
-    var40.i = var39.i * var36.i;
+    var39.i = var38.i * var36.i;
     /* 5: shrsl */
-    var41.i = var40.i >> 11;
+    var40.i = var39.i >> 11;
     /* 6: convssslw */
-    var42.i = ORC_CLAMP_SW (var41.i);
-    /* 8: xorw */
-    var38.i = var42.i ^ var37.i;
-    /* 9: storew */
-    ptr0[i] = var38;
+    var41.i = ORC_CLAMP_SW (var40.i);
+    /* 7: xorw */
+    var37.i = var41.i ^ var35.i;
+    /* 8: storew */
+    ptr0[i] = var37;
   }
 
 }
@@ -1471,16 +1450,11 @@
   orc_union16 var35;
 #endif
   orc_union16 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var37;
-#else
   orc_union16 var37;
-#endif
   orc_union16 var38;
-  orc_union16 var39;
+  orc_union32 var39;
   orc_union32 var40;
-  orc_union32 var41;
-  orc_union16 var42;
+  orc_union16 var41;
 
   ptr0 = (orc_union16 *) ex->arrays[0];
 
@@ -1488,24 +1462,22 @@
   var35.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
   /* 3: loadpw */
   var36.i = ex->params[24];
-  /* 7: loadpw */
-  var37.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadw */
     var34 = ptr0[i];
     /* 2: xorw */
-    var39.i = var34.i ^ var35.i;
+    var38.i = var34.i ^ var35.i;
     /* 4: mulswl */
-    var40.i = var39.i * var36.i;
+    var39.i = var38.i * var36.i;
     /* 5: shrsl */
-    var41.i = var40.i >> 11;
+    var40.i = var39.i >> 11;
     /* 6: convssslw */
-    var42.i = ORC_CLAMP_SW (var41.i);
-    /* 8: xorw */
-    var38.i = var42.i ^ var37.i;
-    /* 9: storew */
-    ptr0[i] = var38;
+    var41.i = ORC_CLAMP_SW (var40.i);
+    /* 7: xorw */
+    var37.i = var41.i ^ var35.i;
+    /* 8: storew */
+    ptr0[i] = var37;
   }
 
 }
@@ -1715,16 +1687,11 @@
   orc_union32 var35;
 #endif
   orc_union32 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var37;
-#else
   orc_union32 var37;
-#endif
   orc_union32 var38;
-  orc_union32 var39;
+  orc_union64 var39;
   orc_union64 var40;
-  orc_union64 var41;
-  orc_union32 var42;
+  orc_union32 var41;
 
   ptr0 = (orc_union32 *) d1;
 
@@ -1732,24 +1699,22 @@
   var35.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
   /* 3: loadpl */
   var36.i = p1;
-  /* 7: loadpl */
-  var37.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadl */
     var34 = ptr0[i];
     /* 2: xorl */
-    var39.i = var34.i ^ var35.i;
+    var38.i = var34.i ^ var35.i;
     /* 4: mulslq */
-    var40.i = ((orc_int64) var39.i) * ((orc_int64) var36.i);
+    var39.i = ((orc_int64) var38.i) * ((orc_int64) var36.i);
     /* 5: shrsq */
-    var41.i = var40.i >> 27;
+    var40.i = var39.i >> 27;
     /* 6: convsssql */
-    var42.i = ORC_CLAMP_SL (var41.i);
-    /* 8: xorl */
-    var38.i = var42.i ^ var37.i;
-    /* 9: storel */
-    ptr0[i] = var38;
+    var41.i = ORC_CLAMP_SL (var40.i);
+    /* 7: xorl */
+    var37.i = var41.i ^ var35.i;
+    /* 8: storel */
+    ptr0[i] = var37;
   }
 
 }
@@ -1768,16 +1733,11 @@
   orc_union32 var35;
 #endif
   orc_union32 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var37;
-#else
   orc_union32 var37;
-#endif
   orc_union32 var38;
-  orc_union32 var39;
+  orc_union64 var39;
   orc_union64 var40;
-  orc_union64 var41;
-  orc_union32 var42;
+  orc_union32 var41;
 
   ptr0 = (orc_union32 *) ex->arrays[0];
 
@@ -1785,24 +1745,22 @@
   var35.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
   /* 3: loadpl */
   var36.i = ex->params[24];
-  /* 7: loadpl */
-  var37.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadl */
     var34 = ptr0[i];
     /* 2: xorl */
-    var39.i = var34.i ^ var35.i;
+    var38.i = var34.i ^ var35.i;
     /* 4: mulslq */
-    var40.i = ((orc_int64) var39.i) * ((orc_int64) var36.i);
+    var39.i = ((orc_int64) var38.i) * ((orc_int64) var36.i);
     /* 5: shrsq */
-    var41.i = var40.i >> 27;
+    var40.i = var39.i >> 27;
     /* 6: convsssql */
-    var42.i = ORC_CLAMP_SL (var41.i);
-    /* 8: xorl */
-    var38.i = var42.i ^ var37.i;
-    /* 9: storel */
-    ptr0[i] = var38;
+    var41.i = ORC_CLAMP_SL (var40.i);
+    /* 7: xorl */
+    var37.i = var41.i ^ var35.i;
+    /* 8: storel */
+    ptr0[i] = var37;
   }
 
 }
@@ -1824,9 +1782,9 @@
       static const orc_uint8 bc[] = {
         1, 9, 20, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 118, 111, 108,
         117, 109, 101, 95, 117, 51, 50, 11, 4, 4, 14, 4, 0, 0, 0, 128,
-        14, 4, 27, 0, 0, 0, 16, 4, 20, 8, 20, 4, 132, 33, 0, 16,
-        178, 32, 33, 24, 147, 32, 32, 17, 170, 33, 32, 132, 0, 33, 16, 2,
-        0,
+        15, 8, 27, 0, 0, 0, 0, 0, 0, 0, 16, 4, 20, 8, 20, 4,
+        132, 33, 0, 16, 178, 32, 33, 24, 147, 32, 32, 17, 170, 33, 32, 132,
+        0, 33, 16, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_adder_orc_volume_u32);
@@ -1836,7 +1794,7 @@
       orc_program_set_backup_function (p, _backup_adder_orc_volume_u32);
       orc_program_add_destination (p, 4, "d1");
       orc_program_add_constant (p, 4, 0x80000000, "c1");
-      orc_program_add_constant (p, 4, 0x0000001b, "c2");
+      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c2");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_temporary (p, 8, "t1");
       orc_program_add_temporary (p, 4, "t2");
@@ -1955,9 +1913,9 @@
 #if 1
       static const orc_uint8 bc[] = {
         1, 9, 20, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 118, 111, 108,
-        117, 109, 101, 95, 115, 51, 50, 11, 4, 4, 14, 4, 27, 0, 0, 0,
-        16, 4, 20, 8, 178, 32, 0, 24, 147, 32, 32, 16, 170, 0, 32, 2,
-        0,
+        117, 109, 101, 95, 115, 51, 50, 11, 4, 4, 15, 8, 27, 0, 0, 0,
+        0, 0, 0, 0, 16, 4, 20, 8, 178, 32, 0, 24, 147, 32, 32, 16,
+        170, 0, 32, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_adder_orc_volume_s32);
@@ -1966,7 +1924,7 @@
       orc_program_set_name (p, "adder_orc_volume_s32");
       orc_program_set_backup_function (p, _backup_adder_orc_volume_s32);
       orc_program_add_destination (p, 4, "d1");
-      orc_program_add_constant (p, 4, 0x0000001b, "c1");
+      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c1");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_temporary (p, 8, "t1");
 
@@ -2243,8 +2201,8 @@
   {
     orc_union64 tmp;
     tmp.f = p1;
-    ex->params[ORC_VAR_P1] = tmp.x2[0];
-    ex->params[ORC_VAR_T1] = tmp.x2[1];
+    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
+    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
   }
 
   func = c->exec;
@@ -2269,18 +2227,13 @@
   orc_int8 var35;
 #endif
   orc_int8 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var37;
-#else
   orc_int8 var37;
-#endif
   orc_int8 var38;
   orc_int8 var39;
-  orc_int8 var40;
+  orc_union16 var40;
   orc_union16 var41;
-  orc_union16 var42;
+  orc_int8 var42;
   orc_int8 var43;
-  orc_int8 var44;
 
   ptr0 = (orc_int8 *) d1;
   ptr4 = (orc_int8 *) s1;
@@ -2289,28 +2242,26 @@
   var35 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 3: loadpb */
   var36 = p1;
-  /* 7: loadpb */
-  var37 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
     var34 = ptr4[i];
     /* 2: xorb */
-    var40 = var34 ^ var35;
+    var39 = var34 ^ var35;
     /* 4: mulsbw */
-    var41.i = var40 * var36;
+    var40.i = var39 * var36;
     /* 5: shrsw */
-    var42.i = var41.i >> 3;
+    var41.i = var40.i >> 3;
     /* 6: convssswb */
-    var43 = ORC_CLAMP_SB (var42.i);
-    /* 8: xorb */
-    var44 = var43 ^ var37;
-    /* 9: loadb */
-    var38 = ptr0[i];
-    /* 10: addusb */
-    var39 = ORC_CLAMP_UB ((orc_uint8) var38 + (orc_uint8) var44);
-    /* 11: storeb */
-    ptr0[i] = var39;
+    var42 = ORC_CLAMP_SB (var41.i);
+    /* 7: xorb */
+    var43 = var42 ^ var35;
+    /* 8: loadb */
+    var37 = ptr0[i];
+    /* 9: addusb */
+    var38 = ORC_CLAMP_UB ((orc_uint8) var37 + (orc_uint8) var43);
+    /* 10: storeb */
+    ptr0[i] = var38;
   }
 
 }
@@ -2330,18 +2281,13 @@
   orc_int8 var35;
 #endif
   orc_int8 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var37;
-#else
   orc_int8 var37;
-#endif
   orc_int8 var38;
   orc_int8 var39;
-  orc_int8 var40;
+  orc_union16 var40;
   orc_union16 var41;
-  orc_union16 var42;
+  orc_int8 var42;
   orc_int8 var43;
-  orc_int8 var44;
 
   ptr0 = (orc_int8 *) ex->arrays[0];
   ptr4 = (orc_int8 *) ex->arrays[4];
@@ -2350,28 +2296,26 @@
   var35 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
   /* 3: loadpb */
   var36 = ex->params[24];
-  /* 7: loadpb */
-  var37 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
     var34 = ptr4[i];
     /* 2: xorb */
-    var40 = var34 ^ var35;
+    var39 = var34 ^ var35;
     /* 4: mulsbw */
-    var41.i = var40 * var36;
+    var40.i = var39 * var36;
     /* 5: shrsw */
-    var42.i = var41.i >> 3;
+    var41.i = var40.i >> 3;
     /* 6: convssswb */
-    var43 = ORC_CLAMP_SB (var42.i);
-    /* 8: xorb */
-    var44 = var43 ^ var37;
-    /* 9: loadb */
-    var38 = ptr0[i];
-    /* 10: addusb */
-    var39 = ORC_CLAMP_UB ((orc_uint8) var38 + (orc_uint8) var44);
-    /* 11: storeb */
-    ptr0[i] = var39;
+    var42 = ORC_CLAMP_SB (var41.i);
+    /* 7: xorb */
+    var43 = var42 ^ var35;
+    /* 8: loadb */
+    var37 = ptr0[i];
+    /* 9: addusb */
+    var38 = ORC_CLAMP_UB ((orc_uint8) var37 + (orc_uint8) var43);
+    /* 10: storeb */
+    ptr0[i] = var38;
   }
 
 }
@@ -2394,7 +2338,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 23, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 97, 100, 100,
         95, 118, 111, 108, 117, 109, 101, 95, 117, 56, 11, 1, 1, 12, 1, 1,
-        14, 1, 128, 0, 0, 0, 14, 4, 3, 0, 0, 0, 16, 1, 20, 2,
+        14, 1, 128, 0, 0, 0, 14, 2, 3, 0, 0, 0, 16, 1, 20, 2,
         20, 1, 68, 33, 4, 16, 174, 32, 33, 24, 94, 32, 32, 17, 159, 33,
         32, 68, 33, 33, 16, 35, 0, 0, 33, 2, 0,
       };
@@ -2407,7 +2351,7 @@
       orc_program_add_destination (p, 1, "d1");
       orc_program_add_source (p, 1, "s1");
       orc_program_add_constant (p, 1, 0x00000080, "c1");
-      orc_program_add_constant (p, 4, 0x00000003, "c2");
+      orc_program_add_constant (p, 2, 0x00000003, "c2");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
       orc_program_add_temporary (p, 1, "t2");
@@ -2548,7 +2492,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 23, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 97, 100, 100,
         95, 118, 111, 108, 117, 109, 101, 95, 115, 56, 11, 1, 1, 12, 1, 1,
-        14, 4, 3, 0, 0, 0, 16, 1, 20, 2, 20, 1, 174, 32, 4, 24,
+        14, 2, 3, 0, 0, 0, 16, 1, 20, 2, 20, 1, 174, 32, 4, 24,
         94, 32, 32, 16, 159, 33, 32, 34, 0, 0, 33, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
@@ -2559,7 +2503,7 @@
       orc_program_set_backup_function (p, _backup_adder_orc_add_volume_s8);
       orc_program_add_destination (p, 1, "d1");
       orc_program_add_source (p, 1, "s1");
-      orc_program_add_constant (p, 4, 0x00000003, "c1");
+      orc_program_add_constant (p, 2, 0x00000003, "c1");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
       orc_program_add_temporary (p, 1, "t2");
@@ -2611,18 +2555,13 @@
   orc_union16 var35;
 #endif
   orc_union16 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var37;
-#else
   orc_union16 var37;
-#endif
   orc_union16 var38;
   orc_union16 var39;
-  orc_union16 var40;
+  orc_union32 var40;
   orc_union32 var41;
-  orc_union32 var42;
+  orc_union16 var42;
   orc_union16 var43;
-  orc_union16 var44;
 
   ptr0 = (orc_union16 *) d1;
   ptr4 = (orc_union16 *) s1;
@@ -2631,28 +2570,26 @@
   var35.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
   /* 3: loadpw */
   var36.i = p1;
-  /* 7: loadpw */
-  var37.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadw */
     var34 = ptr4[i];
     /* 2: xorw */
-    var40.i = var34.i ^ var35.i;
+    var39.i = var34.i ^ var35.i;
     /* 4: mulswl */
-    var41.i = var40.i * var36.i;
+    var40.i = var39.i * var36.i;
     /* 5: shrsl */
-    var42.i = var41.i >> 11;
+    var41.i = var40.i >> 11;
     /* 6: convssslw */
-    var43.i = ORC_CLAMP_SW (var42.i);
-    /* 8: xorw */
-    var44.i = var43.i ^ var37.i;
-    /* 9: loadw */
-    var38 = ptr0[i];
-    /* 10: addusw */
-    var39.i = ORC_CLAMP_UW ((orc_uint16) var38.i + (orc_uint16) var44.i);
-    /* 11: storew */
-    ptr0[i] = var39;
+    var42.i = ORC_CLAMP_SW (var41.i);
+    /* 7: xorw */
+    var43.i = var42.i ^ var35.i;
+    /* 8: loadw */
+    var37 = ptr0[i];
+    /* 9: addusw */
+    var38.i = ORC_CLAMP_UW ((orc_uint16) var37.i + (orc_uint16) var43.i);
+    /* 10: storew */
+    ptr0[i] = var38;
   }
 
 }
@@ -2672,18 +2609,13 @@
   orc_union16 var35;
 #endif
   orc_union16 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union16 var37;
-#else
   orc_union16 var37;
-#endif
   orc_union16 var38;
   orc_union16 var39;
-  orc_union16 var40;
+  orc_union32 var40;
   orc_union32 var41;
-  orc_union32 var42;
+  orc_union16 var42;
   orc_union16 var43;
-  orc_union16 var44;
 
   ptr0 = (orc_union16 *) ex->arrays[0];
   ptr4 = (orc_union16 *) ex->arrays[4];
@@ -2692,28 +2624,26 @@
   var35.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
   /* 3: loadpw */
   var36.i = ex->params[24];
-  /* 7: loadpw */
-  var37.i = (int) 0x00008000;   /* 32768 or 1.61895e-319f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadw */
     var34 = ptr4[i];
     /* 2: xorw */
-    var40.i = var34.i ^ var35.i;
+    var39.i = var34.i ^ var35.i;
     /* 4: mulswl */
-    var41.i = var40.i * var36.i;
+    var40.i = var39.i * var36.i;
     /* 5: shrsl */
-    var42.i = var41.i >> 11;
+    var41.i = var40.i >> 11;
     /* 6: convssslw */
-    var43.i = ORC_CLAMP_SW (var42.i);
-    /* 8: xorw */
-    var44.i = var43.i ^ var37.i;
-    /* 9: loadw */
-    var38 = ptr0[i];
-    /* 10: addusw */
-    var39.i = ORC_CLAMP_UW ((orc_uint16) var38.i + (orc_uint16) var44.i);
-    /* 11: storew */
-    ptr0[i] = var39;
+    var42.i = ORC_CLAMP_SW (var41.i);
+    /* 7: xorw */
+    var43.i = var42.i ^ var35.i;
+    /* 8: loadw */
+    var37 = ptr0[i];
+    /* 9: addusw */
+    var38.i = ORC_CLAMP_UW ((orc_uint16) var37.i + (orc_uint16) var43.i);
+    /* 10: storew */
+    ptr0[i] = var38;
   }
 
 }
@@ -2953,18 +2883,13 @@
   orc_union32 var35;
 #endif
   orc_union32 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var37;
-#else
   orc_union32 var37;
-#endif
   orc_union32 var38;
   orc_union32 var39;
-  orc_union32 var40;
+  orc_union64 var40;
   orc_union64 var41;
-  orc_union64 var42;
+  orc_union32 var42;
   orc_union32 var43;
-  orc_union32 var44;
 
   ptr0 = (orc_union32 *) d1;
   ptr4 = (orc_union32 *) s1;
@@ -2973,30 +2898,28 @@
   var35.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
   /* 3: loadpl */
   var36.i = p1;
-  /* 7: loadpl */
-  var37.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadl */
     var34 = ptr4[i];
     /* 2: xorl */
-    var40.i = var34.i ^ var35.i;
+    var39.i = var34.i ^ var35.i;
     /* 4: mulslq */
-    var41.i = ((orc_int64) var40.i) * ((orc_int64) var36.i);
+    var40.i = ((orc_int64) var39.i) * ((orc_int64) var36.i);
     /* 5: shrsq */
-    var42.i = var41.i >> 27;
+    var41.i = var40.i >> 27;
     /* 6: convsssql */
-    var43.i = ORC_CLAMP_SL (var42.i);
-    /* 8: xorl */
-    var44.i = var43.i ^ var37.i;
-    /* 9: loadl */
-    var38 = ptr0[i];
-    /* 10: addusl */
-    var39.i =
-        ORC_CLAMP_UL ((orc_int64) (orc_uint32) var38.i +
-        (orc_int64) (orc_uint32) var44.i);
-    /* 11: storel */
-    ptr0[i] = var39;
+    var42.i = ORC_CLAMP_SL (var41.i);
+    /* 7: xorl */
+    var43.i = var42.i ^ var35.i;
+    /* 8: loadl */
+    var37 = ptr0[i];
+    /* 9: addusl */
+    var38.i =
+        ORC_CLAMP_UL ((orc_int64) (orc_uint32) var37.i +
+        (orc_int64) (orc_uint32) var43.i);
+    /* 10: storel */
+    ptr0[i] = var38;
   }
 
 }
@@ -3016,18 +2939,13 @@
   orc_union32 var35;
 #endif
   orc_union32 var36;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var37;
-#else
   orc_union32 var37;
-#endif
   orc_union32 var38;
   orc_union32 var39;
-  orc_union32 var40;
+  orc_union64 var40;
   orc_union64 var41;
-  orc_union64 var42;
+  orc_union32 var42;
   orc_union32 var43;
-  orc_union32 var44;
 
   ptr0 = (orc_union32 *) ex->arrays[0];
   ptr4 = (orc_union32 *) ex->arrays[4];
@@ -3036,30 +2954,28 @@
   var35.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
   /* 3: loadpl */
   var36.i = ex->params[24];
-  /* 7: loadpl */
-  var37.i = (int) 0x80000000;   /* -2147483648 or 1.061e-314f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadl */
     var34 = ptr4[i];
     /* 2: xorl */
-    var40.i = var34.i ^ var35.i;
+    var39.i = var34.i ^ var35.i;
     /* 4: mulslq */
-    var41.i = ((orc_int64) var40.i) * ((orc_int64) var36.i);
+    var40.i = ((orc_int64) var39.i) * ((orc_int64) var36.i);
     /* 5: shrsq */
-    var42.i = var41.i >> 27;
+    var41.i = var40.i >> 27;
     /* 6: convsssql */
-    var43.i = ORC_CLAMP_SL (var42.i);
-    /* 8: xorl */
-    var44.i = var43.i ^ var37.i;
-    /* 9: loadl */
-    var38 = ptr0[i];
-    /* 10: addusl */
-    var39.i =
-        ORC_CLAMP_UL ((orc_int64) (orc_uint32) var38.i +
-        (orc_int64) (orc_uint32) var44.i);
-    /* 11: storel */
-    ptr0[i] = var39;
+    var42.i = ORC_CLAMP_SL (var41.i);
+    /* 7: xorl */
+    var43.i = var42.i ^ var35.i;
+    /* 8: loadl */
+    var37 = ptr0[i];
+    /* 9: addusl */
+    var38.i =
+        ORC_CLAMP_UL ((orc_int64) (orc_uint32) var37.i +
+        (orc_int64) (orc_uint32) var43.i);
+    /* 10: storel */
+    ptr0[i] = var38;
   }
 
 }
@@ -3082,9 +2998,10 @@
       static const orc_uint8 bc[] = {
         1, 9, 24, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 97, 100, 100,
         95, 118, 111, 108, 117, 109, 101, 95, 117, 51, 50, 11, 4, 4, 12, 4,
-        4, 14, 4, 0, 0, 0, 128, 14, 4, 27, 0, 0, 0, 16, 4, 20,
-        8, 20, 4, 132, 33, 4, 16, 178, 32, 33, 24, 147, 32, 32, 17, 170,
-        33, 32, 132, 33, 33, 16, 105, 0, 0, 33, 2, 0,
+        4, 14, 4, 0, 0, 0, 128, 15, 8, 27, 0, 0, 0, 0, 0, 0,
+        0, 16, 4, 20, 8, 20, 4, 132, 33, 4, 16, 178, 32, 33, 24, 147,
+        32, 32, 17, 170, 33, 32, 132, 33, 33, 16, 105, 0, 0, 33, 2, 0,
+
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_adder_orc_add_volume_u32);
@@ -3095,7 +3012,7 @@
       orc_program_add_destination (p, 4, "d1");
       orc_program_add_source (p, 4, "s1");
       orc_program_add_constant (p, 4, 0x80000000, "c1");
-      orc_program_add_constant (p, 4, 0x0000001b, "c2");
+      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c2");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_temporary (p, 8, "t1");
       orc_program_add_temporary (p, 4, "t2");
@@ -3236,8 +3153,9 @@
       static const orc_uint8 bc[] = {
         1, 9, 24, 97, 100, 100, 101, 114, 95, 111, 114, 99, 95, 97, 100, 100,
         95, 118, 111, 108, 117, 109, 101, 95, 115, 51, 50, 11, 4, 4, 12, 4,
-        4, 14, 4, 27, 0, 0, 0, 16, 4, 20, 8, 20, 4, 178, 32, 4,
-        24, 147, 32, 32, 16, 170, 33, 32, 104, 0, 0, 33, 2, 0,
+        4, 15, 8, 27, 0, 0, 0, 0, 0, 0, 0, 16, 4, 20, 8, 20,
+        4, 178, 32, 4, 24, 147, 32, 32, 16, 170, 33, 32, 104, 0, 0, 33,
+        2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_adder_orc_add_volume_s32);
@@ -3247,7 +3165,7 @@
       orc_program_set_backup_function (p, _backup_adder_orc_add_volume_s32);
       orc_program_add_destination (p, 4, "d1");
       orc_program_add_source (p, 4, "s1");
-      orc_program_add_constant (p, 4, 0x0000001b, "c1");
+      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c1");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_temporary (p, 8, "t1");
       orc_program_add_temporary (p, 4, "t2");
@@ -3606,8 +3524,8 @@
   {
     orc_union64 tmp;
     tmp.f = p1;
-    ex->params[ORC_VAR_P1] = tmp.x2[0];
-    ex->params[ORC_VAR_T1] = tmp.x2[1];
+    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
+    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
   }
 
   func = c->exec;
diff --git a/gst/audioconvert/gstaudioconvertorc-dist.c b/gst/audioconvert/gstaudioconvertorc-dist.c
index ee3a539..a694cfb 100644
--- a/gst/audioconvert/gstaudioconvertorc-dist.c
+++ b/gst/audioconvert/gstaudioconvertorc-dist.c
@@ -283,7 +283,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << p1;
+    var39.i = ((orc_uint32) var38.i) << p1;
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -325,7 +325,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << ex->params[24];
+    var39.i = ((orc_uint32) var38.i) << ex->params[24];
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -426,7 +426,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << p1;
+    var35.i = ((orc_uint32) var37.i) << p1;
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -458,7 +458,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << ex->params[24];
+    var35.i = ((orc_uint32) var37.i) << ex->params[24];
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -558,7 +558,7 @@
     /* 1: convuwl */
     var36.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var37.i = var36.i << p1;
+    var37.i = ((orc_uint32) var36.i) << p1;
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -597,7 +597,7 @@
     /* 1: convuwl */
     var36.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var37.i = var36.i << ex->params[24];
+    var37.i = ((orc_uint32) var36.i) << ex->params[24];
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -691,7 +691,7 @@
     /* 1: convuwl */
     var35.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var34.i = var35.i << p1;
+    var34.i = ((orc_uint32) var35.i) << p1;
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -720,7 +720,7 @@
     /* 1: convuwl */
     var35.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var34.i = var35.i << ex->params[24];
+    var34.i = ((orc_uint32) var35.i) << ex->params[24];
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -820,7 +820,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << p1;
+    var39.i = ((orc_uint32) var38.i) << p1;
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -862,7 +862,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << ex->params[24];
+    var39.i = ((orc_uint32) var38.i) << ex->params[24];
     /* 5: xorl */
     var36.i = var39.i ^ var35.i;
     /* 6: storel */
@@ -965,7 +965,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << p1;
+    var35.i = ((orc_uint32) var37.i) << p1;
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -997,7 +997,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var35.i = var37.i << ex->params[24];
+    var35.i = ((orc_uint32) var37.i) << ex->params[24];
     /* 4: storel */
     ptr0[i] = var35;
   }
@@ -1096,7 +1096,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var36.i = var33.i << p1;
+    var36.i = ((orc_uint32) var33.i) << p1;
     /* 3: xorl */
     var35.i = var36.i ^ var34.i;
     /* 4: storel */
@@ -1132,7 +1132,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var36.i = var33.i << ex->params[24];
+    var36.i = ((orc_uint32) var33.i) << ex->params[24];
     /* 3: xorl */
     var35.i = var36.i ^ var34.i;
     /* 4: storel */
@@ -1221,7 +1221,7 @@
     /* 0: loadl */
     var32 = ptr4[i];
     /* 1: shll */
-    var33.i = var32.i << p1;
+    var33.i = ((orc_uint32) var32.i) << p1;
     /* 2: storel */
     ptr0[i] = var33;
   }
@@ -1247,7 +1247,7 @@
     /* 0: loadl */
     var32 = ptr4[i];
     /* 1: shll */
-    var33.i = var32.i << ex->params[24];
+    var33.i = ((orc_uint32) var32.i) << ex->params[24];
     /* 2: storel */
     ptr0[i] = var33;
   }
@@ -1340,7 +1340,7 @@
     /* 1: swapl */
     var36.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var37.i = var36.i << p1;
+    var37.i = ((orc_uint32) var36.i) << p1;
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -1379,7 +1379,7 @@
     /* 1: swapl */
     var36.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var37.i = var36.i << ex->params[24];
+    var37.i = ((orc_uint32) var36.i) << ex->params[24];
     /* 4: xorl */
     var35.i = var37.i ^ var34.i;
     /* 5: storel */
@@ -1476,7 +1476,7 @@
     /* 1: swapl */
     var35.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var34.i = var35.i << p1;
+    var34.i = ((orc_uint32) var35.i) << p1;
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -1505,7 +1505,7 @@
     /* 1: swapl */
     var35.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var34.i = var35.i << ex->params[24];
+    var34.i = ((orc_uint32) var35.i) << ex->params[24];
     /* 3: storel */
     ptr0[i] = var34;
   }
@@ -2897,7 +2897,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << p1;
+    var39.i = ((orc_uint32) var38.i) << p1;
     /* 5: xorl */
     var40.i = var39.i ^ var35.i;
     /* 6: convld */
@@ -2942,7 +2942,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << ex->params[24];
+    var39.i = ((orc_uint32) var38.i) << ex->params[24];
     /* 5: xorl */
     var40.i = var39.i ^ var35.i;
     /* 6: convld */
@@ -3050,7 +3050,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var38.i = var37.i << p1;
+    var38.i = ((orc_uint32) var37.i) << p1;
     /* 4: convld */
     var35.f = var38.i;
     /* 5: storeq */
@@ -3085,7 +3085,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var38.i = var37.i << ex->params[24];
+    var38.i = ((orc_uint32) var37.i) << ex->params[24];
     /* 4: convld */
     var35.f = var38.i;
     /* 5: storeq */
@@ -3193,7 +3193,7 @@
     /* 1: convuwl */
     var36.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var37.i = var36.i << p1;
+    var37.i = ((orc_uint32) var36.i) << p1;
     /* 4: xorl */
     var38.i = var37.i ^ var34.i;
     /* 5: convld */
@@ -3235,7 +3235,7 @@
     /* 1: convuwl */
     var36.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var37.i = var36.i << ex->params[24];
+    var37.i = ((orc_uint32) var36.i) << ex->params[24];
     /* 4: xorl */
     var38.i = var37.i ^ var34.i;
     /* 5: convld */
@@ -3337,7 +3337,7 @@
     /* 1: convuwl */
     var35.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var36.i = var35.i << p1;
+    var36.i = ((orc_uint32) var35.i) << p1;
     /* 3: convld */
     var34.f = var36.i;
     /* 4: storeq */
@@ -3369,7 +3369,7 @@
     /* 1: convuwl */
     var35.i = (orc_uint16) var33.i;
     /* 2: shll */
-    var36.i = var35.i << ex->params[24];
+    var36.i = ((orc_uint32) var35.i) << ex->params[24];
     /* 3: convld */
     var34.f = var36.i;
     /* 4: storeq */
@@ -3476,7 +3476,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << p1;
+    var39.i = ((orc_uint32) var38.i) << p1;
     /* 5: xorl */
     var40.i = var39.i ^ var35.i;
     /* 6: convld */
@@ -3521,7 +3521,7 @@
     /* 2: convuwl */
     var38.i = (orc_uint16) var37.i;
     /* 3: shll */
-    var39.i = var38.i << ex->params[24];
+    var39.i = ((orc_uint32) var38.i) << ex->params[24];
     /* 5: xorl */
     var40.i = var39.i ^ var35.i;
     /* 6: convld */
@@ -3630,7 +3630,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var38.i = var37.i << p1;
+    var38.i = ((orc_uint32) var37.i) << p1;
     /* 4: convld */
     var35.f = var38.i;
     /* 5: storeq */
@@ -3665,7 +3665,7 @@
     /* 2: convuwl */
     var37.i = (orc_uint16) var36.i;
     /* 3: shll */
-    var38.i = var37.i << ex->params[24];
+    var38.i = ((orc_uint32) var37.i) << ex->params[24];
     /* 4: convld */
     var35.f = var38.i;
     /* 5: storeq */
@@ -3770,7 +3770,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var36.i = var33.i << p1;
+    var36.i = ((orc_uint32) var33.i) << p1;
     /* 3: xorl */
     var37.i = var36.i ^ var34.i;
     /* 4: convld */
@@ -3809,7 +3809,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var36.i = var33.i << ex->params[24];
+    var36.i = ((orc_uint32) var33.i) << ex->params[24];
     /* 3: xorl */
     var37.i = var36.i ^ var34.i;
     /* 4: convld */
@@ -3906,7 +3906,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var35.i = var33.i << p1;
+    var35.i = ((orc_uint32) var33.i) << p1;
     /* 2: convld */
     var34.f = var35.i;
     /* 3: storeq */
@@ -3935,7 +3935,7 @@
     /* 0: loadl */
     var33 = ptr4[i];
     /* 1: shll */
-    var35.i = var33.i << ex->params[24];
+    var35.i = ((orc_uint32) var33.i) << ex->params[24];
     /* 2: convld */
     var34.f = var35.i;
     /* 3: storeq */
@@ -4037,7 +4037,7 @@
     /* 1: swapl */
     var36.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var37.i = var36.i << p1;
+    var37.i = ((orc_uint32) var36.i) << p1;
     /* 4: xorl */
     var38.i = var37.i ^ var34.i;
     /* 5: convld */
@@ -4079,7 +4079,7 @@
     /* 1: swapl */
     var36.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var37.i = var36.i << ex->params[24];
+    var37.i = ((orc_uint32) var36.i) << ex->params[24];
     /* 4: xorl */
     var38.i = var37.i ^ var34.i;
     /* 5: convld */
@@ -4181,7 +4181,7 @@
     /* 1: swapl */
     var35.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var36.i = var35.i << p1;
+    var36.i = ((orc_uint32) var35.i) << p1;
     /* 3: convld */
     var34.f = var36.i;
     /* 4: storeq */
@@ -4213,7 +4213,7 @@
     /* 1: swapl */
     var35.i = ORC_SWAP_L (var33.i);
     /* 2: shll */
-    var36.i = var35.i << ex->params[24];
+    var36.i = ((orc_uint32) var35.i) << ex->params[24];
     /* 3: convld */
     var34.f = var36.i;
     /* 4: storeq */
diff --git a/gst/audiorate/gstaudiorate.c b/gst/audiorate/gstaudiorate.c
index a0818c9..9ac5beb 100644
--- a/gst/audiorate/gstaudiorate.c
+++ b/gst/audiorate/gstaudiorate.c
@@ -445,7 +445,7 @@
      * buffer in that segment, which is the offset expressed in DEFAULT units.
      */
     /* convert first timestamp of segment to sample position */
-    pos = gst_util_uint64_scale_int (audiorate->src_segment.start,
+    pos = gst_util_uint64_scale_int_round (audiorate->src_segment.start,
         GST_AUDIO_INFO_RATE (&audiorate->info), GST_SECOND);
 
     GST_DEBUG_OBJECT (audiorate, "resync to offset %" G_GINT64_FORMAT, pos);
@@ -454,12 +454,13 @@
     audiorate->discont = TRUE;
 
     audiorate->next_offset = pos;
-    audiorate->next_ts = gst_util_uint64_scale_int (audiorate->next_offset,
-        GST_SECOND, GST_AUDIO_INFO_RATE (&audiorate->info));
+    audiorate->next_ts =
+        gst_util_uint64_scale_int_round (audiorate->next_offset, GST_SECOND,
+        GST_AUDIO_INFO_RATE (&audiorate->info));
 
     if (audiorate->skip_to_first && GST_BUFFER_TIMESTAMP_IS_VALID (buf)) {
       GST_DEBUG_OBJECT (audiorate, "but skipping to first buffer instead");
-      pos = gst_util_uint64_scale_int (GST_BUFFER_TIMESTAMP (buf),
+      pos = gst_util_uint64_scale_int_round (GST_BUFFER_TIMESTAMP (buf),
           GST_AUDIO_INFO_RATE (&audiorate->info), GST_SECOND);
       GST_DEBUG_OBJECT (audiorate, "so resync to offset %" G_GINT64_FORMAT,
           pos);
@@ -539,10 +540,11 @@
        * offset to get duration. Necessary complexity to get 'perfect' 
        * streams */
       GST_BUFFER_TIMESTAMP (fill) = audiorate->next_ts;
-      audiorate->next_ts = gst_util_uint64_scale_int (audiorate->next_offset,
-          GST_SECOND, rate);
-      GST_BUFFER_DURATION (fill) = audiorate->next_ts -
-          GST_BUFFER_TIMESTAMP (fill);
+      audiorate->next_ts =
+          gst_util_uint64_scale_int_round (audiorate->next_offset, GST_SECOND,
+          rate);
+      GST_BUFFER_DURATION (fill) =
+          audiorate->next_ts - GST_BUFFER_TIMESTAMP (fill);
 
       /* we created this buffer to fill a gap */
       GST_BUFFER_FLAG_SET (fill, GST_BUFFER_FLAG_GAP);
@@ -621,7 +623,7 @@
   GST_BUFFER_OFFSET_END (buf) = in_offset_end;
 
   GST_BUFFER_TIMESTAMP (buf) = audiorate->next_ts;
-  audiorate->next_ts = gst_util_uint64_scale_int (in_offset_end,
+  audiorate->next_ts = gst_util_uint64_scale_int_round (in_offset_end,
       GST_SECOND, rate);
   GST_BUFFER_DURATION (buf) = audiorate->next_ts - GST_BUFFER_TIMESTAMP (buf);
 
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c
index e2bb1a0..db77dbc 100644
--- a/gst/playback/gstdecodebin2.c
+++ b/gst/playback/gstdecodebin2.c
@@ -3558,7 +3558,7 @@
 
   *drained = chain->drained;
 
-  if (*drained && chain == dbin->decode_chain)
+  if (*drained)
     g_signal_emit (dbin, gst_decode_bin_signals[SIGNAL_DRAINED], 0, NULL);
 
   return handled;
diff --git a/gst/playback/gstplaybin2.c b/gst/playback/gstplaybin2.c
index 5583de1..2b7416e 100644
--- a/gst/playback/gstplaybin2.c
+++ b/gst/playback/gstplaybin2.c
@@ -2032,6 +2032,22 @@
     gst_iterator_free (it);
 }
 
+static void
+source_combine_remove_pads (GstPlayBin * playbin, GstSourceCombine * combine)
+{
+  if (combine->sinkpad) {
+    GST_LOG_OBJECT (playbin, "unlinking from sink");
+    gst_pad_unlink (combine->srcpad, combine->sinkpad);
+
+    /* release back */
+    GST_LOG_OBJECT (playbin, "release sink pad");
+    gst_play_sink_release_pad (playbin->playsink, combine->sinkpad);
+    gst_object_unref (combine->sinkpad);
+    combine->sinkpad = NULL;
+  }
+  gst_object_unref (combine->srcpad);
+  combine->srcpad = NULL;
+}
 
 static GstPadProbeReturn
 block_serialized_data_cb (GstPad * pad, GstPadProbeInfo * info,
@@ -2552,12 +2568,12 @@
     case PROP_AUDIO_STREAM_COMBINER:
       g_value_take_object (value,
           gst_play_bin_get_current_stream_combiner (playbin,
-              &playbin->audio_stream_combiner, "audio", PLAYBIN_STREAM_VIDEO));
+              &playbin->audio_stream_combiner, "audio", PLAYBIN_STREAM_AUDIO));
       break;
     case PROP_TEXT_STREAM_COMBINER:
       g_value_take_object (value,
           gst_play_bin_get_current_stream_combiner (playbin,
-              &playbin->text_stream_combiner, "text", PLAYBIN_STREAM_VIDEO));
+              &playbin->text_stream_combiner, "text", PLAYBIN_STREAM_TEXT));
       break;
     case PROP_VOLUME:
       g_value_set_double (value, gst_play_sink_get_volume (playbin->playsink));
@@ -3353,8 +3369,7 @@
   if ((combine = g_object_get_data (G_OBJECT (pad), "playbin.combine"))) {
     g_assert (combine->combiner == NULL);
     g_assert (combine->srcpad == pad);
-    gst_object_unref (pad);
-    combine->srcpad = NULL;
+    source_combine_remove_pads (playbin, combine);
     goto exit;
   }
 
@@ -3405,8 +3420,7 @@
     if (!combine->channels->len && combine->combiner) {
       GST_DEBUG_OBJECT (playbin, "all combiner sinkpads removed");
       GST_DEBUG_OBJECT (playbin, "removing combiner %p", combine->combiner);
-      gst_object_unref (combine->srcpad);
-      combine->srcpad = NULL;
+      source_combine_remove_pads (playbin, combine);
       gst_element_set_state (combine->combiner, GST_STATE_NULL);
       gst_bin_remove (GST_BIN_CAST (playbin), combine->combiner);
       combine->combiner = NULL;
@@ -5219,6 +5233,7 @@
 uridecodebin_failure:
   {
     GST_DEBUG_OBJECT (playbin, "failed state change of uridecodebin");
+    GST_SOURCE_GROUP_LOCK (group);
     goto error_cleanup;
   }
 sink_failure:
@@ -5285,19 +5300,7 @@
     GST_DEBUG_OBJECT (playbin, "unlinking combiner %s", combine->media_list[0]);
 
     if (combine->srcpad) {
-      if (combine->sinkpad) {
-        GST_LOG_OBJECT (playbin, "unlinking from sink");
-        gst_pad_unlink (combine->srcpad, combine->sinkpad);
-
-        /* release back */
-        GST_LOG_OBJECT (playbin, "release sink pad");
-        gst_play_sink_release_pad (playbin->playsink, combine->sinkpad);
-        gst_object_unref (combine->sinkpad);
-        combine->sinkpad = NULL;
-      }
-
-      gst_object_unref (combine->srcpad);
-      combine->srcpad = NULL;
+      source_combine_remove_pads (playbin, combine);
     }
 
     if (combine->combiner) {
diff --git a/gst/playback/gstplaysink.c b/gst/playback/gstplaysink.c
index 839cde1..8239c85 100644
--- a/gst/playback/gstplaysink.c
+++ b/gst/playback/gstplaysink.c
@@ -2995,6 +2995,8 @@
       GST_DEBUG_OBJECT (playsink, "the sink has a mute property");
       chain->notify_mute_id = g_signal_connect (chain->mute, "notify::mute",
           G_CALLBACK (notify_mute_cb), playsink);
+      g_object_set (chain->mute, "mute", playsink->mute, NULL);
+      playsink->mute_changed = FALSE;
     }
 
     g_object_set (chain->conv, "use-volume", FALSE, NULL);
diff --git a/gst/tcp/gstmultihandlesink.c b/gst/tcp/gstmultihandlesink.c
index b9ba36b..aa1cfb2 100644
--- a/gst/tcp/gstmultihandlesink.c
+++ b/gst/tcp/gstmultihandlesink.c
@@ -677,6 +677,10 @@
   if (clink != NULL)
     goto duplicate;
 
+  /* We do not take ownership of @handle in this function, but we can't take a
+   * reference directly as we don't know the concrete type of the handle.
+   * GstMultiHandleSink relies on the derived class to take a reference for us
+   * in new_client: */
   mhclient = mhsinkclass->new_client (mhsink, handle, sync_method);
 
   /* we can add the handle now */
diff --git a/gst/tcp/gsttcpserversink.c b/gst/tcp/gsttcpserversink.c
index 244b576..b805ebc 100644
--- a/gst/tcp/gsttcpserversink.c
+++ b/gst/tcp/gsttcpserversink.c
@@ -163,6 +163,7 @@
     goto accept_failed;
 
   handle.socket = client_socket;
+  /* gst_multi_handle_sink_add does not take ownership of client_socket */
   gst_multi_handle_sink_add (GST_MULTI_HANDLE_SINK (sink), handle);
 
 #ifndef GST_DISABLE_GST_DEBUG
@@ -177,9 +178,11 @@
         ip, g_inet_socket_address_get_port (addr), client_socket);
 
     g_free (ip);
+    g_object_unref (addr);
   }
 #endif
 
+  g_object_unref (client_socket);
   return TRUE;
 
   /* ERRORS */
diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c
index 037a65d..0364b8d 100644
--- a/gst/typefind/gsttypefindfunctions.c
+++ b/gst/typefind/gsttypefindfunctions.c
@@ -5325,6 +5325,35 @@
     gst_type_find_suggest (tf, GST_TYPE_FIND_NEARLY_CERTAIN, PVA_CAPS);
 }
 
+/*** audio/audible ***/
+
+/* derived from pyaudibletags
+ * http://code.google.com/p/pyaudibletags/source/browse/trunk/pyaudibletags.py
+ */
+static GstStaticCaps aa_caps = GST_STATIC_CAPS ("audio/x-audible");
+
+#define AA_CAPS gst_static_caps_get(&aa_caps)
+
+static void
+aa_type_find (GstTypeFind * tf, gpointer private)
+{
+  const guint8 *data;
+
+  data = gst_type_find_peek (tf, 0, 12);
+  if (data == NULL)
+    return;
+
+  if (GST_READ_UINT32_BE (data + 4) == 0x57907536) {
+    guint64 media_len;
+
+    media_len = gst_type_find_get_length (tf);
+    if (media_len > 0 && GST_READ_UINT32_BE (data) == media_len)
+      gst_type_find_suggest (tf, GST_TYPE_FIND_NEARLY_CERTAIN, AA_CAPS);
+    else
+      gst_type_find_suggest (tf, GST_TYPE_FIND_POSSIBLE, AA_CAPS);
+  }
+}
+
 /*** generic typefind for streams that have some data at a specific position***/
 typedef struct
 {
@@ -5646,6 +5675,8 @@
       wavpack_type_find, "wv,wvp", WAVPACK_CAPS, NULL, NULL);
   TYPE_FIND_REGISTER (plugin, "audio/x-wavpack-correction", GST_RANK_SECONDARY,
       wavpack_type_find, "wvc", WAVPACK_CORRECTION_CAPS, NULL, NULL);
+  TYPE_FIND_REGISTER_START_WITH (plugin, "audio/x-caf", GST_RANK_SECONDARY,
+      "caf", "caff\000\001", 6, GST_TYPE_FIND_MAXIMUM);
   TYPE_FIND_REGISTER (plugin, "application/postscript", GST_RANK_SECONDARY,
       postscript_type_find, "ps", POSTSCRIPT_CAPS, NULL, NULL);
   TYPE_FIND_REGISTER (plugin, "image/svg+xml", GST_RANK_SECONDARY,
@@ -5721,6 +5752,9 @@
   TYPE_FIND_REGISTER_START_WITH (plugin, "audio/x-xi", GST_RANK_SECONDARY,
       "xi", "Extended Instrument: ", 21, GST_TYPE_FIND_MAXIMUM);
 
+  TYPE_FIND_REGISTER (plugin, "audio/audible", GST_RANK_MARGINAL,
+      aa_type_find, "aa,aax", AA_CAPS, NULL, NULL);
+
   return TRUE;
 }
 
diff --git a/gst/videoconvert/gstvideoconvertorc-dist.c b/gst/videoconvert/gstvideoconvertorc-dist.c
index 362f527..3eae949 100644
--- a/gst/videoconvert/gstvideoconvertorc-dist.c
+++ b/gst/videoconvert/gstvideoconvertorc-dist.c
@@ -859,18 +859,13 @@
 #endif
   orc_int8 var37;
   orc_union32 var38;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var39;
-#else
   orc_int8 var39;
-#endif
-  orc_int8 var40;
-  orc_union32 var41;
+  orc_union32 var40;
+  orc_int8 var41;
   orc_int8 var42;
-  orc_int8 var43;
+  orc_union16 var43;
   orc_union16 var44;
   orc_union16 var45;
-  orc_union16 var46;
 
   ptr0 = (orc_union32 *) d1;
   ptr1 = (orc_union32 *) d2;
@@ -881,20 +876,18 @@
 
   /* 3: loadpb */
   var36 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
-  /* 8: loadpb */
-  var39 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadupdb */
-    var42 = ptr6[i >> 1];
+    var41 = ptr6[i >> 1];
     /* 1: loadupdb */
-    var43 = ptr7[i >> 1];
+    var42 = ptr7[i >> 1];
     /* 2: mergebw */
     {
       orc_union16 _dest;
-      _dest.x2[0] = var42;
-      _dest.x2[1] = var43;
-      var44.i = _dest.i;
+      _dest.x2[0] = var41;
+      _dest.x2[1] = var42;
+      var43.i = _dest.i;
     }
     /* 4: loadb */
     var37 = ptr4[i];
@@ -903,35 +896,35 @@
       orc_union16 _dest;
       _dest.x2[0] = var36;
       _dest.x2[1] = var37;
-      var45.i = _dest.i;
+      var44.i = _dest.i;
     }
     /* 6: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var45.i;
-      _dest.x2[1] = var44.i;
+      _dest.x2[0] = var44.i;
+      _dest.x2[1] = var43.i;
       var38.i = _dest.i;
     }
     /* 7: storel */
     ptr0[i] = var38;
-    /* 9: loadb */
-    var40 = ptr5[i];
-    /* 10: mergebw */
+    /* 8: loadb */
+    var39 = ptr5[i];
+    /* 9: mergebw */
     {
       orc_union16 _dest;
-      _dest.x2[0] = var39;
-      _dest.x2[1] = var40;
-      var46.i = _dest.i;
+      _dest.x2[0] = var36;
+      _dest.x2[1] = var39;
+      var45.i = _dest.i;
     }
-    /* 11: mergewl */
+    /* 10: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var46.i;
-      _dest.x2[1] = var44.i;
-      var41.i = _dest.i;
+      _dest.x2[0] = var45.i;
+      _dest.x2[1] = var43.i;
+      var40.i = _dest.i;
     }
-    /* 12: storel */
-    ptr1[i] = var41;
+    /* 11: storel */
+    ptr1[i] = var40;
   }
 
 }
@@ -955,18 +948,13 @@
 #endif
   orc_int8 var37;
   orc_union32 var38;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var39;
-#else
   orc_int8 var39;
-#endif
-  orc_int8 var40;
-  orc_union32 var41;
+  orc_union32 var40;
+  orc_int8 var41;
   orc_int8 var42;
-  orc_int8 var43;
+  orc_union16 var43;
   orc_union16 var44;
   orc_union16 var45;
-  orc_union16 var46;
 
   ptr0 = (orc_union32 *) ex->arrays[0];
   ptr1 = (orc_union32 *) ex->arrays[1];
@@ -977,20 +965,18 @@
 
   /* 3: loadpb */
   var36 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
-  /* 8: loadpb */
-  var39 = (int) 0x000000ff;     /* 255 or 1.25987e-321f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadupdb */
-    var42 = ptr6[i >> 1];
+    var41 = ptr6[i >> 1];
     /* 1: loadupdb */
-    var43 = ptr7[i >> 1];
+    var42 = ptr7[i >> 1];
     /* 2: mergebw */
     {
       orc_union16 _dest;
-      _dest.x2[0] = var42;
-      _dest.x2[1] = var43;
-      var44.i = _dest.i;
+      _dest.x2[0] = var41;
+      _dest.x2[1] = var42;
+      var43.i = _dest.i;
     }
     /* 4: loadb */
     var37 = ptr4[i];
@@ -999,35 +985,35 @@
       orc_union16 _dest;
       _dest.x2[0] = var36;
       _dest.x2[1] = var37;
-      var45.i = _dest.i;
+      var44.i = _dest.i;
     }
     /* 6: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var45.i;
-      _dest.x2[1] = var44.i;
+      _dest.x2[0] = var44.i;
+      _dest.x2[1] = var43.i;
       var38.i = _dest.i;
     }
     /* 7: storel */
     ptr0[i] = var38;
-    /* 9: loadb */
-    var40 = ptr5[i];
-    /* 10: mergebw */
+    /* 8: loadb */
+    var39 = ptr5[i];
+    /* 9: mergebw */
     {
       orc_union16 _dest;
-      _dest.x2[0] = var39;
-      _dest.x2[1] = var40;
-      var46.i = _dest.i;
+      _dest.x2[0] = var36;
+      _dest.x2[1] = var39;
+      var45.i = _dest.i;
     }
-    /* 11: mergewl */
+    /* 10: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var46.i;
-      _dest.x2[1] = var44.i;
-      var41.i = _dest.i;
+      _dest.x2[0] = var45.i;
+      _dest.x2[1] = var43.i;
+      var40.i = _dest.i;
     }
-    /* 12: storel */
-    ptr1[i] = var41;
+    /* 11: storel */
+    ptr1[i] = var40;
   }
 
 }
@@ -6583,19 +6569,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -6607,13 +6589,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
@@ -6634,99 +6615,94 @@
     var51.i = p4;
     /* 20: loadpw */
     var52.i = p5;
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var59;
-        _dest.x2[1] = var74;
-        var77.i = _dest.i;
+        _dest.x2[0] = var58;
+        _dest.x2[1] = var73;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var75;
-        _dest.x2[1] = var76;
-        var78.i = _dest.i;
+        _dest.x2[0] = var74;
+        _dest.x2[1] = var75;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -6753,19 +6729,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -6777,13 +6749,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (ex->arrays[0], ex->params[0] * j);
@@ -6804,99 +6775,94 @@
     var51.i = ex->params[27];
     /* 20: loadpw */
     var52.i = ex->params[28];
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var59;
-        _dest.x2[1] = var74;
-        var77.i = _dest.i;
+        _dest.x2[0] = var58;
+        _dest.x2[1] = var73;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var75;
-        _dest.x2[1] = var76;
-        var78.i = _dest.i;
+        _dest.x2[0] = var74;
+        _dest.x2[1] = var75;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -7062,19 +7028,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -7086,13 +7048,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
@@ -7113,99 +7074,94 @@
     var51.i = p4;
     /* 20: loadpw */
     var52.i = p5;
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var76;
-        _dest.x2[1] = var75;
-        var77.i = _dest.i;
+        _dest.x2[0] = var75;
+        _dest.x2[1] = var74;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var74;
-        _dest.x2[1] = var59;
-        var78.i = _dest.i;
+        _dest.x2[0] = var73;
+        _dest.x2[1] = var58;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -7232,19 +7188,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -7256,13 +7208,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (ex->arrays[0], ex->params[0] * j);
@@ -7283,99 +7234,94 @@
     var51.i = ex->params[27];
     /* 20: loadpw */
     var52.i = ex->params[28];
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var76;
-        _dest.x2[1] = var75;
-        var77.i = _dest.i;
+        _dest.x2[0] = var75;
+        _dest.x2[1] = var74;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var74;
-        _dest.x2[1] = var59;
-        var78.i = _dest.i;
+        _dest.x2[0] = var73;
+        _dest.x2[1] = var58;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -7541,19 +7487,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -7565,13 +7507,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
@@ -7592,99 +7533,94 @@
     var51.i = p4;
     /* 20: loadpw */
     var52.i = p5;
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var59;
-        _dest.x2[1] = var76;
-        var77.i = _dest.i;
+        _dest.x2[0] = var58;
+        _dest.x2[1] = var75;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var75;
-        _dest.x2[1] = var74;
-        var78.i = _dest.i;
+        _dest.x2[0] = var74;
+        _dest.x2[1] = var73;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -7711,19 +7647,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -7735,13 +7667,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (ex->arrays[0], ex->params[0] * j);
@@ -7762,99 +7693,94 @@
     var51.i = ex->params[27];
     /* 20: loadpw */
     var52.i = ex->params[28];
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var59;
-        _dest.x2[1] = var76;
-        var77.i = _dest.i;
+        _dest.x2[0] = var58;
+        _dest.x2[1] = var75;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var75;
-        _dest.x2[1] = var74;
-        var78.i = _dest.i;
+        _dest.x2[0] = var74;
+        _dest.x2[1] = var73;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -8020,19 +7946,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -8044,13 +7966,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
@@ -8071,99 +7992,94 @@
     var51.i = p4;
     /* 20: loadpw */
     var52.i = p5;
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var74;
-        _dest.x2[1] = var75;
-        var77.i = _dest.i;
+        _dest.x2[0] = var73;
+        _dest.x2[1] = var74;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var76;
-        _dest.x2[1] = var59;
-        var78.i = _dest.i;
+        _dest.x2[0] = var75;
+        _dest.x2[1] = var58;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -8190,19 +8106,15 @@
   orc_union16 var50;
   orc_union16 var51;
   orc_union16 var52;
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var53;
-#else
   orc_union32 var53;
-#endif
   orc_union32 var54;
-  orc_union32 var55;
+  orc_union16 var55;
   orc_union16 var56;
-  orc_union16 var57;
+  orc_int8 var57;
   orc_int8 var58;
   orc_int8 var59;
   orc_int8 var60;
-  orc_int8 var61;
+  orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
   orc_union16 var64;
@@ -8214,13 +8126,12 @@
   orc_union16 var70;
   orc_union16 var71;
   orc_union16 var72;
-  orc_union16 var73;
+  orc_int8 var73;
   orc_int8 var74;
   orc_int8 var75;
-  orc_int8 var76;
+  orc_union16 var76;
   orc_union16 var77;
-  orc_union16 var78;
-  orc_union32 var79;
+  orc_union32 var78;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (ex->arrays[0], ex->params[0] * j);
@@ -8241,99 +8152,94 @@
     var51.i = ex->params[27];
     /* 20: loadpw */
     var52.i = ex->params[28];
-    /* 29: loadpb */
-    var53.x4[0] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[1] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[2] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-    var53.x4[3] = (int) 0x00000080;     /* 128 or 6.32404e-322f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var46 = ptr4[i];
       /* 2: subb */
-      var55.x4[0] = var46.x4[0] - var47.x4[0];
-      var55.x4[1] = var46.x4[1] - var47.x4[1];
-      var55.x4[2] = var46.x4[2] - var47.x4[2];
-      var55.x4[3] = var46.x4[3] - var47.x4[3];
+      var54.x4[0] = var46.x4[0] - var47.x4[0];
+      var54.x4[1] = var46.x4[1] - var47.x4[1];
+      var54.x4[2] = var46.x4[2] - var47.x4[2];
+      var54.x4[3] = var46.x4[3] - var47.x4[3];
       /* 3: splitlw */
       {
         orc_union32 _src;
-        _src.i = var55.i;
-        var56.i = _src.x2[1];
-        var57.i = _src.x2[0];
+        _src.i = var54.i;
+        var55.i = _src.x2[1];
+        var56.i = _src.x2[0];
       }
       /* 4: splitwb */
       {
         orc_union16 _src;
-        _src.i = var57.i;
-        var58 = _src.x2[1];
-        var59 = _src.x2[0];
+        _src.i = var56.i;
+        var57 = _src.x2[1];
+        var58 = _src.x2[0];
       }
       /* 5: splitwb */
       {
         orc_union16 _src;
-        _src.i = var56.i;
-        var60 = _src.x2[1];
-        var61 = _src.x2[0];
+        _src.i = var55.i;
+        var59 = _src.x2[1];
+        var60 = _src.x2[0];
       }
       /* 6: splatbw */
-      var62.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+      var61.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
       /* 7: splatbw */
-      var63.i = ((var61 & 0xff) << 8) | (var61 & 0xff);
+      var62.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
       /* 8: splatbw */
-      var64.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+      var63.i = ((var59 & 0xff) << 8) | (var59 & 0xff);
       /* 10: mulhsw */
-      var65.i = (var62.i * var48.i) >> 16;
+      var64.i = (var61.i * var48.i) >> 16;
       /* 12: mulhsw */
-      var66.i = (var64.i * var49.i) >> 16;
+      var65.i = (var63.i * var49.i) >> 16;
       /* 13: addssw */
-      var67.i = ORC_CLAMP_SW (var65.i + var66.i);
+      var66.i = ORC_CLAMP_SW (var64.i + var65.i);
       /* 15: mulhsw */
-      var68.i = (var63.i * var50.i) >> 16;
+      var67.i = (var62.i * var50.i) >> 16;
       /* 16: addssw */
-      var69.i = ORC_CLAMP_SW (var65.i + var68.i);
+      var68.i = ORC_CLAMP_SW (var64.i + var67.i);
       /* 18: mulhsw */
-      var70.i = (var63.i * var51.i) >> 16;
+      var69.i = (var62.i * var51.i) >> 16;
       /* 19: addssw */
-      var71.i = ORC_CLAMP_SW (var65.i + var70.i);
+      var70.i = ORC_CLAMP_SW (var64.i + var69.i);
       /* 21: mulhsw */
-      var72.i = (var64.i * var52.i) >> 16;
+      var71.i = (var63.i * var52.i) >> 16;
       /* 22: addssw */
-      var73.i = ORC_CLAMP_SW (var71.i + var72.i);
+      var72.i = ORC_CLAMP_SW (var70.i + var71.i);
       /* 23: convssswb */
-      var74 = ORC_CLAMP_SB (var67.i);
+      var73 = ORC_CLAMP_SB (var66.i);
       /* 24: convssswb */
-      var75 = ORC_CLAMP_SB (var73.i);
+      var74 = ORC_CLAMP_SB (var72.i);
       /* 25: convssswb */
-      var76 = ORC_CLAMP_SB (var69.i);
+      var75 = ORC_CLAMP_SB (var68.i);
       /* 26: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var74;
-        _dest.x2[1] = var75;
-        var77.i = _dest.i;
+        _dest.x2[0] = var73;
+        _dest.x2[1] = var74;
+        var76.i = _dest.i;
       }
       /* 27: mergebw */
       {
         orc_union16 _dest;
-        _dest.x2[0] = var76;
-        _dest.x2[1] = var59;
-        var78.i = _dest.i;
+        _dest.x2[0] = var75;
+        _dest.x2[1] = var58;
+        var77.i = _dest.i;
       }
       /* 28: mergewl */
       {
         orc_union32 _dest;
-        _dest.x2[0] = var77.i;
-        _dest.x2[1] = var78.i;
-        var79.i = _dest.i;
+        _dest.x2[0] = var76.i;
+        _dest.x2[1] = var77.i;
+        var78.i = _dest.i;
       }
-      /* 30: addb */
-      var54.x4[0] = var79.x4[0] + var53.x4[0];
-      var54.x4[1] = var79.x4[1] + var53.x4[1];
-      var54.x4[2] = var79.x4[2] + var53.x4[2];
-      var54.x4[3] = var79.x4[3] + var53.x4[3];
-      /* 31: storel */
-      ptr0[i] = var54;
+      /* 29: addb */
+      var53.x4[0] = var78.x4[0] + var47.x4[0];
+      var53.x4[1] = var78.x4[1] + var47.x4[1];
+      var53.x4[2] = var78.x4[2] + var47.x4[2];
+      var53.x4[3] = var78.x4[3] + var47.x4[3];
+      /* 30: storel */
+      ptr0[i] = var53;
     }
   }
 
@@ -8496,39 +8402,31 @@
 #else
   orc_int8 var43;
 #endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var44;
-#else
-  orc_int8 var44;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var45;
-#else
-  orc_int8 var45;
-#endif
+  orc_union16 var44;
+  orc_union16 var45;
   orc_union16 var46;
   orc_union16 var47;
   orc_union16 var48;
-  orc_union16 var49;
-  orc_union16 var50;
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var51;
+  volatile orc_int8 var49;
 #else
-  orc_int8 var51;
+  orc_int8 var49;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var52;
+  volatile orc_union32 var50;
 #else
-  orc_union32 var52;
+  orc_union32 var50;
 #endif
-  orc_union32 var53;
+  orc_union32 var51;
+  orc_int8 var52;
+  orc_union16 var53;
   orc_int8 var54;
-  orc_union16 var55;
-  orc_int8 var56;
+  orc_int8 var55;
+  orc_union16 var56;
   orc_int8 var57;
-  orc_union16 var58;
-  orc_int8 var59;
-  orc_int8 var60;
+  orc_int8 var58;
+  orc_union16 var59;
+  orc_union16 var60;
   orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
@@ -8537,14 +8435,12 @@
   orc_union16 var66;
   orc_union16 var67;
   orc_union16 var68;
-  orc_union16 var69;
-  orc_union16 var70;
+  orc_int8 var69;
+  orc_int8 var70;
   orc_int8 var71;
-  orc_int8 var72;
-  orc_int8 var73;
-  orc_union16 var74;
-  orc_union16 var75;
-  orc_union32 var76;
+  orc_union16 var72;
+  orc_union16 var73;
+  orc_union32 var74;
 
   ptr0 = (orc_union32 *) d1;
   ptr4 = (orc_int8 *) s1;
@@ -8553,99 +8449,95 @@
 
   /* 1: loadpb */
   var43 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 5: loadpb */
-  var44 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 9: loadpb */
-  var45 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  /* 10: loadpw */
+  var44.i = p1;
   /* 12: loadpw */
-  var46.i = p1;
-  /* 14: loadpw */
-  var47.i = p2;
-  /* 17: loadpw */
-  var48.i = p3;
-  /* 20: loadpw */
-  var49.i = p4;
-  /* 23: loadpw */
-  var50.i = p5;
-  /* 30: loadpb */
-  var51 = (int) 0x0000007f;     /* 127 or 6.27463e-322f */
-  /* 33: loadpb */
-  var52.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var52.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var52.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var52.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var45.i = p2;
+  /* 15: loadpw */
+  var46.i = p3;
+  /* 18: loadpw */
+  var47.i = p4;
+  /* 21: loadpw */
+  var48.i = p5;
+  /* 28: loadpb */
+  var49 = (int) 0x0000007f;     /* 127 or 6.27463e-322f */
+  /* 31: loadpb */
+  var50.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var50.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var50.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var50.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
     var42 = ptr4[i];
     /* 2: subb */
-    var54 = var42 - var43;
+    var52 = var42 - var43;
     /* 3: splatbw */
-    var55.i = ((var54 & 0xff) << 8) | (var54 & 0xff);
+    var53.i = ((var52 & 0xff) << 8) | (var52 & 0xff);
     /* 4: loadupdb */
-    var56 = ptr5[i >> 1];
-    /* 6: subb */
-    var57 = var56 - var44;
-    /* 7: splatbw */
-    var58.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
-    /* 8: loadupdb */
-    var59 = ptr6[i >> 1];
-    /* 10: subb */
-    var60 = var59 - var45;
-    /* 11: splatbw */
-    var61.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+    var54 = ptr5[i >> 1];
+    /* 5: subb */
+    var55 = var54 - var43;
+    /* 6: splatbw */
+    var56.i = ((var55 & 0xff) << 8) | (var55 & 0xff);
+    /* 7: loadupdb */
+    var57 = ptr6[i >> 1];
+    /* 8: subb */
+    var58 = var57 - var43;
+    /* 9: splatbw */
+    var59.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+    /* 11: mulhsw */
+    var60.i = (var53.i * var44.i) >> 16;
     /* 13: mulhsw */
-    var62.i = (var55.i * var46.i) >> 16;
-    /* 15: mulhsw */
-    var63.i = (var61.i * var47.i) >> 16;
-    /* 16: addssw */
-    var64.i = ORC_CLAMP_SW (var62.i + var63.i);
-    /* 18: mulhsw */
-    var65.i = (var58.i * var48.i) >> 16;
-    /* 19: addssw */
-    var66.i = ORC_CLAMP_SW (var62.i + var65.i);
-    /* 21: mulhsw */
-    var67.i = (var58.i * var49.i) >> 16;
-    /* 22: addssw */
-    var68.i = ORC_CLAMP_SW (var62.i + var67.i);
-    /* 24: mulhsw */
-    var69.i = (var61.i * var50.i) >> 16;
-    /* 25: addssw */
-    var70.i = ORC_CLAMP_SW (var68.i + var69.i);
+    var61.i = (var59.i * var45.i) >> 16;
+    /* 14: addssw */
+    var62.i = ORC_CLAMP_SW (var60.i + var61.i);
+    /* 16: mulhsw */
+    var63.i = (var56.i * var46.i) >> 16;
+    /* 17: addssw */
+    var64.i = ORC_CLAMP_SW (var60.i + var63.i);
+    /* 19: mulhsw */
+    var65.i = (var56.i * var47.i) >> 16;
+    /* 20: addssw */
+    var66.i = ORC_CLAMP_SW (var60.i + var65.i);
+    /* 22: mulhsw */
+    var67.i = (var59.i * var48.i) >> 16;
+    /* 23: addssw */
+    var68.i = ORC_CLAMP_SW (var66.i + var67.i);
+    /* 24: convssswb */
+    var69 = ORC_CLAMP_SB (var62.i);
+    /* 25: convssswb */
+    var70 = ORC_CLAMP_SB (var68.i);
     /* 26: convssswb */
     var71 = ORC_CLAMP_SB (var64.i);
-    /* 27: convssswb */
-    var72 = ORC_CLAMP_SB (var70.i);
-    /* 28: convssswb */
-    var73 = ORC_CLAMP_SB (var66.i);
-    /* 29: mergebw */
-    {
-      orc_union16 _dest;
-      _dest.x2[0] = var73;
-      _dest.x2[1] = var72;
-      var74.i = _dest.i;
-    }
-    /* 31: mergebw */
+    /* 27: mergebw */
     {
       orc_union16 _dest;
       _dest.x2[0] = var71;
-      _dest.x2[1] = var51;
-      var75.i = _dest.i;
+      _dest.x2[1] = var70;
+      var72.i = _dest.i;
     }
-    /* 32: mergewl */
+    /* 29: mergebw */
+    {
+      orc_union16 _dest;
+      _dest.x2[0] = var69;
+      _dest.x2[1] = var49;
+      var73.i = _dest.i;
+    }
+    /* 30: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var74.i;
-      _dest.x2[1] = var75.i;
-      var76.i = _dest.i;
+      _dest.x2[0] = var72.i;
+      _dest.x2[1] = var73.i;
+      var74.i = _dest.i;
     }
-    /* 34: addb */
-    var53.x4[0] = var76.x4[0] + var52.x4[0];
-    var53.x4[1] = var76.x4[1] + var52.x4[1];
-    var53.x4[2] = var76.x4[2] + var52.x4[2];
-    var53.x4[3] = var76.x4[3] + var52.x4[3];
-    /* 35: storel */
-    ptr0[i] = var53;
+    /* 32: addb */
+    var51.x4[0] = var74.x4[0] + var50.x4[0];
+    var51.x4[1] = var74.x4[1] + var50.x4[1];
+    var51.x4[2] = var74.x4[2] + var50.x4[2];
+    var51.x4[3] = var74.x4[3] + var50.x4[3];
+    /* 33: storel */
+    ptr0[i] = var51;
   }
 
 }
@@ -8666,39 +8558,31 @@
 #else
   orc_int8 var43;
 #endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var44;
-#else
-  orc_int8 var44;
-#endif
-#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var45;
-#else
-  orc_int8 var45;
-#endif
+  orc_union16 var44;
+  orc_union16 var45;
   orc_union16 var46;
   orc_union16 var47;
   orc_union16 var48;
-  orc_union16 var49;
-  orc_union16 var50;
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_int8 var51;
+  volatile orc_int8 var49;
 #else
-  orc_int8 var51;
+  orc_int8 var49;
 #endif
 #if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
-  volatile orc_union32 var52;
+  volatile orc_union32 var50;
 #else
-  orc_union32 var52;
+  orc_union32 var50;
 #endif
-  orc_union32 var53;
+  orc_union32 var51;
+  orc_int8 var52;
+  orc_union16 var53;
   orc_int8 var54;
-  orc_union16 var55;
-  orc_int8 var56;
+  orc_int8 var55;
+  orc_union16 var56;
   orc_int8 var57;
-  orc_union16 var58;
-  orc_int8 var59;
-  orc_int8 var60;
+  orc_int8 var58;
+  orc_union16 var59;
+  orc_union16 var60;
   orc_union16 var61;
   orc_union16 var62;
   orc_union16 var63;
@@ -8707,14 +8591,12 @@
   orc_union16 var66;
   orc_union16 var67;
   orc_union16 var68;
-  orc_union16 var69;
-  orc_union16 var70;
+  orc_int8 var69;
+  orc_int8 var70;
   orc_int8 var71;
-  orc_int8 var72;
-  orc_int8 var73;
-  orc_union16 var74;
-  orc_union16 var75;
-  orc_union32 var76;
+  orc_union16 var72;
+  orc_union16 var73;
+  orc_union32 var74;
 
   ptr0 = (orc_union32 *) ex->arrays[0];
   ptr4 = (orc_int8 *) ex->arrays[4];
@@ -8723,99 +8605,95 @@
 
   /* 1: loadpb */
   var43 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 5: loadpb */
-  var44 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
-  /* 9: loadpb */
-  var45 = (int) 0x00000080;     /* 128 or 6.32404e-322f */
+  /* 10: loadpw */
+  var44.i = ex->params[24];
   /* 12: loadpw */
-  var46.i = ex->params[24];
-  /* 14: loadpw */
-  var47.i = ex->params[25];
-  /* 17: loadpw */
-  var48.i = ex->params[26];
-  /* 20: loadpw */
-  var49.i = ex->params[27];
-  /* 23: loadpw */
-  var50.i = ex->params[28];
-  /* 30: loadpb */
-  var51 = (int) 0x0000007f;     /* 127 or 6.27463e-322f */
-  /* 33: loadpb */
-  var52.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var52.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var52.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
-  var52.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var45.i = ex->params[25];
+  /* 15: loadpw */
+  var46.i = ex->params[26];
+  /* 18: loadpw */
+  var47.i = ex->params[27];
+  /* 21: loadpw */
+  var48.i = ex->params[28];
+  /* 28: loadpb */
+  var49 = (int) 0x0000007f;     /* 127 or 6.27463e-322f */
+  /* 31: loadpb */
+  var50.x4[0] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var50.x4[1] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var50.x4[2] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
+  var50.x4[3] = (int) 0x00000080;       /* 128 or 6.32404e-322f */
 
   for (i = 0; i < n; i++) {
     /* 0: loadb */
     var42 = ptr4[i];
     /* 2: subb */
-    var54 = var42 - var43;
+    var52 = var42 - var43;
     /* 3: splatbw */
-    var55.i = ((var54 & 0xff) << 8) | (var54 & 0xff);
+    var53.i = ((var52 & 0xff) << 8) | (var52 & 0xff);
     /* 4: loadupdb */
-    var56 = ptr5[i >> 1];
-    /* 6: subb */
-    var57 = var56 - var44;
-    /* 7: splatbw */
-    var58.i = ((var57 & 0xff) << 8) | (var57 & 0xff);
-    /* 8: loadupdb */
-    var59 = ptr6[i >> 1];
-    /* 10: subb */
-    var60 = var59 - var45;
-    /* 11: splatbw */
-    var61.i = ((var60 & 0xff) << 8) | (var60 & 0xff);
+    var54 = ptr5[i >> 1];
+    /* 5: subb */
+    var55 = var54 - var43;
+    /* 6: splatbw */
+    var56.i = ((var55 & 0xff) << 8) | (var55 & 0xff);
+    /* 7: loadupdb */
+    var57 = ptr6[i >> 1];
+    /* 8: subb */
+    var58 = var57 - var43;
+    /* 9: splatbw */
+    var59.i = ((var58 & 0xff) << 8) | (var58 & 0xff);
+    /* 11: mulhsw */
+    var60.i = (var53.i * var44.i) >> 16;
     /* 13: mulhsw */
-    var62.i = (var55.i * var46.i) >> 16;
-    /* 15: mulhsw */
-    var63.i = (var61.i * var47.i) >> 16;
-    /* 16: addssw */
-    var64.i = ORC_CLAMP_SW (var62.i + var63.i);
-    /* 18: mulhsw */
-    var65.i = (var58.i * var48.i) >> 16;
-    /* 19: addssw */
-    var66.i = ORC_CLAMP_SW (var62.i + var65.i);
-    /* 21: mulhsw */
-    var67.i = (var58.i * var49.i) >> 16;
-    /* 22: addssw */
-    var68.i = ORC_CLAMP_SW (var62.i + var67.i);
-    /* 24: mulhsw */
-    var69.i = (var61.i * var50.i) >> 16;
-    /* 25: addssw */
-    var70.i = ORC_CLAMP_SW (var68.i + var69.i);
+    var61.i = (var59.i * var45.i) >> 16;
+    /* 14: addssw */
+    var62.i = ORC_CLAMP_SW (var60.i + var61.i);
+    /* 16: mulhsw */
+    var63.i = (var56.i * var46.i) >> 16;
+    /* 17: addssw */
+    var64.i = ORC_CLAMP_SW (var60.i + var63.i);
+    /* 19: mulhsw */
+    var65.i = (var56.i * var47.i) >> 16;
+    /* 20: addssw */
+    var66.i = ORC_CLAMP_SW (var60.i + var65.i);
+    /* 22: mulhsw */
+    var67.i = (var59.i * var48.i) >> 16;
+    /* 23: addssw */
+    var68.i = ORC_CLAMP_SW (var66.i + var67.i);
+    /* 24: convssswb */
+    var69 = ORC_CLAMP_SB (var62.i);
+    /* 25: convssswb */
+    var70 = ORC_CLAMP_SB (var68.i);
     /* 26: convssswb */
     var71 = ORC_CLAMP_SB (var64.i);
-    /* 27: convssswb */
-    var72 = ORC_CLAMP_SB (var70.i);
-    /* 28: convssswb */
-    var73 = ORC_CLAMP_SB (var66.i);
-    /* 29: mergebw */
-    {
-      orc_union16 _dest;
-      _dest.x2[0] = var73;
-      _dest.x2[1] = var72;
-      var74.i = _dest.i;
-    }
-    /* 31: mergebw */
+    /* 27: mergebw */
     {
       orc_union16 _dest;
       _dest.x2[0] = var71;
-      _dest.x2[1] = var51;
-      var75.i = _dest.i;
+      _dest.x2[1] = var70;
+      var72.i = _dest.i;
     }
-    /* 32: mergewl */
+    /* 29: mergebw */
+    {
+      orc_union16 _dest;
+      _dest.x2[0] = var69;
+      _dest.x2[1] = var49;
+      var73.i = _dest.i;
+    }
+    /* 30: mergewl */
     {
       orc_union32 _dest;
-      _dest.x2[0] = var74.i;
-      _dest.x2[1] = var75.i;
-      var76.i = _dest.i;
+      _dest.x2[0] = var72.i;
+      _dest.x2[1] = var73.i;
+      var74.i = _dest.i;
     }
-    /* 34: addb */
-    var53.x4[0] = var76.x4[0] + var52.x4[0];
-    var53.x4[1] = var76.x4[1] + var52.x4[1];
-    var53.x4[2] = var76.x4[2] + var52.x4[2];
-    var53.x4[3] = var76.x4[3] + var52.x4[3];
-    /* 35: storel */
-    ptr0[i] = var53;
+    /* 32: addb */
+    var51.x4[0] = var74.x4[0] + var50.x4[0];
+    var51.x4[1] = var74.x4[1] + var50.x4[1];
+    var51.x4[2] = var74.x4[2] + var50.x4[2];
+    var51.x4[3] = var74.x4[3] + var50.x4[3];
+    /* 33: storel */
+    ptr0[i] = var51;
   }
 
 }
@@ -8841,7 +8719,7 @@
         1, 9, 35, 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, 11, 4, 4, 12, 1, 1, 12, 1, 1, 12,
-        1, 1, 14, 1, 128, 0, 0, 0, 14, 4, 127, 0, 0, 0, 16, 2,
+        1, 1, 14, 1, 128, 0, 0, 0, 14, 1, 127, 0, 0, 0, 16, 2,
         16, 2, 16, 2, 16, 2, 16, 2, 20, 2, 20, 2, 20, 2, 20, 2,
         20, 2, 20, 2, 20, 1, 20, 1, 20, 1, 20, 4, 65, 38, 4, 16,
         151, 32, 38, 45, 38, 5, 65, 38, 38, 16, 151, 33, 38, 45, 38, 6,
@@ -8864,7 +8742,7 @@
       orc_program_add_source (p, 1, "s2");
       orc_program_add_source (p, 1, "s3");
       orc_program_add_constant (p, 1, 0x00000080, "c1");
-      orc_program_add_constant (p, 4, 0x0000007f, "c2");
+      orc_program_add_constant (p, 1, 0x0000007f, "c2");
       orc_program_add_parameter (p, 2, "p1");
       orc_program_add_parameter (p, 2, "p2");
       orc_program_add_parameter (p, 2, "p3");
diff --git a/gst/videoscale/gstvideoscaleorc-dist.c b/gst/videoscale/gstvideoscaleorc-dist.c
index 833bc46..d7e4076 100644
--- a/gst/videoscale/gstvideoscaleorc-dist.c
+++ b/gst/videoscale/gstvideoscaleorc-dist.c
@@ -320,7 +320,7 @@
         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,
-        117, 56, 11, 1, 1, 12, 1, 1, 12, 1, 1, 14, 4, 128, 0, 0,
+        117, 56, 11, 1, 1, 12, 1, 1, 12, 1, 1, 14, 2, 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,
         158, 35, 33, 33, 0, 35, 34, 2, 0,
@@ -336,7 +336,7 @@
       orc_program_add_destination (p, 1, "d1");
       orc_program_add_source (p, 1, "s1");
       orc_program_add_source (p, 1, "s2");
-      orc_program_add_constant (p, 4, 0x00000080, "c1");
+      orc_program_add_constant (p, 2, 0x00000080, "c1");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
       orc_program_add_temporary (p, 2, "t2");
@@ -417,13 +417,17 @@
     /* 0: loadw */
     var34 = ptr4[i];
     /* 2: muluwl */
-    var39.i = ((orc_uint16) var34.i) * ((orc_uint16) var35.i);
+    var39.i =
+        ((orc_uint32) ((orc_uint16) var34.i)) *
+        ((orc_uint32) ((orc_uint16) var35.i));
     /* 3: loadw */
     var36 = ptr5[i];
     /* 5: muluwl */
-    var40.i = ((orc_uint16) var36.i) * ((orc_uint16) var37.i);
+    var40.i =
+        ((orc_uint32) ((orc_uint16) var36.i)) *
+        ((orc_uint32) ((orc_uint16) var37.i));
     /* 6: addl */
-    var41.i = var39.i + var40.i;
+    var41.i = ((orc_uint32) var39.i) + ((orc_uint32) var40.i);
     /* 7: shrul */
     var42.i = ((orc_uint32) var41.i) >> 16;
     /* 8: convlw */
@@ -466,13 +470,17 @@
     /* 0: loadw */
     var34 = ptr4[i];
     /* 2: muluwl */
-    var39.i = ((orc_uint16) var34.i) * ((orc_uint16) var35.i);
+    var39.i =
+        ((orc_uint32) ((orc_uint16) var34.i)) *
+        ((orc_uint32) ((orc_uint16) var35.i));
     /* 3: loadw */
     var36 = ptr5[i];
     /* 5: muluwl */
-    var40.i = ((orc_uint16) var36.i) * ((orc_uint16) var37.i);
+    var40.i =
+        ((orc_uint32) ((orc_uint16) var36.i)) *
+        ((orc_uint32) ((orc_uint16) var37.i));
     /* 6: addl */
-    var41.i = var39.i + var40.i;
+    var41.i = ((orc_uint32) var39.i) + ((orc_uint32) var40.i);
     /* 7: shrul */
     var42.i = ((orc_uint32) var41.i) >> 16;
     /* 8: convlw */
@@ -856,8 +864,8 @@
   {
     orc_union64 tmp;
     tmp.i = p1;
-    ex->params[ORC_VAR_P1] = tmp.x2[0];
-    ex->params[ORC_VAR_T1] = tmp.x2[1];
+    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
+    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
   }
 
   func = c->exec;
@@ -2345,23 +2353,27 @@
     /* 0: loadb */
     var34 = ptr5[i];
     /* 2: mulubw */
-    var44.i = ((orc_uint8) var34) * ((orc_uint8) var35);
+    var44.i =
+        ((orc_uint16) ((orc_uint8) var34)) * ((orc_uint16) ((orc_uint8) var35));
     /* 3: loadb */
     var36 = ptr6[i];
     /* 5: mulubw */
-    var45.i = ((orc_uint8) var36) * ((orc_uint8) var37);
+    var45.i =
+        ((orc_uint16) ((orc_uint8) var36)) * ((orc_uint16) ((orc_uint8) var37));
     /* 6: addw */
     var46.i = var44.i + var45.i;
     /* 7: loadb */
     var38 = ptr4[i];
     /* 9: mulubw */
-    var47.i = ((orc_uint8) var38) * ((orc_uint8) var39);
+    var47.i =
+        ((orc_uint16) ((orc_uint8) var38)) * ((orc_uint16) ((orc_uint8) var39));
     /* 10: subw */
     var48.i = var46.i - var47.i;
     /* 11: loadb */
     var40 = ptr7[i];
     /* 13: mulubw */
-    var49.i = ((orc_uint8) var40) * ((orc_uint8) var41);
+    var49.i =
+        ((orc_uint16) ((orc_uint8) var40)) * ((orc_uint16) ((orc_uint8) var41));
     /* 14: subw */
     var50.i = var48.i - var49.i;
     /* 16: addw */
@@ -2432,23 +2444,27 @@
     /* 0: loadb */
     var34 = ptr5[i];
     /* 2: mulubw */
-    var44.i = ((orc_uint8) var34) * ((orc_uint8) var35);
+    var44.i =
+        ((orc_uint16) ((orc_uint8) var34)) * ((orc_uint16) ((orc_uint8) var35));
     /* 3: loadb */
     var36 = ptr6[i];
     /* 5: mulubw */
-    var45.i = ((orc_uint8) var36) * ((orc_uint8) var37);
+    var45.i =
+        ((orc_uint16) ((orc_uint8) var36)) * ((orc_uint16) ((orc_uint8) var37));
     /* 6: addw */
     var46.i = var44.i + var45.i;
     /* 7: loadb */
     var38 = ptr4[i];
     /* 9: mulubw */
-    var47.i = ((orc_uint8) var38) * ((orc_uint8) var39);
+    var47.i =
+        ((orc_uint16) ((orc_uint8) var38)) * ((orc_uint16) ((orc_uint8) var39));
     /* 10: subw */
     var48.i = var46.i - var47.i;
     /* 11: loadb */
     var40 = ptr7[i];
     /* 13: mulubw */
-    var49.i = ((orc_uint8) var40) * ((orc_uint8) var41);
+    var49.i =
+        ((orc_uint16) ((orc_uint8) var40)) * ((orc_uint16) ((orc_uint8) var41));
     /* 14: subw */
     var50.i = var48.i - var49.i;
     /* 16: addw */
@@ -2484,7 +2500,7 @@
         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, 98, 105, 99, 117, 98, 105, 99,
         95, 117, 56, 11, 1, 1, 12, 1, 1, 12, 1, 1, 12, 1, 1, 12,
-        1, 1, 14, 4, 32, 0, 0, 0, 14, 4, 6, 0, 0, 0, 16, 4,
+        1, 1, 14, 2, 32, 0, 0, 0, 14, 2, 6, 0, 0, 0, 16, 4,
         16, 4, 16, 4, 16, 4, 20, 2, 20, 2, 175, 32, 5, 25, 175, 33,
         6, 26, 70, 32, 32, 33, 175, 33, 4, 24, 98, 32, 32, 33, 175, 33,
         7, 27, 98, 32, 32, 33, 70, 32, 32, 16, 94, 32, 32, 17, 160, 0,
@@ -2503,8 +2519,8 @@
       orc_program_add_source (p, 1, "s2");
       orc_program_add_source (p, 1, "s3");
       orc_program_add_source (p, 1, "s4");
-      orc_program_add_constant (p, 4, 0x00000020, "c1");
-      orc_program_add_constant (p, 4, 0x00000006, "c2");
+      orc_program_add_constant (p, 2, 0x00000020, "c1");
+      orc_program_add_constant (p, 2, 0x00000006, "c2");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_parameter (p, 4, "p2");
       orc_program_add_parameter (p, 4, "p3");
diff --git a/gst/volume/gstvolumeorc-dist.c b/gst/volume/gstvolumeorc-dist.c
index f04adcb..d4ccde8 100644
--- a/gst/volume/gstvolumeorc-dist.c
+++ b/gst/volume/gstvolumeorc-dist.c
@@ -291,8 +291,8 @@
   {
     orc_union64 tmp;
     tmp.f = p1;
-    ex->params[ORC_VAR_P1] = tmp.x2[0];
-    ex->params[ORC_VAR_T1] = tmp.x2[1];
+    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
+    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
   }
 
   func = c->exec;
@@ -512,9 +512,9 @@
 #if 1
       static const orc_uint8 bc[] = {
         1, 9, 24, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
-        111, 99, 101, 115, 115, 95, 105, 110, 116, 51, 50, 11, 4, 4, 14, 4,
-        27, 0, 0, 0, 16, 4, 20, 8, 178, 32, 0, 24, 147, 32, 32, 16,
-        169, 0, 32, 2, 0,
+        111, 99, 101, 115, 115, 95, 105, 110, 116, 51, 50, 11, 4, 4, 15, 8,
+        27, 0, 0, 0, 0, 0, 0, 0, 16, 4, 20, 8, 178, 32, 0, 24,
+        147, 32, 32, 16, 169, 0, 32, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_volume_orc_process_int32);
@@ -523,7 +523,7 @@
       orc_program_set_name (p, "volume_orc_process_int32");
       orc_program_set_backup_function (p, _backup_volume_orc_process_int32);
       orc_program_add_destination (p, 4, "d1");
-      orc_program_add_constant (p, 4, 0x0000001b, "c1");
+      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c1");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_temporary (p, 8, "t1");
 
@@ -638,8 +638,8 @@
       static const orc_uint8 bc[] = {
         1, 9, 30, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
         111, 99, 101, 115, 115, 95, 105, 110, 116, 51, 50, 95, 99, 108, 97, 109,
-        112, 11, 4, 4, 14, 4, 27, 0, 0, 0, 16, 4, 20, 8, 178, 32,
-        0, 24, 147, 32, 32, 16, 170, 0, 32, 2, 0,
+        112, 11, 4, 4, 15, 8, 27, 0, 0, 0, 0, 0, 0, 0, 16, 4,
+        20, 8, 178, 32, 0, 24, 147, 32, 32, 16, 170, 0, 32, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p,
@@ -650,7 +650,7 @@
       orc_program_set_backup_function (p,
           _backup_volume_orc_process_int32_clamp);
       orc_program_add_destination (p, 4, "d1");
-      orc_program_add_constant (p, 4, 0x0000001b, "c1");
+      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c1");
       orc_program_add_parameter (p, 4, "p1");
       orc_program_add_temporary (p, 8, "t1");
 
@@ -1016,7 +1016,7 @@
 #if 1
       static const orc_uint8 bc[] = {
         1, 9, 23, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
-        111, 99, 101, 115, 115, 95, 105, 110, 116, 56, 11, 1, 1, 14, 4, 3,
+        111, 99, 101, 115, 115, 95, 105, 110, 116, 56, 11, 1, 1, 14, 2, 3,
         0, 0, 0, 16, 1, 20, 2, 174, 32, 0, 24, 94, 32, 32, 16, 157,
         0, 32, 2, 0,
       };
@@ -1027,7 +1027,7 @@
       orc_program_set_name (p, "volume_orc_process_int8");
       orc_program_set_backup_function (p, _backup_volume_orc_process_int8);
       orc_program_add_destination (p, 1, "d1");
-      orc_program_add_constant (p, 4, 0x00000003, "c1");
+      orc_program_add_constant (p, 2, 0x00000003, "c1");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
 
@@ -1143,7 +1143,7 @@
         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,
-        11, 1, 1, 14, 4, 3, 0, 0, 0, 16, 1, 20, 2, 174, 32, 0,
+        11, 1, 1, 14, 2, 3, 0, 0, 0, 16, 1, 20, 2, 174, 32, 0,
         24, 94, 32, 32, 16, 159, 0, 32, 2, 0,
       };
       p = orc_program_new_from_static_bytecode (bc);
@@ -1155,7 +1155,7 @@
       orc_program_set_backup_function (p,
           _backup_volume_orc_process_int8_clamp);
       orc_program_add_destination (p, 1, "d1");
-      orc_program_add_constant (p, 4, 0x00000003, "c1");
+      orc_program_add_constant (p, 2, 0x00000003, "c1");
       orc_program_add_parameter (p, 1, "p1");
       orc_program_add_temporary (p, 2, "t1");
 
@@ -1284,8 +1284,8 @@
   {
     orc_union64 tmp;
     tmp.f = p1;
-    ex->params[ORC_VAR_P1] = tmp.x2[0];
-    ex->params[ORC_VAR_T1] = tmp.x2[1];
+    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
+    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
   }
 
   func = c->exec;
diff --git a/po/af.gmo b/po/af.gmo
index 789dd57..9c12f19 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index cb73dfc..a874888 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.7.6\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 7be18cd..f36933d 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index 0954d23..023a9b5 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 eb55329..9b4a4bd 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index 67803fb..8193459 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 751079e..0820b49 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 77c52d4..2d04fc6 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 df07bad..3f5a1a8 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 5275f88..3c69b17 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-03-09 12:37+0100\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 41c53e9..2f529c5 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index 18c2cbd..860c4ec 100644
--- a/po/da.po
+++ b/po/da.po
@@ -33,7 +33,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-08-29 16:38+0100\n"
 "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
diff --git a/po/de.gmo b/po/de.gmo
index 475758b..31650e6 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 0c2b9d1..19b8163 100644
--- a/po/de.po
+++ b/po/de.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-24 23:58+0100\n"
 "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
diff --git a/po/el.gmo b/po/el.gmo
index afd5ae9..c8dcc47 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index dbb83f6..b9752df 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 e7acb8b..8566492 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 c185cb1..82bc2b6 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.8.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 cafbe17..7831ee2 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index b25eb73..1128085 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 b85f0f0..21eabea 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index b058040..194d377 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 b2a8bbb..3d78fac 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 14ea489..3ef6b7a 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 a77f773..c3b5576 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index e3bc699..c1bc8e3 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 c6f31ce..30d057a 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 255af57..56cc678 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 bd9e462..9efbba8 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index d90945d..44eb43a 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 29d2e67..d0ad948 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.4.4\n"
+"Project-Id-Version: gst-plugins-base 1.4.5\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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"
@@ -16,57 +16,57 @@
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ext/alsa/gstalsasink.c:573
+#: ext/alsa/gstalsasink.c:577
 msgid "Could not open device for playback in mono mode."
 msgstr ""
 
-#: ext/alsa/gstalsasink.c:575
+#: ext/alsa/gstalsasink.c:579
 msgid "Could not open device for playback in stereo mode."
 msgstr ""
 
-#: ext/alsa/gstalsasink.c:579
+#: ext/alsa/gstalsasink.c:583
 #, c-format
 msgid "Could not open device for playback in %d-channel mode."
 msgstr ""
 
-#: ext/alsa/gstalsasink.c:852
+#: ext/alsa/gstalsasink.c:856
 msgid ""
 "Could not open audio device for playback. Device is being used by another "
 "application."
 msgstr ""
 
-#: ext/alsa/gstalsasink.c:857
+#: ext/alsa/gstalsasink.c:861
 msgid "Could not open audio device for playback."
 msgstr ""
 
-#: ext/alsa/gstalsasink.c:1074
+#: ext/alsa/gstalsasink.c:1078
 msgid "Error outputting to audio device. The device has been disconnected."
 msgstr ""
 
-#: ext/alsa/gstalsasrc.c:436
+#: ext/alsa/gstalsasrc.c:440
 msgid "Could not open device for recording in mono mode."
 msgstr ""
 
-#: ext/alsa/gstalsasrc.c:438
+#: ext/alsa/gstalsasrc.c:442
 msgid "Could not open device for recording in stereo mode."
 msgstr ""
 
-#: ext/alsa/gstalsasrc.c:442
+#: ext/alsa/gstalsasrc.c:446
 #, c-format
 msgid "Could not open device for recording in %d-channel mode"
 msgstr ""
 
-#: ext/alsa/gstalsasrc.c:734
+#: ext/alsa/gstalsasrc.c:738
 msgid ""
 "Could not open audio device for recording. Device is being used by another "
 "application."
 msgstr ""
 
-#: ext/alsa/gstalsasrc.c:739
+#: ext/alsa/gstalsasrc.c:743
 msgid "Could not open audio device for recording."
 msgstr ""
 
-#: ext/alsa/gstalsasrc.c:993
+#: ext/alsa/gstalsasrc.c:997
 msgid "Error recording from audio device. The device has been disconnected."
 msgstr ""
 
@@ -86,15 +86,15 @@
 msgid "Internal data stream error."
 msgstr ""
 
-#: gst/encoding/gstencodebin.c:1487 gst/playback/gstplaybin2.c:3148
+#: gst/encoding/gstencodebin.c:1487 gst/playback/gstplaybin2.c:3164
 #: gst/playback/gstplaysink.c:1483 gst/playback/gstplaysink.c:1500
 #: gst/playback/gstplaysink.c:1834 gst/playback/gstplaysink.c:1863
 #: gst/playback/gstplaysink.c:2443 gst/playback/gstplaysink.c:2492
 #: gst/playback/gstplaysink.c:2507 gst/playback/gstplaysink.c:2532
 #: gst/playback/gstplaysink.c:2564 gst/playback/gstplaysink.c:2709
-#: gst/playback/gstplaysink.c:2737 gst/playback/gstplaysink.c:3128
-#: gst/playback/gstplaysink.c:3137 gst/playback/gstplaysink.c:3146
-#: gst/playback/gstplaysink.c:3155 gst/playback/gstplaysink.c:4361
+#: gst/playback/gstplaysink.c:2737 gst/playback/gstplaysink.c:3130
+#: gst/playback/gstplaysink.c:3139 gst/playback/gstplaysink.c:3148
+#: gst/playback/gstplaysink.c:3157 gst/playback/gstplaysink.c:4363
 #: gst/playback/gstplaysinkconvertbin.c:97
 #: gst/playback/gstplaysinkconvertbin.c:117
 #: gst/playback/gsturidecodebin.c:1479
@@ -115,7 +115,7 @@
 msgid "This appears to be a text file"
 msgstr ""
 
-#: gst/playback/gstplaybin2.c:5213
+#: gst/playback/gstplaybin2.c:5227
 msgid "Could not create \"uridecodebin\" element."
 msgstr ""
 
@@ -173,7 +173,7 @@
 msgid "The autoaudiosink element is not working."
 msgstr ""
 
-#: gst/playback/gstplaysink.c:3231 gst/playback/gstplaysink.c:3236
+#: gst/playback/gstplaysink.c:3233 gst/playback/gstplaysink.c:3238
 msgid "Can't play a text file without video or visualizations."
 msgstr ""
 
@@ -234,188 +234,188 @@
 msgid "Apple Lossless Audio (ALAC)"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:144
+#: gst-libs/gst/pbutils/descriptions.c:146
 msgid "Free Lossless Audio Codec (FLAC)"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:174
-#: gst-libs/gst/pbutils/descriptions.c:175
+#: gst-libs/gst/pbutils/descriptions.c:176
+#: gst-libs/gst/pbutils/descriptions.c:177
 msgid "Lossless True Audio (TTA)"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:183
+#: gst-libs/gst/pbutils/descriptions.c:185
 msgid "Windows Media Speech"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:198
+#: gst-libs/gst/pbutils/descriptions.c:200
 msgid "CYUV Lossless"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:203
+#: gst-libs/gst/pbutils/descriptions.c:205
 msgid "FFMpeg v1"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:217
+#: gst-libs/gst/pbutils/descriptions.c:219
 msgid "Lossless MSZH"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:228
+#: gst-libs/gst/pbutils/descriptions.c:230
 msgid "Run-length encoding"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:274
+#: gst-libs/gst/pbutils/descriptions.c:276
 msgid "Timed Text"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:278
+#: gst-libs/gst/pbutils/descriptions.c:280
 msgid "Subtitle"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:279
+#: gst-libs/gst/pbutils/descriptions.c:281
 msgid "MPL2 subtitle format"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:280
+#: gst-libs/gst/pbutils/descriptions.c:282
 msgid "DKS subtitle format"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:281
+#: gst-libs/gst/pbutils/descriptions.c:283
 msgid "QTtext subtitle format"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:282
+#: gst-libs/gst/pbutils/descriptions.c:284
 msgid "Sami subtitle format"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:283
+#: gst-libs/gst/pbutils/descriptions.c:285
 msgid "TMPlayer subtitle format"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:287
+#: gst-libs/gst/pbutils/descriptions.c:289
 msgid "Kate subtitle format"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:352
-#: gst-libs/gst/pbutils/descriptions.c:355
-#: gst-libs/gst/pbutils/descriptions.c:405
+#: gst-libs/gst/pbutils/descriptions.c:354
+#: gst-libs/gst/pbutils/descriptions.c:357
+#: gst-libs/gst/pbutils/descriptions.c:407
 msgid "Uncompressed video"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:360
+#: gst-libs/gst/pbutils/descriptions.c:362
 msgid "Uncompressed gray"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:383
-#, c-format
-msgid "Uncompressed packed YUV %s"
-msgstr ""
-
 #: gst-libs/gst/pbutils/descriptions.c:385
 #, c-format
-msgid "Uncompressed semi-planar YUV %s"
+msgid "Uncompressed packed YUV %s"
 msgstr ""
 
 #: gst-libs/gst/pbutils/descriptions.c:387
 #, c-format
+msgid "Uncompressed semi-planar YUV %s"
+msgstr ""
+
+#: gst-libs/gst/pbutils/descriptions.c:389
+#, c-format
 msgid "Uncompressed planar YUV %s"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:398
+#: gst-libs/gst/pbutils/descriptions.c:400
 #, c-format
 msgid "Uncompressed palettized %d-bit %s"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:401
+#: gst-libs/gst/pbutils/descriptions.c:403
 #, c-format
 msgid "Uncompressed %d-bit %s"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:458
+#: gst-libs/gst/pbutils/descriptions.c:460
 #, c-format
 msgid "DivX MPEG-4 Version %d"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:693
+#: gst-libs/gst/pbutils/descriptions.c:695
 msgid "Uncompressed audio"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:699
+#: gst-libs/gst/pbutils/descriptions.c:701
 #, c-format
 msgid "Raw %d-bit %s audio"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:799
+#: gst-libs/gst/pbutils/descriptions.c:801
 msgid "Audio CD source"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:802
+#: gst-libs/gst/pbutils/descriptions.c:804
 msgid "DVD source"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:805
+#: gst-libs/gst/pbutils/descriptions.c:807
 msgid "Real Time Streaming Protocol (RTSP) source"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:809
+#: gst-libs/gst/pbutils/descriptions.c:811
 msgid "Microsoft Media Server (MMS) protocol source"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:817
+#: gst-libs/gst/pbutils/descriptions.c:819
 #, c-format
 msgid "%s protocol source"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:889
+#: gst-libs/gst/pbutils/descriptions.c:891
 #, c-format
 msgid "%s video RTP depayloader"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:891
+#: gst-libs/gst/pbutils/descriptions.c:893
 #, c-format
 msgid "%s audio RTP depayloader"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:893
+#: gst-libs/gst/pbutils/descriptions.c:895
 #, c-format
 msgid "%s RTP depayloader"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:900
+#: gst-libs/gst/pbutils/descriptions.c:902
 #, c-format
 msgid "%s demuxer"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:902
+#: gst-libs/gst/pbutils/descriptions.c:904
 #, c-format
 msgid "%s decoder"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:940
+#: gst-libs/gst/pbutils/descriptions.c:942
 #, c-format
 msgid "%s video RTP payloader"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:942
+#: gst-libs/gst/pbutils/descriptions.c:944
 #, c-format
 msgid "%s audio RTP payloader"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:944
+#: gst-libs/gst/pbutils/descriptions.c:946
 #, c-format
 msgid "%s RTP payloader"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:951
+#: gst-libs/gst/pbutils/descriptions.c:953
 #, c-format
 msgid "%s muxer"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:953
+#: gst-libs/gst/pbutils/descriptions.c:955
 #, c-format
 msgid "%s encoder"
 msgstr ""
 
-#: gst-libs/gst/pbutils/descriptions.c:985
+#: gst-libs/gst/pbutils/descriptions.c:987
 #, c-format
 msgid "GStreamer element %s"
 msgstr ""
@@ -665,7 +665,7 @@
 msgid "Initial key in which the sound starts"
 msgstr ""
 
-#: tools/gst-device-monitor.c:123 tools/gst-play.c:664
+#: tools/gst-device-monitor.c:123 tools/gst-play.c:665
 msgid "Print version information and exit"
 msgstr ""
 
@@ -675,47 +675,47 @@
 "added/removed."
 msgstr ""
 
-#: tools/gst-play.c:218
+#: tools/gst-play.c:219
 msgid "Buffering..."
 msgstr ""
 
-#: tools/gst-play.c:239
+#: tools/gst-play.c:240
 msgid "Clock lost, selecting a new one\n"
 msgstr ""
 
-#: tools/gst-play.c:666
+#: tools/gst-play.c:667
 msgid "Video sink to use (default is autovideosink)"
 msgstr ""
 
-#: tools/gst-play.c:668
+#: tools/gst-play.c:669
 msgid "Audio sink to use (default is autoaudiosink)"
 msgstr ""
 
-#: tools/gst-play.c:670
+#: tools/gst-play.c:671
 msgid "Enable gapless playback"
 msgstr ""
 
-#: tools/gst-play.c:672
+#: tools/gst-play.c:673
 msgid "Shuffle playlist"
 msgstr ""
 
-#: tools/gst-play.c:674
+#: tools/gst-play.c:675
 msgid "Interactive control via keyboard"
 msgstr ""
 
-#: tools/gst-play.c:676
+#: tools/gst-play.c:677
 msgid "Volume"
 msgstr ""
 
-#: tools/gst-play.c:678
+#: tools/gst-play.c:679
 msgid "Playlist file containing input media files"
 msgstr ""
 
-#: tools/gst-play.c:747
+#: tools/gst-play.c:748
 #, c-format
 msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
 msgstr ""
 
-#: tools/gst-play.c:751
+#: tools/gst-play.c:752
 msgid "You must provide at least one filename or URI to play."
 msgstr ""
diff --git a/po/hr.gmo b/po/hr.gmo
index dbe17de..cdce52a 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index cc5c1f8..14c06c9 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 0fbbd88..e4ed892 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index 3934a23..19c366a 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-26 00:28+0200\n"
 "Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/po/id.gmo b/po/id.gmo
index 5be5bd3..a168067 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index bf9d88b..c7c2306 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-30 09:19+0700\n"
 "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
diff --git a/po/it.gmo b/po/it.gmo
index 8c65b24..dd0bbfe 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index ae007d9..0f38458 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 f3b6682..e702551 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 2feed9c..61b706f 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 bac8481..ce3df0f 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 7a934d2..1e851ae 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 6dde93f..35a17a9 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index b7a2544..8aa8ba0 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-04-20 16:15+0300\n"
 "Last-Translator: Rihards Prieditis <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 4190df3..6c07ef8 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index 5bc7c75..cab57c9 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-22 12:38+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 84cadae..99791d9 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 8008106..4311d79 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-22 10:50+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 55e2d27..dd9e42e 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index 4b33b3f..458d3c0 100644
--- a/po/or.po
+++ b/po/or.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 301695b..941f7bb 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index a3b885b..9bd9d33 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-21 21:21+0200\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 21c39c9..ee8f636 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 75497b7..73f8bae 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -11,7 +11,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2013-12-29 17:33-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 8fd0725..07efb41 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index ee4d1e4..e4023fd 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 eff981f..9f69147 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index f6362d9..45cd296 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-21 19:24+0400\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@mx.ru>\n"
diff --git a/po/sk.gmo b/po/sk.gmo
index 45d433a..8adba4f 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index f0b928d..8d3438d 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-01-30 10:57+0100\n"
 "Last-Translator: Peter Tuharsky <tuharsky@misbb.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index 00fd8e6..6ccbb6d 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index 73fb920..3e36581 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 309d626..9544a47 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index d386bbf..f855902 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 bdab502..48b46bc 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index 9204565..e8637f9 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base-1.4.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-09-13 10:45+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
diff --git a/po/sv.gmo b/po/sv.gmo
index 0af3251..706c268 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 31b1332..3e8aa72 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-19 16:23+0200\n"
 "Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index e8f1c65..cb0face 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index 215ae75..eeff532 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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 4cb2c54..358648b 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index 49c0961..bee18ca 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-21 14:23+0300\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
diff --git a/po/vi.gmo b/po/vi.gmo
index 53083c3..625c490 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index b9186b5..f7e04a5 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-base 1.4.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+0100\n"
 "PO-Revision-Date: 2014-07-23 15:56+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index 1262f85..b831518 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 5b0d143..1766aec 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: 2014-11-06 12:28+0100\n"
+"POT-Creation-Date: 2014-12-18 12:05+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/sys/ximage/ximagepool.c b/sys/ximage/ximagepool.c
index 6cc2cfa..b9c8340 100644
--- a/sys/ximage/ximagepool.c
+++ b/sys/ximage/ximagepool.c
@@ -559,8 +559,10 @@
   GstXImageBufferPoolPrivate *priv = xpool->priv;
   GstVideoInfo info;
   GstCaps *caps;
+  guint size, min_buffers, max_buffers;
 
-  if (!gst_buffer_pool_config_get_params (config, &caps, NULL, NULL, NULL))
+  if (!gst_buffer_pool_config_get_params (config, &caps, &size, &min_buffers,
+          &max_buffers))
     goto wrong_config;
 
   if (caps == NULL)
@@ -613,6 +615,9 @@
 
   priv->info = info;
 
+  gst_buffer_pool_config_set_params (config, caps, info.size, min_buffers,
+      max_buffers);
+
   return GST_BUFFER_POOL_CLASS (parent_class)->set_config (pool, config);
 
   /* ERRORS */
diff --git a/sys/ximage/ximagesink.c b/sys/ximage/ximagesink.c
index ff6a9d6..2a1f76b 100644
--- a/sys/ximage/ximagesink.c
+++ b/sys/ximage/ximagesink.c
@@ -230,7 +230,9 @@
 {
   GstXImageMemory *mem;
   GstVideoCropMeta *crop;
-  GstVideoRectangle src, dst, result;
+  GstVideoRectangle src = { 0, };
+  GstVideoRectangle dst = { 0, };
+  GstVideoRectangle result;
   gboolean draw_border = FALSE;
 
   /* We take the flow_lock. If expose is in there we don't want to run
diff --git a/sys/xvimage/xvimagepool.c b/sys/xvimage/xvimagepool.c
index 244a51a..db434fc 100644
--- a/sys/xvimage/xvimagepool.c
+++ b/sys/xvimage/xvimagepool.c
@@ -80,9 +80,11 @@
   GstXvImageBufferPoolPrivate *priv = xvpool->priv;
   GstVideoInfo info;
   GstCaps *caps;
+  guint size, min_buffers, max_buffers;
   GstXvContext *context;
 
-  if (!gst_buffer_pool_config_get_params (config, &caps, NULL, NULL, NULL))
+  if (!gst_buffer_pool_config_get_params (config, &caps, &size, &min_buffers,
+          &max_buffers))
     goto wrong_config;
 
   if (caps == NULL)
@@ -144,6 +146,9 @@
   priv->crop.w = priv->info.width;
   priv->crop.h = priv->info.height;
 
+  gst_buffer_pool_config_set_params (config, caps, info.size, min_buffers,
+      max_buffers);
+
   return GST_BUFFER_POOL_CLASS (parent_class)->set_config (pool, config);
 
   /* ERRORS */
diff --git a/sys/xvimage/xvimagesink.c b/sys/xvimage/xvimagesink.c
index 6bd5b3e..a0d62a0 100644
--- a/sys/xvimage/xvimagesink.c
+++ b/sys/xvimage/xvimagesink.c
@@ -229,7 +229,8 @@
   GstVideoCropMeta *crop;
   GstVideoRectangle result;
   gboolean draw_border = FALSE;
-  GstVideoRectangle src, dst;
+  GstVideoRectangle src = { 0, };
+  GstVideoRectangle dst = { 0, };
   GstVideoRectangle mem_crop;
   GstXWindow *xwindow;
 
@@ -1129,7 +1130,9 @@
 
   if ((peer = gst_pad_get_peer (GST_VIDEO_SINK_PAD (xvimagesink)))) {
     GstEvent *event;
-    GstVideoRectangle src, dst, result;
+    GstVideoRectangle src = { 0, };
+    GstVideoRectangle dst = { 0, };
+    GstVideoRectangle result;
     gdouble x, y, xscale = 1.0, yscale = 1.0;
     GstXWindow *xwindow;
 
diff --git a/tests/check/Makefile.am b/tests/check/Makefile.am
index d2eb6c5..e5e60ed 100644
--- a/tests/check/Makefile.am
+++ b/tests/check/Makefile.am
@@ -239,7 +239,8 @@
 # videoconvert takes too long, so disabled for now
 VALGRIND_TO_FIX = \
 	elements/videoconvert \
-	libs/video
+	libs/video \
+	$(check_orc)
 
 # these tests don't even pass
 noinst_PROGRAMS = $(check_libvisual)
diff --git a/tests/check/Makefile.in b/tests/check/Makefile.in
index be19e4f..1e9ebfe 100644
--- a/tests/check/Makefile.in
+++ b/tests/check/Makefile.in
@@ -1421,7 +1421,8 @@
 # videoconvert takes too long, so disabled for now
 VALGRIND_TO_FIX = \
 	elements/videoconvert \
-	libs/video
+	libs/video \
+	$(check_orc)
 
 noinst_HEADERS = \
 	libs/struct_arm.h     \
diff --git a/tests/check/libs/audiodecoder.c b/tests/check/libs/audiodecoder.c
index 99d4e9e..934b9dd 100644
--- a/tests/check/libs/audiodecoder.c
+++ b/tests/check/libs/audiodecoder.c
@@ -77,7 +77,6 @@
 {
   GstAudioDecoderTester *tester = (GstAudioDecoderTester *) dec;
   GstAudioInfo info;
-  gst_caps_unref (caps);
 
   if (!tester->setoutputformat_on_decoding) {
     caps = gst_caps_new_simple ("audio/x-raw", "format", G_TYPE_STRING, "S32LE",
@@ -242,7 +241,7 @@
       gst_caps_new_simple ("audio/x-test-custom", "channels", G_TYPE_INT, 2,
       "rate", G_TYPE_INT, 44100, NULL);
   fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_caps (caps)));
-
+  gst_caps_unref (caps);
 }
 
 #define NUM_BUFFERS 1000
@@ -497,7 +496,8 @@
     }
   }
   {
-    GstEvent *eos_event = events_iter->data;
+    GstEvent *eos_event = g_list_last(events_iter)->data;
+
     fail_unless (GST_EVENT_TYPE (eos_event) == GST_EVENT_EOS);
     events_iter = g_list_next (events_iter);
   }
@@ -544,6 +544,9 @@
 
   }
 
+  g_list_free_full (events, (GDestroyNotify) gst_event_unref);
+  events = NULL;
+
   g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
   buffers = NULL;
 
@@ -551,6 +554,36 @@
   cleanup_audiodecodertest ();
 }
 
+/* An element should always push its segment before sending EOS */
+GST_START_TEST (audiodecoder_eos_events_no_buffers)
+{
+  GstSegment segment;
+  setup_audiodecodertester ();
+
+  gst_pad_set_active (mysrcpad, TRUE);
+  gst_element_set_state (dec, GST_STATE_PLAYING);
+  gst_pad_set_active (mysinkpad, TRUE);
+  send_startup_events ();
+
+  gst_segment_init (&segment, GST_FORMAT_TIME);
+  fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+  fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+  fail_unless (GST_PAD_IS_EOS (mysinkpad));
+
+  {
+    GstEvent *segment_event =
+        gst_pad_get_sticky_event (mysinkpad, GST_EVENT_SEGMENT, 0);
+    fail_unless (segment_event != NULL);
+    gst_event_unref (segment_event);
+  }
+
+  gst_element_set_state (dec, GST_STATE_NULL);
+  cleanup_audiodecodertest ();
+}
+
+GST_END_TEST;
+
 GST_START_TEST (audiodecoder_flush_events_no_buffers)
 {
   _audiodecoder_flush_events (FALSE);
@@ -695,6 +728,7 @@
   suite_add_tcase (s, tc);
   tcase_add_test (tc, audiodecoder_playback);
   tcase_add_test (tc, audiodecoder_flush_events_no_buffers);
+  tcase_add_test (tc, audiodecoder_eos_events_no_buffers);
   tcase_add_test (tc, audiodecoder_flush_events);
   tcase_add_test (tc, audiodecoder_negotiation_with_buffer);
   tcase_add_test (tc, audiodecoder_negotiation_with_gap_event);
diff --git a/tools/gst-play.c b/tools/gst-play.c
index c467439..cc38a61 100644
--- a/tools/gst-play.c
+++ b/tools/gst-play.c
@@ -131,7 +131,8 @@
         G_CALLBACK (play_about_to_finish), play);
   }
 
-  play_set_relative_volume (play, initial_volume - 1.0);
+  if (initial_volume != -1)
+    play_set_relative_volume (play, initial_volume - 1.0);
 
   return play;
 }
@@ -650,7 +651,7 @@
   gboolean interactive = FALSE; /* FIXME: maybe enable by default? */
   gboolean gapless = FALSE;
   gboolean shuffle = FALSE;
-  gdouble volume = 1.0;
+  gdouble volume = -1;
   gchar **filenames = NULL;
   gchar *audio_sink = NULL;
   gchar *video_sink = NULL;
diff --git a/win32/common/_stdint.h b/win32/common/_stdint.h
index 8865763..a751fde 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.4.4"
-/* generated using gnu compiler gcc (Debian 4.9.2-1) 4.9.2 */
+#define _GENERATED_STDINT_H "gst-plugins-base 1.4.5"
+/* generated using gnu compiler gcc (Debian 4.9.2-8) 4.9.2 */
 #define _STDINT_HAVE_STDINT_H 1
 #include <stdint.h>
 #endif
diff --git a/win32/common/config.h b/win32/common/config.h
index 512bb1f..f5623c0 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 "2014-11-06"
+#define GST_PACKAGE_RELEASE_DATETIME "2014-12-18"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -325,7 +325,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.4.4"
+#define PACKAGE_STRING "GStreamer Base Plug-ins 1.4.5"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gst-plugins-base"
@@ -334,7 +334,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.4.4"
+#define PACKAGE_VERSION "1.4.5"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -368,7 +368,7 @@
 #undef USE_TREMOLO
 
 /* Version number of package */
-#define VERSION "1.4.4"
+#define VERSION "1.4.5"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */