Hi!
I would like to maintaining the avidemux, add qt and plugin support. I
rewrite the FrugalBuild, it's working.
Please, somebody check it. Thanks.
# Compiling Time: 1.04 SBU
# Maintainer: kikadf <[email protected]>
pkgname=avidemux-cli
pkgver=2.5.5
pkgrel=1
pkgdesc="A tool to edit video (filter/re-encode/split)"
depends=('a52dec>=0.7.4-2' 'sdl' 'lame' 'faac' 'libxml2>=2.7.8' 'xvidcore'
'faad2>=2.7' \
'mjpegtools>=1.8.0-2' 'libvorbis' 'libogg' 'libmad' 'spidermonkey'
'x264>=20100715')
makedepends=('yasm')
groups=('apps-extra')
options=('scriptlet')
archs=('i686' 'x86_64')
_F_sourceforge_sep="_"
_F_sourceforge_name="avidemux"
_F_sourceforge_dirname="avidemux"
Finclude cmake sourceforge
_F_cd_path="${_F_sourceforge_name}_${pkgver}"
source=($source $_F_sourceforge_name-x264-plugin.patch)
Faddsubpkg "avidemux-gtk" "$pkgdesc with gtk gui." "libquicktime>=1.1.5-4"
"$pkgname=$pkgver" \
"avidemux" "" "" "" "" "" "" "" "gnome-extra avidemux"
Faddsubpkg "avidemux-qt" "$pkgdesc with qt gui." "qt4-linguist"
"$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "kde-extra"
Faddsubpkg "avidemux-audiodecoders-plugin" "Avidemux audiodecoders plugin." ""
"$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "lib-extra avidemux-plugin-cli
avidemux-plugin-gtk avidemux-plugin-qt"
Faddsubpkg "avidemux-audiodevices-plugin" "Avidemux audiodevices plugin." ""
"$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "lib-extra avidemux-plugin-cli
avidemux-plugin-gtk avidemux-plugin-qt"
Faddsubpkg "avidemux-auidoencoders-plugin" "Avidemux audioencoders plugin." ""
"$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "lib-extra avidemux-plugin-cli
avidemux-plugin-gtk avidemux-plugin-qt"
Faddsubpkg "avidemux-videoencoders-plugin" "Avidemux videoencoders plugin." ""
"$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "lib-extra avidemux-plugin-cli
avidemux-plugin-gtk avidemux-plugin-qt"
Faddsubpkg "avidemux-videoencoders-plugin-qt" "Avidemux videoencoders
plugin.(Qt)" "" "avidemux-videoencoders-plugin=$pkgver avidemux-qt=$pkgver" \
"" "" "" "" "" "" "" "" "xlib-extra avidemux-plugin-qt"
Faddsubpkg "avidemux-videoencoders-plugin-gtk" "Avidemux videoencoders
plugin.(Gtk)" "" "avidemux-videoencoders-plugin=$pkgver avidemux-gtk=$pkgver" \
"" "" "" "" "" "" "" "" "xlib-extra avidemux-plugin-gtk"
Faddsubpkg "avidemux-videofilters-plugin" "Avidemux videofilter plugin." ""
"$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "lib-extra avidemux-plugin-cli
avidemux-plugin-gtk avidemux-plugin-qt"
Faddsubpkg "avidemux-videofilters-plugin-cli" "Avidemux videofilter
plugin.(Cli)" "" "$pkgname=$pkgver" \
"" "" "" "" "" "" "" "" "lib-extra avidemux-plugin-cli"
Faddsubpkg "avidemux-videofilters-plugin-gtk" "Avidemux videofilter
plugin.(Gtk)" "" "avidemux-gtk=$pkgver" \
"" "" "" "" "" "" "" "" "xlib-extra avidemux-plugin-gtk"
Faddsubpkg "avidemux-videofilters-plugin-qt" "Avidemux videofilter plugin.(Qt)"
"" "avidemux-qt=$pkgver" \
"" "" "" "" "" "" "" "" "xlib-extra avidemux-plugin-qt"
sha1sums=('bb4271390f2fad4eaf212b620622a11c084f0dd9' \
'fd34a3c71b6d7588ac697040c6f9daaa4ade63ab')
unset MAKEFLAGS
build() {
#Build avidemux
CMake_build -DGTK=1 -DQT4=1
Fmkdir usr/share/applications/
Finstall 644 $_F_cd_path/avidemux2-gtk.desktop
usr/share/applications/avidemux-gtk.desktop
Finstall 644 $_F_cd_path/avidemux2-gtk.desktop
usr/share/applications/avidemux-qt.desktop
Fexec sed -i -e s/gtk/qt4/g
$Fdestdir/usr/share/applications/avidemux-qt.desktop
Fexec sed -i -e s/GTK+/QT4/g
$Fdestdir/usr/share/applications/avidemux-qt.desktop
Fexec sed -i -e s/GTK/QT4/g
$Fdestdir/usr/share/applications/avidemux-qt.desktop
#Build avidemux plugins
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_coreUI/src/libADM_coreUI.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_coreUI.so
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_coreImage/src/libADM_coreImage.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_coreImage.so
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_UIs/ADM_CLI/src/libADM_UICli.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_UICli.so
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_UIs/ADM_GTK/src/libADM_UIGtk.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_UIGtk.so
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_UIs/ADM_QT4/src/libADM_UIQT4.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_UIQT4.so
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_userInterfaces/ADM_render/libADM_render_gtk.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_render_gtk.so
Fexec ln -s
$Fsrcdir/$_F_cd_path/build/avidemux/ADM_userInterfaces/ADM_render/libADM_render_qt4.so
$Fsrcdir/$_F_cd_path/build/lib/libADM_render_qt4.so
Fexec cd $Fsrcdir
Fexec mkdir -p $_F_cd_path/plugins/build
Fcd $_F_cd_path/plugins/build
CMake_conf
-DAVIDEMUX_SOURCE_DIR=$Fsrcdir/${_F_sourceforge_name}_${pkgver} \
-DAVIDEMUX_CORECONFIG_DIR=$Fsrcdir/${_F_sourceforge_name}_${pkgver}/build/config
\
-DAVIDEMUX_INSTALL_PREFIX=$Fsrcdir/${_F_sourceforge_name}_${pkgver}/build
make || Fdie
CMake_install
# avidemux-gtk
Fsplit avidemux-gtk "/usr/bin/avidemux2_gtk" \
"/usr/lib/*tk.so" \
"/usr/share/applications/avidemux-gtk.desktop"
# avidemux-qt
Fsplit avidemux-qt "/usr/bin/avidemux2_qt4" \
"/usr/lib/*4.so" \
"/usr/share/applications/avidemux-qt.desktop" \
"/usr/share/avidemux/i18n/qt*"
# avidemux-audiodecoders-plugin
Fsplit avidemux-audiodecoders-plugin
"/usr/lib/ADM_plugins/audioDecoder/*"
# avidemux-audiodevices-plugin
Fsplit avidemux-audiodevices-plugin
"/usr/lib/ADM_plugins/audioDevices/*"
# avidemux-audioencoders-plugin
Fsplit avidemux-auidoencoders-plugin
"/usr/lib/ADM_plugins/audioEncoders/*"
# avidemux-videoencoders-plugin
Fsplit avidemux-videoencoders-plugin
"/usr/lib/ADM_plugins/videoEncoder/avcodec/*" \
"/usr/lib/ADM_plugins/videoEncoder/mpeg2enc/*" \
"/usr/lib/ADM_plugins/videoEncoder/x264/*.xsd" \
"/usr/lib/ADM_plugins/videoEncoder/xvid/*.xsd" \
"/usr/lib/ADM_plugins/videoEncoder/*.so"
mv $Fdestdir/usr/lib/ADM_plugins/videoEncoder/x264/*.xml
$startdir/pkg.avidemux-videoencoders-plugin/usr/lib/ADM_plugins/videoEncoder/x264/
|| Fdie
# avidemux-videoencoders-plugin-qt
Fsplit avidemux-videoencoders-plugin-qt
"/usr/lib/ADM_plugins/videoEncoder/x264/*Qt.so" \
"/usr/lib/ADM_plugins/videoEncoder/xvid/*Qt.so"
# avidemux-videoencoders-plugin-gtk
Fsplit avidemux-videoencoders-plugin-gtk
"/usr/lib/ADM_plugins/videoEncoder/x264/*Gtk.so" \
"/usr/lib/ADM_plugins/videoEncoder/xvid/*Gtk.so"
# avidemux-videofilters-plugin
Fsplit avidemux-videofilters-plugin
"/usr/lib/ADM_plugins/videoFilter/*s.so" \
"/usr/lib/ADM_plugins/videoFilter/*r.so" \
"/usr/lib/ADM_plugins/videoFilter/*b.so" \
"/usr/lib/ADM_plugins/videoFilter/*l.so" \
"/usr/lib/ADM_plugins/videoFilter/*e.so" \
"/usr/lib/ADM_plugins/videoFilter/*a.so" \
"/usr/lib/ADM_plugins/videoFilter/*q.so" \
"/usr/lib/ADM_plugins/videoFilter/*d.so" \
"/usr/lib/ADM_plugins/videoFilter/*t.so" \
"/usr/lib/ADM_plugins/videoFilter/*n.so" \
"/usr/lib/ADM_plugins/videoFilter/*h.so" \
"/usr/lib/ADM_plugins/videoFilter/*P.so" \
"/usr/lib/ADM_plugins/videoFilter/*o.so" \
"/usr/lib/ADM_plugins/videoFilter/*y.so" \
"/usr/lib/ADM_plugins/videoFilter/*c.so" \
"/usr/lib/ADM_plugins/videoFilter/*v.so" \
"/usr/lib/ADM_plugins/videoFilter/*p.so" \
"/usr/lib/ADM_plugins/videoFilter/*f.so" \
"/usr/lib/ADM_plugins/videoFilter/*U.so" \
"/usr/lib/ADM_plugins/videoFilter/*V.so"
# avidemux-videofilters-plugin-cli
Fsplit avidemux-videofilters-plugin-cli
"/usr/lib/ADM_plugins/videoFilter/*cli.so"
# avidemux-videofilters-plugin-qt
Fsplit avidemux-videofilters-plugin-qt
"/usr/lib/ADM_plugins/videoFilter/*qt4.so"
# avidemux-videofilters-plugin-gtk
Fsplit avidemux-videofilters-plugin-gtk
"/usr/lib/ADM_plugins/videoFilter/*gtk.so"
# clean avidemux-cli
Frm /usr/lib/ADM_plugins
Frm /usr/share/applications
}
# optimization OK
diff -Naur avidemux_2.5.5//plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp
avidemux_2.5.5.new//plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp
--- avidemux_2.5.5//plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp
2010-10-03 18:54:51.000000000 +0200
+++ avidemux_2.5.5.new//plugins/ADM_videoEncoder/ADM_vidEnc_x264/encoder.cpp
2011-06-29 14:51:17.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 -Naur
avidemux_2.5.5//plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp
avidemux_2.5.5.new//plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp
--- avidemux_2.5.5//plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp
2010-12-31 22:23:09.000000000 +0100
+++
avidemux_2.5.5.new//plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp
2011-06-29 14:54:59.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)
_______________________________________________
Frugalware-devel mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-devel