diff options
author | root <root@rshg047.dnsready.net> | 2011-06-20 23:03:55 +0000 |
---|---|---|
committer | root <root@rshg047.dnsready.net> | 2011-06-20 23:03:55 +0000 |
commit | f02c28de0bbcb85e152fc19d0008805021fe1a33 (patch) | |
tree | 0cb0a135fbbb06d2e31fe64ff2caad474dcc3813 /testing/avidemux | |
parent | 5457eacc747fc3f91e10a1f452230b1feac39eff (diff) |
Mon Jun 20 23:03:54 UTC 2011
Diffstat (limited to 'testing/avidemux')
-rw-r--r-- | testing/avidemux/PKGBUILD | 121 | ||||
-rw-r--r-- | testing/avidemux/avidemux-2.5.4-x264-build115.patch | 45 | ||||
-rw-r--r-- | testing/avidemux/avidemux.install | 11 |
3 files changed, 177 insertions, 0 deletions
diff --git a/testing/avidemux/PKGBUILD b/testing/avidemux/PKGBUILD new file mode 100644 index 000000000..9fd24d47b --- /dev/null +++ b/testing/avidemux/PKGBUILD @@ -0,0 +1,121 @@ +# $Id: PKGBUILD 127810 2011-06-18 16:08:40Z ibiru $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> + +pkgbase=avidemux +pkgname=('avidemux-cli' 'avidemux-gtk' 'avidemux-qt') +pkgver=2.5.5 +pkgrel=2 +arch=('i686' 'x86_64') +license=('GPL') +url="http://fixounet.free.fr/avidemux/" +makedepends=('cmake' 'libxslt' 'gtk2' 'qt' 'jack' 'esound' 'libvorbis' 'sdl' 'libxv' \ + 'alsa-lib' 'lame' 'xvidcore' 'faad2' 'faac' 'x264' 'libsamplerate' \ + 'opencore-amr' 'yasm' 'mesa' 'libvpx' 'libpulse') +source=(http://downloads.sourceforge.net/avidemux/avidemux_${pkgver}.tar.gz + avidemux-2.5.4-x264-build115.patch) +md5sums=('33bbe210c6826cea1987ed18a41d57a7' + '24a18b53a58b678b9e87d30566985751') + +build() { + cd "${srcdir}/${pkgbase}_${pkgver}" + + patch -Np1 -i "${srcdir}/avidemux-2.5.4-x264-build115.patch" + + mkdir build + cd build + cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -D CMAKE_SKIP_RPATH=ON -D GTK=1 -D QT4=1 .. + make + +# plugin build expects libraries to be already installed; we fake a prefix +# in build/ by symlinking all libraries to build/lib/ + mkdir -p lib + cd lib + find ../avidemux -name '*.so*' | xargs ln -sft . + cd ../../plugins + mkdir build + cd build + cmake -D CMAKE_INSTALL_PREFIX=/usr -D AVIDEMUX_SOURCE_DIR=${srcdir}/avidemux_${pkgver} \ + -D AVIDEMUX_CORECONFIG_DIR=${srcdir}/avidemux_${pkgver}/build/config \ + -D AVIDEMUX_INSTALL_PREFIX=${srcdir}/avidemux_${pkgver}/build \ + -D CMAKE_BUILD_TYPE=Release -D CMAKE_SKIP_RPATH=ON .. + make +} + +package_avidemux-cli() { + pkgdesc="A graphical tool to edit video (filter/re-encode/split)" + depends=('libxml2' 'sdl' 'fontconfig' 'libvpx') + optdepends=('lame: for the corresponding audio encoder plugin' + 'faac: for the corresponding audio encoder plugin' + 'faad2: for the corresponding audio decoder plugin' + 'opencore-amr: for the corresponding audio decoder plugin' + 'esound: for the corresponding audio device plugin' + 'jack: for the corresponding audio device plugin' + 'libpulse: for the corresponding audio device plugin' + 'sdl: for the corresponding audio device plugin' + 'x264: for the corresponding video encoder plugin' + 'xvidcore: for the corresponding video encoder plugin') + provides=('avidemux') + conflicts=('avidemux') + replaces=('avidemux') + + cd "${srcdir}/${pkgbase}_${pkgver}/build" + make DESTDIR="${pkgdir}" install + + cd "${srcdir}/${pkgbase}_${pkgver}/plugins/build" + make DESTDIR="${pkgdir}" install + rm -r "${pkgdir}"/usr/share/avidemux + rm "${pkgdir}"/usr/bin/avidemux2_{gtk,qt4} + rm "${pkgdir}"/usr/lib/*{_gtk,_qt4,Gtk,QT4}.so + rm "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/x264/*{Gtk,Qt}.so + rm "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/xvid/*{Gtk,Qt}.so + rm "${pkgdir}"/usr/lib/ADM_plugins/videoFilter/*{_gtk,_qt4}.so + + ln -s /usr/lib/ADM_plugins/videoEncoder/libADM_vidEnc_xvid.so "${pkgdir}/usr/lib/libADM_vidEnc_xvid.so" + ln -s /usr/lib/ADM_plugins/videoEncoder/libADM_vidEnc_x264.so "${pkgdir}/usr/lib/libADM_vidEnc_x264.so" + + install -D -m644 ../../avidemux_icon.png "${pkgdir}/usr/share/pixmaps/avidemux.png" + install -D -m644 ../../man/avidemux.1 "${pkgdir}/usr/share/man/man1/avidemux.1" +} + +package_avidemux-gtk() { + pkgdesc="A graphical tool to edit video (filter/re-encode/split) - GTK GUI" + depends=("avidemux-cli=${pkgver}" 'gtk2' 'libxv' 'desktop-file-utils') + install=avidemux.install + + cd "${srcdir}/${pkgbase}_${pkgver}" + install -D -m755 build/avidemux/avidemux2_gtk "${pkgdir}/usr/bin/avidemux2_gtk" + + install -d "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/{x264,xvid} + install -d "${pkgdir}"/usr/lib/ADM_plugins/videoFilter + + install -D -m755 build/lib/*{_gtk,Gtk}.so "${pkgdir}/usr/lib" + install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_x264/gtk/*Gtk.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/x264" + install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_xvid/gtk/*Gtk.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/xvid" + install -D -m755 plugins/build/ADM_videoFilters/*/*_gtk.so "${pkgdir}/usr/lib/ADM_plugins/videoFilter" + + install -D -m644 avidemux2-gtk.desktop "${pkgdir}/usr/share/applications/avidemux-gtk.desktop" + sed -i "s|\[\$e\]||" "${pkgdir}/usr/share/applications/avidemux-gtk.desktop" +} + +package_avidemux-qt() { + pkgdesc="A graphical tool to edit video (filter/re-encode/split) - QT GUI" + depends=("avidemux-cli=${pkgver}" 'qt' 'desktop-file-utils') + install=avidemux.install + + cd "${srcdir}/${pkgbase}_${pkgver}" + install -D -m755 build/avidemux/avidemux2_qt4 "${pkgdir}/usr/bin/avidemux2_qt4" + install -d "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/{x264,xvid} + install -d "${pkgdir}"/usr/lib/ADM_plugins/videoFilter + + install -D -m755 build/lib/*{_qt4,QT4}.so "${pkgdir}/usr/lib" + install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_x264/qt4/*Qt.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/x264" + install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_xvid/qt4/*Qt.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/xvid" + install -D -m755 plugins/build/ADM_videoFilters/*/*_qt4.so "${pkgdir}/usr/lib/ADM_plugins/videoFilter" + + install -d "${pkgdir}/usr/share/avidemux/i18n" + install -D -m644 build/po/*.qm "${pkgdir}/usr/share/avidemux/i18n" + + install -D -m644 avidemux2.desktop "${pkgdir}/usr/share/applications/avidemux-qt.desktop" + sed -i 's/Name=avidemux2/Name=avidemux (QT)/' "${pkgdir}/usr/share/applications/avidemux-qt.desktop" + sed -i 's/avidemux2_gtk/avidemux2_qt4/' "${pkgdir}/usr/share/applications/avidemux-qt.desktop" +} diff --git a/testing/avidemux/avidemux-2.5.4-x264-build115.patch b/testing/avidemux/avidemux-2.5.4-x264-build115.patch new file mode 100644 index 000000000..c627667ec --- /dev/null +++ b/testing/avidemux/avidemux-2.5.4-x264-build115.patch @@ -0,0 +1,45 @@ +diff -ru avidemux_2.5.4.orig/plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp avidemux_2.5.4/plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp +--- avidemux_2.5.4.orig/plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp 2011-04-28 22:35:36.000000000 +0200 ++++ avidemux_2.5.4/plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp 2011-04-28 22:40:26.000000000 +0200 +@@ -488,8 +488,10 @@ + printf("[x264] analyse.b_transform_8x8 = %d\n", x264Param->analyse.b_transform_8x8);
+ printf("[x264] analyse.inter = %d\n", x264Param->analyse.inter);
+ printf("[x264] b_cabac = %d\n", x264Param->b_cabac);
+-#if X264_BUILD > 101
++#if X264_BUILD > 101 && X264_BUILD < 115
+ printf("[x264] i_open_gop = %d\n", x264Param->i_open_gop);
++#elif X264_BUILD > 114
++ printf("[x264] b_open_gop = %d\n", x264Param->b_open_gop);
+ #endif
+ printf("[x264] b_interlaced = %d\n", x264Param->b_interlaced);
+ #if X264_BUILD > 88
+diff -ru avidemux_2.5.4.orig/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp avidemux_2.5.4/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp +--- avidemux_2.5.4.orig/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp 2011-04-28 22:35:36.000000000 +0200 ++++ avidemux_2.5.4/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp 2011-04-28 22:43:36.000000000 +0200 +@@ -417,7 +417,7 @@ + _param.b_cabac = cabac;
+ }
+
+-#if X264_BUILD > 101
++#if X264_BUILD > 101 && X264_BUILD < 115
+ unsigned int x264Options::getOpenGopMode(void)
+ {
+ return _param.i_open_gop;
+@@ -428,6 +428,17 @@ + if (openGopMode < 3)
+ _param.i_open_gop = openGopMode;
+ }
++#elif X264_BUILD > 114
++unsigned int x264Options::getOpenGopMode(void)
++{
++ return _param.b_open_gop;
++}
++
++void x264Options::setOpenGopMode(unsigned int openGopMode)
++{
++ if (openGopMode < 3)
++ _param.b_open_gop = openGopMode;
++}
+ #endif
+
+ unsigned int x264Options::getInterlaced(void)
diff --git a/testing/avidemux/avidemux.install b/testing/avidemux/avidemux.install new file mode 100644 index 000000000..e111ef946 --- /dev/null +++ b/testing/avidemux/avidemux.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} |