diff options
Diffstat (limited to 'multimedia')
24 files changed, 244 insertions, 103 deletions
diff --git a/multimedia/avidemux-plugins/Makefile b/multimedia/avidemux-plugins/Makefile index eccfa477b049..858954569537 100644 --- a/multimedia/avidemux-plugins/Makefile +++ b/multimedia/avidemux-plugins/Makefile @@ -1,9 +1,13 @@ PORTNAME= avidemux PORTVERSION= ${AVIDEMUX_VERSION} -PORTREVISION= 8 +PORTREVISION= 9 CATEGORIES= multimedia PKGNAMESUFFIX= -plugins +PATCH_SITES= https://github.com/mean00/avidemux2/commit/ +# Fix build with x265 4.1 +PATCHFILES+= c16d32a67cdb012db093472ad3776713939a30d1.patch:-p1 + MAINTAINER= multimedia@FreeBSD.org COMMENT= Simple GUI based video editor (Plugins) diff --git a/multimedia/avidemux/Makefile b/multimedia/avidemux/Makefile index d65b91bb2d13..408e1aec3a68 100644 --- a/multimedia/avidemux/Makefile +++ b/multimedia/avidemux/Makefile @@ -4,7 +4,7 @@ PORTNAME= avidemux PORTVERSION= ${AVIDEMUX_VERSION} -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= multimedia MAINTAINER= multimedia@FreeBSD.org diff --git a/multimedia/avidemux/distinfo b/multimedia/avidemux/distinfo index e23a7a110ec2..c976b5d55934 100644 --- a/multimedia/avidemux/distinfo +++ b/multimedia/avidemux/distinfo @@ -1,3 +1,5 @@ -TIMESTAMP = 1670229875 +TIMESTAMP = 1763860000 SHA256 (avidemux_2.8.1.tar.gz) = 77d9bdca8683ce57c192b69d207cfab7cf92a7759ce0f63fa37b5c8e42ad3da2 SIZE (avidemux_2.8.1.tar.gz) = 26126065 +SHA256 (c16d32a67cdb012db093472ad3776713939a30d1.patch) = dba781a0f72d964cf5a0fca1acd66ad27adc1ed69d039f19233ca178a62666bb +SIZE (c16d32a67cdb012db093472ad3776713939a30d1.patch) = 2246 diff --git a/multimedia/emby-server/Makefile b/multimedia/emby-server/Makefile index 00a614f68850..58ed8fbf4284 100644 --- a/multimedia/emby-server/Makefile +++ b/multimedia/emby-server/Makefile @@ -1,6 +1,6 @@ PORTNAME= emby-server DISTVERSION= 4.8.11.0 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= multimedia MASTER_SITES= https://github.com/MediaBrowser/Emby.Releases/releases/download/${DISTVERSION}/ \ https://mediabrowser.github.io/embytools/ diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index f7c5d80adeac..390556926dbb 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -1,6 +1,6 @@ PORTNAME= ffmpeg PORTVERSION= 6.1.2 -PORTREVISION= 16 +PORTREVISION= 17 PORTEPOCH= 1 CATEGORIES= multimedia audio net MASTER_SITES= https://ffmpeg.org/releases/ diff --git a/multimedia/ffmpeg4/Makefile b/multimedia/ffmpeg4/Makefile index 8d04fcbec5c4..725edf3edc2f 100644 --- a/multimedia/ffmpeg4/Makefile +++ b/multimedia/ffmpeg4/Makefile @@ -1,6 +1,6 @@ PORTNAME= ffmpeg PORTVERSION= 4.4.4 -PORTREVISION= 25 +PORTREVISION= 26 CATEGORIES= multimedia audio net MASTER_SITES= https://ffmpeg.org/releases/ PKGNAMESUFFIX= 4 diff --git a/multimedia/gstreamer1-plugins-x265/Makefile b/multimedia/gstreamer1-plugins-x265/Makefile index eb5726638193..a50f939802a3 100644 --- a/multimedia/gstreamer1-plugins-x265/Makefile +++ b/multimedia/gstreamer1-plugins-x265/Makefile @@ -1,4 +1,4 @@ -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= multimedia COMMENT= GStreamer libx265 based H265 plugin diff --git a/multimedia/libxine/Makefile b/multimedia/libxine/Makefile index 28a1a7c7d10b..e3f6a2d82ad7 100644 --- a/multimedia/libxine/Makefile +++ b/multimedia/libxine/Makefile @@ -32,6 +32,9 @@ LIB_DEPENDS= libFLAC.so:audio/flac \ libogg.so:audio/libogg \ libdvdnav.so:multimedia/libdvdnav +EXTRA_PATCHES= ${FILESDIR}/ffmpeg8-1.patch:-p1 \ + ${FILESDIR}/ffmpeg8-2.patch:-p1 + USES= compiler cpe gl gmake gnome iconv libtool:keepla jpeg \ localbase pathfix perl5 pkgconfig tar:xz xorg LLD_UNSAFE= yes diff --git a/multimedia/libxine/files/ffmpeg8-1.patch b/multimedia/libxine/files/ffmpeg8-1.patch new file mode 100644 index 000000000000..be5805b82061 --- /dev/null +++ b/multimedia/libxine/files/ffmpeg8-1.patch @@ -0,0 +1,114 @@ +# HG changeset patch +# User Torsten Jager <t.jager@gmx.de> +# Date 1757753985 -7200 +# Sat Sep 13 10:59:45 2025 +0200 +# Node ID 9bb3977ea7e2b652742b3cdd200b0a4a72eb48bc +# Parent 9e326869fe0faf21957642c8c7c5cac9ed4f445c +FFmpeg compatibilty update. + +diff -r 9e326869fe0f -r 9bb3977ea7e2 src/combined/ffmpeg/ff_video_decoder.c +--- a/src/combined/ffmpeg/ff_video_decoder.c Sat May 31 15:55:00 2025 +0200 ++++ b/src/combined/ffmpeg/ff_video_decoder.c Sat Sep 13 10:59:45 2025 +0200 +@@ -60,6 +60,10 @@ + + #include "ffmpeg_compat.h" + ++#if XFF_FRAME_RATE == 2 ++# include <avcodec/codec_desc.h> ++#endif ++ + #if LIBAVCODEC_VERSION_INT >= XFF_INT_VERSION(59,0,100) + # undef HAVE_POSTPROC + #endif +@@ -2289,8 +2293,8 @@ + } + + /* transfer some more frame settings for deinterlacing */ +- img->progressive_frame = !this->av_frame->interlaced_frame; +- img->top_field_first = this->av_frame->top_field_first; ++ img->progressive_frame = !XFF_FRAME_IS_INTERLACED (this->av_frame); ++ img->top_field_first = !!XFF_FRAME_IS_TOP_FIELD_FIRST (this->av_frame); + + /* get back reordered pts */ + img->pts = ff_untag_pts (this, this->av_frame); +@@ -2370,20 +2374,29 @@ + + static int ff_video_step_get (ff_video_decoder_t *this) { + /* use externally provided video_step or fall back to stream's time_base otherwise */ +- int step = this->video_step; ++ int step = this->video_step, num_fields; + if (step || !this->context->time_base.den) + return step; + ++#if XFF_FRAME_RATE == 1 ++ num_fields = this->context->ticks_per_frame; ++#else /* XFF_FRAME_RATE == 2 */ ++ { ++ const AVCodecDescriptor *desc = avcodec_descriptor_get (this->context->codec_id); ++ if (desc) ++ num_fields = (desc->props & AV_CODEC_PROP_FIELDS) ? 2 : 1; ++ else ++ num_fields = 2; ++ } ++#endif + /* good: 2 * 1001 / 48000. */ +- step = (int64_t)90000 * this->context->ticks_per_frame +- * this->context->time_base.num / this->context->time_base.den; ++ step = (int64_t)90000 * num_fields * this->context->time_base.num / this->context->time_base.den; + if (step >= 90) + return step; + + /* bad: 2 * 1 / 60000. seen this once from broken h.264 video usability info (VUI). + * VAAPI seems to apply a similar HACK.*/ +- step = (int64_t)90000000 * this->context->ticks_per_frame +- * this->context->time_base.num / this->context->time_base.den; ++ step = (int64_t)90000000 * num_fields * this->context->time_base.num / this->context->time_base.den; + return step; + } + +@@ -2680,8 +2693,8 @@ + img->duration = video_step_to_use; + + /* transfer some more frame settings for deinterlacing */ +- img->progressive_frame = !this->av_frame->interlaced_frame; +- img->top_field_first = this->av_frame->top_field_first; ++ img->progressive_frame = !XFF_FRAME_IS_INTERLACED (this->av_frame); ++ img->top_field_first = !!XFF_FRAME_IS_TOP_FIELD_FIRST (this->av_frame); + + this->skipframes = img->draw(img, this->stream); + this->state = STATE_FRAME_SENT; +@@ -2894,8 +2907,8 @@ + if (video_step_to_use <= 750) + video_step_to_use = 0; + img->duration = this->av_frame2->repeat_pict ? video_step_to_use * 3 / 2 : video_step_to_use; +- img->progressive_frame = !this->av_frame2->interlaced_frame; +- img->top_field_first = this->av_frame2->top_field_first; ++ img->progressive_frame = !XFF_FRAME_IS_INTERLACED (this->av_frame2); ++ img->top_field_first = !!XFF_FRAME_IS_TOP_FIELD_FIRST (this->av_frame2); + + this->skipframes = img->draw (img, this->stream); + if (free_img) +diff -r 9e326869fe0f -r 9bb3977ea7e2 src/combined/ffmpeg/ffmpeg_compat.h +--- a/src/combined/ffmpeg/ffmpeg_compat.h Sat May 31 15:55:00 2025 +0200 ++++ b/src/combined/ffmpeg/ffmpeg_compat.h Sat Sep 13 10:59:45 2025 +0200 +@@ -319,4 +319,20 @@ + # error avcodec.h must be included first ! + #endif /* defined(LIBAVCODEC_VERSION_INT) */ + ++#if LIBAVUTIL_VERSION_INT >= XFF_INT_VERSION(58,7,0) ++# define XFF_FRAME_IS_INTERLACED(_frame) ((_frame)->flags & AV_FRAME_FLAG_INTERLACED) ++# define XFF_FRAME_IS_TOP_FIELD_FIRST(_frame) ((_frame)->flags & AV_FRAME_FLAG_TOP_FIELD_FIRST) ++# define XFF_FRAME_IS_KEY(_frame) ((_frame)->flags & AV_FRAME_FLAG_KEY) ++#else ++# define XFF_FRAME_IS_INTERLACED(_frame) ((_frame)->interlaced_frame) ++# define XFF_FRAME_IS_TOP_FIELD_FIRST(_frame) ((_frame)->top_field_first) ++# define XFF_FRAME_IS_KEY(_frame) ((_frame)->key_frame) ++#endif ++ ++#if LIBAVCODEC_VERSION_INT >= XFF_INT_VERSION(60,0,0) ++# define XFF_FRAME_RATE 2 /* AV_CODEC_PROP_FIELDS */ ++#else ++# define XFF_FRAME_RATE 1 /* AVCodecContext.ticks_per_frame */ ++#endif ++ + #endif /* XINE_AVCODEC_COMPAT_H */ diff --git a/multimedia/libxine/files/ffmpeg8-2.patch b/multimedia/libxine/files/ffmpeg8-2.patch new file mode 100644 index 000000000000..dffc575f70cd --- /dev/null +++ b/multimedia/libxine/files/ffmpeg8-2.patch @@ -0,0 +1,20 @@ +# HG changeset patch +# User Xavier Bachelot <xavier@bachelot.org> +# Date 1758280185 -7200 +# Fri Sep 19 13:09:45 2025 +0200 +# Node ID a8fffd1193b2247c7f732d4df83dcc03fce96dbe +# Parent 9bb3977ea7e2b652742b3cdd200b0a4a72eb48bc +Fix FFmpeg compatibilty update. + +diff -r 9bb3977ea7e2 -r a8fffd1193b2 src/combined/ffmpeg/ff_video_decoder.c +--- a/src/combined/ffmpeg/ff_video_decoder.c Sat Sep 13 10:59:45 2025 +0200 ++++ b/src/combined/ffmpeg/ff_video_decoder.c Fri Sep 19 13:09:45 2025 +0200 +@@ -61,7 +61,7 @@ + #include "ffmpeg_compat.h" + + #if XFF_FRAME_RATE == 2 +-# include <avcodec/codec_desc.h> ++# include <libavcodec/codec_desc.h> + #endif + + #if LIBAVCODEC_VERSION_INT >= XFF_INT_VERSION(59,0,100) diff --git a/multimedia/mediaelch/Makefile b/multimedia/mediaelch/Makefile index 4b1ad8e0646a..35651f626da2 100644 --- a/multimedia/mediaelch/Makefile +++ b/multimedia/mediaelch/Makefile @@ -6,6 +6,7 @@ PKGNAMESUFFIX= -${FLAVOR} PATCH_SITES= https://github.com/Komet/MediaElch/commit/ PATCHFILES+= dbea12fbf2c1fe603819392aa2a181cffa168548.patch:-p1 # Fix build with Qt >= 6.9.0 +PATCHFILES+= f125fad644d72f2740aeab64a2016ae2dd341b35.patch:-p1 # Suppress -Wc++20-extensions MAINTAINER= ports@freebsd.org COMMENT= Desktop utility to manage metadata and artwork for Kodi and Jellyfin diff --git a/multimedia/mediaelch/distinfo b/multimedia/mediaelch/distinfo index ca61d4434009..e1232c389bde 100644 --- a/multimedia/mediaelch/distinfo +++ b/multimedia/mediaelch/distinfo @@ -1,5 +1,7 @@ -TIMESTAMP = 1745679359 +TIMESTAMP = 1763632799 SHA256 (Komet-MediaElch-v2.12.0_GH0.tar.gz) = ffa6f19dbc7760cb3762d02c24392d5e2015dfa8890fc3c69d172b0930dbbb89 SIZE (Komet-MediaElch-v2.12.0_GH0.tar.gz) = 3365121 SHA256 (dbea12fbf2c1fe603819392aa2a181cffa168548.patch) = f23c3292fb0afab2fa056a1d5f8363f19148db2fad14532a1e5060097830dc3f SIZE (dbea12fbf2c1fe603819392aa2a181cffa168548.patch) = 4096 +SHA256 (f125fad644d72f2740aeab64a2016ae2dd341b35.patch) = 7a2ced59c874c76cd44627d1b5e62b862a41dbe3288945551cd55f5f78b1ae49 +SIZE (f125fad644d72f2740aeab64a2016ae2dd341b35.patch) = 2179 diff --git a/multimedia/mediamtx/Makefile b/multimedia/mediamtx/Makefile index 154f39a82369..1a221d0e48fb 100644 --- a/multimedia/mediamtx/Makefile +++ b/multimedia/mediamtx/Makefile @@ -1,10 +1,9 @@ PORTNAME= mediamtx DISTVERSIONPREFIX= v -DISTVERSION= 1.15.3 -PORTREVISION= 1 +DISTVERSION= 1.15.4 CATEGORIES= multimedia net -MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.13/ -DISTFILES+= release.zip +MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.15/:hlsjs +DISTFILES+= release.zip:hlsjs MAINTAINER= diizzy@FreeBSD.org COMMENT= Ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy that allows to read, publish and proxy video and audio streams diff --git a/multimedia/mediamtx/distinfo b/multimedia/mediamtx/distinfo index 3982f01ee383..88eb1623c217 100644 --- a/multimedia/mediamtx/distinfo +++ b/multimedia/mediamtx/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1761176320 -SHA256 (go/multimedia_mediamtx/mediamtx-v1.15.3/release.zip) = 0212e8ab83997218c56450a424ae754c63547a8cc88f5338cce438381623a414 -SIZE (go/multimedia_mediamtx/mediamtx-v1.15.3/release.zip) = 5577940 -SHA256 (go/multimedia_mediamtx/mediamtx-v1.15.3/v1.15.3.mod) = a75acd6faecc4748cd7ab61e57a01c60a98fcb7feb6b42df992418eb395a37e4 -SIZE (go/multimedia_mediamtx/mediamtx-v1.15.3/v1.15.3.mod) = 4490 -SHA256 (go/multimedia_mediamtx/mediamtx-v1.15.3/v1.15.3.zip) = 502822ee437d96b8e78cc825c99745e5ad0692e45a3e19a8d0210c5de0afef7d -SIZE (go/multimedia_mediamtx/mediamtx-v1.15.3/v1.15.3.zip) = 581868 +TIMESTAMP = 1763797613 +SHA256 (go/multimedia_mediamtx/mediamtx-v1.15.4/release.zip) = 5cd2be2a4f7106b7c82a12bc15af6117f5230af92a44f26f88a0a32b04e57a81 +SIZE (go/multimedia_mediamtx/mediamtx-v1.15.4/release.zip) = 5585486 +SHA256 (go/multimedia_mediamtx/mediamtx-v1.15.4/v1.15.4.mod) = 6ffec2c760dd1c0e7cf2abb270b0ce07dab24dc475a10c6bf512daa7601a0da1 +SIZE (go/multimedia_mediamtx/mediamtx-v1.15.4/v1.15.4.mod) = 4478 +SHA256 (go/multimedia_mediamtx/mediamtx-v1.15.4/v1.15.4.zip) = 78e8456663fc565aea05e405dca68bd2d83bd08c7a068f03cbba4792bd7c50d0 +SIZE (go/multimedia_mediamtx/mediamtx-v1.15.4/v1.15.4.zip) = 587355 diff --git a/multimedia/py-mat2/Makefile b/multimedia/py-mat2/Makefile index 5abcce3a6f8e..c4b390000a8a 100644 --- a/multimedia/py-mat2/Makefile +++ b/multimedia/py-mat2/Makefile @@ -1,6 +1,5 @@ PORTNAME= mat2 -DISTVERSION= 0.13.5 -PORTREVISION= 2 +DISTVERSION= 0.14.0 CATEGORIES= multimedia audio graphics textproc python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/multimedia/py-mat2/distinfo b/multimedia/py-mat2/distinfo index d04d76933b3f..559f70b56cee 100644 --- a/multimedia/py-mat2/distinfo +++ b/multimedia/py-mat2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1736523783 -SHA256 (mat2-0.13.5.tar.gz) = d7e7c4f0f0cfcf8bd656f97919281d0c6207886d84bdfdbb192c152ebf91fe19 -SIZE (mat2-0.13.5.tar.gz) = 52277 +TIMESTAMP = 1763391234 +SHA256 (mat2-0.14.0.tar.gz) = 7f07db8c587f91bdfb15fb384bca05d741edc31888bd9844b9e91290c0f529c3 +SIZE (mat2-0.14.0.tar.gz) = 52116 diff --git a/multimedia/subtitlecomposer/files/patch-CMakeLists.txt b/multimedia/subtitlecomposer/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..a41c45a3c244 --- /dev/null +++ b/multimedia/subtitlecomposer/files/patch-CMakeLists.txt @@ -0,0 +1,19 @@ +commit b3f158cb1c82a47bdfb8593f3cb3e56dce3ddcf9 +Author: Mladen Milinkovic <maxrd2@smoothware.net> +Date: Tue Nov 4 22:14:00 2025 +0100 + + Change CMAKE_MODULE_PATH order + + Prefer "${CMAKE_CURRENT_SOURCE_DIR}/cmake" over "${ECM_MODULE_PATH}" + +--- CMakeLists.txt.orig 2025-09-14 20:00:57 UTC ++++ CMakeLists.txt +@@ -19,7 +19,7 @@ find_package(ECM REQUIRED NO_MODULE) + set(CMAKE_CXX_STANDARD 17) + + find_package(ECM REQUIRED NO_MODULE) +-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake") ++set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${ECM_MODULE_PATH}) + + include(KDEInstallDirs) + include(KDECMakeSettings) diff --git a/multimedia/subtitlecomposer/files/patch-src_CMakeLists.txt b/multimedia/subtitlecomposer/files/patch-src_CMakeLists.txt index 538c5eb02d97..8ad44c42aef9 100644 --- a/multimedia/subtitlecomposer/files/patch-src_CMakeLists.txt +++ b/multimedia/subtitlecomposer/files/patch-src_CMakeLists.txt @@ -1,8 +1,8 @@ ---- src/CMakeLists.txt.orig 2023-04-04 01:59:38 UTC +--- src/CMakeLists.txt.orig 2025-09-14 20:00:57 UTC +++ src/CMakeLists.txt -@@ -27,7 +27,7 @@ endif() +@@ -35,7 +35,7 @@ find_package(OpenAL REQUIRED) - find_package(FFmpeg 57.83.100 REQUIRED) + find_package(FFmpeg 59.27.100 REQUIRED) find_package(OpenAL REQUIRED) -find_package(ICU) +find_package(ICU REQUIRED COMPONENTS i18n uc data) diff --git a/multimedia/vlc/Makefile b/multimedia/vlc/Makefile index 75039b4b5c3f..7f61907ca094 100644 --- a/multimedia/vlc/Makefile +++ b/multimedia/vlc/Makefile @@ -1,6 +1,6 @@ PORTNAME= vlc DISTVERSION= 3.0.21 -PORTREVISION= 19 +PORTREVISION= 20 PORTEPOCH= 4 CATEGORIES= multimedia audio net www MASTER_SITES= https://get.videolan.org/${PORTNAME}/${DISTVERSION:S/a$//}/ \ diff --git a/multimedia/x265/Makefile b/multimedia/x265/Makefile index 0f84465e8d1b..be9a85a53b7f 100644 --- a/multimedia/x265/Makefile +++ b/multimedia/x265/Makefile @@ -1,6 +1,5 @@ PORTNAME= x265 -PORTVERSION= 3.6 -PORTREVISION= 1 +PORTVERSION= 4.1 CATEGORIES= multimedia MASTER_SITES= https://bitbucket.org/multicoreware/x265_git/downloads/ \ http://ftp.videolan.org/pub/videolan/x265/ @@ -27,7 +26,10 @@ BB_TAG= Release_${DISTVERSION} OPTIONS_DEFINE= VMAF OPTIONS_DEFINE_amd64= SVTHEVC -OPTIONS_DEFAULT= HI10P HI12P HI8P OPTIMIZED_FLAGS +OPTIONS_DEFINE_powerpc= ALTIVEC +OPTIONS_DEFINE_powerpc64= ${OPTIONS_DEFINE_powerpc} +OPTIONS_DEFINE_powerpc64le= ${OPTIONS_DEFINE_powerpc} +OPTIONS_DEFAULT= HI10P HI12P HI8P OPTIMIZED_FLAGS ALTIVEC OPTIONS_MULTI= PIXELWIDTH OPTIONS_MULTI_PIXELWIDTH= HI10P HI12P HI8P @@ -40,7 +42,7 @@ HI12P_DESC= Enable 12-bit pixels (may break on i386) HI8P_DESC= Enable 8-bit pixel-width (you, probably, want this) OPTIMIZED_FLAGS_DESC= Enable O3 optimization SVTHEVC_DESC= HEVC encoding via SVT-HEVC -VMAF_DESC= VMAF scores (broken: needs older VMAF) +VMAF_DESC= VMAF scores VMAF_USES= localbase:ldflags DEBUG_CMAKE_ON= -DCMAKE_ASM_NASM_FLAGS:STRING="-g -O0" @@ -50,15 +52,11 @@ SVTHEVC_CMAKE_BOOL= ENABLE_SVT_HEVC VMAF_CMAKE_ON= -DVMAF_INCLUDE_DIR:PATH="${LOCALBASE}/include/libvmaf" VMAF_LIB_DEPENDS= libvmaf.so:multimedia/vmaf VMAF_CMAKE_BOOL= ENABLE_LIBVMAF +ALTIVEC_CMAKE_BOOL= ENABLE_ALTIVEC .include <bsd.port.options.mk> -.if ${ARCH} == powerpc64le -CMAKE_ARGS+= -DCPU_POWER8=ON \ - -DENABLE_ALTIVEC=ON -.endif - -.if !${ARCH:Mpowerpc64*} && !${ARCH:Marmv7} +.if ${ARCH} == i386 && ${PORT_OPTIONS:MHI8P} || ${ARCH} == amd64 BUILD_DEPENDS= nasm:devel/nasm .endif @@ -71,6 +69,9 @@ CMAKE_ARGS+= -DMAIN12:BOOL=true .if "${DEFAULT_DEPTH}" != "HI8P" CMAKE_ARGS+= -DHIGH_BIT_DEPTH:BOOL=true +.if ${ARCH} == i386 +CMAKE_ARGS+= -DENABLE_ASSEMBLY:BOOL=false +.endif .endif CMAKE_OTHER_ARGS= ${CMAKE_ARGS:C/.*-D_END_CUSTOM_OPTIONS=1 +//W} @@ -83,49 +84,34 @@ CFLAGS:= ${CFLAGS:N-O*} -O0 -g CFLAGS:= ${CFLAGS:N-O*} -O3 .endif -.for b in ${OTHER_DEPTHS:C/HI([0-9]+)P/\1/} -EXTRA_LINK_FLAGS+= -L${WRKSRC:H}/${b}bit - -.if ${ARCH} == powerpc64le - -.if ${b} != 8 -ASSEMBLY= false -.else -ASSEMBLY= true +.if ${ARCH} == armv7 +CMAKE_ARGS+= -DENABLE_NEON:BOOL=true .endif -post-patch: - ${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/x265.h +.if ${ARCH:Mpowerpc*} +CMAKE_OTHER_ARGS+= ${CMAKE_ARGS:M*ALTIVEC*} -DCPU_POWER8=false +CMAKE_ARGS+= -DCPU_POWER8=false +.endif -pre-build:: - @${ECHO_MSG} "---> Building the ${b}-bit library ---" - ${MKDIR} ${WRKSRC:H}/${b}bit - ${CMAKE_BIN} -S ${WRKSRC} -B ${WRKSRC:H}/${b}bit \ - ${CMAKE_OTHER_ARGS} ${b:C/1./-DHIGH_BIT_DEPTH:BOOL=true/} \ - -DMAIN${b}:BOOL=true -DENABLE_ALTIVEC=${ASSEMBLY} -DCPU_POWER8=true \ - -DEXPORT_C_API:BOOL=false -DENABLE_CLI=false - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC:H}/${b}bit ${MAKE_ARGS} - ${LN} -f ${WRKSRC:H}/${b}bit/libx265.a ${WRKSRC:H}/${b}bit/libx265_${b}bit.a - ${ECHO_MSG} "---> Built the ${b}-bit library ---" +.for b in ${OTHER_DEPTHS:C/HI([0-9]+)P/\1/} +EXTRA_LINK_FLAGS+= -L${WRKSRC:H}/$bbit -.else -.if ((${ARCH} == i386 || ${ARCH} == armv7) && $b != 8) || ${ARCH} == powerpc || ${ARCH} == powerpc64 +.if (${ARCH} == i386 && $b != 8) || ${ARCH:Mpowerpc*} ASSEMBLY= false .else ASSEMBLY= true .endif pre-build:: - @${ECHO_MSG} "---> Building the ${b}-bit library ---" - ${MKDIR} ${WRKSRC:H}/${b}bit - ${CMAKE_BIN} -S ${WRKSRC} -B ${WRKSRC:H}/${b}bit \ + @${ECHO_MSG} "---> Building the $b-bit library ---" + ${MKDIR} ${WRKSRC:H}/$bbit + ${CMAKE_BIN} -S ${WRKSRC} -B ${WRKSRC:H}/$bbit \ ${CMAKE_OTHER_ARGS} ${b:C/1./-DHIGH_BIT_DEPTH:BOOL=true/} \ - -DMAIN${b}:BOOL=true -DENABLE_ASSEMBLY:BOOL=${ASSEMBLY} -DCPU_POWER8=false -DENABLE_ALTIVEC:BOOL=false \ + -DMAIN$b:BOOL=true -DENABLE_ASSEMBLY:BOOL=${ASSEMBLY} \ -DEXPORT_C_API:BOOL=false -DENABLE_CLI=false - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC:H}/${b}bit ${MAKE_ARGS} - ${LN} -f ${WRKSRC:H}/${b}bit/libx265.a ${WRKSRC:H}/${b}bit/libx265_${b}bit.a - ${ECHO_MSG} "---> Built the ${b}-bit library ---" -.endif + ${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC:H}/$bbit ${MAKE_ARGS} + ${LN} -f ${WRKSRC:H}/$bbit/libx265.a ${WRKSRC:H}/$bbit/libx265_$bbit.a + @${ECHO_MSG} "---> Built the $b-bit library ---" .endfor .if "${EXTRA_LINK_FLAGS}" @@ -136,24 +122,18 @@ CMAKE_ARGS+= ${OTHER_DEPTHS:C/HI([0-9]+)P/-DLINKED_\1BIT:BOOL=true/} CMAKE_ARGS+= -DENABLE_SHARED:BOOL=true -.if ${ARCH} == i386 && ${DEFAULT_DEPTH} != "HI8P" -CMAKE_ARGS+= -DENABLE_ASSEMBLY:BOOL=false -.else -.if !${ARCH:Mpowerpc*} -CMAKE_ARGS+= -DENABLE_ASSEMBLY:BOOL=true -.elif ${ARCH} == powerpc64le -CMAKE_ARGS+= -DCPU_POWER8=ON \ - -DENABLE_ALTIVEC=ON -.elif ${ARCH} == powerpc64 -CMAKE_ARGS+= -DCPU_POWER8=OFF \ - -DENABLE_ALTIVEC=OFF -.endif - do-test: +.if ${PORT_OPTIONS:MHI8P} || ${ARCH} != i386 ${WRKDIR}/.build/test/TestBench +.else + @${ECHO_MSG} On ${ARCH} TestBench is only built, when 8bit is enabled .endif CMAKE_ARGS+= -D_END_CUSTOM_OPTIONS=1 CMAKE_ARGS+= -DENABLE_PIC:BOOL=true +.if !defined(DEVELOPER) +CMAKE_ARGS+= -Wno-dev +.endif + .include <bsd.port.mk> diff --git a/multimedia/x265/distinfo b/multimedia/x265/distinfo index 7e5f3d943d14..8f4377694bb7 100644 --- a/multimedia/x265/distinfo +++ b/multimedia/x265/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1727555881 -SHA256 (x265_3.6.tar.gz) = 663531f341c5389f460d730e62e10a4fcca3428ca2ca109693867bc5fe2e2807 -SIZE (x265_3.6.tar.gz) = 1655889 +TIMESTAMP = 1762019503 +SHA256 (x265_4.1.tar.gz) = a31699c6a89806b74b0151e5e6a7df65de4b49050482fe5ebf8a4379d7af8f29 +SIZE (x265_4.1.tar.gz) = 1725279 diff --git a/multimedia/x265/files/patch-arm-assembly b/multimedia/x265/files/patch-arm-assembly index e481269c43f0..dd3f71dd12c4 100644 --- a/multimedia/x265/files/patch-arm-assembly +++ b/multimedia/x265/files/patch-arm-assembly @@ -1,12 +1,3 @@ ---- source/common/arm/blockcopy8.S 2024-09-30 08:38:43.172350000 +0200 -+++ source/common/arm/blockcopy8.S 2024-09-30 09:13:08.635457000 +0200 -@@ -833,5 +833,5 @@ - vmov.u32 r0, d0[0] - uasx r0, r0, r0 -- mov r0, r0, lsr 16 -+ lsr r0, r0, #16 - rsb r0, #1024 - bx lr --- source/common/arm/asm.S 2024-04-04 11:39:50.000000000 +0200 +++ source/common/arm/asm.S 2024-09-30 19:45:33.295896000 +0200 @@ -85,4 +85,9 @@ diff --git a/multimedia/x265/files/patch-warnings b/multimedia/x265/files/patch-warnings index e1a65940be2e..31e3d2416405 100644 --- a/multimedia/x265/files/patch-warnings +++ b/multimedia/x265/files/patch-warnings @@ -331,12 +331,19 @@ + // skip -- prefix if provided if (name[0] == '-' && name[1] == '-') ---- source/common/cudata.cpp 2024-09-13 09:02:55.000000000 -0400 -+++ source/common/cudata.cpp 2024-09-24 00:04:19.872724000 -0400 -@@ -74,5 +74,5 @@ - inline bool isEqualRowOrCol(int addrA, int addrB) - { -- return isEqualCol(addrA, addrB) | isEqualRow(addrA, addrB); -+ return isEqualCol(addrA, addrB) || isEqualRow(addrA, addrB); - } +--- source/encoder/level.cpp 2024-11-22 07:07:34.000000000 -0500 ++++ source/encoder/level.cpp 2025-11-01 20:29:50.066886000 -0400 +@@ -61,13 +61,4 @@ + }; +-static inline int _confirm(x265_param* param, bool bflag, const char* message) +-{ +- if (!bflag) +- return 0; +- +- x265_log(param, X265_LOG_ERROR, "%s\n", message); +- return 1; +-} +- + /* determine minimum decoder level required to decode the described video */ + void determineLevel(const x265_param ¶m, VPS& vps) diff --git a/multimedia/x265/pkg-plist b/multimedia/x265/pkg-plist index 25e1a71607c4..179d1313492b 100644 --- a/multimedia/x265/pkg-plist +++ b/multimedia/x265/pkg-plist @@ -6,5 +6,5 @@ lib/libhdr10plus.a lib/libhdr10plus.so lib/libx265.a lib/libx265.so -lib/libx265.so.209 +lib/libx265.so.215 libdata/pkgconfig/x265.pc |
