diff options
Diffstat (limited to 'community/gpac')
-rw-r--r-- | community/gpac/PKGBUILD | 53 | ||||
-rw-r--r-- | community/gpac/gpac-ffmpeg.patch | 37 |
2 files changed, 90 insertions, 0 deletions
diff --git a/community/gpac/PKGBUILD b/community/gpac/PKGBUILD new file mode 100644 index 000000000..b3ac37c1a --- /dev/null +++ b/community/gpac/PKGBUILD @@ -0,0 +1,53 @@ +# $Id: PKGBUILD 94884 2013-08-01 06:54:59Z bpiotrowski $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> + +pkgname=gpac +pkgver=4288 +pkgrel=3 +pkgdesc="A multimedia framework based on the MPEG-4 Systems standard" +arch=('i686' 'x86_64') +url="http://gpac.sourceforge.net" +license=('LGPL') +depends=('ffmpeg' 'libjpeg' 'libpng' 'glu' 'libxv') +makedepends=('jack' 'a52dec' 'freetype2' 'faad2' 'libmad' 'mesa') +optdepends=('jack: for jack support' 'a52dec: for A52 support' + 'faad2: for AAC support' 'libmad: for mp3 support') +options=('!makeflags') +source=(ftp://ftp.archlinux.org/other/community/${pkgname}/${pkgname}-${pkgver}.tar.xz{,.sig} gpac-ffmpeg.patch) +sha1sums=('6ba29de672b6e4260e510e0e16d5bc0ab09cabb6' + 'SKIP' + '63f59ab745c57bf7d242e942e30a4e6c7a1236b0') + +# source PKGBUILD && mksource +mksource() { + [[ -x /usr/bin/svn ]] || (echo "svn not found. Install subversion." && return 1) + _svnver=${pkgver} + _svntrunk="svn://svn.code.sf.net/p/gpac/code/trunk/gpac" + _svnmod="$pkgname-${pkgver}" + mkdir ${pkgname}-${pkgver} + pushd ${pkgname}-${pkgver} + svn co $_svntrunk --config-dir ./ -r $_svnver $_svnmod + revision="$(svnversion ${pkgname}-${pkgver})" + echo "#define GPAC_SVN_REVISION \"$revision\"" > ${pkgname}-${pkgver}/include/gpac/revision.h + find . -depth -type d -name .svn -exec rm -rf {} \; + tar -cJf ../${pkgname}-${pkgver}.tar.xz ${pkgname}-${pkgver}/* + popd + rm -r ${pkgname}-${pkgver} + gpg --detach-sign --use-agent -u ${GPGKEY} ${pkgname}-${pkgver}.tar.xz +} + +prepare() { + cd ${pkgname}-${pkgver} + patch -p0 -i "${srcdir}/gpac-ffmpeg.patch" +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr --mandir=/usr/share/man --X11-path=/usr --use-js=no + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install install-lib +} diff --git a/community/gpac/gpac-ffmpeg.patch b/community/gpac/gpac-ffmpeg.patch new file mode 100644 index 000000000..035d7b65c --- /dev/null +++ b/community/gpac/gpac-ffmpeg.patch @@ -0,0 +1,37 @@ +--- modules/ffmpeg_in/ffmpeg_decode.c 2013-03-11 21:43:22.000000000 -0400 ++++ modules/ffmpeg_in/ffmpeg_decode.c 2013-07-11 23:38:15.108181474 -0400 +@@ -38,7 +38,9 @@ + #undef USE_AVCODEC2 + #endif + +-#if (LIBAVCODEC_VERSION_MAJOR >= 54) && (LIBAVCODEC_VERSION_MINOR >= 35) ++#if (LIBAVCODEC_VERSION_MAJOR >= 55) ++#define USE_AVCTX3 ++#elif (LIBAVCODEC_VERSION_MAJOR >= 54) && (LIBAVCODEC_VERSION_MINOR >= 35) + #define USE_AVCTX3 + #endif + +@@ -625,10 +628,11 @@ + if (ffd->frame_start>inBufferLength) ffd->frame_start = 0; + + redecode: +- gotpic = AVCODEC_MAX_AUDIO_FRAME_SIZE; + #ifdef USE_AVCODEC2 ++ gotpic = 192000; + len = avcodec_decode_audio3(ctx, (short *)ffd->audio_buf, &gotpic, &pkt); + #else ++ gotpic = AVCODEC_MAX_AUDIO_FRAME_SIZE; + len = avcodec_decode_audio2(ctx, (short *)ffd->audio_buf, &gotpic, inBuffer + ffd->frame_start, inBufferLength - ffd->frame_start); + #endif + if (len<0) { ffd->frame_start = 0; return GF_NON_COMPLIANT_BITSTREAM; } +--- modules/ffmpeg_in/ffmpeg_in.h 2013-03-11 21:43:22.000000000 -0400 ++++ modules/ffmpeg_in/ffmpeg_in.h 2013-07-11 23:38:15.108181474 -0400 +@@ -120,7 +120,7 @@ + + /*for audio packed frames*/ + u32 frame_start; +- char audio_buf[AVCODEC_MAX_AUDIO_FRAME_SIZE]; ++ char audio_buf[192000]; + Bool check_h264_isma; + + u32 base_ES_ID; |