summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authornyanmisaka2022-03-05 14:43:44 +0800
committernyanmisaka2022-03-05 14:43:44 +0800
commit30db140292e86ba2535507ecb86b6669e745ea1a (patch)
treece6eff74e8ed2358a9ef8fad90f88da54ffb9c21 /PKGBUILD
downloadaur-30db140292e86ba2535507ecb86b6669e745ea1a.tar.gz
initial commit of jellyfin-ffmpeg
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD112
1 files changed, 112 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..1cc3c0e1d713
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,112 @@
+# Maintainer : nyanmisaka <nst799610810@gmail.com>
+
+pkgname=jellyfin-ffmpeg
+pkgver=4.4.1
+pkgrel=2
+pkgdesc='FFmpeg for Jellyfin'
+arch=('x86_64')
+url='https://github.com/jellyfin/jellyfin-ffmpeg'
+license=('GPL3')
+depends=(
+ 'bzip2'
+ 'fontconfig'
+ 'fribidi'
+ 'gmp'
+ 'gnutls'
+ 'lame'
+ 'libass.so'
+ 'libbluray.so'
+ 'libdav1d.so'
+ 'libdrm'
+ 'libfreetype.so'
+ 'libmfx'
+ 'libtheora'
+ 'libva.so'
+ 'libva-drm.so'
+ 'libva-x11.so'
+ 'libvdpau'
+ 'libvorbisenc.so'
+ 'libvorbis.so'
+ 'libvpx.so'
+ 'libwebp'
+ 'libx11'
+ 'libx264.so'
+ 'libx265.so'
+ 'libxext'
+ 'libxml2'
+ 'libzimg.so'
+ 'ocl-icd'
+ 'opus'
+ 'srt'
+ 'xz'
+ 'zlib'
+)
+makedepends=('git' 'nasm' 'clang' 'ffnvcodec-headers' 'amf-headers-git' 'opencl-headers')
+optdepends=('intel-media-sdk: for Intel Quick Sync Video'
+ 'intel-compute-runtime: for Intel OpenCL runtime based Tonemapping'
+ 'nvidia-utils: for Nvidia NVDEC/NVENC support')
+source=("git+https://github.com/jellyfin/jellyfin-ffmpeg.git#tag=v${pkgver}-${pkgrel}")
+sha256sums=('SKIP')
+
+prepare() {
+ cd ${srcdir}/jellyfin-ffmpeg
+ git reset --hard v${pkgver}-${pkgrel} && git clean -qfdx
+ cat debian/patches/*.patch | patch -Nsp1 -d .
+}
+
+build() {
+ cd jellyfin-ffmpeg
+
+ printf '%s\n' ' -> Running jellyfin-ffmpeg configure script...'
+
+ ./configure \
+ --prefix="/usr/lib/jellyfin-ffmpeg" \
+ --target-os=linux \
+ --extra-version=Jellyfin \
+ --disable-doc \
+ --disable-ffplay \
+ --disable-shared \
+ --disable-libxcb \
+ --disable-sdl2 \
+ --disable-xlib \
+ --enable-lto \
+ --enable-gpl \
+ --enable-version3 \
+ --enable-static \
+ --enable-gmp \
+ --enable-gnutls \
+ --enable-libfontconfig \
+ --enable-libass \
+ --enable-libbluray \
+ --enable-libdrm \
+ --enable-libfreetype \
+ --enable-libfribidi \
+ --enable-libmp3lame \
+ --enable-libopus \
+ --enable-libtheora \
+ --enable-libvorbis \
+ --enable-libdav1d \
+ --enable-libwebp \
+ --enable-libvpx \
+ --enable-libx264 \
+ --enable-libx265 \
+ --enable-libzvbi \
+ --enable-libzimg \
+ --enable-opencl \
+ --enable-vaapi \
+ --enable-amf \
+ --enable-libmfx \
+ --enable-cuda \
+ --enable-cuda-llvm \
+ --enable-cuvid \
+ --enable-nvenc \
+ --enable-nvdec \
+ --enable-ffnvcodec
+
+ make -j$(nproc)
+}
+
+package() {
+ install -Dm 755 jellyfin-ffmpeg/ffmpeg ${pkgdir}/usr/lib/jellyfin-ffmpeg/ffmpeg
+ install -Dm 755 jellyfin-ffmpeg/ffprobe ${pkgdir}/usr/lib/jellyfin-ffmpeg/ffprobe
+} \ No newline at end of file