Skip to content

Commit 12b9eab

Browse files
knyipablicy183
andauthored
new packages: rife-ncnn-vulkan{,-nihui,-tntwise} (#1017)
Co-authored-by: Chongyun Lee <[email protected]>
1 parent 4411aad commit 12b9eab

File tree

5 files changed

+156
-0
lines changed

5 files changed

+156
-0
lines changed

tur/rife-ncnn-vulkan-nihui/build.sh

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
TERMUX_PKG_HOMEPAGE=https://github.com/nihui/rife-ncnn-vulkan
2+
TERMUX_PKG_DESCRIPTION="RIFE, Real-Time Intermediate Flow Estimation for Video Frame Interpolation implemented with ncnn library"
3+
TERMUX_PKG_LICENSE="MIT"
4+
TERMUX_PKG_MAINTAINER="@termux-user-repository"
5+
TERMUX_PKG_VERSION=20221029
6+
TERMUX_PKG_SRCURL=git+https://github.com/nihui/rife-ncnn-vulkan
7+
TERMUX_PKG_DEPENDS="libwebp"
8+
TERMUX_PKG_BUILD_DEPENDS="vulkan-headers, vulkan-loader-android"
9+
TERMUX_PKG_GIT_BRANCH="$TERMUX_PKG_VERSION"
10+
TERMUX_PKG_AUTO_UPDATE=true
11+
TERMUX_PKG_UPDATE_TAG_TYPE="newest-tag"
12+
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="-DUSE_SYSTEM_WEBP=ON"
13+
14+
termux_step_pre_configure() {
15+
LDFLAGS+=" -llog -landroid"
16+
17+
local _RPATH_FLAG="-Wl,-rpath=$TERMUX_PREFIX/lib"
18+
local _RPATH_FLAG_ADD="-Wl,-rpath='\$ORIGIN' -Wl,-rpath=$TERMUX_PREFIX/lib"
19+
LDFLAGS="${LDFLAGS/$_RPATH_FLAG/$_RPATH_FLAG_ADD}"
20+
21+
TERMUX_SRCDIR_SAVE=$TERMUX_PKG_SRCDIR
22+
TERMUX_PKG_SRCDIR=$TERMUX_PKG_SRCDIR/src
23+
}
24+
25+
termux_step_post_configure() {
26+
TERMUX_PKG_SRCDIR=$TERMUX_SRCDIR_SAVE
27+
unset TERMUX_SRCDIR_SAVE
28+
}
29+
30+
termux_step_make_install() {
31+
local install_prefix="$TERMUX_PREFIX/opt/$TERMUX_PKG_NAME"
32+
rm -rf "$install_prefix"
33+
mkdir -p "$install_prefix"
34+
35+
# Install binary
36+
install -Dm700 rife-ncnn-vulkan "$install_prefix"
37+
ln -sfr $install_prefix/rife-ncnn-vulkan $TERMUX_PREFIX/bin/
38+
39+
# Install the system libvulkan.so
40+
local system_lib="/system/lib"
41+
[[ "${TERMUX_ARCH_BITS}" == "64" ]] && system_lib+="64"
42+
system_lib+="/libvulkan.so"
43+
ln -sf "$system_lib" "$install_prefix/"
44+
45+
# Install models
46+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v2.3 "$install_prefix/rife-v2.3" # default value of model arg
47+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v4.6 "$install_prefix/rife-v4.6" # nihui's repo latest model
48+
local max_ver=0.0
49+
local max_lite_ver=0.0
50+
local rife_dir ver
51+
for rife_dir in $TERMUX_PKG_SRCDIR/models/rife-v*; do
52+
ver=$(basename "$rife_dir")
53+
ver=${ver##rife-v}
54+
[ "${#ver}" -eq 1 ] && ver="$ver.0"
55+
if [ "${ver: -5}" == "-lite" ] && ver="${ver::-5}"; then
56+
[ "${ver::1}" == 4 ] && [ "${ver:2}" -ge "${max_lite_ver:2}" ] && max_lite_ver="$ver"
57+
elif [ "${ver::1}" == 4 ] && [ "${ver:2}" -ge "${max_ver:2}" ]; then
58+
max_ver="$ver"
59+
fi
60+
done
61+
if [ "$max_lite_ver" != 0.0 ]; then
62+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v"${max_lite_ver%%.0}"-lite "$install_prefix/rife-v4-lite-latest"
63+
fi
64+
if [ "$max_ver" != 0.0 ]; then
65+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v"${max_ver%%.0}" "$install_prefix/rife-v4-latest"
66+
fi
67+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
TERMUX_SUBPKG_DESCRIPTION="Symlinks to bin/rife-ncnn-vulkan"
2+
TERMUX_SUBPKG_BREAKS="rife-ncnn-vulkan-is-tntwise"
3+
TERMUX_SUBPKG_CONFLICTS="rife-ncnn-vulkan-is-tntwise"
4+
TERMUX_SUBPKG_INCLUDE="
5+
bin/rife-ncnn-vulkan
6+
"

tur/rife-ncnn-vulkan-tntwise/build.sh

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
TERMUX_PKG_HOMEPAGE=https://github.com/TNTwise/rife-ncnn-vulkan
2+
TERMUX_PKG_DESCRIPTION="TNTwise's fork of rife-ncnn-vulkan: RIFE, Real-Time Intermediate Flow Estimation for Video Frame Interpolation implemented with ncnn library"
3+
TERMUX_PKG_LICENSE="MIT"
4+
TERMUX_PKG_MAINTAINER="@termux-user-repository"
5+
TERMUX_PKG_VERSION=20240515
6+
TERMUX_PKG_SRCURL=git+https://github.com/TNTwise/rife-ncnn-vulkan
7+
TERMUX_PKG_DEPENDS="libwebp"
8+
TERMUX_PKG_BUILD_DEPENDS="vulkan-headers, vulkan-loader-android"
9+
TERMUX_PKG_GIT_BRANCH="$TERMUX_PKG_VERSION"
10+
TERMUX_PKG_AUTO_UPDATE=true
11+
TERMUX_PKG_UPDATE_TAG_TYPE="newest-tag"
12+
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="-DUSE_SYSTEM_WEBP=ON"
13+
14+
termux_step_pre_configure() {
15+
LDFLAGS+=" -llog -landroid"
16+
17+
local _RPATH_FLAG="-Wl,-rpath=$TERMUX_PREFIX/lib"
18+
local _RPATH_FLAG_ADD="-Wl,-rpath='\$ORIGIN' -Wl,-rpath=$TERMUX_PREFIX/lib"
19+
LDFLAGS="${LDFLAGS/$_RPATH_FLAG/$_RPATH_FLAG_ADD}"
20+
21+
TERMUX_SRCDIR_SAVE=$TERMUX_PKG_SRCDIR
22+
TERMUX_PKG_SRCDIR=$TERMUX_PKG_SRCDIR/src
23+
}
24+
25+
termux_step_post_configure() {
26+
TERMUX_PKG_SRCDIR=$TERMUX_SRCDIR_SAVE
27+
unset TERMUX_SRCDIR_SAVE
28+
}
29+
30+
termux_step_make_install() {
31+
local install_prefix="$TERMUX_PREFIX/opt/$TERMUX_PKG_NAME"
32+
rm -rf "$install_prefix"
33+
mkdir -p "$install_prefix"
34+
35+
# Install binary
36+
install -Dm700 rife-ncnn-vulkan "$install_prefix"
37+
ln -sfr $install_prefix/rife-ncnn-vulkan $TERMUX_PREFIX/bin/
38+
39+
# Install the system libvulkan.so
40+
local system_lib="/system/lib"
41+
[[ "${TERMUX_ARCH_BITS}" == "64" ]] && system_lib+="64"
42+
system_lib+="/libvulkan.so"
43+
ln -sf "$system_lib" "$install_prefix/"
44+
45+
# Install models
46+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v2.3 "$install_prefix/rife-v2.3" # default value of model arg
47+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v4.6 "$install_prefix/rife-v4.6" # nihui's repo latest model
48+
local max_ver=0.0
49+
local max_lite_ver=0.0
50+
local rife_dir ver
51+
for rife_dir in $TERMUX_PKG_SRCDIR/models/rife-v*; do
52+
ver=$(basename "$rife_dir")
53+
ver=${ver##rife-v}
54+
[ "${#ver}" -eq 1 ] && ver="$ver.0"
55+
if [ "${ver: -5}" == "-lite" ] && ver="${ver::-5}"; then
56+
[ "${ver::1}" == 4 ] && [ "${ver:2}" -ge "${max_lite_ver:2}" ] && max_lite_ver="$ver"
57+
elif [ "${ver::1}" == 4 ] && [ "${ver:2}" -ge "${max_ver:2}" ]; then
58+
max_ver="$ver"
59+
fi
60+
done
61+
if [ "$max_lite_ver" != 0.0 ]; then
62+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v"${max_lite_ver%%.0}"-lite "$install_prefix/rife-v4-lite-latest"
63+
fi
64+
if [ "$max_ver" != 0.0 ]; then
65+
cp -r $TERMUX_PKG_SRCDIR/models/rife-v"${max_ver%%.0}" "$install_prefix/rife-v4-latest"
66+
fi
67+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
TERMUX_SUBPKG_DESCRIPTION="Symlinks to bin/rife-ncnn-vulkan"
2+
TERMUX_SUBPKG_BREAKS="rife-ncnn-vulkan-is-nihui"
3+
TERMUX_SUBPKG_CONFLICTS="rife-ncnn-vulkan-is-nihui"
4+
TERMUX_SUBPKG_INCLUDE="
5+
bin/rife-ncnn-vulkan
6+
"

tur/rife-ncnn-vulkan/build.sh

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
TERMUX_PKG_HOMEPAGE=https://github.com/nihui/rife-ncnn-vulkan
2+
TERMUX_PKG_DESCRIPTION="A metapackage that provides rife-ncnn-vulkan"
3+
TERMUX_PKG_LICENSE="MIT"
4+
TERMUX_PKG_MAINTAINER="@termux-user-repository"
5+
TERMUX_PKG_VERSION=0.1
6+
TERMUX_PKG_AUTO_UPDATE=false
7+
TERMUX_PKG_DEPENDS="rife-ncnn-vulkan-is-nihui | rife-ncnn-vulkan-is-tntwise"
8+
TERMUX_PKG_PLATFORM_INDEPENDENT=true
9+
TERMUX_PKG_SKIP_SRC_EXTRACT=true
10+
TERMUX_PKG_METAPACKAGE=true

0 commit comments

Comments
 (0)