On Sun, Jan 25, 2026 at 12:44:17AM +0900, Pontus Stenetorp wrote:
> Cheers Brad! Thank you for clarifying and the ONLY_FOR_ARCHS removal and
> 3.1.2 multimedia/svt-av1 diffs are now in.
>
> Please find my updated diff for enabling svt-av1 for graphics/ffmpeg below.
> Tested again on amd64 with:
>
> ffmpeg -f lavfi -t 17 -i testsrc=size=1920x1080 -c:v libsvtav1
> /tmp/svtav1test.webm
Thanks. Here is an updated diff that also includes support for version 4.0.
Index: Makefile
===================================================================
RCS file: /cvs/ports/graphics/ffmpeg/Makefile,v
retrieving revision 1.254
diff -u -p -u -p -r1.254 Makefile
--- Makefile 12 Dec 2025 13:38:22 -0000 1.254
+++ Makefile 25 Jan 2026 02:42:05 -0000
@@ -3,6 +3,7 @@ COMMENT= audio/video converter and strea
# keep it synced with x11/mplayer
V= 8.0.1
DISTNAME= ffmpeg-${V}
+REVISION= 0
CATEGORIES= graphics multimedia
SITES= https://ffmpeg.org/releases/
EXTRACT_SUFX= .tar.xz
@@ -38,12 +39,12 @@ MAINTAINER= Brad Smith <[email protected]
# LGPLv2.1 and GPLv2
PERMIT_PACKAGE= Yes
-WANTLIB += SDL2 X11 Xext Xv aom ass bz2 c crypto dav1d fontconfig
-WANTLIB += freetype fribidi gsm harfbuzz iconv lzma m mp3lame opus
-WANTLIB += pthread sndio speex ssl theoradec theoraenc v4l2 va
-WANTLIB += va-drm va-x11 vidstab vorbis vorbisenc vpx webp webpmux
-WANTLIB += x264 x265 xcb xcb-shape xcb-shm xcb-xfixes xml2 xvidcore
-WANTLIB += z zimg
+WANTLIB += SDL2 SvtAv1Enc X11 Xext Xv aom ass bz2 c crypto dav1d
+WANTLIB += fontconfig freetype fribidi gsm harfbuzz iconv lzma m
+WANTLIB += mp3lame opus pthread sndio speex ssl theoradec theoraenc
+WANTLIB += v4l2 va va-drm va-x11 vidstab vorbis vorbisenc vpx webp
+WANTLIB += webpmux x264 x265 xcb xcb-shape xcb-shm xcb-xfixes xml2
+WANTLIB += xvidcore z zimg
COMPILER= base-clang ports-gcc
COMPILER_LANGS= c
@@ -71,6 +72,7 @@ LIB_DEPENDS= archivers/bzip2 \
graphics/zimg \
multimedia/aom \
multimedia/dav1d \
+ multimedia/svt-av1 \
multimedia/libass \
multimedia/libtheora \
multimedia/libv4l \
@@ -83,9 +85,9 @@ LIB_DEPENDS= archivers/bzip2 \
# inter-library dependencies for the current configuration
LIBavcodec_EXTRALIBS=-L${LOCALBASE}/lib -L${X11BASE}/lib -laom -ldav1d -lgsm
-liconv -llzma
-LIBavcodec_EXTRALIBS+=-lmp3lame -lopus -lspeex -ltheoradec -ltheoraenc -lvorbis
-LIBavcodec_EXTRALIBS+=-lvorbisenc -lvpx -lwebp -lwebpmux -lx264 -lx265
-lxvidcore
-LIBavcodec_EXTRALIBS+=-lm -lz -lva -lva-drm -pthread
+LIBavcodec_EXTRALIBS+=-lmp3lame -lopus -lspeex -lSvtAv1Enc -ltheoradec
-ltheoraenc -lvorbis
+LIBavcodec_EXTRALIBS+=-lvorbisenc -lvpx -lwebp -lwebpmux -lx264 -lx265
-lxvidcore -lm -lz
+LIBavcodec_EXTRALIBS+=-lva -lva-drm -pthread
LIBavdevice_EXTRALIBS=-L${LOCALBASE}/lib -L${X11BASE}/lib -lX11 -lXext -lXv
LIBavdevice_EXTRALIBS+=-lxcb-shape -lxcb-shm -lxcb-xfixes -lxcb -lsndio -lv4l2
-lm
@@ -137,6 +139,7 @@ CONFIGURE_ARGS+=--enable-shared \
--enable-libmp3lame \
--enable-libopus \
--enable-libspeex \
+ --enable-libsvtav1 \
--enable-libtheora \
--enable-libv4l2 \
--enable-libvorbis \
Index: patches/patch-libavcodec_libsvtav1_c
===================================================================
RCS file: patches/patch-libavcodec_libsvtav1_c
diff -N patches/patch-libavcodec_libsvtav1_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-libavcodec_libsvtav1_c 25 Jan 2026 02:42:05 -0000
@@ -0,0 +1,18 @@
+- avcodec/libsvtav1: rename aq_mode for v4.0.0
+ a5d4c398b411a00ac09d8fe3b66117222323844c
+
+Index: libavcodec/libsvtav1.c
+--- libavcodec/libsvtav1.c.orig
++++ libavcodec/libsvtav1.c
+@@ -238,7 +238,11 @@ static int config_enc_params(EbSvtAv1EncConfiguration
+ } else if (svt_enc->qp > 0) {
+ param->qp = svt_enc->qp;
+ param->rate_control_mode = 0;
++#if SVT_AV1_CHECK_VERSION(4, 0, 0)
++ param->aq_mode = 0;
++#else
+ param->enable_adaptive_quantization = 0;
++#endif
+ }
+
+ desc = av_pix_fmt_desc_get(avctx->pix_fmt);