Commit 03f045ee authored by Xuetian Weng's avatar Xuetian Weng

update gstreamer 0.10 stack and rebuild some other gstreamer related package

parent 29d6f2bb
pkgname=gst-libav
pkgver=1.4.5
pkgver=1.6.2
pkgrel=1
pkgdesc="Gstreamer libav Plugin"
arch=('x86_64')
license=('GPL')
url="http://gstreamer.freedesktop.org/"
depends=('gst-plugins-base' 'bzip2')
depends=('gst-plugins-base-libs' 'bzip2' 'ffmpeg')
makedepends=('python' 'yasm')
options=(!emptydirs)
provides=("gst-ffmpeg=$pkgver-$pkgrel")
source=(${url}/src/$pkgname/$pkgname-$pkgver.tar.xz)
sha256sums=('605c62624604f3bb5c870844cc1f2711779cc533b004c2aa1d8c0d58557afbbc')
sha256sums=('2597acc00171006d49f0d300440a87df51b113d557466e532153abc740db3469')
prepare() {
cd $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
......@@ -18,7 +22,8 @@ build() {
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--disable-static --with-libav-extra-configure="--enable-runtime-cpudetect" \
--with-package-name="GStreamer libav Plugin (Chakra Linux)" \
--with-package-origin="http://www.chakraos.org/"
--with-package-origin="http://www.chakraos.org/" \
--with-system-libav
# https://bugzilla.gnome.org/show_bug.cgi?id=655517
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
......
pkgbase=gstreamer-vaapi
pkgname=(gst-vaapi gstreamer0.10-vaapi)
pkgver=0.5.9
pkgver=0.7.0
pkgrel=1
pkgdesc="GStreamer Multimedia Framework VA Plugins"
arch=(x86_64)
......@@ -11,7 +11,7 @@ makedepends=(gst-plugins-base gst-plugins-bad gstreamer0.10-base-plugins gstream
options=(!emptydirs)
source=($url/$pkgbase-$pkgver.tar.bz2)
sha1sums=('14f476f834a15422ecfa6a472df1b18ac2a0e50f')
sha1sums=('053a7af120c72fda0b46450c4a94a752abf64a74')
prepare() {
mkdir build build-0.10
......
......@@ -6,64 +6,69 @@
pkgbase=gstreamer0.10-bad
pkgname=('gstreamer0.10-bad' 'gstreamer0.10-bad-plugins')
pkgver=0.10.23
pkgrel=14
pkgrel=15
arch=('x86_64')
license=('LGPL' 'GPL')
makedepends=('pkgconfig' 'gstreamer0.10-base>=0.10.36' 'xvidcore' 'libdca' 'bzip2' 'libdc1394'
'neon' 'faac' 'libmusicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools'
'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'soundtouch' 'libvdpau'
'schroedinger' 'libass' 'libvpx' 'gsm' 'libgme' 'rtmpdump' 'libsndfile' 'opus')
makedepends=('pkgconfig' 'gstreamer0.10-base>=0.10.36' 'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'faac' 'musicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools' 'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'soundtouch' 'libvdpau' 'schroedinger' 'libass' 'libvpx' 'gsm' 'libgme' 'rtmpdump' 'libsndfile' 'librsvg' 'wildmidi' 'opus' 'git' 'spandsp' 'celt')
url="http://gstreamer.freedesktop.org/"
options=(!libtool !emptydirs)
source=(${url}/src/gst-plugins-bad/gst-plugins-bad-${pkgver}.tar.xz "modplug_header.patch")
md5sums=('e4822fa2cc933768e2998311a1565979'
'798274052c11c2d6fb56da29498df270')
options=(!emptydirs)
source=("git://anongit.freedesktop.org/gstreamer-sdk/gst-plugins-bad#commit=57569a4854a0f2d14ef19a8264a4ae9a7a1d1125"
fix-libmodplug-include.patch
drop-vpx-compat-defs.patch
disable-assrender-test.patch
disable-camerabin-test.patch
faad2-version-check.patch)
sha256sums=('SKIP'
'd89d8f4307c7d5a143b9240467d260a1cb6bb1ab2e7ca57841ce0901f41c9cb7'
'eb97037b7b581d1ab994eadd144044c083975e5670a73ec827de126bf888f4b9'
'e66642affa6c0e69837d37615010e67e59ef3d672663303d46c1e2591e2ddfc6'
'01e780ddf1f8161a6115dded9dc5bf4bdd4d09a9eee00fa423b1330e90e76c68'
'741492ae7a9518603fc51d87ae331d882f075547ea7fdec19c60f399085f18cc')
prepare() {
cd "${srcdir}/gst-plugins-bad-${pkgver}"
patch -p1 -i ${srcdir}/modplug_header.patch
cd gst-plugins-bad
sed -e 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' -i configure.ac
patch -Np1 -i ../fix-libmodplug-include.patch
patch -Np1 -i ../drop-vpx-compat-defs.patch
patch -Np1 -i ../disable-assrender-test.patch
patch -Np1 -i ../disable-camerabin-test.patch
patch -Np1 -i ../faad2-version-check.patch
}
build() {
cd "${srcdir}/gst-plugins-bad-${pkgver}"
cd gst-plugins-bad
NOCONFIGURE=1 ./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--disable-static --enable-experimental --disable-gtk-doc \
--with-package-name="GStreamer Bad Plugins (Chakra GNU/Linux)" \
--with-package-origin="http://www.chakraos.org/"
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
--enable-experimental \
--disable-celt \
--disable-rsvg \
--with-package-name="GStreamer Bad Plugins (Chakra GNU/Linux)" \
--with-package-origin="http://www.chakra-project.org/"
make
sed -e 's/gst sys ext/gst/' -i Makefile
}
make
sed -e 's/gst sys ext/gst/' -i Makefile
check() {
cd gst-plugins-bad
make check
}
package_gstreamer0.10-bad() {
pkgdesc="GStreamer Multimedia Framework Bad Plugin libraries (gst-plugins-bad)"
depends=('gstreamer0.10-base>=0.10.34')
groups=('gstreamer0.10-plugins')
cd "${srcdir}/gst-plugins-bad-${pkgver}"
make DESTDIR="${pkgdir}" install
mv ${pkgdir}/usr/lib/gstreamer-0.10/libgstvideoparsersbad.so ${pkgdir}/usr/lib/gstreamer-0.10/libgstvideoparsersbad.so.bak
cd gst-plugins-bad
make DESTDIR="${pkgdir}" install
}
package_gstreamer0.10-bad-plugins() {
pkgdesc="GStreamer Multimedia Framework Bad Plugins (gst-plugins-bad)"
depends=("gstreamer0.10-bad=${pkgver}"
'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'faac'
'libmusicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools'
'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'libvdpau'
'soundtouch' 'libass' 'schroedinger' 'libvpx' 'gsm' 'rtmpdump'
'libgme' 'libsndfile' 'opus')
depends=("gstreamer0.10-bad=${pkgver}" 'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'faac' 'musicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools' 'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'libvdpau' 'soundtouch' 'libass' 'schroedinger' 'libvpx' 'gsm' 'rtmpdump' 'libgme' 'libsndfile' 'librsvg' 'wildmidi' 'opus' 'celt' 'spandsp')
groups=('gstreamer0.10-plugins')
install=gstreamer0.10-bad-plugins.install
cd "${srcdir}/gst-plugins-bad-${pkgver}"
make -C gst-libs DESTDIR="${pkgdir}" install
make -C ext DESTDIR="${pkgdir}" install
make -C sys DESTDIR="${pkgdir}" install
make -C gst-libs DESTDIR="${pkgdir}" uninstall
cd gst-plugins-bad
make -C gst-libs DESTDIR="${pkgdir}" install
make -C ext DESTDIR="${pkgdir}" install
make -C sys DESTDIR="${pkgdir}" install
make -C gst-libs DESTDIR="${pkgdir}" uninstall
}
--- a/tests/check/elements/assrender.c
+++ b/tests/check/elements/assrender.c
@@ -289,8 +289,6 @@ assrender_suite (void)
tcase_set_timeout (tc_chain, 120);
suite_add_tcase (s, tc_chain);
- tcase_add_test (tc_chain, test_assrender_basic_xRGB);
- tcase_add_test (tc_chain, test_assrender_basic_I420);
return s;
}
--- gst-plugins-bad/tests/check/Makefile.am.orig 2013-12-10 22:01:50.504567189 +0000
+++ gst-plugins-bad/tests/check/Makefile.am 2013-12-10 22:02:17.081058500 +0000
@@ -181,7 +181,6 @@
elements/autovideoconvert \
elements/asfmux \
elements/baseaudiovisualizer \
- elements/camerabin \
elements/camerabin2 \
elements/dataurisrc \
elements/legacyresample \
--- gst-plugins-bad.orig/ext/vp8/gstvp8utils.h 2015-04-21 03:31:33.134952881 +0300
+++ gst-plugins-bad/ext/vp8/gstvp8utils.h 2015-04-21 03:32:45.553520671 +0300
@@ -25,23 +25,6 @@
G_BEGIN_DECLS
-/* Some compatibility defines for older libvpx versions */
-#ifndef VPX_IMG_FMT_I420
-#define VPX_IMG_FMT_I420 IMG_FMT_I420
-#endif
-
-#ifndef VPX_PLANE_Y
-#define VPX_PLANE_Y PLANE_Y
-#endif
-
-#ifndef VPX_PLANE_U
-#define VPX_PLANE_U PLANE_U
-#endif
-
-#ifndef VPX_PLANE_V
-#define VPX_PLANE_V PLANE_V
-#endif
-
const char * gst_vpx_error_name (vpx_codec_err_t status);
G_END_DECLS
From 1f738ca5b8711ca5532a326cd646312e60484863 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Wed, 13 May 2015 16:23:26 +0200
Subject: fix faad2 version check
On fedora 22, the output of cpp inserts extra debug comments, which
makes our regexp for the faad2 version check fail. This in turn causes
it to compile with the wrong arguments passed which then causes stack
corruption and crashes.
Fix this by only checking for the version (which should be by itself on
a single line). This is potentially less safe, it might be possible that
a similar string would appear in a later version in the header file.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=748571
diff --git a/configure.ac b/configure.ac
index f5ce28c..d295253 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2008,9 +2008,9 @@ AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
for minor in 10 9 8 7 6 5 0; do
if test x$faad2_minor_version = "x"; then
- AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
+ AC_EGREP_CPP([\"2\.$minor\"$], [
#include <$faad_hdr>
- GST_CHECK_FAAD_VERSION FAAD2_VERSION
+ FAAD2_VERSION
], [
faad2_minor_version=$minor
])
--
cgit v0.10.2
diff -uprw gst-plugins-bad.orig/ext/modplug/gstmodplug.cc gst-plugins-bad/ext/modplug/gstmodplug.cc
--- gst-plugins-bad.orig/ext/modplug/gstmodplug.cc 2015-04-21 03:15:25.929456272 +0300
+++ gst-plugins-bad/ext/modplug/gstmodplug.cc 2015-04-21 03:18:54.624976723 +0300
@@ -50,7 +50,7 @@
#define WORDS_BIGENDIAN 0
#endif
-#include <stdafx.h>
+#include <libmodplug/stdafx.h>
#include <libmodplug/sndfile.h>
#include "gstmodplug.h"
post_install() {
usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
}
post_upgrade() {
post_install
}
post_remove() {
post_install
}
......@@ -6,47 +6,68 @@
pkgbase=('gstreamer0.10-base')
pkgname=('gstreamer0.10-base' 'gstreamer0.10-base-plugins')
pkgver=0.10.36
pkgrel=8
pkgrel=9
arch=('x86_64')
license=('LGPL')
makedepends=('pkgconfig' "gstreamer0.10>=${pkgver}" 'orc' 'libxv' 'alsa-lib' 'cdparanoia'
'libvisual' 'libvorbis' 'libtheora' 'pango' 'gobject-introspection' 'v4l-utils')
makedepends=('pkgconfig' 'gstreamer0.10>=0.10.36' 'orc' 'libxv' 'alsa-lib' 'cdparanoia' 'libvisual' 'libvorbis' 'libtheora' 'pango' 'gobject-introspection' 'git')
options=(!emptydirs)
url="http://gstreamer.freedesktop.org/"
source=(${url}/src/gst-plugins-base/gst-plugins-base-${pkgver}.tar.xz)
md5sums=('3d2337841b132fe996e5eb2396ac9438')
source=("git://anongit.freedesktop.org/gstreamer-sdk/gst-plugins-base#commit=48d5966f12d4e6b71c96db0600cf76ef0ef14b3a"
fix-crash-0-byte-ogg.patch
colorbalance-fix-abi.patch
revert-decodebin-playbin-removal.patch
videoscale-fix-negotiation.patch
ayuv64-lanczos.patch
gstaudio-symbols.patch)
sha256sums=('SKIP'
'a6a01035ea9627737f9c17f72919857ed43ccc7c2cb08b645b43ed89f78d0f4f'
'7442c5c68068428b8c7ac1d3825ce29f1bb152b75b77047b9e806c7d322b780c'
'ba20659fafea73db016ddaecd128f12087e0957ce35cf2c3ce29f72c51551ef3'
'ae27f7be58997217f67898b37b138a485c203389e56b65e6b31c23f769ef39ca'
'3792dfe80c69f51c0db98533e8fb16707b5dd2ee6933ea6098583af873ceb44a'
'56e7a988df39d2ec4befa265536ad8c30d3c8d18d136cebef64e8d6baac1abae')
prepare() {
cd "${srcdir}/gst-plugins-base-${pkgver}"
cd gst-plugins-base
sed -i -e '/AC_PATH_XTRA/d' -e 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' configure.ac
patch -Np1 -i ../fix-crash-0-byte-ogg.patch
patch -Np1 -i ../colorbalance-fix-abi.patch
patch -Np1 -i ../ayuv64-lanczos.patch
patch -Np1 -i ../videoscale-fix-negotiation.patch
patch -Np1 -i ../gstaudio-symbols.patch
patch -Np1 -R -i ../revert-decodebin-playbin-removal.patch
}
build() {
cd "${srcdir}/gst-plugins-base-${pkgver}"
cd gst-plugins-base
NOCONFIGURE=1 ./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--disable-static --enable-experimental --disable-gnome_vfs --enable-subparse\
--disable-static --enable-experimental --disable-gnome_vfs --disable-gtk-doc \
--with-package-name="GStreamer Base Plugins (Chakra GNU/Linux)" \
--with-package-origin="http://www.chakraos.org/"
make
sed -e 's/^SUBDIRS_EXT =.*/SUBDIRS_EXT =/' -i Makefile
}
check() {
cd gst-plugins-base
make check
}
package_gstreamer0.10-base() {
pkgdesc="GStreamer Multimedia Framework Base plugin libraries"
depends=('gstreamer0.10>=0.10.36' 'orc' 'libxv')
cd "${srcdir}/gst-plugins-base-${pkgver}"
cd gst-plugins-base
make DESTDIR="${pkgdir}" install
}
package_gstreamer0.10-base-plugins() {
pkgdesc="GStreamer Multimedia Framework Base Plugins (gst-plugins-base)"
depends=("gstreamer0.10-base=${pkgver}" 'alsa-lib' 'cdparanoia' 'libvisual' 'libvorbis' 'libtheora' 'pango' 'v4l-utils')
depends=("gstreamer0.10-base=${pkgver}" 'alsa-lib' 'cdparanoia' 'libvisual' 'libvorbis' 'libtheora' 'pango')
groups=('gstreamer0.10-plugins')
cd "${srcdir}/gst-plugins-base-${pkgver}"
cd gst-plugins-base
make -C gst-libs DESTDIR="${pkgdir}" install
make -C ext DESTDIR="${pkgdir}" install
make -C gst-libs DESTDIR="${pkgdir}" uninstall
......
From e4f01106d08f3c2a65897bfe919bd65ce55545a8 Mon Sep 17 00:00:00 2001
From: David Schleef <ds@schleef.org>
Date: Wed, 25 Jan 2012 23:49:00 +0000
Subject: videoscale: Add AYUV64 path to Lanczos
---
diff --git a/gst/videoscale/gstvideoscale.c b/gst/videoscale/gstvideoscale.c
index 7b44647..6df4ba6 100644
--- a/gst/videoscale/gstvideoscale.c
+++ b/gst/videoscale/gstvideoscale.c
@@ -1199,6 +1199,11 @@ gst_video_scale_transform (GstBaseTransform * trans, GstBuffer * in,
case GST_VIDEO_SCALE_4TAP:
vs_image_scale_4tap_AYUV64 (&dest, &src, videoscale->tmp_buf);
break;
+ case GST_VIDEO_SCALE_LANCZOS:
+ vs_image_scale_lanczos_AYUV64 (&dest, &src, videoscale->tmp_buf,
+ videoscale->sharpness, videoscale->dither, videoscale->submethod,
+ videoscale->envelope, videoscale->sharpen);
+ break;
default:
goto unknown_mode;
}
diff --git a/gst/videoscale/vs_image.h b/gst/videoscale/vs_image.h
index 2312acc..7b34991 100644
--- a/gst/videoscale/vs_image.h
+++ b/gst/videoscale/vs_image.h
@@ -52,6 +52,9 @@ void vs_image_scale_linear_RGBA (const VSImage *dest, const VSImage *src,
void vs_image_scale_lanczos_AYUV (const VSImage * dest, const VSImage * src,
uint8_t * tmpbuf, double sharpness, gboolean dither, int submethod,
double a, double sharpen);
+void vs_image_scale_lanczos_AYUV64 (const VSImage * dest, const VSImage * src,
+ uint8_t * tmpbuf, double sharpness, gboolean dither, int submethod,
+ double a, double sharpen);
void vs_image_scale_nearest_RGB (const VSImage *dest, const VSImage *src,
uint8_t *tmpbuf);
diff --git a/gst/videoscale/vs_lanczos.c b/gst/videoscale/vs_lanczos.c
index 1c87ba3..d141a01 100644
--- a/gst/videoscale/vs_lanczos.c
+++ b/gst/videoscale/vs_lanczos.c
@@ -204,6 +204,9 @@ static void vs_image_scale_lanczos_AYUV_float (const VSImage * dest,
static void vs_image_scale_lanczos_AYUV_double (const VSImage * dest,
const VSImage * src, uint8_t * tmpbuf, double sharpness, gboolean dither,
double a, double sharpen);
+static void vs_image_scale_lanczos_AYUV64_double (const VSImage * dest,
+ const VSImage * src, uint8_t * tmpbuf, double sharpness, gboolean dither,
+ double a, double sharpen);
static double
sinc (double x)
@@ -590,6 +593,15 @@ vs_image_scale_lanczos_AYUV (const VSImage * dest, const VSImage * src,
}
}
+void
+vs_image_scale_lanczos_AYUV64 (const VSImage * dest, const VSImage * src,
+ uint8_t * tmpbuf, double sharpness, gboolean dither, int submethod,
+ double a, double sharpen)
+{
+ vs_image_scale_lanczos_AYUV64_double (dest, src, tmpbuf, sharpness, dither,
+ a, sharpen);
+}
+
#define RESAMPLE_HORIZ_FLOAT(function, dest_type, tap_type, src_type, _n_taps) \
@@ -813,9 +825,9 @@ RESAMPLE_VERT_DITHER (resample_vert_dither_int16_generic, gint16, gint16,
n_taps, shift)
/* *INDENT-ON* */
-#define RESAMPLE_VERT_FLOAT(function, tap_type, src_type, _n_taps, _shift) \
+#define RESAMPLE_VERT_FLOAT(function, dest_type, clamp, tap_type, src_type, _n_taps, _shift) \
static void \
-function (guint8 *dest, \
+function (dest_type *dest, \
const tap_type *taps, const src_type *src, int stride, int n_taps, \
int shift, int n) \
{ \
@@ -828,13 +840,13 @@ function (guint8 *dest, \
const src_type *line = PTR_OFFSET(src, stride * l); \
sum_y += line[i] * taps[l]; \
} \
- dest[i] = CLAMP (floor(0.5 + sum_y), 0, 255); \
+ dest[i] = CLAMP (floor(0.5 + sum_y), 0, clamp); \
} \
}
-#define RESAMPLE_VERT_FLOAT_DITHER(function, tap_type, src_type, _n_taps, _shift) \
+#define RESAMPLE_VERT_FLOAT_DITHER(function, dest_type, clamp, tap_type, src_type, _n_taps, _shift) \
static void \
-function (guint8 *dest, \
+function (dest_type *dest, \
const tap_type *taps, const src_type *src, int stride, int n_taps, \
int shift, int n) \
{ \
@@ -849,19 +861,24 @@ function (guint8 *dest, \
sum_y += line[i] * taps[l]; \
} \
err_y += sum_y; \
- dest[i] = CLAMP (floor (err_y), 0, 255); \
+ dest[i] = CLAMP (floor (err_y), 0, clamp); \
err_y -= floor (err_y); \
} \
}
/* *INDENT-OFF* */
-RESAMPLE_VERT_FLOAT (resample_vert_double_generic, double, double, n_taps,
+RESAMPLE_VERT_FLOAT (resample_vert_double_generic, guint8, 255, double, double, n_taps,
shift)
-RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_double_generic, double, double,
+RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_double_generic, guint8, 255, double, double,
n_taps, shift)
-RESAMPLE_VERT_FLOAT (resample_vert_float_generic, float, float, n_taps, shift)
-RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_float_generic, float, float,
+RESAMPLE_VERT_FLOAT (resample_vert_double_generic_u16, guint16, 65535, double, double, n_taps,
+ shift)
+RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_double_generic_u16, guint16, 65535, double, double,
+ n_taps, shift)
+
+RESAMPLE_VERT_FLOAT (resample_vert_float_generic, guint8, 255, float, float, n_taps, shift)
+RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_float_generic, guint8, 255, float, float,
n_taps, shift)
/* *INDENT-ON* */
@@ -1556,3 +1573,77 @@ vs_image_scale_lanczos_AYUV_float (const VSImage * dest, const VSImage * src,
scale1d_cleanup (&scale->y_scale1d);
g_free (scale->tmpdata);
}
+
+static void
+vs_scale_lanczos_AYUV64_double (Scale * scale)
+{
+ int j;
+ int yi;
+ int tmp_yi;
+
+ tmp_yi = 0;
+
+ for (j = 0; j < scale->dest->height; j++) {
+ guint16 *destline;
+ double *taps;
+
+ destline = (guint16 *) (scale->dest->pixels + scale->dest->stride * j);
+
+ yi = scale->y_scale1d.offsets[j];
+
+ while (tmp_yi < yi + scale->y_scale1d.n_taps) {
+ scale->horiz_resample_func (TMP_LINE_DOUBLE_AYUV (tmp_yi),
+ scale->x_scale1d.offsets, scale->x_scale1d.taps, SRC_LINE (tmp_yi),
+ scale->x_scale1d.n_taps, 0, scale->dest->width);
+ tmp_yi++;
+ }
+
+ taps = (double *) scale->y_scale1d.taps + j * scale->y_scale1d.n_taps;
+ if (scale->dither) {
+ resample_vert_dither_double_generic_u16 (destline,
+ taps, TMP_LINE_DOUBLE_AYUV (scale->y_scale1d.offsets[j]),
+ sizeof (double) * 4 * scale->dest->width,
+ scale->y_scale1d.n_taps, 0, scale->dest->width * 4);
+ } else {
+ resample_vert_double_generic_u16 (destline,
+ taps, TMP_LINE_DOUBLE_AYUV (scale->y_scale1d.offsets[j]),
+ sizeof (double) * 4 * scale->dest->width,
+ scale->y_scale1d.n_taps, 0, scale->dest->width * 4);
+ }
+ }
+}
+
+void
+vs_image_scale_lanczos_AYUV64_double (const VSImage * dest, const VSImage * src,
+ uint8_t * tmpbuf, double sharpness, gboolean dither, double a,
+ double sharpen)
+{
+ Scale s = { 0 };
+ Scale *scale = &s;
+ int n_taps;
+
+ scale->dest = dest;
+ scale->src = src;
+
+ n_taps = scale1d_get_n_taps (src->width, dest->width, a, sharpness);
+ scale1d_calculate_taps (&scale->x_scale1d,
+ src->width, dest->width, n_taps, a, sharpness, sharpen);
+
+ n_taps = scale1d_get_n_taps (src->height, dest->height, a, sharpness);
+ scale1d_calculate_taps (&scale->y_scale1d,
+ src->height, dest->height, n_taps, a, sharpness, sharpen);
+
+ scale->dither = dither;
+
+ scale->horiz_resample_func =
+ (HorizResampleFunc) resample_horiz_double_ayuv_generic;
+
+ scale->tmpdata =
+ g_malloc (sizeof (double) * scale->dest->width * scale->src->height * 4);
+
+ vs_scale_lanczos_AYUV64_double (scale);
+
+ scale1d_cleanup (&scale->x_scale1d);
+ scale1d_cleanup (&scale->y_scale1d);
+ g_free (scale->tmpdata);
+}
--
cgit v0.9.0.2-2-gbebe
From f8dc679ca7e9542e6f410062df5e332fc8e0ba9d Mon Sep 17 00:00:00 2001
From: David Schleef <ds@schleef.org>
Date: Sun, 19 Feb 2012 08:03:03 +0000
Subject: videoscale: fix AYUV64 scaling
---
diff --git a/gst/videoscale/vs_lanczos.c b/gst/videoscale/vs_lanczos.c
index d141a01..67cd401 100644
--- a/gst/videoscale/vs_lanczos.c
+++ b/gst/videoscale/vs_lanczos.c
@@ -728,6 +728,9 @@ RESAMPLE_HORIZ_AYUV_FLOAT (resample_horiz_double_ayuv_generic, double, double,
RESAMPLE_HORIZ_AYUV_FLOAT (resample_horiz_float_ayuv_generic, float, float,
guint8, n_taps)
+RESAMPLE_HORIZ_AYUV_FLOAT (resample_horiz_double_ayuv_generic_s16, double, double,
+ guint16, n_taps)
+
RESAMPLE_HORIZ (resample_horiz_int32_int32_u8_generic, gint32, gint32,
guint8, n_taps, shift)
RESAMPLE_HORIZ (resample_horiz_int16_int16_u8_generic, gint16, gint16,
@@ -1636,7 +1639,7 @@ vs_image_scale_lanczos_AYUV64_double (const VSImage * dest, const VSImage * src,
scale->dither = dither;
scale->horiz_resample_func =
- (HorizResampleFunc) resample_horiz_double_ayuv_generic;
+ (HorizResampleFunc) resample_horiz_double_ayuv_generic_s16;
scale->tmpdata =
g_malloc (sizeof (double) * scale->dest->width * scale->src->height * 4);
--
cgit v0.9.0.2-2-gbebe
From 0cb4ccb1f09d39820682e052fc106f5fd7fa1309 Mon Sep 17 00:00:00 2001
From: Stefan Sauer <ensonic@users.sf.net>
Date: Fri, 24 Feb 2012 20:37:00 +0000
Subject: interfaces: fix ABI class padding after the recent changes
---
(limited to 'gst-libs/gst/interfaces/colorbalance.h')
diff --git a/gst-libs/gst/interfaces/colorbalance.h b/gst-libs/gst/interfaces/colorbalance.h
index fd8ceaa..9f0a1cd 100644
--- a/gst-libs/gst/interfaces/colorbalance.h
+++ b/gst-libs/gst/interfaces/colorbalance.h
@@ -102,7 +102,7 @@ struct _GstColorBalanceClass {
GstColorBalanceType (*get_balance_type) (GstColorBalance *balance);
/*< private >*/
- gpointer _gst_reserved[GST_PADDING];
+ gpointer _gst_reserved[GST_PADDING-1];
};
GType gst_color_balance_get_type (void);
--
cgit v0.9.0.2-2-gbebe
From 7f22e3ea7f713867e1fbf2ef71b6a6e36e1f0531 Mon Sep 17 00:00:00 2001
From: Jonathan Liu <net147@gmail.com>
Date: Sun, 28 Oct 2012 10:07:16 +0000
Subject: oggstream: fix crash with 0 byte ogg packets
https://bugzilla.gnome.org/show_bug.cgi?id=687030
---
diff --git a/ext/ogg/gstoggstream.c b/ext/ogg/gstoggstream.c
index c79f088..fe28f2e 100644
--- a/ext/ogg/gstoggstream.c
+++ b/ext/ogg/gstoggstream.c
@@ -790,7 +790,7 @@ setup_vorbis_mapper (GstOggStream * pad, ogg_packet * packet)
static gboolean
is_header_vorbis (GstOggStream * pad, ogg_packet * packet)
{
- if (packet->bytes > 0 && (packet->packet[0] & 0x01) == 0)
+ if (packet->bytes == 0 || (packet->packet[0] & 0x01) == 0)
return FALSE;
if (packet->packet[0] == 5) {
--
cgit v0.9.0.2-2-gbebe
--- gst-plugins-base/win32/common/libgstaudio.def.orig 2013-12-10 12:09:41.280012610 +0000
+++ gst-plugins-base/win32/common/libgstaudio.def 2013-12-10 12:10:12.253127720 +0000
@@ -24,6 +24,7 @@
gst_audio_decoder_get_plc_aware
gst_audio_decoder_get_tolerance
gst_audio_decoder_get_type