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

Reply via email to