diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
commit | 415856bdd4f48ab4f2732996f0bae58595092bbe (patch) | |
tree | ede2018b591f6dfb477fe9341ba17b9bc000fab9 /extra/mjpegtools |
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'extra/mjpegtools')
-rw-r--r-- | extra/mjpegtools/PKGBUILD | 40 | ||||
-rw-r--r-- | extra/mjpegtools/mjpegtools-1.9.0-glibc-2.10.patch | 11 | ||||
-rw-r--r-- | extra/mjpegtools/mjpegtools-1.9.0-jpeg-7.patch | 24 | ||||
-rw-r--r-- | extra/mjpegtools/mjpegtools.install | 16 | ||||
-rw-r--r-- | extra/mjpegtools/png2yuv-fix-memleak.patch | 10 |
5 files changed, 101 insertions, 0 deletions
diff --git a/extra/mjpegtools/PKGBUILD b/extra/mjpegtools/PKGBUILD new file mode 100644 index 000000000..9daf1a2fc --- /dev/null +++ b/extra/mjpegtools/PKGBUILD @@ -0,0 +1,40 @@ +# $Id: PKGBUILD 84755 2010-07-04 03:32:01Z eric $ +# Contributor: Damir Perisa <damir.perisa@bluewin.ch> +# Mantainer: Roberto Carvajal <roberto@archlinux.org> + +pkgname=mjpegtools +pkgver=1.9.0 +pkgrel=4 +pkgdesc="Set of tools that can do recording of videos and playback, simple cut-and-paste editing and the MPEG compression of audio and video" +arch=(i686 x86_64) +license=('GPL') +url="http://mjpeg.sourceforge.net/" +depends=('libjpeg>=8' 'libpng>=1.4.0' 'sdl' 'gcc-libs' 'libdv') +makedepends=('gtk2>=2.18.6') +optdepends=('gtk2: glav GUI') +options=('!makeflags' '!libtool') +install=mjpegtools.install +source=(http://downloads.sourceforge.net/sourceforge/mjpeg/${pkgname}-${pkgver}.tar.gz + mjpegtools-1.9.0-glibc-2.10.patch + png2yuv-fix-memleak.patch + mjpegtools-1.9.0-jpeg-7.patch) +md5sums=('309a6fcf0900a010d6a9c1e91afc2f5c' 'b8ae66237d83be533db8eea166fd3357'\ + '39e1def8fb0f7c58a217b22dc251a86a' 'ccc7562a3933877d3362da7cf4695ea0') +sha1sums=('1701233354c7ea86b5b7808c4dd5d03a71118e48' '3029f0e835e693b144298ed9f8143c9566be26f3'\ + '8af5c3747756353bef56d03bafbdd086ff15c02c' '2bdb1b3b8591cede11d4a133a758e8ead35db4dd') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i -e '/ARCHFLAGS=/s:=.*:=:' configure + patch -Np1 -i "$srcdir/mjpegtools-1.9.0-glibc-2.10.patch" + patch -Np1 -i "${srcdir}/png2yuv-fix-memleak.patch" + patch -Np0 -i "${srcdir}/mjpegtools-1.9.0-jpeg-7.patch" + ./configure --prefix=/usr --enable-largefile + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -m644 mpeg2enc/mpeg2syntaxcodes.h "${pkgdir}/usr/include/mjpegtools/mpeg2enc/" +} diff --git a/extra/mjpegtools/mjpegtools-1.9.0-glibc-2.10.patch b/extra/mjpegtools/mjpegtools-1.9.0-glibc-2.10.patch new file mode 100644 index 000000000..e16156046 --- /dev/null +++ b/extra/mjpegtools/mjpegtools-1.9.0-glibc-2.10.patch @@ -0,0 +1,11 @@ +--- mjpegtools-1.9.0/mplex/lpcmstrm_in.cpp.orig 2009-05-27 01:31:46.000000000 -0700 ++++ mjpegtools-1.9.0/mplex/lpcmstrm_in.cpp 2009-05-27 01:33:09.000000000 -0700 +@@ -53,7 +53,7 @@ + + bool LPCMStream::Probe(IBitStream &bs ) + { +- char *last_dot = strrchr( bs.StreamName(), '.' ); ++ const char *last_dot = strrchr( bs.StreamName(), '.' ); + return + last_dot != NULL + && strcmp( last_dot+1, "lpcm") == 0; diff --git a/extra/mjpegtools/mjpegtools-1.9.0-jpeg-7.patch b/extra/mjpegtools/mjpegtools-1.9.0-jpeg-7.patch new file mode 100644 index 000000000..ec3673186 --- /dev/null +++ b/extra/mjpegtools/mjpegtools-1.9.0-jpeg-7.patch @@ -0,0 +1,24 @@ +Fix segmentation fault with jpeg-7 and above where dinfo.do_fancy_upsampling isn't set by default to FALSE anymore. + +Patch by: Salah Coronya + +http://bugs.gentoo.org/show_bug.cgi?id=293919 + +--- lavtools/jpegutils.c ++++ lavtools/jpegutils.c +@@ -502,6 +502,7 @@ + + jpeg_read_header (&dinfo, TRUE); + dinfo.raw_data_out = TRUE; ++ dinfo.do_fancy_upsampling = FALSE; + dinfo.out_color_space = JCS_YCbCr; + dinfo.dct_method = JDCT_IFAST; + guarantee_huff_tables(&dinfo); +@@ -599,6 +600,7 @@ + if (field > 0) { + jpeg_read_header (&dinfo, TRUE); + dinfo.raw_data_out = TRUE; ++ dinfo.do_fancy_upsampling = FALSE; + dinfo.out_color_space = JCS_YCbCr; + dinfo.dct_method = JDCT_IFAST; + jpeg_start_decompress (&dinfo); diff --git a/extra/mjpegtools/mjpegtools.install b/extra/mjpegtools/mjpegtools.install new file mode 100644 index 000000000..1ef7d6fd3 --- /dev/null +++ b/extra/mjpegtools/mjpegtools.install @@ -0,0 +1,16 @@ +infodir=/usr/share/info +file=mjpeg-howto.info + +post_install() { + [ -x usr/bin/install-info ] || return 0 + install-info $infodir/$file.gz $infodir/dir 2> /dev/null +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null +} diff --git a/extra/mjpegtools/png2yuv-fix-memleak.patch b/extra/mjpegtools/png2yuv-fix-memleak.patch new file mode 100644 index 000000000..a6f03a4e1 --- /dev/null +++ b/extra/mjpegtools/png2yuv-fix-memleak.patch @@ -0,0 +1,10 @@ +--- mjpegtools-1.9.0/lavtools/png2yuv.c.orig 2010-01-17 14:26:24.000000000 +0100 ++++ mjpegtools-1.9.0/lavtools/png2yuv.c 2010-01-17 14:27:53.000000000 +0100 +@@ -407,6 +407,7 @@ + return 2; + } + ++ png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); + fclose(pngfile); + + return 1; |