diff --git a/builder/scripts.d/35-fontconfig.sh b/builder/scripts.d/35-fontconfig.sh index b4b083fc4..802841366 100755 --- a/builder/scripts.d/35-fontconfig.sh +++ b/builder/scripts.d/35-fontconfig.sh @@ -1,7 +1,7 @@ #!/bin/bash -SCRIPT_REPO="https://gitlab.freedesktop.org/fontconfig/fontconfig.git" -SCRIPT_COMMIT="04e45cdd5fc2223e8289aaf402717fadb536c3f1" +SCRIPT_REPO="https://chromium.googlesource.com/external/fontconfig" +SCRIPT_COMMIT="6d0a98982ec351c165c9224c8b7dbdfca3010e47" ffbuild_enabled() { return 0 diff --git a/builder/scripts.d/50-vaapi/50-libva.sh b/builder/scripts.d/50-vaapi/50-libva.sh index ed363c09b..db0d64057 100755 --- a/builder/scripts.d/50-vaapi/50-libva.sh +++ b/builder/scripts.d/50-vaapi/50-libva.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/intel/libva.git" -SCRIPT_COMMIT="add80723247b8031fb8de14d8f599923d3759242" +SCRIPT_COMMIT="710eb465c6277ee2cac3e6948767b01eebe7e77a" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/debian/patches/0096-fix-full-range-input-for-mjpeg-vaapi-encoder.patch b/debian/patches/0096-fix-full-range-input-for-mjpeg-vaapi-encoder.patch new file mode 100644 index 000000000..4fc758a88 --- /dev/null +++ b/debian/patches/0096-fix-full-range-input-for-mjpeg-vaapi-encoder.patch @@ -0,0 +1,13 @@ +Index: FFmpeg/libavcodec/vaapi_encode_mjpeg.c +=================================================================== +--- FFmpeg.orig/libavcodec/vaapi_encode_mjpeg.c ++++ FFmpeg/libavcodec/vaapi_encode_mjpeg.c +@@ -583,7 +583,7 @@ const FFCodec ff_mjpeg_vaapi_encoder = { + FF_CODEC_CAP_INIT_CLEANUP, + .defaults = vaapi_encode_mjpeg_defaults, + CODEC_PIXFMTS(AV_PIX_FMT_VAAPI), +- .color_ranges = AVCOL_RANGE_MPEG, /* FIXME: implement tagging */ ++ .color_ranges = AVCOL_RANGE_MPEG | AVCOL_RANGE_JPEG, /* Depends on driver impl */ + .hw_configs = ff_vaapi_encode_hw_configs, + .p.wrapper_name = "vaapi", + }; diff --git a/debian/patches/series b/debian/patches/series index 436d21ff5..92c44f207 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -93,3 +93,4 @@ 0093-fix-d3d11-scale-visible-source-rect.patch 0094-add-d3d11-tonemap-filter.patch 0095-add-scale-d3d11-p010-shader-fallback.patch +0096-fix-full-range-input-for-mjpeg-vaapi-encoder.patch diff --git a/docker-build-win64.sh b/docker-build-win64.sh index 3e034e102..65bceb4bd 100755 --- a/docker-build-win64.sh +++ b/docker-build-win64.sh @@ -159,13 +159,8 @@ make install popd # FONTCONFIG -mkdir fontconfig -pushd fontconfig -fc_ver="2.17.1" -fc_link="https://gitlab.freedesktop.org/api/v4/projects/890/packages/generic/fontconfig/${fc_ver}/fontconfig-${fc_ver}.tar.xz" -wget ${fc_link} -O fc.tar.xz -tar xaf fc.tar.xz -meson setup fontconfig-${fc_ver} fontconfig_build \ +git clone -b 2.17.1 --depth=1 https://chromium.googlesource.com/external/fontconfig +meson setup fontconfig fontconfig_build \ --prefix=${FF_DEPS_PREFIX} \ --cross-file=${FF_MESON_TOOLCHAIN} \ --buildtype=release \ @@ -176,7 +171,6 @@ meson setup fontconfig-${fc_ver} fontconfig_build \ -D{cache-build,doc,tests,tools}=disabled meson configure fontconfig_build ninja -j$(nproc) -C fontconfig_build install -popd # HARFBUZZ git clone -b 14.2.1 --depth=1 https://github.com/harfbuzz/harfbuzz.git diff --git a/docker-build.sh b/docker-build.sh index 38148b0b9..50d269a71 100755 --- a/docker-build.sh +++ b/docker-build.sh @@ -108,13 +108,8 @@ prepare_extra_common() { # FONTCONFIG pushd ${SOURCE_DIR} - mkdir fontconfig - pushd fontconfig - fc_ver="2.17.1" - fc_link="https://gitlab.freedesktop.org/api/v4/projects/890/packages/generic/fontconfig/${fc_ver}/fontconfig-${fc_ver}.tar.xz" - wget ${fc_link} -O fc.tar.xz - tar xaf fc.tar.xz - meson setup fontconfig-${fc_ver} fontconfig_build \ + git clone -b 2.17.1 --depth=1 https://chromium.googlesource.com/external/fontconfig + meson setup fontconfig fontconfig_build \ ${MESON_CROSS_OPT} \ --prefix=${TARGET_DIR} \ --sysconfdir=/etc \ @@ -131,7 +126,6 @@ prepare_extra_common() { cp -a ${TARGET_DIR}/lib/libfontconfig.so* ${SOURCE_DIR}/fontconfig echo "fontconfig/libfontconfig.so* usr/lib/jellyfin-ffmpeg/lib" >> ${DPKG_INSTALL_LIST} popd - popd # HARFBUZZ pushd ${SOURCE_DIR} @@ -352,7 +346,7 @@ prepare_extra_amd64() { # LIBVA pushd ${SOURCE_DIR} - git clone -b 2.24.0 --depth=1 https://github.com/intel/libva.git + git clone -b 2.24.1 --depth=1 https://github.com/intel/libva.git pushd libva sed -i 's|secure_getenv("LIBVA_DRIVERS_PATH")|"/usr/lib/jellyfin-ffmpeg/lib/dri:/usr/lib/x86_64-linux-gnu/dri:/usr/lib/dri:/usr/local/lib/dri"|g' va/va.c sed -i 's|secure_getenv("LIBVA_DRIVER_NAME")|secure_getenv("LIBVA_DRIVER_NAME_JELLYFIN")|g' va/va.c @@ -369,7 +363,7 @@ prepare_extra_amd64() { # LIBVA-UTILS pushd ${SOURCE_DIR} - git clone -b 2.23.0 --depth=1 https://github.com/intel/libva-utils.git + git clone -b 2.24.0 --depth=1 https://github.com/intel/libva-utils.git pushd libva-utils ./autogen.sh ./configure --prefix=${TARGET_DIR} @@ -587,6 +581,9 @@ prepare_extra_amd64() { # Fix setting VPE rotation with horizontal flip enabled wget -q -O - https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42408.patch | \ sed 's#/mm/#/#g' | patch -p1 -d mesa-${mesa_ver} + # Fix setting chroma swizzle mode in VK Video on GFX9 + wget -q -O - https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42763.patch | \ + patch -p1 -d mesa-${mesa_ver} meson setup mesa-${mesa_ver} mesa_build \ --prefix=${TARGET_DIR} \ --libdir=lib \ diff --git a/msys2/PKGBUILD/10-mingw-w64-zlib/09-Add-dependencies-to-ints-h-in-minizip-makefile-am.patch b/msys2/PKGBUILD/10-mingw-w64-zlib/09-Add-dependencies-to-ints-h-in-minizip-makefile-am.patch new file mode 100644 index 000000000..3da9f1eb2 --- /dev/null +++ b/msys2/PKGBUILD/10-mingw-w64-zlib/09-Add-dependencies-to-ints-h-in-minizip-makefile-am.patch @@ -0,0 +1,22 @@ +From cb14dc9ade3759352417a300e6c2ed73268f1d97 Mon Sep 17 00:00:00 2001 +From: Rui Chen +Date: Tue, 17 Feb 2026 10:48:39 -0500 +Subject: [PATCH] Add dependency to ints.h in minizip Makefile.am. + +So that ints.h is part of the installation. +--- + contrib/minizip/Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/contrib/minizip/Makefile.am b/contrib/minizip/Makefile.am +index d343011ebc..b7dea4f7e7 100644 +--- a/contrib/minizip/Makefile.am ++++ b/contrib/minizip/Makefile.am +@@ -27,6 +27,7 @@ libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0 -lz + minizip_includedir = $(includedir)/minizip + minizip_include_HEADERS = \ + crypt.h \ ++ ints.h \ + ioapi.h \ + mztools.h \ + unzip.h \ diff --git a/msys2/PKGBUILD/10-mingw-w64-zlib/PKGBUILD b/msys2/PKGBUILD/10-mingw-w64-zlib/PKGBUILD index 3d39ba250..83b3ad5d6 100644 --- a/msys2/PKGBUILD/10-mingw-w64-zlib/PKGBUILD +++ b/msys2/PKGBUILD/10-mingw-w64-zlib/PKGBUILD @@ -26,7 +26,7 @@ source=("https://github.com/madler/zlib/releases/download/v${pkgver}/zlib-${pkgv 04-fix-largefile-support.patch 07-Add-no-undefined-to-link-to-enable-build-shared-vers.patch 08-Add-bzip2-library-to-pkg-config-file.patch - https://patch-diff.githubusercontent.com/raw/madler/zlib/pull/1165.patch) + 09-Add-dependencies-to-ints-h-in-minizip-makefile-am.patch) sha256sums=('d7a0654783a4da529d1bb793b7ad9c3318020af77667bcae35f95d0e42a792f3' 'SKIP' 'b58b353d976d6fdd9a5094e60fa39439d4f14e9bf8be4a8bd475f2cd47f10226' @@ -34,7 +34,7 @@ sha256sums=('d7a0654783a4da529d1bb793b7ad9c3318020af77667bcae35f95d0e42a792f3' '8e1cdf8edfc6ac08b0e660ca42a977942a88fab3ff59c01c87ba96500e2c3e63' 'fb83292f494f649ea7f1835aa4abea61acc593d7f90625741d42cd99cac0e075' '0be98a7e660e7c068856f08b9e92d6c73a6b0d88c3e29a9716140b147f7c23c5' - '0774e1368851504115f732f66230ca4a8a9cd60d4ba014502f65cc19b0b4d8bc') + '0fdfd7ed5ce4825a66729853c72f2662b6c2e7be1df138d930a478ea772f7226') validpgpkeys=('5ED46A6721D365587791E2AA783FCD8E58BCAFBA') export FF_MINGW_PREFIX="${MINGW_PREFIX}/ffbuild" @@ -53,7 +53,7 @@ prepare() { 01-zlib-1.2.11-1-buildsys.mingw.patch \ 03-dont-put-sodir-into-L.mingw.patch \ 04-fix-largefile-support.patch \ - 1165.patch + 09-Add-dependencies-to-ints-h-in-minizip-makefile-am.patch cd ${srcdir}/${_realname}-${pkgver}/contrib/minizip apply_patch_with_msg \ diff --git a/msys2/PKGBUILD/30-mingw-w64-fontconfig/PKGBUILD b/msys2/PKGBUILD/30-mingw-w64-fontconfig/PKGBUILD index 203d38bd2..d7c5ef112 100644 --- a/msys2/PKGBUILD/30-mingw-w64-fontconfig/PKGBUILD +++ b/msys2/PKGBUILD/30-mingw-w64-fontconfig/PKGBUILD @@ -22,16 +22,16 @@ depends=("${MINGW_PACKAGE_PREFIX}-cc-libs" "${MINGW_PACKAGE_PREFIX}-jellyfin-libiconv") options=('staticlibs' 'strip') install=${_realname}-${MSYSTEM}.install -source=("https://gitlab.freedesktop.org/fontconfig/fontconfig/-/archive/${pkgver}/fontconfig-${pkgver}.tar.gz" +source=("${_realname}"::"git+https://chromium.googlesource.com/external/${_realname}#tag=${pkgver}" 0011-conf-copy-instead-of-symlink.patch) -sha256sums=('82e73b26adad651b236e5f5d4b3074daf8ff0910188808496326bd3449e5261d' +sha256sums=('SKIP' '73ed74a1f4624466084d219e2fbc0d5780da9f63763f1307629251e58cccf2cd') export MINGW_TOOLCHAIN_PREFIX="${MINGW_PREFIX}" export FF_MINGW_PREFIX="${MINGW_TOOLCHAIN_PREFIX}/ffbuild" prepare() { - cd "${_realname}-${pkgver}" + cd "${srcdir}/${_realname}" patch -p1 -i ${srcdir}/0011-conf-copy-instead-of-symlink.patch } @@ -54,7 +54,7 @@ build() { -Ddoc-pdf=disabled \ -Ddoc-html=disabled \ -Dcache-build=disabled \ - ../"${_realname}-${pkgver}" + "../${_realname}" meson compile } @@ -63,7 +63,7 @@ package() { cd "${srcdir}/build-${MSYSTEM}-static" DESTDIR="${pkgdir}" meson install - install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING" "${pkgdir}${FF_MINGW_PREFIX}/share/licenses/${_realname}/COPYING" + install -Dm644 "${srcdir}/${_realname}/COPYING" "${pkgdir}${FF_MINGW_PREFIX}/share/licenses/${_realname}/COPYING" # Also install libintl lib cp "${MINGW_TOOLCHAIN_PREFIX}"/lib/libintl.a "${pkgdir}${FF_MINGW_PREFIX}/lib/"