Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Multimedia
Kdenlive
Commits
62c5aa6b
Commit
62c5aa6b
authored
Sep 19, 2020
by
Jean-Baptiste Mardelle
Browse files
Update AppImage scripts for FFmpeg hw accel
parent
7e8a90ae
Pipeline
#34831
passed with stage
in 9 minutes and 47 seconds
Changes
8
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
packaging/appimage/3rdparty/CMakeLists.txt
View file @
62c5aa6b
...
...
@@ -96,11 +96,14 @@ add_subdirectory( ext_fftw3 )
add_subdirectory
(
ext_fftw3f
)
add_subdirectory
(
ext_sdl2
)
add_subdirectory
(
ext_sox
)
add_subdirectory
(
ext_jack
)
add_subdirectory
(
ext_jack
)
add_subdirectory
(
ext_ladspa
)
add_subdirectory
(
ext_x264
)
add_subdirectory
(
ext_x265
)
add_subdirectory
(
ext_libvpx
)
add_subdirectory
(
ext_nv-codec-headers
)
add_subdirectory
(
ext_amf
)
add_subdirectory
(
ext_mfx
)
add_subdirectory
(
ext_ffmpeg
)
add_subdirectory
(
ext_cairo
)
add_subdirectory
(
ext_pango
)
...
...
packaging/appimage/3rdparty/ext_amf/CMakeLists.txt
0 → 100644
View file @
62c5aa6b
ExternalProject_Add
(
ext_amf
DOWNLOAD_DIR
${
EXT_DOWNLOAD_DIR
}
GIT_REPOSITORY https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git
GIT_TAG master
CONFIGURE_COMMAND rm -rf <SOURCE_DIR>/Thirdparty
BUILD_ALWAYS TRUE
BUILD_IN_SOURCE 1
BUILD_COMMAND mkdir -p
${
EXT_INSTALL_DIR
}
/include/AMF
INSTALL_COMMAND cp -av <SOURCE_DIR>/amf/public/include/.
${
EXT_INSTALL_DIR
}
/include/AMF
)
packaging/appimage/3rdparty/ext_ffmpeg/CMakeLists.txt
View file @
62c5aa6b
...
...
@@ -7,7 +7,7 @@ ExternalProject_Add(
UPDATE_COMMAND git checkout debian/7%4.3-3
# PATCH_COMMAND rm <SOURCE_DIR>/tests/ref/fate/sub-scc
GIT_TAG debian/master
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=
${
EXT_INSTALL_DIR
}
--extra-ldflags=
"-L
${
EXT_INSTALL_DIR
}
/lib -lstdc++ -lm -lrt -ldl"
--extra-cflags=
"-I$EXT_INSTALL_DIR/include"
--enable-shared --enable-avfilter --enable-gpl --enable-avresample --enable-libx265 --enable-libvpx --enable-libx264 --disable-doc --enable-libmp3lame --enable-libopus --enable-libvorbis
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=
${
EXT_INSTALL_DIR
}
--extra-ldflags=
"-L
${
EXT_INSTALL_DIR
}
/lib -lstdc++ -lm -lrt -ldl"
--extra-cflags=
"-I$EXT_INSTALL_DIR/include"
--enable-shared --enable-avfilter --enable-gpl --enable-avresample --enable-libx265 --enable-libvpx --enable-libx264 --disable-doc --enable-libmp3lame --enable-libopus --enable-libvorbis
--enable-nvenc --enable-libmfx --enable-vaapi
BUILD_ALWAYS TRUE
BUILD_IN_SOURCE 1
BUILD_COMMAND $
(
MAKE
)
clean
...
...
packaging/appimage/3rdparty/ext_frameworks/CMakeLists.txt
View file @
62c5aa6b
...
...
@@ -195,11 +195,11 @@ function(InstallKF5Component
endfunction
()
if
(
MINGW
)
set
(
KF5_VERSION 5.7
1
)
# we have Qt 5.14.2 available.
set
(
KF5_VERSION 5.7
4
)
# we have Qt 5.14.2 available.
elseif
(
APPLE
)
set
(
KF5_VERSION 5.7
1
)
# we have Qt 5.14.1 available.
set
(
KF5_VERSION 5.7
4
)
# we have Qt 5.14.1 available.
else
()
set
(
KF5_VERSION 5.7
1
)
# we have Qt 5.14.2 available.
set
(
KF5_VERSION 5.7
4
)
# we have Qt 5.14.2 available.
endif
()
if
(
APPLE
)
...
...
@@ -244,20 +244,21 @@ InstallKF5Component(attica ${KF5_VERSION} ""
InstallKF5Component
(
kio
${
KF5_VERSION
}
""
""
)
InstallKF5Component
(
frameworkintegration
${
KF5_VERSION
}
""
""
)
InstallKF5Component
(
qqc2-desktop-style
${
KF5_VERSION
}
""
""
)
InstallKF5Component
(
plasma-framework
${
KF5_VERSION
}
""
""
)
ExternalProject_Add
(
ext_kdecoration
DOWNLOAD_DIR
${
EXT_DOWNLOAD_DIR
}
URL http://download.kde.org/stable/plasma/5.1
8.3
/kdecoration-5.1
8.3
.tar.xz
URL_MD5
150da856a2dab8e28f76011638f23869
URL http://download.kde.org/stable/plasma/5.1
9.5
/kdecoration-5.1
9.5
.tar.xz
URL_MD5
3cc5be057c571dc20775ac52a6af2908
CMAKE_ARGS
${
CMAKE_GLOBAL_PROFILE
}
)
ExternalProject_Add
(
ext_breeze
DOWNLOAD_DIR
${
EXT_DOWNLOAD_DIR
}
URL http://download.kde.org/stable/plasma/5.1
8.3
/breeze-5.1
8.3
.tar.xz
URL_MD5
09018228efdfc18be6cc11092290b183
URL http://download.kde.org/stable/plasma/5.1
9.5
/breeze-5.1
9.5
.tar.xz
URL_MD5
f664f181d10c4cbbe4b385068c75539a
CMAKE_ARGS
${
CMAKE_GLOBAL_PROFILE
}
DEPENDS ext_kdecoration
)
...
...
packaging/appimage/3rdparty/ext_mfx/CMakeLists.txt
0 → 100644
View file @
62c5aa6b
ExternalProject_Add
(
ext_mfx
DOWNLOAD_DIR
${
EXT_DOWNLOAD_DIR
}
GIT_REPOSITORY git://github.com/lu-zero/mfx_dispatch.git
GIT_TAG master
CONFIGURE_COMMAND autoreconf -fiv
COMMAND ./configure --prefix=
${
EXT_INSTALL_DIR
}
BUILD_ALWAYS TRUE
BUILD_IN_SOURCE 1
BUILD_COMMAND $
(
MAKE
)
INSTALL_COMMAND $
(
MAKE
)
install
)
packaging/appimage/3rdparty/ext_nv-codec-headers/CMakeLists.txt
0 → 100644
View file @
62c5aa6b
ExternalProject_Add
(
ext_nv-codec-headers
DOWNLOAD_DIR
${
EXT_DOWNLOAD_DIR
}
GIT_REPOSITORY git://github.com/FFmpeg/nv-codec-headers.git
GIT_TAG master
CONFIGURE_COMMAND sed -i s,/usr/local,
${
EXT_INSTALL_DIR
}
, <SOURCE_DIR>/Makefile
BUILD_ALWAYS TRUE
BUILD_IN_SOURCE 1
BUILD_COMMAND $
(
MAKE
)
INSTALL_COMMAND $
(
MAKE
)
install
)
packaging/appimage/build-dependencies.sh
View file @
62c5aa6b
...
...
@@ -6,18 +6,25 @@ set -e
# Be verbose
set
-x
# Make sure the base dependencies are installed
#apt-get -y install build-essential perl python git '^libxcb.*-dev' libx11-xcb-dev \
# libglu1-mesa-dev libxrender-dev libxi-dev flex bison gperf libicu-dev ruby
#apt-get -y install cmake3 wget tar bzip2 xz-utils libtool libfile-which-perl automake gcc-4.8 patch \
# g++-4.8 zlib1g-dev libglib2.0-dev libc6-dev libeigen3-dev libssl-dev \
# libcppunit-dev libstdc++-4.8-dev libfreetype6-dev libfontconfig1-dev liblcms2-dev \
# mesa-common-dev libaio-dev lzma liblzma-dev\
# libpulse-dev libsox-dev liblist-moreutils-perl libxml-parser-perl \
# libjack-dev autopoint language-pack-en-base
#apt-get update && apt-get install -y apt-transport-https ca-certificates gnupg software-properties-common wget
#wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add -
#add-apt-repository -y ppa:openjdk-r/ppa && apt-add-repository 'deb https://apt.kitware.com/ubuntu/ xenial main'
## Update the system and bring in our core operating requirements
#apt-get update && apt-get upgrade -y && apt-get install -y openssh-server openjdk-8-jre-headless
## Some software demands a newer GCC because they're using C++14 stuff, which is just insane
## We do this after the general system update to ensure it doesn't bring in any unnecessary updates
#add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update
## Now install the general dependencies we need for builds
#apt-get install -y build-essential cmake git-core locales automake gcc-6 g++-6 libxml-parser-perl libpq-dev libaio-dev bison gettext gperf libasound2-dev libatkmm-1.6-dev libbz2-dev libcairo-perl libcap-dev libcups2-dev libdbus-1-dev libdrm-dev libegl1-mesa-dev libfontconfig1-dev libfreetype6-dev libgcrypt11-dev libgl1-mesa-dev libglib-perl libgsl0-dev libgsl0-dev gstreamer1.0-alsa libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk2-perl libjpeg-dev libnss3-dev libpci-dev libpng12-dev libpulse-dev libssl-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly libtiff5-dev libudev-dev libwebp-dev flex libmysqlclient-dev libx11-dev libxkbcommon-x11-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-util0-dev libxcb-res0-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxext-dev libxfixes-dev libxi-dev libxrandr-dev libxrender-dev libxss-dev libxtst-dev mesa-common-dev liblist-moreutils-perl libtool libpixman-1-dev subversion
#apt-get -y install libpixman-1-dev docbook-xml docbook-xsl libattr1-dev
## Required for vaapi gpu encoding
#apt-get -y install libva-dev
# Read in our parameters
export
BUILD_PREFIX
=
$1
export
KDENLIVE_SOURCES
=
$2
...
...
@@ -109,13 +116,16 @@ cmake --build . --target ext_x265 -j$CPU_CORES
export
CC
=
/usr/bin/gcc
export
CXX
=
/usr/bin/g++
#
cmake --build . --target ext_libvpx -j$CPU_CORES
cmake
--build
.
--target
ext_libvpx
-j
$CPU_CORES
export
CC
=
/usr/bin/gcc-6
export
CXX
=
/usr/bin/g++-6
cmake
--build
.
--target
ext_opus
-j
$CPU_CORES
cmake
--build
.
--target
ext_nv-codec-headers
-j
$CPU_CORES
cmake
--build
.
--target
ext_amf
-j
$CPU_CORES
cmake
--build
.
--target
ext_mfx
-j
$CPU_CORES
cmake
--build
.
--target
ext_ffmpeg
-j
$CPU_CORES
cmake
--build
.
--target
ext_sox
-j
$CPU_CORES
cmake
--build
.
--target
ext_jack
-j
$CPU_CORES
...
...
@@ -134,9 +144,9 @@ export CC=/usr/bin/gcc-6
export
CXX
=
/usr/bin/g++-6
#cmake --build . --target ext_movit
cmake
--build
.
--target
ext_frameworks
##cmake --build . --target ext_movit
cmake
--build
.
--target
ext_frameworks
cmake
--build
.
--config
RelWithDebInfo
--target
ext_extra-cmake-modules
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_kconfig
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_breeze-icons
--
-j
$CPU_CORES
...
...
@@ -168,13 +178,12 @@ cmake --build . --config RelWithDebInfo --target ext_kio -- -j$C
cmake
--build
.
--config
RelWithDebInfo
--target
ext_knotifyconfig
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_kpackage
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_knewstuff
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_knotifications
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_kdeclarative
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_kservice
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_kimageformats
--
-j
$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_knotifications
--
-j
$CPU_CORES
#cmake --build . --config RelWithDebInfo --target ext_frameworkintegration -- -j$CPU_CORES
cmake
--build
.
--config
RelWithDebInfo
--target
ext_frameworkintegration
--
-j
$CPU_CORES
cmake
--build
.
--target
ext_breeze
#cmake --build . --target ext_kwayland
#cmake --build . --target ext_plasma-framework
#cmake --build . --target ext_ruby
packaging/appimage/build-image.sh
View file @
62c5aa6b
...
...
@@ -16,6 +16,7 @@ export APPIMAGEPLUGINS=$APPDIR/usr/plugins/
mkdir
-p
$APPDIR
mkdir
-p
$APPDIR
/usr/share/kdenlive
mkdir
-p
$APPDIR
/usr/lib
mkdir
-p
$APPDIR
/usr/lib/va
mkdir
-p
$PLUGINS
mkdir
-p
$APPDIR
/usr/plugins
...
...
@@ -43,11 +44,11 @@ cd $BUILD_PREFIX
# Step 1: Copy over all the resources provided by dependencies that we need
cp
-r
$DEPS_INSTALL_PREFIX
/share/kf5
$APPDIR
/usr/share
cp
-r
$DEPS_INSTALL_PREFIX
/share/kstyle
$APPDIR
/usr/share
cp
-r
$DEPS_INSTALL_PREFIX
/share/plasma
$APPDIR
/usr/share
#
cp -r $DEPS_INSTALL_PREFIX/share/kstyle $APPDIR/usr/share
#
cp -r $DEPS_INSTALL_PREFIX/share/plasma $APPDIR/usr/share
cp
-r
$DEPS_INSTALL_PREFIX
/share/alsa
$APPDIR
/usr/share
cp
-r
$DEPS_INSTALL_PREFIX
/share/kservices5
$APPDIR
/usr/share
cp
-r
$DEPS_INSTALL_PREFIX
/share/qt5
$APPDIR
/usr/share
#
cp -r $DEPS_INSTALL_PREFIX/share/qt5 $APPDIR/usr/share
cp
-r
$DEPS_INSTALL_PREFIX
/share/mime
$APPDIR
/usr/share
if
[
-d
$DEPS_INSTALL_PREFIX
/share/color-schemes
]
;
then
...
...
@@ -73,15 +74,19 @@ cp -r $DEPS_INSTALL_PREFIX/bin/ffmpeg $APPDIR/usr/bin
cp
-r
$DEPS_INSTALL_PREFIX
/bin/ffplay
$APPDIR
/usr/bin
cp
-r
$DEPS_INSTALL_PREFIX
/bin/ffprobe
$APPDIR
/usr/bin
cp
-r
$DEPS_INSTALL_PREFIX
/plugins/kf5
$APPIMAGEPLUGINS
cp
-r
$DEPS_INSTALL_PREFIX
/plugins/styles
$APPIMAGEPLUGINS
#
cp -r $DEPS_INSTALL_PREFIX/plugins/styles $APPIMAGEPLUGINS
cp
-r
$DEPS_INSTALL_PREFIX
/plugins/audio
$APPIMAGEPLUGINS
cp
-r
$DEPS_INSTALL_PREFIX
/plugins/org.kde.kdecoration2
$APPIMAGEPLUGINS
cp
-r
$DEPS_INSTALL_PREFIX
/plugins/kstyle_breeze_config.so
$APPIMAGEPLUGINS
#
cp -r $DEPS_INSTALL_PREFIX/plugins/org.kde.kdecoration2 $APPIMAGEPLUGINS
#
cp -r $DEPS_INSTALL_PREFIX/plugins/kstyle_breeze_config.so $APPIMAGEPLUGINS
mkdir
-p
$APPDIR
/usr/libexec
cp
-r
$DEPS_INSTALL_PREFIX
/lib/x86_64-linux-gnu/libexec/kf5/
*
$APPDIR
/usr/libexec/
#libva accel
cp
-r
/usr/lib/x86_64-linux-gnu/libva
*
$APPDIR
/usr/lib
cp
-r
/usr/lib/x86_64-linux-gnu/dri/
*
_drv_video.so
$APPDIR
/usr/lib/va
cp
$(
ldconfig
-p
|
grep
libGL.so.1 |
cut
-d
">"
-f
2 | xargs
)
$APPDIR
/usr/lib/
#cp $(ldconfig -p | grep libGLU.so.1 | cut -d ">" -f 2 | xargs) $APPDIR/usr/lib/
...
...
@@ -101,22 +106,32 @@ for lib in $APPIMAGEPLUGINS/audio/*.so*; do
patchelf
--set-rpath
'$ORIGIN/../../lib'
$lib
;
done
for
lib
in
$APPIMAGEPLUGINS
/styles/
*
.so
*
;
do
patchelf
--set-rpath
'$ORIGIN/../../lib'
$lib
;
done
#
for lib in $APPIMAGEPLUGINS/styles/*.so*; do
#
patchelf --set-rpath '$ORIGIN/../../lib' $lib;
#
done
for
lib
in
$APPIMAGEPLUGINS
/kf5/
*
.so
*
;
do
patchelf
--set-rpath
'$ORIGIN/../../lib'
$lib
;
done
for
lib
in
$APPIMAGEPLUGINS
/org.kde.kdecoration2/
*
.so
*
;
do
patchelf
--set-rpath
'$ORIGIN/../../lib'
$lib
;
done
#
for lib in $APPIMAGEPLUGINS/org.kde.kdecoration2/*.so*; do
#
patchelf --set-rpath '$ORIGIN/../../lib' $lib;
#
done
for
lib
in
$APPDIR
/usr/lib/mlt/
*
.so
*
;
do
patchelf
--set-rpath
'$ORIGIN/..'
$lib
;
done
for
lib
in
$APPDIR
/usr/lib/libva
*
.so
*
;
do
patchelf
--set-rpath
'$ORIGIN'
$lib
;
done
for
lib
in
$APPDIR
/usr/lib/va/
*
.so
*
;
do
patchelf
--set-rpath
'$ORIGIN/..'
$lib
;
done
### GSTREAMER
# Requires gstreamer1.0-plugins-good
GST_PLUGIN_SRC_DIR
=
/usr/lib/x86_64-linux-gnu/
...
...
@@ -153,9 +168,13 @@ cp $APPDIR/usr/share/icons/breeze/apps/48/kdenlive.svg $APPDIR
#linuxdeployqt $APPDIR/usr/bin/ffplay
#linuxdeployqt $APPDIR/usr/bin/ffprobe
#linuxdeployqt $APPDIR/usr/bin/melt
#linuxdeployqt -executable $APPDIR/usr/lib/va/*.so
linuxdeployqt
$APPDIR
/usr/share/applications/org.kde.kdenlive.desktop
\
-executable
=
$APPDIR
/usr/bin/kdenlive
\
-executable
=
$APPDIR
/usr/lib/libva.so
\
-executable
=
$APPDIR
/usr/lib/libva-drm.so
\
-executable
=
$APPDIR
/usr/lib/libva-x11.so
\
-qmldir
=
$DEPS_INSTALL_PREFIX
/qml
\
-verbose
=
2
\
-bundle-non-qt-libs
\
...
...
@@ -194,6 +213,7 @@ export MLT_REPOSITORY=\$DIR/usr/lib/mlt/
export MLT_DATA=
\$
DIR/usr/share/mlt/
export MLT_ROOT_DIR=
\$
DIR/usr/
export LADSPA_PATH=
\$
DIR/usr/lib/ladspa
export LIBVA_DRIVERS_PATH=
\$
DIR/usr/lib/va
export FREI0R_PATH=
\$
DIR/usr/lib/frei0r-1
export MLT_PROFILES_PATH=
\$
DIR/usr/share/mlt/profiles/
export MLT_PRESETS_PATH=
\$
DIR/usr/share/mlt/presets/
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment