# Copyright 2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{12..14} ) inherit python-single-r1 git-r3 unpacker # Default bundled models MODEL_URIS=" https://github.com/AmusementClub/vs-mlrt/releases/download/model-20211209/waifu2x_v3.7z https://github.com/AmusementClub/vs-mlrt/releases/download/model-20211209/RealESRGANv3_v1.7z https://github.com/AmusementClub/vs-mlrt/releases/download/model-20211209/RealESRGANv2_v1.7z https://github.com/AmusementClub/vs-mlrt/releases/download/model-20211209/dpir_v3.7z https://github.com/AmusementClub/vs-mlrt/releases/download/model-20211209/cugan_v2.7z https://github.com/AmusementClub/vs-mlrt/releases/download/model-20211209/cugan-pro_v3.7z https://github.com/AmusementClub/vs-mlrt/releases/download/model-20220923/rife_v8.7z " # Rife external models (4.11 to 4.26) RIFE_MODEL_URIS=" https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.11.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.12.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.13.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.14.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.15.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.17.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.18.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.19.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.20.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.21.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.22.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.23.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.24.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.25.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.26.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.12_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.13_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.14_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.15_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.16_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.17_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.22_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.25_lite.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.25_heavy.7z https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/rife_v4.26_heavy.7z " DESCRIPTION="Efficient CPU/GPU/Vulkan ML Runtimes for VapourSynth" HOMEPAGE="https://github.com/AmusementClub/vs-mlrt" EGIT_REPO_URI="https://github.com/AmusementClub/vs-mlrt.git" SRC_URI=" models? ( ${MODEL_URIS} ) model-waifu2x-swin-unet? ( https://github.com/AmusementClub/vs-mlrt/releases/download/external-models/waifu2x_swin_unet_v5.7z ) model-rife? ( ${RIFE_MODEL_URIS} ) " if ver_test -eq 9999; then KEYWORDS="" else EGIT_COMMIT="v${PV}" KEYWORDS="~amd64" fi LICENSE="MIT" SLOT="0" # Only the NCNN backend for now. # ONNX, TensorRT, and OpenVINO backends may be added later. IUSE="+ncnn +models model-rife model-waifu2x-swin-unet" REQUIRED_USE="${PYTHON_REQUIRED_USE}" BDEPEND=" app-arch/7zip " RDEPEND+=" ${PYTHON_DEPS} media-libs/vapoursynth[${PYTHON_SINGLE_USEDEP}] ncnn? ( ~media-plugins/vapoursynth-mlrt-ncnn-${PV} ) " DEPEND="${RDEPEND}" src_unpack() { git-r3_src_unpack mkdir "${S}/models" pushd "${S}/models" unpacker_src_unpack popd } src_install() { python_domodule scripts/vsmlrt.py insinto /usr/$(get_libdir)/vapoursynth/ doins -r models }