Here is an update to FFmpeg 4.4.5.
Index: graphics/ffmpeg/Makefile =================================================================== RCS file: /cvs/ports/graphics/ffmpeg/Makefile,v retrieving revision 1.240 diff -u -p -u -p -r1.240 Makefile --- graphics/ffmpeg/Makefile 28 Jul 2024 06:38:23 -0000 1.240 +++ graphics/ffmpeg/Makefile 29 Jul 2024 04:19:06 -0000 @@ -1,9 +1,8 @@ COMMENT= audio/video converter and streamer -V= 4.4.4 +V= 4.4.5 DISTNAME= ffmpeg-${V} EPOCH= 1 -REVISION= 6 CATEGORIES= graphics multimedia SITES= https://ffmpeg.org/releases/ EXTRACT_SUFX= .tar.xz @@ -68,16 +67,19 @@ 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 -lx264 -lx265 -lxvidcore -lm -lz -pthread -LIBavcodec_EXTRALIBS+=-lva -lva-drm +LIBavcodec_EXTRALIBS+=-lvorbisenc -lvpx -lx264 -lx265 -lxvidcore -lm -lz -lva +LIBavcodec_EXTRALIBS+=-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 LIBavfilter_EXTRALIBS=-L${LOCALBASE}/lib -L${X11BASE}/lib -lass -lfontconfig -LIBavfilter_EXTRALIBS+=-lfreetype -lfribidi -lvidstab -lm -lz -lzimg -pthread -lva +LIBavfilter_EXTRALIBS+=-lfreetype -lfribidi -lvidstab -lm -lz -lzimg -lva -pthread + LIBavformat_EXTRALIBS=-L${LOCALBASE}/lib -lbz2 -lxml2 -lssl -lcrypto -lm -lz + LIBavutil_EXTRALIBS=-L${X11BASE}/lib -lva -lva-drm -lva-x11 -lm -pthread + LIBpostproc_EXTRALIBS=-lm LIBswresample_EXTRALIBS=-lm LIBswscale_EXTRALIBS=-lm @@ -102,7 +104,6 @@ CONFIGURE_ARGS+=--enable-shared \ --disable-stripping \ --disable-indev=jack \ --disable-outdev=sdl2 \ - --enable-vaapi \ --enable-fontconfig \ --enable-frei0r \ --enable-gpl \ Index: graphics/ffmpeg/distinfo =================================================================== RCS file: /cvs/ports/graphics/ffmpeg/distinfo,v retrieving revision 1.66 diff -u -p -u -p -r1.66 distinfo --- graphics/ffmpeg/distinfo 30 Apr 2023 05:25:28 -0000 1.66 +++ graphics/ffmpeg/distinfo 29 Jul 2024 04:19:06 -0000 @@ -1,2 +1,2 @@ -SHA256 (ffmpeg-4.4.4.tar.xz) = 6As4DVlcgJBg9m+WpdhJUR70p2omt26s9XeLlMNXAwk= -SIZE (ffmpeg-4.4.4.tar.xz) = 9565584 +SHA256 (ffmpeg-4.4.5.tar.xz) = +VFODTUVruWicSg99xY24dH/cnSxWFO82E4US+QWqwc= +SIZE (ffmpeg-4.4.5.tar.xz) = 9575596 Index: graphics/ffmpeg/patches/patch-configure =================================================================== RCS file: /cvs/ports/graphics/ffmpeg/patches/patch-configure,v retrieving revision 1.72 diff -u -p -u -p -r1.72 patch-configure --- graphics/ffmpeg/patches/patch-configure 4 Dec 2022 20:12:36 -0000 1.72 +++ graphics/ffmpeg/patches/patch-configure 29 Jul 2024 04:19:06 -0000 @@ -1,4 +1,3 @@ -- configure: use pkg-config for sndio - configure: add initial RISC-V support - Fix broken libatomic test @@ -43,7 +42,7 @@ Index: configure s390) check_64bit s390 s390x enabled shared && enable_weak pic -@@ -5378,7 +5386,6 @@ case $target_os in +@@ -5379,7 +5387,6 @@ case $target_os in enable section_data_rel_ro striptype="" SHFLAGS='-shared' @@ -51,7 +50,7 @@ Index: configure SLIB_INSTALL_LINKS= oss_indev_extralibs="-lossaudio" oss_outdev_extralibs="-lossaudio" -@@ -5734,7 +5741,7 @@ set_default libdir +@@ -5736,7 +5743,7 @@ set_default libdir set_default $PATHS_LIST set_default nm @@ -60,7 +59,7 @@ Index: configure enable_weak_pic() { disabled pic && return -@@ -6189,7 +6196,7 @@ check_headers asm/types.h +@@ -6191,7 +6198,7 @@ check_headers asm/types.h # # some configurations also require linking to libatomic, so try # both with -latomic and without @@ -69,13 +68,3 @@ Index: configure check_builtin stdatomic stdatomic.h \ "atomic_int foo, bar = ATOMIC_VAR_INIT(-1); atomic_store(&foo, 0); foo += bar" \ $LATOMIC && eval stdatomic_extralibs="\$LATOMIC" && break -@@ -6657,7 +6664,8 @@ enabled alsa && { check_pkg_config alsa alsa "alsa/aso - enabled libjack && - require_pkg_config libjack jack jack/jack.h jack_port_get_latency_range - --enabled sndio && check_lib sndio sndio.h sio_open -lsndio -+enabled sndio && { check_pkg_config sndio sndio "sndio.h" sio_open || -+ check_lib sndio sndio.h sio_open -lsndio; } - - if enabled libcdio; then - check_pkg_config libcdio libcdio_paranoia "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open || Index: graphics/ffmpeg/patches/patch-libavcodec_libsvtav1_c =================================================================== RCS file: /cvs/ports/graphics/ffmpeg/patches/patch-libavcodec_libsvtav1_c,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-libavcodec_libsvtav1_c --- graphics/ffmpeg/patches/patch-libavcodec_libsvtav1_c 5 Dec 2022 10:03:55 -0000 1.3 +++ graphics/ffmpeg/patches/patch-libavcodec_libsvtav1_c 29 Jul 2024 04:19:06 -0000 @@ -13,7 +13,6 @@ - avcodec/libsvtav1: update avctx bit rate according to RC mode - avcodec/libsvtav1: signal CPB properties through side data - avcodec/libsvtav1: properly initialize the flush EbBufferHeaderType struct -- avcodec/libsvtav1: remove compressed_ten_bit_format and simplify alloc_buffer - avcodec/libsvtav1: replace vbv_bufsize with maximum_buffer_size_ms - avcodec/libsvtav1: only set max_buf_sz if both bitrate and rc_buf_sz is set - avcodec/libsvtav1: don't force a default value for deprecated options @@ -45,27 +44,7 @@ Index: libavcodec/libsvtav1.c } SvtContext; static const struct { -@@ -120,16 +123,12 @@ static int svt_print_error(void *log_ctx, EbErrorType - - static int alloc_buffer(EbSvtAv1EncConfiguration *config, SvtContext *svt_enc) - { -- const int pack_mode_10bit = -- (config->encoder_bit_depth > 8) && (config->compressed_ten_bit_format == 0) ? 1 : 0; -- const size_t luma_size_8bit = -- config->source_width * config->source_height * (1 << pack_mode_10bit); -- const size_t luma_size_10bit = -- (config->encoder_bit_depth > 8 && pack_mode_10bit == 0) ? luma_size_8bit : 0; -+ const size_t luma_size = config->source_width * config->source_height * -+ (config->encoder_bit_depth > 8 ? 2 : 1); - - EbSvtIOFormat *in_data; - -- svt_enc->raw_size = (luma_size_8bit + luma_size_10bit) * 3 / 2; -+ svt_enc->raw_size = luma_size * 3 / 2; - - // allocate buffer for in and out - svt_enc->in_buf = av_mallocz(sizeof(*svt_enc->in_buf)); -@@ -151,11 +150,132 @@ static int config_enc_params(EbSvtAv1EncConfiguration +@@ -147,11 +150,132 @@ static int config_enc_params(EbSvtAv1EncConfiguration { SvtContext *svt_enc = avctx->priv_data; const AVPixFmtDescriptor *desc; @@ -199,7 +178,7 @@ Index: libavcodec/libsvtav1.c param->encoder_bit_depth = desc->comp[0].depth; if (desc->log2_chroma_w == 1 && desc->log2_chroma_h == 1) -@@ -169,12 +289,6 @@ static int config_enc_params(EbSvtAv1EncConfiguration +@@ -165,12 +289,6 @@ static int config_enc_params(EbSvtAv1EncConfiguration return AVERROR(EINVAL); } @@ -212,7 +191,7 @@ Index: libavcodec/libsvtav1.c if ((param->encoder_color_format == EB_YUV422 || param->encoder_bit_depth > 10) && param->profile != FF_PROFILE_AV1_PROFESSIONAL ) { av_log(avctx, AV_LOG_WARNING, "Forcing Professional profile\n"); -@@ -184,40 +298,21 @@ static int config_enc_params(EbSvtAv1EncConfiguration +@@ -180,40 +298,21 @@ static int config_enc_params(EbSvtAv1EncConfiguration param->profile = FF_PROFILE_AV1_HIGH; } @@ -264,7 +243,7 @@ Index: libavcodec/libsvtav1.c return 0; } -@@ -330,11 +425,8 @@ static int eb_send_frame(AVCodecContext *avctx, const +@@ -326,11 +425,8 @@ static int eb_send_frame(AVCodecContext *avctx, const if (svt_enc->eos_flag == EOS_SENT) return 0; @@ -278,7 +257,7 @@ Index: libavcodec/libsvtav1.c headerPtrLast.flags = EB_BUFFERFLAG_EOS; svt_av1_enc_send_picture(svt_enc->svt_handle, &headerPtrLast); -@@ -350,6 +442,16 @@ static int eb_send_frame(AVCodecContext *avctx, const +@@ -346,6 +442,16 @@ static int eb_send_frame(AVCodecContext *avctx, const headerPtr->p_app_private = NULL; headerPtr->pts = frame->pts; @@ -295,7 +274,7 @@ Index: libavcodec/libsvtav1.c svt_av1_enc_send_picture(svt_enc->svt_handle, headerPtr); return 0; -@@ -472,21 +574,22 @@ static av_cold int eb_enc_close(AVCodecContext *avctx) +@@ -468,21 +574,22 @@ static av_cold int eb_enc_close(AVCodecContext *avctx) #define OFFSET(x) offsetof(SvtContext, x) #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { @@ -327,7 +306,7 @@ Index: libavcodec/libsvtav1.c FF_AV1_PROFILE_OPTS -@@ -518,21 +621,20 @@ static const AVOption options[] = { +@@ -514,21 +621,20 @@ static const AVOption options[] = { { LEVEL("7.3", 73) }, #undef LEVEL @@ -360,7 +339,7 @@ Index: libavcodec/libsvtav1.c {NULL}, }; -@@ -544,9 +646,10 @@ static const AVClass class = { +@@ -540,9 +646,10 @@ static const AVClass class = { }; static const AVCodecDefault eb_enc_defaults[] = { @@ -373,7 +352,7 @@ Index: libavcodec/libsvtav1.c { "qmax", "63" }, { NULL }, }; -@@ -561,12 +664,11 @@ AVCodec ff_libsvtav1_encoder = { +@@ -557,12 +664,11 @@ AVCodec ff_libsvtav1_encoder = { .receive_packet = eb_receive_packet, .close = eb_enc_close, .capabilities = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_OTHER_THREADS, Index: graphics/ffmpeg/patches/patch-libavdevice_v4l2_c =================================================================== RCS file: graphics/ffmpeg/patches/patch-libavdevice_v4l2_c diff -N graphics/ffmpeg/patches/patch-libavdevice_v4l2_c --- graphics/ffmpeg/patches/patch-libavdevice_v4l2_c 23 Jul 2024 10:18:14 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,20 +0,0 @@ -lavd/v4l2: Use proper field type for second parameter of ioctl() with BSD's -9e674b31606c805dd31b4bb754364a72a5877238 - -Index: libavdevice/v4l2.c ---- libavdevice/v4l2.c.orig -+++ libavdevice/v4l2.c -@@ -107,10 +107,10 @@ struct video_data { - int (*open_f)(const char *file, int oflag, ...); - int (*close_f)(int fd); - int (*dup_f)(int fd); --#ifdef __GLIBC__ -- int (*ioctl_f)(int fd, unsigned long int request, ...); --#else -+#if defined(__sun) || defined(__BIONIC__) || defined(__musl__) /* POSIX-like */ - int (*ioctl_f)(int fd, int request, ...); -+#else -+ int (*ioctl_f)(int fd, unsigned long int request, ...); - #endif - ssize_t (*read_f)(int fd, void *buffer, size_t n); - void *(*mmap_f)(void *start, size_t length, int prot, int flags, int fd, int64_t offset); Index: graphics/ffmpeg/patches/patch-libavformat_utils_c =================================================================== RCS file: graphics/ffmpeg/patches/patch-libavformat_utils_c diff -N graphics/ffmpeg/patches/patch-libavformat_utils_c --- graphics/ffmpeg/patches/patch-libavformat_utils_c 19 Dec 2023 09:00:06 -0000 1.7 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,24 +0,0 @@ -llvm 16 optimizations lead to a segfault when seeking in opus files because -checks that could leave pos_max uninitialized are optimized away, leading -to out-of-bounds reads from the guard pages. - -av_uninit() is complete batshittery: - -https://marc.info/?l=openbsd-ports&m=170284868209618&w=2 - -Turns out the same commit has landed upstream: - -https://github.com/FFmpeg/FFmpeg/commit/ab792634197e364ca1bb194f9abe36836e42f12d - -Index: libavformat/utils.c ---- libavformat/utils.c.orig -+++ libavformat/utils.c -@@ -2146,7 +2146,7 @@ int ff_seek_frame_binary(AVFormatContext *s, int strea - int64_t target_ts, int flags) - { - const AVInputFormat *avif = s->iformat; -- int64_t av_uninit(pos_min), av_uninit(pos_max), pos, pos_limit; -+ int64_t pos_min = 0, pos_max = 0, pos, pos_limit; - int64_t ts_min, ts_max, ts; - int index; - int64_t ret; Index: x11/mplayer/Makefile =================================================================== RCS file: /cvs/ports/x11/mplayer/Makefile,v retrieving revision 1.329 diff -u -p -u -p -r1.329 Makefile --- x11/mplayer/Makefile 27 Sep 2023 20:37:18 -0000 1.329 +++ x11/mplayer/Makefile 29 Jul 2024 04:19:06 -0000 @@ -1,9 +1,9 @@ COMMENT= movie player supporting many formats V= 20230409 -FFMPEG_V= 4.4.4 +FFMPEG_V= 4.4.5 DISTNAME= mplayer-${V} -REVISION= 1 +REVISION= 2 CATEGORIES= x11 multimedia SITES= https://comstyle.com/source/ EXTRACT_SUFX= .tar.xz