summaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/aom/Makefile2
-rw-r--r--multimedia/aom/distinfo6
-rw-r--r--multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c23
-rw-r--r--multimedia/aom/pkg-plist4
-rw-r--r--multimedia/livego/Makefile2
-rw-r--r--multimedia/mediamtx/Makefile1
-rw-r--r--multimedia/minisatip/Makefile2
-rw-r--r--multimedia/minisatip/distinfo6
-rw-r--r--multimedia/navidrome/Makefile2
-rw-r--r--multimedia/supersonic/Makefile1
-rw-r--r--multimedia/wl-screenrec/Makefile7
-rw-r--r--multimedia/wl-screenrec/Makefile.crates17
-rw-r--r--multimedia/wl-screenrec/distinfo34
-rw-r--r--multimedia/wl-screenrec/files/patch-ffmpeg7180
-rw-r--r--multimedia/wl-screenrec/files/patch-ffmpeg8126
15 files changed, 268 insertions, 45 deletions
diff --git a/multimedia/aom/Makefile b/multimedia/aom/Makefile
index c7fa819d6008..b5dde536cff5 100644
--- a/multimedia/aom/Makefile
+++ b/multimedia/aom/Makefile
@@ -1,5 +1,5 @@
PORTNAME= aom
-DISTVERSION= 3.12.1
+DISTVERSION= 3.13.0
CATEGORIES= multimedia
MASTER_SITES= https://storage.googleapis.com/${PORTNAME}-releases/
DISTNAME= lib${PORTNAME}-${DISTVERSION}
diff --git a/multimedia/aom/distinfo b/multimedia/aom/distinfo
index 1e9af09f01fe..86c297daf08f 100644
--- a/multimedia/aom/distinfo
+++ b/multimedia/aom/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1744403869
-SHA256 (libaom-3.12.1.tar.gz) = 9e9775180dec7dfd61a79e00bda3809d43891aee6b2e331ff7f26986207ea22e
-SIZE (libaom-3.12.1.tar.gz) = 5497367
+TIMESTAMP = 1756846798
+SHA256 (libaom-3.13.0.tar.gz) = 5fe4453a8ffba138a6705a2f6d07666146a706342ef835ee82bf9e70bf9a77d6
+SIZE (libaom-3.13.0.tar.gz) = 6253910
diff --git a/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c b/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c
index 271e41579143..91461196c7ba 100644
--- a/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c
+++ b/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c
@@ -1,21 +1,27 @@
- Implement VSX detection on FreeBSD
---- aom_ports/ppc_cpudetect.c.orig 2021-07-20 22:23:15 UTC
+--- aom_ports/ppc_cpudetect.c.orig 2025-09-02 20:59:58 UTC
+++ aom_ports/ppc_cpudetect.c
-@@ -9,12 +9,6 @@
+@@ -9,18 +9,11 @@
* PATENTS file, you can obtain it at www.aomedia.org/license/patent.
*/
-#include <fcntl.h>
-#include <unistd.h>
-#include <stdint.h>
--#include <asm/cputable.h>
--#include <linux/auxvec.h>
-
#include "config/aom_config.h"
#include "aom_ports/ppc.h"
-@@ -37,6 +31,13 @@ static int cpu_env_mask(void) {
+
+ #if CONFIG_RUNTIME_CPU_DETECT
+-#include <asm/cputable.h>
+-#include <linux/auxvec.h>
+-
+ static int cpu_env_flags(int *flags) {
+ char *env;
+ env = getenv("AOM_SIMD_CAPS");
+@@ -38,6 +31,13 @@ static int cpu_env_mask(void) {
return env && *env ? (int)strtol(env, NULL, 0) : ~0;
}
@@ -29,7 +35,7 @@
int ppc_simd_caps(void) {
int flags;
int mask;
-@@ -75,6 +76,34 @@ out_close:
+@@ -76,7 +76,35 @@ out_close:
close(fd);
return flags & mask;
}
@@ -56,11 +62,12 @@
+
+ return flags & mask;
+}
-+#else
+ #else
+#error \
+ "--enable-runtime-cpu-detect selected, but no CPU detection method " \
+"available for your platform. Reconfigure with --disable-runtime-cpu-detect."
+#endif /* end __FreeBSD__ */
- #else
++#else
// If there is no RTCD the function pointers are not used and can not be
// changed.
+ int ppc_simd_caps(void) { return 0; }
diff --git a/multimedia/aom/pkg-plist b/multimedia/aom/pkg-plist
index fca3d5c5c228..9a08e39953a4 100644
--- a/multimedia/aom/pkg-plist
+++ b/multimedia/aom/pkg-plist
@@ -10,6 +10,10 @@ include/aom/aom_image.h
include/aom/aom_integer.h
include/aom/aomcx.h
include/aom/aomdx.h
+lib/cmake/AOM/AOMConfig.cmake
+lib/cmake/AOM/AOMConfigVersion.cmake
+lib/cmake/AOM/AOMTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/AOM/AOMTargets.cmake
lib/libaom.a
lib/libaom.so
lib/libaom.so.3
diff --git a/multimedia/livego/Makefile b/multimedia/livego/Makefile
index a4f7e8392333..a2cf21e4e785 100644
--- a/multimedia/livego/Makefile
+++ b/multimedia/livego/Makefile
@@ -1,6 +1,6 @@
PORTNAME= livego
DISTVERSION= 0.0.15
-PORTREVISION= 29
+PORTREVISION= 30
CATEGORIES= multimedia
MAINTAINER= ports@FreeBSD.org
diff --git a/multimedia/mediamtx/Makefile b/multimedia/mediamtx/Makefile
index c998442f8081..fc60cbcd3d88 100644
--- a/multimedia/mediamtx/Makefile
+++ b/multimedia/mediamtx/Makefile
@@ -1,6 +1,7 @@
PORTNAME= mediamtx
DISTVERSIONPREFIX= v
DISTVERSION= 1.14.0
+PORTREVISION= 1
CATEGORIES= multimedia net
MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.10/
DISTFILES+= release.zip
diff --git a/multimedia/minisatip/Makefile b/multimedia/minisatip/Makefile
index 0382728c18ed..90d0605de40d 100644
--- a/multimedia/minisatip/Makefile
+++ b/multimedia/minisatip/Makefile
@@ -1,5 +1,5 @@
PORTNAME= minisatip
-PORTVERSION= 2.0.20
+PORTVERSION= 2.0.27
DISTVERSIONPREFIX= v
PORTEPOCH= 1
CATEGORIES= multimedia
diff --git a/multimedia/minisatip/distinfo b/multimedia/minisatip/distinfo
index d31b2a4b16e0..0b3a8abbd76d 100644
--- a/multimedia/minisatip/distinfo
+++ b/multimedia/minisatip/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1755411441
-SHA256 (catalinii-minisatip-v2.0.20_GH0.tar.gz) = 6f85f1b8f4b90a6c4ffd94bcd0aa0132920053dae74c2aceee82fd636649101f
-SIZE (catalinii-minisatip-v2.0.20_GH0.tar.gz) = 1652207
+TIMESTAMP = 1757064554
+SHA256 (catalinii-minisatip-v2.0.27_GH0.tar.gz) = 589c5f4c9f74464504b79748cd92337549d1f9179802dd291104b84898aceddc
+SIZE (catalinii-minisatip-v2.0.27_GH0.tar.gz) = 1647537
diff --git a/multimedia/navidrome/Makefile b/multimedia/navidrome/Makefile
index 581f86acd83c..f1f31df327c4 100644
--- a/multimedia/navidrome/Makefile
+++ b/multimedia/navidrome/Makefile
@@ -1,7 +1,7 @@
PORTNAME= navidrome
DISTVERSIONPREFIX= v
DISTVERSION= 0.56.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= multimedia
MASTER_SITES= http://people.freebsd.org/~kbowling/distfiles/:npmcache
DISTFILES= ${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}:npmcache
diff --git a/multimedia/supersonic/Makefile b/multimedia/supersonic/Makefile
index 6a320f95fb13..c9a9bdecd463 100644
--- a/multimedia/supersonic/Makefile
+++ b/multimedia/supersonic/Makefile
@@ -1,6 +1,7 @@
PORTNAME= supersonic
DISTVERSIONPREFIX= v
DISTVERSION= 0.18.0
+PORTREVISION= 1
CATEGORIES= multimedia
MAINTAINER= dtxdf@FreeBSD.org
diff --git a/multimedia/wl-screenrec/Makefile b/multimedia/wl-screenrec/Makefile
index fee78f556c5d..980f94bfd6b2 100644
--- a/multimedia/wl-screenrec/Makefile
+++ b/multimedia/wl-screenrec/Makefile
@@ -1,7 +1,7 @@
PORTNAME= wl-screenrec
DISTVERSIONPREFIX= v
-DISTVERSION= 0.1.5
-PORTREVISION= 10
+DISTVERSION= 0.1.5 # see PORTSCOUT comment below
+PORTREVISION= 11
CATEGORIES= multimedia wayland
MAINTAINER= ports@FreeBSD.org
@@ -10,6 +10,8 @@ WWW= https://github.com/russelltg/wl-screenrec
LICENSE= APACHE20
+BROKEN_i386= https://github.com/zmwangx/rust-ffmpeg-sys/issues/96
+
LIB_DEPENDS= libdrm.so:graphics/libdrm \
libavformat.so:multimedia/ffmpeg
@@ -22,7 +24,6 @@ PLIST_FILES= bin/${PORTNAME} \
share/zsh/site-functions/_${PORTNAME}
# https://github.com/russelltg/wl-screenrec/issues/99
-# https://github.com/zmwangx/rust-ffmpeg-sys/issues/96
PORTSCOUT= ignore:1
post-patch:
diff --git a/multimedia/wl-screenrec/Makefile.crates b/multimedia/wl-screenrec/Makefile.crates
index 8d51f274deaa..4ca098ac4160 100644
--- a/multimedia/wl-screenrec/Makefile.crates
+++ b/multimedia/wl-screenrec/Makefile.crates
@@ -5,9 +5,9 @@ CARGO_CRATES= aho-corasick-1.1.3 \
anstyle-query-1.1.1 \
anstyle-wincon-3.0.4 \
anyhow-1.0.86 \
- bindgen-0.69.4 \
- bitflags-2.6.0 \
- cc-1.1.7 \
+ bindgen-0.72.1 \
+ bitflags-2.9.4 \
+ cc-1.2.36 \
cexpr-0.6.0 \
cfg-if-1.0.0 \
cfg_aliases-0.2.1 \
@@ -24,11 +24,12 @@ CARGO_CRATES= aho-corasick-1.1.3 \
drm-fourcc-2.2.0 \
either-1.13.0 \
errno-0.3.9 \
- ffmpeg-next-7.0.4 \
- ffmpeg-sys-next-7.0.2 \
+ ffmpeg-next-8.0.0 \
+ ffmpeg-sys-next-8.0.1 \
+ find-msvc-tools-0.1.1 \
glob-0.3.1 \
heck-0.5.0 \
- hermit-abi-0.3.9 \
+ hermit-abi-0.5.2 \
human-size-0.4.3 \
is_terminal_polyfill-1.70.1 \
itertools-0.12.1 \
@@ -44,7 +45,7 @@ CARGO_CRATES= aho-corasick-1.1.3 \
nix-0.29.0 \
nom-7.1.3 \
num-conv-0.1.0 \
- num_cpus-1.16.0 \
+ num_cpus-1.17.0 \
num_threads-0.1.7 \
pkg-config-0.3.30 \
powerfmt-0.2.0 \
@@ -54,7 +55,7 @@ CARGO_CRATES= aho-corasick-1.1.3 \
regex-1.10.6 \
regex-automata-0.4.7 \
regex-syntax-0.8.4 \
- rustc-hash-1.1.0 \
+ rustc-hash-2.1.1 \
rustix-0.38.34 \
ryu-1.0.18 \
scoped-tls-1.0.1 \
diff --git a/multimedia/wl-screenrec/distinfo b/multimedia/wl-screenrec/distinfo
index f88585d6d3d3..5e7b791f8a0e 100644
--- a/multimedia/wl-screenrec/distinfo
+++ b/multimedia/wl-screenrec/distinfo
@@ -13,12 +13,12 @@ SHA256 (rust/crates/anstyle-wincon-3.0.4.crate) = 5bf74e1b6e971609db8ca7a9ce79fd
SIZE (rust/crates/anstyle-wincon-3.0.4.crate) = 12234
SHA256 (rust/crates/anyhow-1.0.86.crate) = b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da
SIZE (rust/crates/anyhow-1.0.86.crate) = 46741
-SHA256 (rust/crates/bindgen-0.69.4.crate) = a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0
-SIZE (rust/crates/bindgen-0.69.4.crate) = 221092
-SHA256 (rust/crates/bitflags-2.6.0.crate) = b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de
-SIZE (rust/crates/bitflags-2.6.0.crate) = 45357
-SHA256 (rust/crates/cc-1.1.7.crate) = 26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc
-SIZE (rust/crates/cc-1.1.7.crate) = 81694
+SHA256 (rust/crates/bindgen-0.72.1.crate) = 993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895
+SIZE (rust/crates/bindgen-0.72.1.crate) = 246071
+SHA256 (rust/crates/bitflags-2.9.4.crate) = 2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394
+SIZE (rust/crates/bitflags-2.9.4.crate) = 47950
+SHA256 (rust/crates/cc-1.2.36.crate) = 5252b3d2648e5eedbc1a6f501e3c795e07025c1e93bbf8bbdd6eef7f447a6d54
+SIZE (rust/crates/cc-1.2.36.crate) = 90198
SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766
SIZE (rust/crates/cexpr-0.6.0.crate) = 17966
SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
@@ -51,16 +51,18 @@ SHA256 (rust/crates/either-1.13.0.crate) = 60b1af1c220855b6ceac025d3f6ecdd2b7c48
SIZE (rust/crates/either-1.13.0.crate) = 19169
SHA256 (rust/crates/errno-0.3.9.crate) = 534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba
SIZE (rust/crates/errno-0.3.9.crate) = 10690
-SHA256 (rust/crates/ffmpeg-next-7.0.4.crate) = 19a340e3d664ad5f530147cd6d4a86ece739a829fe2d81c369389ef903bd96f6
-SIZE (rust/crates/ffmpeg-next-7.0.4.crate) = 97098
-SHA256 (rust/crates/ffmpeg-sys-next-7.0.2.crate) = db1b7546e70609ead8c06b2b4c618a1ba352364675f81608f431dd4f321fe3f1
-SIZE (rust/crates/ffmpeg-sys-next-7.0.2.crate) = 16174
+SHA256 (rust/crates/ffmpeg-next-8.0.0.crate) = d658424d233cbd993a972dd73a66ca733acd12a494c68995c9ac32ae1fe65b40
+SIZE (rust/crates/ffmpeg-next-8.0.0.crate) = 99824
+SHA256 (rust/crates/ffmpeg-sys-next-8.0.1.crate) = 9bca20aa4ee774fe384c2490096c122b0b23cf524a9910add0686691003d797b
+SIZE (rust/crates/ffmpeg-sys-next-8.0.1.crate) = 23272
+SHA256 (rust/crates/find-msvc-tools-0.1.1.crate) = 7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d
+SIZE (rust/crates/find-msvc-tools-0.1.1.crate) = 30228
SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b
SIZE (rust/crates/glob-0.3.1.crate) = 18880
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/hermit-abi-0.3.9.crate) = d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024
-SIZE (rust/crates/hermit-abi-0.3.9.crate) = 16165
+SHA256 (rust/crates/hermit-abi-0.5.2.crate) = fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c
+SIZE (rust/crates/hermit-abi-0.5.2.crate) = 17435
SHA256 (rust/crates/human-size-0.4.3.crate) = 9994b79e8c1a39b3166c63ae7823bb2b00831e2a96a31399c50fe69df408eaeb
SIZE (rust/crates/human-size-0.4.3.crate) = 14757
SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
@@ -91,8 +93,8 @@ SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b
SIZE (rust/crates/nom-7.1.3.crate) = 117570
SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9
SIZE (rust/crates/num-conv-0.1.0.crate) = 7444
-SHA256 (rust/crates/num_cpus-1.16.0.crate) = 4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43
-SIZE (rust/crates/num_cpus-1.16.0.crate) = 15713
+SHA256 (rust/crates/num_cpus-1.17.0.crate) = 91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b
+SIZE (rust/crates/num_cpus-1.17.0.crate) = 15874
SHA256 (rust/crates/num_threads-0.1.7.crate) = 5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9
SIZE (rust/crates/num_threads-0.1.7.crate) = 7455
SHA256 (rust/crates/pkg-config-0.3.30.crate) = d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec
@@ -111,8 +113,8 @@ SHA256 (rust/crates/regex-automata-0.4.7.crate) = 38caf58cc5ef2fed281f89292ef23f
SIZE (rust/crates/regex-automata-0.4.7.crate) = 617582
SHA256 (rust/crates/regex-syntax-0.8.4.crate) = 7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b
SIZE (rust/crates/regex-syntax-0.8.4.crate) = 347577
-SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
-SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
+SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d
+SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154
SHA256 (rust/crates/rustix-0.38.34.crate) = 70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f
SIZE (rust/crates/rustix-0.38.34.crate) = 365160
SHA256 (rust/crates/ryu-1.0.18.crate) = f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f
diff --git a/multimedia/wl-screenrec/files/patch-ffmpeg71 b/multimedia/wl-screenrec/files/patch-ffmpeg71
new file mode 100644
index 000000000000..f51c41547bf0
--- /dev/null
+++ b/multimedia/wl-screenrec/files/patch-ffmpeg71
@@ -0,0 +1,80 @@
+https://github.com/russelltg/wl-screenrec/commit/36b2c6f570f6
+
+$ wl-screenrec
+Opening libva device from DRM device /dev/dri/renderD128
+[in @ 0x4909a9ab5400] Setting BufferSourceContext.pix_fmt to a HW format requires hw_frames_ctx to be non-NULL!
+
+thread 'main' panicked at src/main.rs:1741:6:
+called `Result::unwrap()` on an `Err` value: ffmpeg::Error(22: Invalid argument)
+
+--- src/main.rs.orig 2024-08-04 17:10:34 UTC
++++ src/main.rs
+@@ -27,8 +27,8 @@ use ffmpeg::{
+ ffi::{
+ av_buffer_ref, av_buffersrc_parameters_alloc, av_buffersrc_parameters_set,
+ av_dict_parse_string, av_free, av_get_pix_fmt_name, av_hwframe_map, avcodec_alloc_context3,
+- avformat_query_codec, AVDRMFrameDescriptor, AVPixelFormat, AV_HWFRAME_MAP_WRITE,
+- FF_COMPLIANCE_STRICT,
++ avfilter_graph_alloc_filter, avfilter_init_dict, avformat_query_codec,
++ AVDRMFrameDescriptor, AVPixelFormat, AV_HWFRAME_MAP_WRITE, FF_COMPLIANCE_STRICT,
+ },
+ filter,
+ format::{self, Pixel},
+@@ -1728,19 +1728,19 @@ fn video_filter(
+ transform: Transform,
+ ) -> (filter::Graph, Rational) {
+ let mut g = ffmpeg::filter::graph::Graph::new();
+- g.add(
+- &filter::find("buffer").unwrap(),
+- "in",
+- // format is bogus, will be replaced below, as we need to pass
+- // hw_frames_ctx which isn't possible with args=
+- &format!(
+- "video_size=2840x2160:pix_fmt={}:time_base=1/1000000000",
+- AVPixelFormat::AV_PIX_FMT_VAAPI as c_int
+- ),
+- )
+- .unwrap();
+
++
++ // src
+ unsafe {
++ let buffersrc_ctx = avfilter_graph_alloc_filter(
++ g.as_mut_ptr(),
++ filter::find("buffer").unwrap().as_mut_ptr(),
++ c"in".as_ptr() as _,
++ );
++ if buffersrc_ctx.is_null() {
++ panic!("faield to alloc buffersrc filter");
++ }
++
+ let p = &mut *av_buffersrc_parameters_alloc();
+
+ p.width = capture_width;
+@@ -1750,21 +1750,17 @@ fn video_filter(
+ p.time_base.den = 1_000_000_000;
+ p.hw_frames_ctx = inctx.as_mut_ptr();
+
+- let sts = av_buffersrc_parameters_set(g.get("in").unwrap().as_mut_ptr(), p as *mut _);
++ let sts = av_buffersrc_parameters_set(buffersrc_ctx, p as *mut _);
+ assert_eq!(sts, 0);
+-
+ av_free(p as *mut _ as *mut _);
++
++ let sts = avfilter_init_dict(buffersrc_ctx, null_mut());
++ assert_eq!(sts, 0);
+ }
+
++ // sink
+ g.add(&filter::find("buffersink").unwrap(), "out", "")
+ .unwrap();
+-
+- let mut out = g.get("out").unwrap();
+-
+- out.set_pixel_format(match pix_fmt {
+- EncodePixelFormat::Vaapi(_) => Pixel::VAAPI,
+- EncodePixelFormat::Sw(sw) => sw,
+- });
+
+ let output_real_pixfmt_name = unsafe {
+ from_utf8_unchecked(
diff --git a/multimedia/wl-screenrec/files/patch-ffmpeg8 b/multimedia/wl-screenrec/files/patch-ffmpeg8
new file mode 100644
index 000000000000..63ee59c399d4
--- /dev/null
+++ b/multimedia/wl-screenrec/files/patch-ffmpeg8
@@ -0,0 +1,126 @@
+https://github.com/russelltg/wl-screenrec/commit/1017db6ffa0d
+
+--- Cargo.lock.orig 2024-08-04 17:10:34 UTC
++++ Cargo.lock
+@@ -68,9 +68,9 @@ name = "bindgen"
+
+ [[package]]
+ name = "bindgen"
+-version = "0.69.4"
++version = "0.72.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
++checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895"
+ dependencies = [
+ "bitflags",
+ "cexpr",
+@@ -88,15 +88,19 @@ name = "bitflags"
+
+ [[package]]
+ name = "bitflags"
+-version = "2.6.0"
++version = "2.9.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
++checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394"
+
+ [[package]]
+ name = "cc"
+-version = "1.1.7"
++version = "1.2.36"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc"
++checksum = "5252b3d2648e5eedbc1a6f501e3c795e07025c1e93bbf8bbdd6eef7f447a6d54"
++dependencies = [
++ "find-msvc-tools",
++ "shlex",
++]
+
+ [[package]]
+ name = "cexpr"
+@@ -233,9 +237,9 @@ name = "ffmpeg-next"
+
+ [[package]]
+ name = "ffmpeg-next"
+-version = "7.0.4"
++version = "8.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "19a340e3d664ad5f530147cd6d4a86ece739a829fe2d81c369389ef903bd96f6"
++checksum = "d658424d233cbd993a972dd73a66ca733acd12a494c68995c9ac32ae1fe65b40"
+ dependencies = [
+ "bitflags",
+ "ffmpeg-sys-next",
+@@ -244,9 +248,9 @@ name = "ffmpeg-sys-next"
+
+ [[package]]
+ name = "ffmpeg-sys-next"
+-version = "7.0.2"
++version = "8.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "db1b7546e70609ead8c06b2b4c618a1ba352364675f81608f431dd4f321fe3f1"
++checksum = "9bca20aa4ee774fe384c2490096c122b0b23cf524a9910add0686691003d797b"
+ dependencies = [
+ "bindgen",
+ "cc",
+@@ -257,6 +261,12 @@ dependencies = [
+ ]
+
+ [[package]]
++name = "find-msvc-tools"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d"
++
++[[package]]
+ name = "glob"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -270,9 +280,9 @@ name = "hermit-abi"
+
+ [[package]]
+ name = "hermit-abi"
+-version = "0.3.9"
++version = "0.5.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
++checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c"
+
+ [[package]]
+ name = "human-size"
+@@ -383,9 +393,9 @@ name = "num_cpus"
+
+ [[package]]
+ name = "num_cpus"
+-version = "1.16.0"
++version = "1.17.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
++checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b"
+ dependencies = [
+ "hermit-abi",
+ "libc",
+@@ -470,9 +480,9 @@ name = "rustc-hash"
+
+ [[package]]
+ name = "rustc-hash"
+-version = "1.1.0"
++version = "2.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
++checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
+
+ [[package]]
+ name = "rustix"
+--- Cargo.toml.orig 2024-08-04 17:10:34 UTC
++++ Cargo.toml
+@@ -27,8 +27,8 @@ wayland-protocols-wlr = { version = "0.3", features =
+ "staging",
+ ] }
+ wayland-protocols-wlr = { version = "0.3", features = ["client"] }
+-ffmpeg-next = "7.0.1"
+-ffmpeg-sys-next = "7.0.0" # need direct dep on -sys to get metadata to consume in build.rs
++ffmpeg-next = "8.0.0"
++ffmpeg-sys-next = "8.0.1" # need direct dep on -sys to get metadata to consume in build.rs
+ thiserror = "1.0.38"
+ drm-fourcc = "2.2.0"
+ human-size = "0.4.2"